; ; __crtLCMapStringA from 0x180060190 to 0x180060ae0 (2384 bytes) ; ; 3 xrefs: ; > sub_18005B1E0 @ 0x18005b25e ; > @ 0x1801ac4f0 ; > @ 0x1801f9138 ; ; 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 ; push rbp ; +0x0, 0x180060190 push r14 ; +0x2, 0x180060192 push r15 ; +0x4, 0x180060194 sub rsp, 50h ; +0x6, 0x180060196 lea rbp, [rsp+40h] ; +0xa, 0x18006019a mov [rbp+20h+arg_0], rbx ; +0xf, 0x18006019f mov [rbp+20h+arg_8], rsi ; +0x13, 0x1800601a3 mov [rbp+20h+arg_10], rdi ; +0x17, 0x1800601a7 mov [rbp+20h+arg_18], r12 ; +0x1b, 0x1800601ab mov rax, cs:__security_cookie ; +0x1f, 0x1800601af xor rax, rbp ; +0x26, 0x1800601b6 mov [rbp+20h+var_20], rax ; +0x29, 0x1800601b9 movsxd r14, [rbp+20h+arg_28] ; +0x2d, 0x1800601bd mov esi, r8d ; +0x31, 0x1800601c1 mov r15d, [rbp+20h+arg_30] ; +0x34, 0x1800601c4 mov r10, r9 ; +0x38, 0x1800601c8 mov rbx, rdx ; +0x3b, 0x1800601cb mov rdi, rcx ; +0x3e, 0x1800601ce mov r8b, 1 ; +0x41, 0x1800601d1 cmp r14d, 2 ; +0x44, 0x1800601d4 jnz loc_1800602E3 ; +0x48, 0x1800601d8 movss xmm3, dword ptr [r9] ; +0x4e, 0x1800601de mov eax, esi ; +0x53, 0x1800601e3 movss xmm4, dword ptr [r9+84h] ; +0x55, 0x1800601e5 movaps xmm2, xmm3 ; +0x5e, 0x1800601ee shr eax, 2 ; +0x61, 0x1800601f1 unpcklps xmm2, xmm4 ; +0x64, 0x1800601f4 movlhps xmm2, xmm2 ; +0x67, 0x1800601f7 test r15d, r15d ; +0x6a, 0x1800601fa jz short loc_18006026A ; +0x6d, 0x1800601fd test eax, eax ; +0x6f, 0x1800601ff jz short loc_180060232 ; +0x71, 0x180060201 sub rcx, rdx ; +0x73, 0x180060203 nop word ptr [rax+rax+00000000h] ; +0x76, 0x180060206 movaps xmm0, xmm2 ; +0x80, 0x180060210 movaps xmm1, xmm2 ; +0x83, 0x180060213 mulps xmm0, xmmword ptr [rdi] ; +0x86, 0x180060216 add rdi, 20h ; ' ' ; +0x89, 0x180060219 mulps xmm1, xmmword ptr [rcx+rbx+10h] ; +0x8d, 0x18006021d movups xmmword ptr [rbx], xmm0 ; +0x92, 0x180060222 movups xmmword ptr [rbx+10h], xmm1 ; +0x95, 0x180060225 add rbx, 20h ; ' ' ; +0x99, 0x180060229 sub eax, 1 ; +0x9d, 0x18006022d jnz short loc_180060210 ; +0xa0, 0x180060230 and esi, 3 ; +0xa2, 0x180060232 jz loc_180060A37 ; +0xa5, 0x180060235 sub rdi, rbx ; +0xab, 0x18006023b xchg ax, ax ; +0xae, 0x18006023e lea rbx, [rbx+8] ; +0xb0, 0x180060240 movaps xmm0, xmm3 ; +0xb4, 0x180060244 mulss xmm0, dword ptr [rdi+rbx-8] ; +0xb7, 0x180060247 movaps xmm1, xmm4 ; +0xbd, 0x18006024d mulss xmm1, dword ptr [rdi+rbx-4] ; +0xc0, 0x180060250 movss dword ptr [rbx-8], xmm0 ; +0xc6, 0x180060256 movss dword ptr [rbx-4], xmm1 ; +0xcb, 0x18006025b sub esi, 1 ; +0xd0, 0x180060260 jnz short loc_180060240 ; +0xd3, 0x180060263 jmp loc_180060A37 ; +0xd5, 0x180060265 test eax, eax ; +0xda, 0x18006026a jz short loc_18006029A ; +0xdc, 0x18006026c sub rcx, rbx ; +0xde, 0x18006026e movaps xmm0, xmm2 ; +0xe1, 0x180060271 movaps xmm1, xmm2 ; +0xe4, 0x180060274 mulps xmm0, xmmword ptr [rdi] ; +0xe7, 0x180060277 add rdi, 20h ; ' ' ; +0xea, 0x18006027a mulps xmm1, xmmword ptr [rcx+rbx+10h] ; +0xee, 0x18006027e addps xmm0, xmmword ptr [rbx] ; +0xf3, 0x180060283 addps xmm1, xmmword ptr [rbx+10h] ; +0xf6, 0x180060286 movups xmmword ptr [rbx], xmm0 ; +0xfa, 0x18006028a movups xmmword ptr [rbx+10h], xmm1 ; +0xfd, 0x18006028d add rbx, 20h ; ' ' ; +0x101, 0x180060291 sub eax, 1 ; +0x105, 0x180060295 jnz short loc_180060271 ; +0x108, 0x180060298 and esi, 3 ; +0x10a, 0x18006029a jz loc_180060A37 ; +0x10d, 0x18006029d nop dword ptr [rax+00h] ; +0x113, 0x1800602a3 nop word ptr [rax+rax+00000000h] ; +0x117, 0x1800602a7 movaps xmm0, xmm3 ; +0x120, 0x1800602b0 movaps xmm1, xmm4 ; +0x123, 0x1800602b3 mulss xmm0, dword ptr [rdi] ; +0x126, 0x1800602b6 mulss xmm1, dword ptr [rdi+4] ; +0x12a, 0x1800602ba add rdi, 8 ; +0x12f, 0x1800602bf addss xmm0, dword ptr [rbx] ; +0x133, 0x1800602c3 addss xmm1, dword ptr [rbx+4] ; +0x137, 0x1800602c7 movss dword ptr [rbx], xmm0 ; +0x13c, 0x1800602cc movss dword ptr [rbx+4], xmm1 ; +0x140, 0x1800602d0 add rbx, 8 ; +0x145, 0x1800602d5 sub esi, 1 ; +0x149, 0x1800602d9 jnz short loc_1800602B0 ; +0x14c, 0x1800602dc jmp loc_180060A37 ; +0x14e, 0x1800602de cmp r14d, 6 ; +0x153, 0x1800602e3 jnz short loc_180060307 ; +0x157, 0x1800602e7 mov eax, [rbp+20h+arg_20] ; +0x159, 0x1800602e9 mov r8d, esi ; +0x15c, 0x1800602ec mov [rsp+60h+var_30], r15d ; +0x15f, 0x1800602ef mov [rsp+60h+var_38], r14d ; +0x164, 0x1800602f4 mov dword ptr [rsp+60h+var_40], eax ; +0x169, 0x1800602f9 call sub_18005FE80 ; +0x16d, 0x1800602fd jmp loc_180060A37 ; +0x172, 0x180060302 cmp r14d, 8 ; +0x177, 0x180060307 jnz loc_1800603DB ; +0x17b, 0x18006030b movss xmm1, dword ptr [r9+18Ch] ; +0x181, 0x180060311 movss xmm0, dword ptr [r9+84h] ; +0x18a, 0x18006031a movss xmm2, dword ptr [r9+108h] ; +0x193, 0x180060323 movss xmm3, dword ptr [r9] ; +0x19c, 0x18006032c movss xmm4, dword ptr [r9+210h] ; +0x1a1, 0x180060331 unpcklps xmm2, xmm1 ; +0x1aa, 0x18006033a movss xmm1, dword ptr [r9+39Ch] ; +0x1ad, 0x18006033d unpcklps xmm3, xmm0 ; +0x1b6, 0x180060346 movss xmm0, dword ptr [r9+294h] ; +0x1b9, 0x180060349 movlhps xmm3, xmm2 ; +0x1c2, 0x180060352 movss xmm2, dword ptr [r9+318h] ; +0x1c5, 0x180060355 unpcklps xmm2, xmm1 ; +0x1ce, 0x18006035e unpcklps xmm4, xmm0 ; +0x1d1, 0x180060361 movlhps xmm4, xmm2 ; +0x1d4, 0x180060364 test esi, esi ; +0x1d7, 0x180060367 jz loc_180060A37 ; +0x1d9, 0x180060369 test r15d, r15d ; +0x1df, 0x18006036f jz short loc_1800603A6 ; +0x1e2, 0x180060372 sub rbx, rdi ; +0x1e4, 0x180060374 nop word ptr [rax+rax+00000000h] ; +0x1e7, 0x180060377 lea rdi, [rdi+20h] ; +0x1f0, 0x180060380 movaps xmm0, xmm3 ; +0x1f4, 0x180060384 mulps xmm0, xmmword ptr [rdi-20h] ; +0x1f7, 0x180060387 movaps xmm1, xmm4 ; +0x1fb, 0x18006038b mulps xmm1, xmmword ptr [rdi-10h] ; +0x1fe, 0x18006038e movups xmmword ptr [rbx+rdi-20h], xmm0 ; +0x202, 0x180060392 movups xmmword ptr [rbx+rdi-10h], xmm1 ; +0x207, 0x180060397 add esi, 0FFFFFFFFh ; +0x20c, 0x18006039c jnz short loc_180060380 ; +0x20f, 0x18006039f jmp loc_180060A37 ; +0x211, 0x1800603a1 lea rax, [rdx+10h] ; +0x216, 0x1800603a6 sub rdi, rbx ; +0x21a, 0x1800603aa nop dword ptr [rax] ; +0x21d, 0x1800603ad movaps xmm0, xmm3 ; +0x220, 0x1800603b0 movaps xmm1, xmm4 ; +0x223, 0x1800603b3 mulps xmm0, xmmword ptr [rax+rdi-10h] ; +0x226, 0x1800603b6 mulps xmm1, xmmword ptr [rax+rdi] ; +0x22b, 0x1800603bb addps xmm0, xmmword ptr [rax-10h] ; +0x22f, 0x1800603bf addps xmm1, xmmword ptr [rax] ; +0x233, 0x1800603c3 movups xmmword ptr [rax-10h], xmm0 ; +0x236, 0x1800603c6 movups xmmword ptr [rax], xmm1 ; +0x23a, 0x1800603ca add rax, 20h ; ' ' ; +0x23d, 0x1800603cd add esi, 0FFFFFFFFh ; +0x241, 0x1800603d1 jnz short loc_1800603B0 ; +0x244, 0x1800603d4 jmp loc_180060A37 ; +0x246, 0x1800603d6 mov eax, [rsp+60h+var_60] ; +0x24b, 0x1800603db sub rsp, 90h ; +0x24e, 0x1800603de lea r12, [rsp+0F0h+var_B0] ; +0x255, 0x1800603e5 mov eax, [r12] ; +0x25a, 0x1800603ea movss xmm1, cs:dword_180145744 ; +0x25e, 0x1800603ee add r12, 0Fh ; +0x266, 0x1800603f6 and r12, 0FFFFFFFFFFFFFFF0h ; +0x26a, 0x1800603fa xor r11d, r11d ; +0x26e, 0x1800603fe cmp r14d, 4 ; +0x271, 0x180060401 jl loc_1800604A7 ; +0x275, 0x180060405 lea eax, [r14-4] ; +0x27b, 0x18006040b shr eax, 2 ; +0x27f, 0x18006040f lea rdx, [r9+108h] ; +0x282, 0x180060412 inc eax ; +0x289, 0x180060419 lea rcx, [r12+8] ; +0x28b, 0x18006041b mov r9d, eax ; +0x290, 0x180060420 lea r11d, ds:0[rax*4] ; +0x293, 0x180060423 lea rax, ds:0[rax*4] ; +0x29b, 0x18006042b nop dword ptr [rax+00h] ; +0x2a3, 0x180060433 nop word ptr [rax+rax+00000000h] ; +0x2a7, 0x180060437 movss xmm0, dword ptr [rdx-108h] ; +0x2b0, 0x180060440 ucomiss xmm0, xmm1 ; +0x2b8, 0x180060448 movss dword ptr [rcx-8], xmm0 ; +0x2bb, 0x18006044b jz short loc_180060455 ; +0x2c0, 0x180060450 xor r8b, r8b ; +0x2c2, 0x180060452 movss xmm0, dword ptr [rdx-84h] ; +0x2c5, 0x180060455 ucomiss xmm0, xmm1 ; +0x2cd, 0x18006045d movss dword ptr [rcx-4], xmm0 ; +0x2d0, 0x180060460 jz short loc_18006046A ; +0x2d5, 0x180060465 xor r8b, r8b ; +0x2d7, 0x180060467 movss xmm0, dword ptr [rdx] ; +0x2da, 0x18006046a ucomiss xmm0, xmm1 ; +0x2de, 0x18006046e movss dword ptr [rcx], xmm0 ; +0x2e1, 0x180060471 jz short loc_18006047A ; +0x2e5, 0x180060475 xor r8b, r8b ; +0x2e7, 0x180060477 movss xmm0, dword ptr [rdx+84h] ; +0x2ea, 0x18006047a ucomiss xmm0, xmm1 ; +0x2f2, 0x180060482 movss dword ptr [rcx+4], xmm0 ; +0x2f5, 0x180060485 jz short loc_18006048F ; +0x2fa, 0x18006048a xor r8b, r8b ; +0x2fc, 0x18006048c add rdx, 210h ; +0x2ff, 0x18006048f add rcx, 10h ; +0x306, 0x180060496 sub r9, 1 ; +0x30a, 0x18006049a jnz short loc_180060440 ; +0x30e, 0x18006049e cmp r11d, r14d ; +0x310, 0x1800604a0 jl short loc_1800604AF ; +0x313, 0x1800604a3 jmp short loc_1800604E4 ; +0x315, 0x1800604a5 test r14d, r14d ; +0x317, 0x1800604a7 jle short loc_1800604E4 ; +0x31a, 0x1800604aa mov rax, r11 ; +0x31c, 0x1800604ac imul rcx, rax, 84h ; +0x31f, 0x1800604af mov r9d, r14d ; +0x326, 0x1800604b6 lea rdx, [r12+rax*4] ; +0x329, 0x1800604b9 add rcx, r10 ; +0x32d, 0x1800604bd sub r9d, r11d ; +0x330, 0x1800604c0 movss xmm0, dword ptr [rcx] ; +0x333, 0x1800604c3 ucomiss xmm0, xmm1 ; +0x337, 0x1800604c7 movss dword ptr [rdx], xmm0 ; +0x33a, 0x1800604ca jz short loc_1800604D3 ; +0x33e, 0x1800604ce xor r8b, r8b ; +0x340, 0x1800604d0 add rcx, 84h ; +0x343, 0x1800604d3 add rdx, 4 ; +0x34a, 0x1800604da sub r9, 1 ; +0x34e, 0x1800604de jnz short loc_1800604C3 ; +0x352, 0x1800604e2 test r15d, r15d ; +0x354, 0x1800604e4 jz short loc_180060563 ; +0x357, 0x1800604e7 mov ecx, esi ; +0x359, 0x1800604e9 imul ecx, r14d ; +0x35b, 0x1800604eb shl rcx, 2 ; +0x35f, 0x1800604ef test r8b, r8b ; +0x363, 0x1800604f3 mov r8, rcx; Size ; +0x366, 0x1800604f6 mov rcx, rbx; void * ; +0x369, 0x1800604f9 jz short loc_18006050B ; +0x36c, 0x1800604fc mov rdx, rdi; Src ; +0x36e, 0x1800604fe call memmove ; +0x371, 0x180060501 jmp loc_180060A37 ; +0x376, 0x180060506 xor edx, edx; Val ; +0x37b, 0x18006050b call memset ; +0x37d, 0x18006050d mov r11d, r14d ; +0x382, 0x180060512 and r11d, 3 ; +0x385, 0x180060515 test r11d, r11d ; +0x389, 0x180060519 jz loc_180060920 ; +0x38c, 0x18006051c test esi, esi ; +0x392, 0x180060522 jz loc_180060A37 ; +0x394, 0x180060524 mov r15d, r14d ; +0x39a, 0x18006052a lea r10, cs:180000000h ; +0x39d, 0x18006052d sar r15d, 2 ; +0x3a4, 0x180060534 dec r15d ; +0x3a8, 0x180060538 shl r14, 2 ; +0x3ab, 0x18006053b nop ; +0x3af, 0x18006053f mov rdx, rbx ; +0x3b0, 0x180060540 mov r8, rdi ; +0x3b3, 0x180060543 mov r9, r12 ; +0x3b6, 0x180060546 cmp r15d, 7; switch 8 cases ; +0x3b9, 0x180060549 ja def_180060561; jumptable 0000000180060561 default case ; +0x3bd, 0x18006054d movsxd rax, r15d ; +0x3c3, 0x180060553 mov ecx, ds:(jpt_180060561 - 180000000h)[r10+rax*4] ; +0x3c6, 0x180060556 add rcx, r10 ; +0x3ce, 0x18006055e jmp rcx; switch jump ; +0x3d1, 0x180060561 mov r11d, r14d ; +0x3d3, 0x180060563 and r11d, 3 ; +0x3d6, 0x180060566 test r8b, r8b ; +0x3da, 0x18006056a jz short loc_180060519 ; +0x3dd, 0x18006056d test r11d, r11d ; +0x3df, 0x18006056f jz loc_1800606C4 ; +0x3e2, 0x180060572 test esi, esi ; +0x3e8, 0x180060578 jz loc_180060A37 ; +0x3ea, 0x18006057a mov r15d, r14d ; +0x3f0, 0x180060580 lea r10, cs:180000000h ; +0x3f3, 0x180060583 sar r15d, 2 ; +0x3fa, 0x18006058a mov r9, r14 ; +0x3fe, 0x18006058e dec r15d ; +0x401, 0x180060591 shl r9, 2 ; +0x404, 0x180060594 nop dword ptr [rax+rax+00000000h] ; +0x408, 0x180060598 mov rdx, rbx ; +0x410, 0x1800605a0 mov r8, rdi ; +0x413, 0x1800605a3 cmp r15d, 7; switch 8 cases ; +0x416, 0x1800605a6 ja def_1800605BE; jumptable 00000001800605BE default case ; +0x41a, 0x1800605aa movsxd rax, r15d ; +0x420, 0x1800605b0 mov ecx, ds:(jpt_1800605BE - 180000000h)[r10+rax*4] ; +0x423, 0x1800605b3 add rcx, r10 ; +0x42b, 0x1800605bb jmp rcx; switch jump ; +0x42e, 0x1800605be movups xmm1, xmmword ptr [rdi]; jumptable 00000001800605BE case 7 ; +0x430, 0x1800605c0 lea rdx, [rbx+10h] ; +0x433, 0x1800605c3 movups xmm0, xmmword ptr [rbx] ; +0x437, 0x1800605c7 lea r8, [rdi+10h] ; +0x43a, 0x1800605ca addps xmm1, xmm0 ; +0x43e, 0x1800605ce movups xmmword ptr [rbx], xmm1 ; +0x441, 0x1800605d1 movups xmm1, xmmword ptr [r8]; jumptable 00000001800605BE case 6 ; +0x444, 0x1800605d4 movups xmm0, xmmword ptr [rdx] ; +0x448, 0x1800605d8 addps xmm1, xmm0 ; +0x44b, 0x1800605db movups xmmword ptr [rdx], xmm1 ; +0x44e, 0x1800605de add rdx, 10h ; +0x451, 0x1800605e1 add r8, 10h ; +0x455, 0x1800605e5 movups xmm1, xmmword ptr [r8]; jumptable 00000001800605BE case 5 ; +0x459, 0x1800605e9 movups xmm0, xmmword ptr [rdx] ; +0x45d, 0x1800605ed addps xmm1, xmm0 ; +0x460, 0x1800605f0 movups xmmword ptr [rdx], xmm1 ; +0x463, 0x1800605f3 add rdx, 10h ; +0x466, 0x1800605f6 add r8, 10h ; +0x46a, 0x1800605fa movups xmm1, xmmword ptr [r8]; jumptable 00000001800605BE case 4 ; +0x46e, 0x1800605fe movups xmm0, xmmword ptr [rdx] ; +0x472, 0x180060602 addps xmm1, xmm0 ; +0x475, 0x180060605 movups xmmword ptr [rdx], xmm1 ; +0x478, 0x180060608 add rdx, 10h ; +0x47b, 0x18006060b add r8, 10h ; +0x47f, 0x18006060f movups xmm1, xmmword ptr [r8]; jumptable 00000001800605BE case 3 ; +0x483, 0x180060613 movups xmm0, xmmword ptr [rdx] ; +0x487, 0x180060617 addps xmm1, xmm0 ; +0x48a, 0x18006061a movups xmmword ptr [rdx], xmm1 ; +0x48d, 0x18006061d add rdx, 10h ; +0x490, 0x180060620 add r8, 10h ; +0x494, 0x180060624 movups xmm1, xmmword ptr [r8]; jumptable 00000001800605BE case 2 ; +0x498, 0x180060628 movups xmm0, xmmword ptr [rdx] ; +0x49c, 0x18006062c addps xmm1, xmm0 ; +0x49f, 0x18006062f movups xmmword ptr [rdx], xmm1 ; +0x4a2, 0x180060632 add rdx, 10h ; +0x4a5, 0x180060635 add r8, 10h ; +0x4a9, 0x180060639 movups xmm1, xmmword ptr [r8]; jumptable 00000001800605BE case 1 ; +0x4ad, 0x18006063d movups xmm0, xmmword ptr [rdx] ; +0x4b1, 0x180060641 addps xmm1, xmm0 ; +0x4b4, 0x180060644 movups xmmword ptr [rdx], xmm1 ; +0x4b7, 0x180060647 add rdx, 10h ; +0x4ba, 0x18006064a add r8, 10h ; +0x4be, 0x18006064e movups xmm1, xmmword ptr [r8]; jumptable 00000001800605BE case 0 ; +0x4c2, 0x180060652 movups xmm0, xmmword ptr [rdx] ; +0x4c6, 0x180060656 addps xmm1, xmm0 ; +0x4c9, 0x180060659 movups xmmword ptr [rdx], xmm1 ; +0x4cc, 0x18006065c add rdx, 10h ; +0x4cf, 0x18006065f add r8, 10h ; +0x4d3, 0x180060663 mov ecx, r11d; jumptable 00000001800605BE default case ; +0x4d7, 0x180060667 sub ecx, 1 ; +0x4da, 0x18006066a jz short loc_1800606A3 ; +0x4dd, 0x18006066d sub ecx, 1 ; +0x4df, 0x18006066f jz short loc_18006068E ; +0x4e2, 0x180060672 cmp ecx, 1 ; +0x4e4, 0x180060674 jnz short loc_1800606B0 ; +0x4e7, 0x180060677 movss xmm0, dword ptr [r8] ; +0x4e9, 0x180060679 add r8, 4 ; +0x4ee, 0x18006067e addss xmm0, dword ptr [rdx] ; +0x4f2, 0x180060682 movss dword ptr [rdx], xmm0 ; +0x4f6, 0x180060686 add rdx, 4 ; +0x4fa, 0x18006068a movss xmm0, dword ptr [r8] ; +0x4fe, 0x18006068e add r8, 4 ; +0x503, 0x180060693 addss xmm0, dword ptr [rdx] ; +0x507, 0x180060697 movss dword ptr [rdx], xmm0 ; +0x50b, 0x18006069b add rdx, 4 ; +0x50f, 0x18006069f movss xmm0, dword ptr [r8] ; +0x513, 0x1800606a3 addss xmm0, dword ptr [rdx] ; +0x518, 0x1800606a8 movss dword ptr [rdx], xmm0 ; +0x51c, 0x1800606ac add rdi, r9 ; +0x520, 0x1800606b0 add rbx, r9 ; +0x523, 0x1800606b3 sub esi, 1 ; +0x526, 0x1800606b6 jnz loc_1800605A0 ; +0x529, 0x1800606b9 jmp loc_180060A37 ; +0x52f, 0x1800606bf test esi, esi ; +0x534, 0x1800606c4 jz loc_180060A37 ; +0x536, 0x1800606c6 mov r11d, r14d ; +0x53c, 0x1800606cc lea r10, cs:180000000h ; +0x53f, 0x1800606cf sar r11d, 2 ; +0x546, 0x1800606d6 mov r9, r14 ; +0x54a, 0x1800606da dec r11d ; +0x54d, 0x1800606dd shl r9, 2 ; +0x550, 0x1800606e0 nop dword ptr [rax+00h] ; +0x554, 0x1800606e4 nop dword ptr [rax+rax+00000000h] ; +0x558, 0x1800606e8 mov rdx, rbx ; +0x560, 0x1800606f0 mov r8, rdi ; +0x563, 0x1800606f3 cmp r11d, 7; switch 8 cases ; +0x566, 0x1800606f6 ja def_18006070E; jumptable 000000018006070E default case ; +0x56a, 0x1800606fa movsxd rax, r11d ; +0x570, 0x180060700 mov ecx, ds:(jpt_18006070E - 180000000h)[r10+rax*4] ; +0x573, 0x180060703 add rcx, r10 ; +0x57b, 0x18006070b jmp rcx; switch jump ; +0x57e, 0x18006070e movups xmm0, xmmword ptr [rdi]; jumptable 000000018006070E case 7 ; +0x580, 0x180060710 lea rdx, [rbx+10h] ; +0x583, 0x180060713 addps xmm0, xmmword ptr [rbx] ; +0x587, 0x180060717 lea r8, [rdi+10h] ; +0x58a, 0x18006071a movups xmmword ptr [rbx], xmm0 ; +0x58e, 0x18006071e movups xmm0, xmmword ptr [rdx]; jumptable 000000018006070E case 6 ; +0x591, 0x180060721 addps xmm0, xmmword ptr [r8] ; +0x594, 0x180060724 movups xmmword ptr [rdx], xmm0 ; +0x598, 0x180060728 add rdx, 10h ; +0x59b, 0x18006072b add r8, 10h ; +0x59f, 0x18006072f movups xmm0, xmmword ptr [rdx]; jumptable 000000018006070E case 5 ; +0x5a3, 0x180060733 addps xmm0, xmmword ptr [r8] ; +0x5a6, 0x180060736 movups xmmword ptr [rdx], xmm0 ; +0x5aa, 0x18006073a add rdx, 10h ; +0x5ad, 0x18006073d add r8, 10h ; +0x5b1, 0x180060741 movups xmm0, xmmword ptr [rdx]; jumptable 000000018006070E case 4 ; +0x5b5, 0x180060745 addps xmm0, xmmword ptr [r8] ; +0x5b8, 0x180060748 movups xmmword ptr [rdx], xmm0 ; +0x5bc, 0x18006074c add rdx, 10h ; +0x5bf, 0x18006074f add r8, 10h ; +0x5c3, 0x180060753 movups xmm0, xmmword ptr [rdx]; jumptable 000000018006070E case 3 ; +0x5c7, 0x180060757 addps xmm0, xmmword ptr [r8] ; +0x5ca, 0x18006075a movups xmmword ptr [rdx], xmm0 ; +0x5ce, 0x18006075e add rdx, 10h ; +0x5d1, 0x180060761 add r8, 10h ; +0x5d5, 0x180060765 movups xmm0, xmmword ptr [rdx]; jumptable 000000018006070E case 2 ; +0x5d9, 0x180060769 addps xmm0, xmmword ptr [r8] ; +0x5dc, 0x18006076c movups xmmword ptr [rdx], xmm0 ; +0x5e0, 0x180060770 add rdx, 10h ; +0x5e3, 0x180060773 add r8, 10h ; +0x5e7, 0x180060777 movups xmm0, xmmword ptr [rdx]; jumptable 000000018006070E case 1 ; +0x5eb, 0x18006077b addps xmm0, xmmword ptr [r8] ; +0x5ee, 0x18006077e movups xmmword ptr [rdx], xmm0 ; +0x5f2, 0x180060782 add rdx, 10h ; +0x5f5, 0x180060785 add r8, 10h ; +0x5f9, 0x180060789 movups xmm0, xmmword ptr [rdx]; jumptable 000000018006070E case 0 ; +0x5fd, 0x18006078d addps xmm0, xmmword ptr [r8] ; +0x600, 0x180060790 movups xmmword ptr [rdx], xmm0 ; +0x604, 0x180060794 add rdi, r9; jumptable 000000018006070E default case ; +0x607, 0x180060797 add rbx, r9 ; +0x60a, 0x18006079a sub esi, 1 ; +0x60d, 0x18006079d jnz loc_1800606F0 ; +0x610, 0x1800607a0 jmp loc_180060A37 ; +0x616, 0x1800607a6 movups xmm2, xmmword ptr [rdi]; jumptable 0000000180060561 case 7 ; +0x61b, 0x1800607ab lea rdx, [rbx+10h] ; +0x61e, 0x1800607ae movups xmm0, xmmword ptr [r12] ; +0x622, 0x1800607b2 lea r8, [rdi+10h] ; +0x627, 0x1800607b7 movups xmm1, xmmword ptr [rbx] ; +0x62b, 0x1800607bb lea r9, [r12+10h] ; +0x62e, 0x1800607be mulps xmm2, xmm0 ; +0x633, 0x1800607c3 addps xmm2, xmm1 ; +0x636, 0x1800607c6 movups xmmword ptr [rbx], xmm2 ; +0x639, 0x1800607c9 movups xmm2, xmmword ptr [r9]; jumptable 0000000180060561 case 6 ; +0x63c, 0x1800607cc movups xmm0, xmmword ptr [r8] ; +0x640, 0x1800607d0 add r8, 10h ; +0x644, 0x1800607d4 movups xmm1, xmmword ptr [rdx] ; +0x648, 0x1800607d8 mulps xmm2, xmm0 ; +0x64b, 0x1800607db addps xmm2, xmm1 ; +0x64e, 0x1800607de movups xmmword ptr [rdx], xmm2 ; +0x651, 0x1800607e1 add rdx, 10h ; +0x654, 0x1800607e4 add r9, 10h ; +0x658, 0x1800607e8 movups xmm2, xmmword ptr [r9]; jumptable 0000000180060561 case 5 ; +0x65c, 0x1800607ec movups xmm0, xmmword ptr [r8] ; +0x660, 0x1800607f0 add r8, 10h ; +0x664, 0x1800607f4 movups xmm1, xmmword ptr [rdx] ; +0x668, 0x1800607f8 mulps xmm2, xmm0 ; +0x66b, 0x1800607fb addps xmm2, xmm1 ; +0x66e, 0x1800607fe movups xmmword ptr [rdx], xmm2 ; +0x671, 0x180060801 add rdx, 10h ; +0x674, 0x180060804 add r9, 10h ; +0x678, 0x180060808 movups xmm2, xmmword ptr [r9]; jumptable 0000000180060561 case 4 ; +0x67c, 0x18006080c movups xmm0, xmmword ptr [r8] ; +0x680, 0x180060810 add r8, 10h ; +0x684, 0x180060814 movups xmm1, xmmword ptr [rdx] ; +0x688, 0x180060818 mulps xmm2, xmm0 ; +0x68b, 0x18006081b addps xmm2, xmm1 ; +0x68e, 0x18006081e movups xmmword ptr [rdx], xmm2 ; +0x691, 0x180060821 add rdx, 10h ; +0x694, 0x180060824 add r9, 10h ; +0x698, 0x180060828 movups xmm2, xmmword ptr [r9]; jumptable 0000000180060561 case 3 ; +0x69c, 0x18006082c movups xmm0, xmmword ptr [r8] ; +0x6a0, 0x180060830 add r8, 10h ; +0x6a4, 0x180060834 movups xmm1, xmmword ptr [rdx] ; +0x6a8, 0x180060838 mulps xmm2, xmm0 ; +0x6ab, 0x18006083b addps xmm2, xmm1 ; +0x6ae, 0x18006083e movups xmmword ptr [rdx], xmm2 ; +0x6b1, 0x180060841 add rdx, 10h ; +0x6b4, 0x180060844 add r9, 10h ; +0x6b8, 0x180060848 movups xmm2, xmmword ptr [r9]; jumptable 0000000180060561 case 2 ; +0x6bc, 0x18006084c movups xmm0, xmmword ptr [r8] ; +0x6c0, 0x180060850 add r8, 10h ; +0x6c4, 0x180060854 movups xmm1, xmmword ptr [rdx] ; +0x6c8, 0x180060858 mulps xmm2, xmm0 ; +0x6cb, 0x18006085b addps xmm2, xmm1 ; +0x6ce, 0x18006085e movups xmmword ptr [rdx], xmm2 ; +0x6d1, 0x180060861 add rdx, 10h ; +0x6d4, 0x180060864 add r9, 10h ; +0x6d8, 0x180060868 movups xmm2, xmmword ptr [r9]; jumptable 0000000180060561 case 1 ; +0x6dc, 0x18006086c movups xmm0, xmmword ptr [r8] ; +0x6e0, 0x180060870 add r8, 10h ; +0x6e4, 0x180060874 movups xmm1, xmmword ptr [rdx] ; +0x6e8, 0x180060878 mulps xmm2, xmm0 ; +0x6eb, 0x18006087b addps xmm2, xmm1 ; +0x6ee, 0x18006087e movups xmmword ptr [rdx], xmm2 ; +0x6f1, 0x180060881 add rdx, 10h ; +0x6f4, 0x180060884 add r9, 10h ; +0x6f8, 0x180060888 movups xmm2, xmmword ptr [r9]; jumptable 0000000180060561 case 0 ; +0x6fc, 0x18006088c movups xmm0, xmmword ptr [r8] ; +0x700, 0x180060890 add r8, 10h ; +0x704, 0x180060894 movups xmm1, xmmword ptr [rdx] ; +0x708, 0x180060898 mulps xmm2, xmm0 ; +0x70b, 0x18006089b addps xmm2, xmm1 ; +0x70e, 0x18006089e movups xmmword ptr [rdx], xmm2 ; +0x711, 0x1800608a1 add rdx, 10h ; +0x714, 0x1800608a4 add r9, 10h ; +0x718, 0x1800608a8 mov ecx, r11d; jumptable 0000000180060561 default case ; +0x71c, 0x1800608ac sub ecx, 1 ; +0x71f, 0x1800608af jz short loc_1800608FA ; +0x722, 0x1800608b2 sub ecx, 1 ; +0x724, 0x1800608b4 jz short loc_1800608DC ; +0x727, 0x1800608b7 cmp ecx, 1 ; +0x729, 0x1800608b9 jnz short loc_18006090C ; +0x72c, 0x1800608bc movss xmm0, dword ptr [r9] ; +0x72e, 0x1800608be add r9, 4 ; +0x733, 0x1800608c3 mulss xmm0, dword ptr [r8] ; +0x737, 0x1800608c7 add r8, 4 ; +0x73c, 0x1800608cc addss xmm0, dword ptr [rdx] ; +0x740, 0x1800608d0 movss dword ptr [rdx], xmm0 ; +0x744, 0x1800608d4 add rdx, 4 ; +0x748, 0x1800608d8 movss xmm0, dword ptr [r9] ; +0x74c, 0x1800608dc add r9, 4 ; +0x751, 0x1800608e1 mulss xmm0, dword ptr [r8] ; +0x755, 0x1800608e5 add r8, 4 ; +0x75a, 0x1800608ea addss xmm0, dword ptr [rdx] ; +0x75e, 0x1800608ee movss dword ptr [rdx], xmm0 ; +0x762, 0x1800608f2 add rdx, 4 ; +0x766, 0x1800608f6 movss xmm0, dword ptr [r9] ; +0x76a, 0x1800608fa mulss xmm0, dword ptr [r8] ; +0x76f, 0x1800608ff addss xmm0, dword ptr [rdx] ; +0x774, 0x180060904 movss dword ptr [rdx], xmm0 ; +0x778, 0x180060908 add rdi, r14 ; +0x77c, 0x18006090c add rbx, r14 ; +0x77f, 0x18006090f sub esi, 1 ; +0x782, 0x180060912 jnz loc_180060540 ; +0x785, 0x180060915 jmp loc_180060A37 ; +0x78b, 0x18006091b test esi, esi ; +0x790, 0x180060920 jz loc_180060A37 ; +0x792, 0x180060922 mov r15d, r14d ; +0x798, 0x180060928 lea r10, cs:180000000h ; +0x79b, 0x18006092b sar r15d, 2 ; +0x7a2, 0x180060932 mov r11, r14 ; +0x7a6, 0x180060936 dec r15d ; +0x7a9, 0x180060939 shl r11, 2 ; +0x7ac, 0x18006093c mov rdx, rbx ; +0x7b0, 0x180060940 mov r8, rdi ; +0x7b3, 0x180060943 mov r9, r12 ; +0x7b6, 0x180060946 cmp r15d, 7; switch 8 cases ; +0x7b9, 0x180060949 ja def_180060961; jumptable 0000000180060961 default case ; +0x7bd, 0x18006094d movsxd rax, r15d ; +0x7c3, 0x180060953 mov ecx, ds:(jpt_180060961 - 180000000h)[r10+rax*4] ; +0x7c6, 0x180060956 add rcx, r10 ; +0x7ce, 0x18006095e jmp rcx; switch jump ; +0x7d1, 0x180060961 movups xmm0, xmmword ptr [rdi]; jumptable 0000000180060961 case 7 ; +0x7d3, 0x180060963 lea rdx, [rbx+10h] ; +0x7d6, 0x180060966 mulps xmm0, xmmword ptr [r12] ; +0x7da, 0x18006096a lea r8, [rdi+10h] ; +0x7df, 0x18006096f lea r9, [r12+10h] ; +0x7e3, 0x180060973 addps xmm0, xmmword ptr [rbx] ; +0x7e8, 0x180060978 movups xmmword ptr [rbx], xmm0 ; +0x7eb, 0x18006097b movups xmm0, xmmword ptr [r9]; jumptable 0000000180060961 case 6 ; +0x7ee, 0x18006097e mulps xmm0, xmmword ptr [r8] ; +0x7f2, 0x180060982 add r8, 10h ; +0x7f6, 0x180060986 addps xmm0, xmmword ptr [rdx] ; +0x7fa, 0x18006098a movups xmmword ptr [rdx], xmm0 ; +0x7fd, 0x18006098d add rdx, 10h ; +0x800, 0x180060990 add r9, 10h ; +0x804, 0x180060994 movups xmm0, xmmword ptr [r9]; jumptable 0000000180060961 case 5 ; +0x808, 0x180060998 mulps xmm0, xmmword ptr [r8] ; +0x80c, 0x18006099c add r8, 10h ; +0x810, 0x1800609a0 addps xmm0, xmmword ptr [rdx] ; +0x814, 0x1800609a4 movups xmmword ptr [rdx], xmm0 ; +0x817, 0x1800609a7 add rdx, 10h ; +0x81a, 0x1800609aa add r9, 10h ; +0x81e, 0x1800609ae movups xmm0, xmmword ptr [r9]; jumptable 0000000180060961 case 4 ; +0x822, 0x1800609b2 mulps xmm0, xmmword ptr [r8] ; +0x826, 0x1800609b6 add r8, 10h ; +0x82a, 0x1800609ba addps xmm0, xmmword ptr [rdx] ; +0x82e, 0x1800609be movups xmmword ptr [rdx], xmm0 ; +0x831, 0x1800609c1 add rdx, 10h ; +0x834, 0x1800609c4 add r9, 10h ; +0x838, 0x1800609c8 movups xmm0, xmmword ptr [r9]; jumptable 0000000180060961 case 3 ; +0x83c, 0x1800609cc mulps xmm0, xmmword ptr [r8] ; +0x840, 0x1800609d0 add r8, 10h ; +0x844, 0x1800609d4 addps xmm0, xmmword ptr [rdx] ; +0x848, 0x1800609d8 movups xmmword ptr [rdx], xmm0 ; +0x84b, 0x1800609db add rdx, 10h ; +0x84e, 0x1800609de add r9, 10h ; +0x852, 0x1800609e2 movups xmm0, xmmword ptr [r9]; jumptable 0000000180060961 case 2 ; +0x856, 0x1800609e6 mulps xmm0, xmmword ptr [r8] ; +0x85a, 0x1800609ea add r8, 10h ; +0x85e, 0x1800609ee addps xmm0, xmmword ptr [rdx] ; +0x862, 0x1800609f2 movups xmmword ptr [rdx], xmm0 ; +0x865, 0x1800609f5 add rdx, 10h ; +0x868, 0x1800609f8 add r9, 10h ; +0x86c, 0x1800609fc movups xmm0, xmmword ptr [r9]; jumptable 0000000180060961 case 1 ; +0x870, 0x180060a00 mulps xmm0, xmmword ptr [r8] ; +0x874, 0x180060a04 add r8, 10h ; +0x878, 0x180060a08 addps xmm0, xmmword ptr [rdx] ; +0x87c, 0x180060a0c movups xmmword ptr [rdx], xmm0 ; +0x87f, 0x180060a0f add rdx, 10h ; +0x882, 0x180060a12 add r9, 10h ; +0x886, 0x180060a16 movups xmm0, xmmword ptr [r9]; jumptable 0000000180060961 case 0 ; +0x88a, 0x180060a1a mulps xmm0, xmmword ptr [r8] ; +0x88e, 0x180060a1e addps xmm0, xmmword ptr [rdx] ; +0x892, 0x180060a22 movups xmmword ptr [rdx], xmm0 ; +0x895, 0x180060a25 add rdi, r11; jumptable 0000000180060961 default case ; +0x898, 0x180060a28 add rbx, r11 ; +0x89b, 0x180060a2b sub esi, 1 ; +0x89e, 0x180060a2e jnz loc_180060940 ; +0x8a1, 0x180060a31 mov rcx, [rbp+20h+var_20] ; +0x8a7, 0x180060a37 xor rcx, rbp; StackCookie ; +0x8ab, 0x180060a3b call __security_check_cookie ; +0x8ae, 0x180060a3e mov rbx, [rbp+20h+arg_0] ; +0x8b3, 0x180060a43 mov rsi, [rbp+20h+arg_8] ; +0x8b7, 0x180060a47 mov rdi, [rbp+20h+arg_10] ; +0x8bb, 0x180060a4b mov r12, [rbp+20h+arg_18] ; +0x8bf, 0x180060a4f lea rsp, [rbp+10h] ; +0x8c3, 0x180060a53 pop r15 ; +0x8c7, 0x180060a57 pop r14 ; +0x8c9, 0x180060a59 pop rbp ; +0x8cb, 0x180060a5b retn ; +0x8cc, 0x180060a5c align 20h ; +0x8cd, 0x180060a5d dd offset loc_18006088C - 180000000h; jump table for switch statement ; +0x8d0, 0x180060a60 dd offset loc_180060652 - 180000000h; jump table for switch statement ; +0x8f0, 0x180060a80 dd offset loc_18006078D - 180000000h; jump table for switch statement ; +0x910, 0x180060aa0 dd offset loc_180060A1A - 180000000h; jump table for switch statement ; +0x930, 0x180060ac0