// // memset from 0x180123f60 to 0x1801240f0 (400 bytes) // // 288 xrefs: // > sub_180001E90 @ 0x18000225e // > sub_180007120 @ 0x1800073da // > sub_180007410 @ 0x180007754 // > sub_180008050 @ 0x180008280 // > sub_1800107D0 @ 0x1800116ca // > sub_1800107D0 @ 0x180011dff // > sub_180013FE0 @ 0x180014ac4 // > sub_180013FE0 @ 0x180014b10 // > sub_180017310 @ 0x180017341 // > sub_1800180F0 @ 0x18001825f // > sub_1800180F0 @ 0x180018278 // > sub_180018DF0 @ 0x180018e6a // > sub_180018DF0 @ 0x18001918f // > sub_180018DF0 @ 0x1800191a4 // > sub_180018DF0 @ 0x1800195eb // > sub_180018DF0 @ 0x18001ae24 // > sub_180018DF0 @ 0x18001b63b // > sub_18001CBE0 @ 0x18001cc12 // > sub_180020140 @ 0x180020317 // > sub_180020140 @ 0x1800203f3 // > sub_180022480 @ 0x18002252d // > sub_180026050 @ 0x1800268a1 // > sub_180026050 @ 0x1800269c5 // > sub_180029320 @ 0x1800293ac // > sub_180029320 @ 0x1800295a2 // > sub_180029BC0 @ 0x180029c3b // > sub_18002BA30 @ 0x18002ba9c // > sub_18002D8B0 @ 0x18002e6a5 // > sub_18002FA30 @ 0x18002fb5e // > sub_180031D30 @ 0x180031d9d // > sub_180031D30 @ 0x180031db1 // > sub_180031D30 @ 0x180031dc8 // > sub_180033290 @ 0x18003333a // > sub_180033290 @ 0x1800335c5 // > sub_1800364B0 @ 0x18003700b // > sub_18003DB30 @ 0x18003ea6b // > sub_18003DB30 @ 0x18003ec18 // > sub_180042E20 @ 0x180042e76 // > sub_180043060 @ 0x18004309b // > sub_180043060 @ 0x1800430b9 // > sub_180043D20 @ 0x180043ee4 // > sub_180044320 @ 0x1800445a0 // > sub_180044E10 @ 0x1800452cb // > sub_180045B60 @ 0x180045e9b // > sub_180046250 @ 0x18004627a // > sub_18004A840 @ 0x18004a860 // > sub_18004A880 @ 0x18004a8a0 // > sub_18004A8C0 @ 0x18004acd8 // > sub_18004B460 @ 0x18004b671 // > sub_18004B940 @ 0x18004b98f // > sub_18004B9B0 @ 0x18004b9dc // > sub_18004B9B0 @ 0x18004ba84 // > sub_18004BBC0 @ 0x18004beea // > sub_18004D140 @ 0x18004d160 // > sub_18004D180 @ 0x18004d1ce // > sub_18004D180 @ 0x18004d206 // > sub_18004D3F0 @ 0x18004d591 // > sub_18004ECC0 @ 0x18004ece0 // > sub_18004EDE0 @ 0x18004efa4 // > sub_180050A30 @ 0x180050b64 // > sub_180050C10 @ 0x180050c7a // > sub_1800547E0 @ 0x180054809 // > sub_180054A00 @ 0x180054a8a // > sub_180054A00 @ 0x180054c9c // > sub_180054D60 @ 0x180054e01 // > sub_180055C80 @ 0x180055cfe // > sub_180055D30 @ 0x180055d48 // > sub_180057C90 @ 0x180057e76 // > sub_180058150 @ 0x180058376 // > sub_180058150 @ 0x18005840c // > sub_180058150 @ 0x180058743 // > sub_180058780 @ 0x180058851 // > sub_180058780 @ 0x180058a93 // > sub_180058780 @ 0x180059197 // > sub_18005A650 @ 0x18005abb1 // > sub_18005B1E0 @ 0x18005b397 // > sub_18005BB00 @ 0x18005bb3d // > sub_18005BEB0 @ 0x18005bf26 // > sub_18005C130 @ 0x18005c1b5 // > sub_18005C650 @ 0x18005c692 // > sub_18005CBA0 @ 0x18005ccab // > sub_18005DFD0 @ 0x18005e00e // > sub_18005E900 @ 0x18005ea83 // > sub_18005F070 @ 0x18005f24e // > sub_18005F070 @ 0x18005f35e // > sub_18005F710 @ 0x18005f777 // > sub_18005FE80 @ 0x18005ffda // > __crtLCMapStringA @ 0x18006050d // > sub_180061040 @ 0x1800610c7 // > sub_1800614E0 @ 0x1800615ee // > sub_180066760 @ 0x18006696d // > sub_1800683A0 @ 0x180068417 // > sub_180068D20 @ 0x180068fec // > sub_180068D20 @ 0x180069016 // > sub_18006C640 @ 0x18006c667 // > sub_18006E3F0 @ 0x18006e5b3 // > sub_18006EAF0 @ 0x18006ebaa // > sub_18006F6B0 @ 0x18006f6d7 // > sub_18006F6B0 @ 0x18006f6f1 // > sub_18006F890 @ 0x18006fb5d // > sub_18006F890 @ 0x18006fb77 // > sub_1800710B0 @ 0x1800710c6 // > sub_180072AF0 @ 0x180072caf // > sub_180073560 @ 0x180073627 // > sub_180074400 @ 0x1800744c8 // > sub_180075930 @ 0x1800759c6 // > sub_180078050 @ 0x1800780b5 // > sub_180078050 @ 0x1800780c9 // > sub_180078050 @ 0x1800780dd // > sub_180078050 @ 0x1800780f1 // > sub_180078050 @ 0x180078105 // > sub_180078050 @ 0x180078119 // > sub_18007A680 @ 0x18007ab05 // > sub_18007A680 @ 0x18007ab19 // > sub_18007A680 @ 0x18007ab2d // > sub_18007A680 @ 0x18007ab41 // > sub_18007A680 @ 0x18007ab55 // > sub_18007A680 @ 0x18007ab69 // > sub_18007AC90 @ 0x18007ae59 // > sub_18007AC90 @ 0x18007b4e0 // > sub_18007AC90 @ 0x18007b4fc // > sub_18007AC90 @ 0x18007be00 // > sub_18007AC90 @ 0x18007bf2d // > sub_18007C540 @ 0x18007c6f9 // > sub_18007C8F0 @ 0x18007cc63 // > sub_18007C8F0 @ 0x18007ccce // > sub_18007CF70 @ 0x18007cf9a // > sub_180087D80 @ 0x180087dfc // > sub_180088E10 @ 0x180089042 // > sub_180091020 @ 0x18009111f // > sub_180091020 @ 0x1800912bb // > sub_180091910 @ 0x180091a38 // > sub_180091910 @ 0x180091f17 // > sub_1800932A0 @ 0x180093398 // > sub_180093500 @ 0x180093529 // > sub_180093500 @ 0x180093557 // > sub_180093500 @ 0x180093912 // > sub_180093940 @ 0x180093bdd // > sub_180093940 @ 0x18009400a // > sub_180093940 @ 0x18009446e // > sub_180093940 @ 0x180094a0e // > sub_180093940 @ 0x180095062 // > sub_180093940 @ 0x1800950ad // > sub_180093940 @ 0x1800958bf // > sub_180093940 @ 0x18009590a // > sub_180093940 @ 0x180095c9c // > sub_1800992C0 @ 0x180099358 // > sub_1800992C0 @ 0x18009937a // > sub_180099420 @ 0x1800994b0 // > sub_180099420 @ 0x1800994d4 // > sub_180099C50 @ 0x18009a730 // > sub_180099C50 @ 0x18009a76a // > sub_180099C50 @ 0x18009b568 // > sub_18009B9A0 @ 0x18009b9e7 // > sub_18009D9B0 @ 0x18009d9f7 // > sub_18009F300 @ 0x18009faa3 // > sub_1800A4FC0 @ 0x1800a501a // > sub_1800A5530 @ 0x1800a5732 // > sub_1800B3130 @ 0x1800b31ce // > sub_1800B43B0 @ 0x1800b4449 // > sub_1800B4490 @ 0x1800b44e7 // > sub_1800B5970 @ 0x1800b59d9 // > sub_1800B5AD0 @ 0x1800b5b3c // > sub_1800B5DD0 @ 0x1800b5dfe // > sub_1800B6530 @ 0x1800b66a2 // > sub_1800B6530 @ 0x1800b67ce // > sub_1800B6AA0 @ 0x1800b6bcf // > sub_1800B6E80 @ 0x1800b7153 // > sub_1800B72A0 @ 0x1800b7361 // > sub_1800B8F50 @ 0x1800b8fe5 // > sub_1800BB9D0 @ 0x1800bbb54 // > sub_1800BB9D0 @ 0x1800bbb73 // > sub_1800BB9D0 @ 0x1800bbce3 // > sub_1800BC0F0 @ 0x1800bc3ce // > sub_1800BC0F0 @ 0x1800bc4ee // > sub_1800BCD20 @ 0x1800bcd52 // > sub_1800BCD20 @ 0x1800bcd6f // > sub_1800BE0C0 @ 0x1800be0e7 // > sub_1800C1C80 @ 0x1800c1ef5 // > sub_1800C2180 @ 0x1800c2193 // > sub_1800C3960 @ 0x1800c3973 // > sub_1800CF170 @ 0x1800cf24a // > sub_1800D1800 @ 0x1800d18ce // > sub_1800D19B0 @ 0x1800d1af9 // > sub_1800D2D70 @ 0x1800d3074 // > sub_1800D2D70 @ 0x1800d341e // > sub_1800D5500 @ 0x1800d562d // > sub_1800D5500 @ 0x1800d56da // > sub_1800D5500 @ 0x1800d5765 // > sub_1800D7400 @ 0x1800d7428 // > sub_1800D7400 @ 0x1800d743c // > sub_1800DB2E0 @ 0x1800db5be // > sub_1800DB2E0 @ 0x1800db6e9 // > sub_1800DD7C0 @ 0x1800dd89f // > sub_1800DE780 @ 0x1800de851 // > sub_1800DE780 @ 0x1800de88f // > sub_1800E0790 @ 0x1800e07b8 // > sub_1800E0880 @ 0x1800e08bc // > sub_1800E14F0 @ 0x1800e1947 // > sub_1800E2500 @ 0x1800e2579 // > sub_1800E31C0 @ 0x1800e3250 // > sub_1800E4120 @ 0x1800e4214 // > sub_1800E8520 @ 0x1800e868e // > sub_1800E8520 @ 0x1800e8848 // > sub_1800E9310 @ 0x1800e9344 // > sub_1800E98E0 @ 0x1800e9a03 // > sub_1800EC440 @ 0x1800ec485 // > sub_1800EC7E0 @ 0x1800ec859 // > sub_1800EC8D0 @ 0x1800ec8ec // > sub_1800EC8D0 @ 0x1800ec918 // > sub_1800EC8D0 @ 0x1800ecd86 // > sub_1800ED160 @ 0x1800ed264 // > sub_1800EE530 @ 0x1800ee548 // > sub_1800EE530 @ 0x1800ee58e // > sub_1800EE7D0 @ 0x1800ee829 // > sub_1800F6AE0 @ 0x1800f6cc4 // > sub_1800F6EC0 @ 0x1800f6ed2 // > sub_1800F7200 @ 0x1800f7239 // > sub_1800F8FF0 @ 0x1800f91f5 // > sub_1800F92F0 @ 0x1800f9455 // > sub_1800F92F0 @ 0x1800f967d // > sub_1800F9760 @ 0x1800f9b3f // > sub_1800F9760 @ 0x1800f9bbf // > sub_1800F9FF0 @ 0x1800fa2b1 // > sub_1800FC680 @ 0x1800fc776 // > sub_1800FE610 @ 0x180100020 // > sub_180100F90 @ 0x180101051 // > sub_180108590 @ 0x18010875b // > sub_18010BF50 @ 0x18010c09f // > sub_18010E450 @ 0x18010e49b // > sub_18010FE10 @ 0x18010fe3c // > sub_18010FE10 @ 0x18010fe67 // > sub_18010FE10 @ 0x18010fe90 // > sub_18010FE10 @ 0x18010feb9 // > sub_18010FE10 @ 0x18010fee2 // > sub_180111D30 @ 0x180111d96 // > sub_1801125B0 @ 0x1801126ed // > sub_1801134D0 @ 0x18011354c // > sub_1801135C0 @ 0x18011363c // > sub_180114120 @ 0x18011427b // > sub_18011C480 @ 0x18011c4e3 // > sub_18011CA20 @ 0x18011ca3b // > sub_18011D430 @ 0x18011d45c // > sub_18011D430 @ 0x18011d46f // > sub_18011D430 @ 0x18011d485 // > sub_18011D4A0 @ 0x18011d539 // > sub_18011D4A0 @ 0x18011d5bf // > sub_18011D4A0 @ 0x18011d626 // > sub_18011D4A0 @ 0x18011d639 // > __scrt_fastfail @ 0x180123bc4 // > __scrt_fastfail @ 0x180123c5b // > common_assert_to_message_box @ 0x180130e4a // > common_assert_to_message_box_build_string @ 0x180130f68 // > common_assert_to_message_box_build_string @ 0x1801313ae // > __acrt_call_reportfault @ 0x180132bd4 // > __acrt_call_reportfault @ 0x180132be5 // > _getdrive @ 0x18013474d // > __crt_win32_buffer::detach @ 0x180134bb1 // > _wctomb_s_l @ 0x1801374f5 // > _wctomb_s_l @ 0x1801375a5 // > fp_format_a @ 0x180137815 // > fp_format_f_internal @ 0x180137d44 // > __crt_seh_guarded_call::operator @ 0x18013a190 // > __crt_seh_guarded_call::operator @ 0x18013a227 // > setSBCS @ 0x18013a350 // > _setmbcp_nolock @ 0x18013a961 // > _setmbcp_nolock @ 0x18013aa39 // > _recalloc_base @ 0x18013b64c // > tzset_from_environment_nolock @ 0x18013ce22 // > tzset_from_environment_nolock @ 0x18013ce31 // > tzset_from_environment_nolock @ 0x18013ce43 // > tzset_from_environment_nolock @ 0x18013ce51 // > tzset_from_system_nolock @ 0x18013d0a2 // > tzset_from_system_nolock @ 0x18013d0b0 // > tzset_from_system_nolock @ 0x18013d0c2 // > tzset_from_system_nolock @ 0x18013d0d0 // > __acrt_GetStringTypeA @ 0x18013d829 // > __acrt_fltout @ 0x18013e691 // > __acrt_fltout @ 0x18013e79a // > __acrt_fltout @ 0x18013e806 // > __acrt_fltout @ 0x18013e895 // > __acrt_fltout @ 0x18013e9bd // > __acrt_fltout @ 0x18013ebd1 // > __acrt_fltout @ 0x18013ed74 // > __acrt_fltout @ 0x18013ee7b // > __acrt_fltout @ 0x18013f078 // > memcpy_s @ 0x18013f463 // > @ 0x180202648 // // This function is hookable on this platform! // // Using BromaIDA 8.0.0 @ https://github.com/Stazzical/BromaIDA // Using bindings at commit ba9f177b at Thu Jul 16 22:52:06 2026 from https://github.com/geode-sdk/bindings // void *__cdecl memset(void *a1, int Val, size_t Size) { __m128 v4; // xmm0 float *v5; // rcx size_t v6; // r9 size_t i; // r9 size_t v8; // r8 void *result; // rax __int64 v11; // kr18_8 char *v12; // rcx v11 = 0x101010101010101LL * (unsigned __int8)Val; v12 = (char *)a1 + Size; result = a1; switch ( Size ) { case 0uLL: return result; case 1uLL: goto msetTab01; case 2uLL: goto msetTab02; case 3uLL: goto msetTab03; case 4uLL: goto msetTab04; case 5uLL: goto msetTab05; case 6uLL: goto msetTab06; case 7uLL: goto msetTab07; case 8uLL: *(_QWORD *)a1 = v11; return result; case 9uLL: *(_QWORD *)(v12 - 9) = v11; *(v12 - 1) = v11; return result; case 0xAuLL: *(_QWORD *)a1 = v11; *((_WORD *)a1 + 4) = v11; return result; case 0xBuLL: *(_QWORD *)a1 = v11; *((_WORD *)a1 + 4) = v11; *((_BYTE *)a1 + 10) = v11; return result; case 0xCuLL: *(_QWORD *)(v12 - 12) = v11; msetTab04: *((_DWORD *)v12 - 1) = v11; return result; case 0xDuLL: *(_QWORD *)(v12 - 13) = v11; msetTab05: *(_DWORD *)(v12 - 5) = v11; *(v12 - 1) = v11; return result; case 0xEuLL: *(_QWORD *)(v12 - 14) = v11; msetTab06: *(_DWORD *)(v12 - 6) = v11; msetTab02: *((_WORD *)v12 - 1) = v11; return result; case 0xFuLL: *(_QWORD *)(v12 - 15) = v11; msetTab07: *(_DWORD *)(v12 - 7) = v11; msetTab03: *(_WORD *)(v12 - 3) = v11; msetTab01: *(v12 - 1) = v11; return result; case 0x10uLL: *(_QWORD *)a1 = v11; *((_QWORD *)a1 + 1) = v11; return result; default: v5 = (float *)a1; v4 = (__m128)_mm_unpacklo_epi8((__m128i)(unsigned __int64)v11, (__m128i)(unsigned __int64)v11); if ( Size <= 0x80 ) goto XmmSetSmall; if ( (dword_1801F4990 & 2) != 0 ) return (void *)memset_repmovs(a1, Val, Size); *(__m128 *)a1 = v4; v5 = (float *)(((unsigned __int64)a1 + 16) & 0xFFFFFFFFFFFFFFF0uLL); Size = (_BYTE *)a1 + Size - (_BYTE *)v5; v6 = Size >> 7; if ( Size >> 7 ) { if ( v6 > qword_1801B1710 ) { do { _mm_stream_ps(v5, v4); _mm_stream_ps(v5 + 4, v4); v5 += 32; _mm_stream_ps(v5 - 24, v4); _mm_stream_ps(v5 - 20, v4); --v6; _mm_stream_ps(v5 - 16, v4); _mm_stream_ps(v5 - 12, v4); _mm_stream_ps(v5 - 8, v4); _mm_stream_ps(v5 - 4, v4); } while ( v6 ); _mm_sfence(); Size &= 0x7Fu; } else { do { *(__m128 *)v5 = v4; *((__m128 *)v5 + 1) = v4; v5 += 32; *((__m128 *)v5 - 6) = v4; *((__m128 *)v5 - 5) = v4; --v6; *((__m128 *)v5 - 4) = v4; *((__m128 *)v5 - 3) = v4; *((__m128 *)v5 - 2) = v4; *((__m128 *)v5 - 1) = v4; } while ( v6 ); Size &= 0x7Fu; } } XmmSetSmall: for ( i = Size >> 4; i; --i ) { *(__m128 *)v5 = v4; v5 += 4; } v8 = Size & 0xF; if ( v8 ) *(__m128 *)((char *)v5 + v8 - 16) = v4; return a1; } }