Function at 0x430bf0
Capabilities:
Encode data using xor
Log keystrokes via polling
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x258
mov eax, dword [0x44300c]
xor eax, esp
mov dword [esp + 0x254], eax
push esi
push edi
mov edi, dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [esp + 0x240]
mov esi, dword [sym.imp.USER32.dll_PeekMessageW]
push 1
push 0
push 0
push 0
push eax
call esi
test eax, eax
je 0x430c79
nop
lea eax, [esp + 0x240]
push eax
call edi
lea eax, [esp + 0x240]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
movzx eax, byte [0x44e2a4]
mov ecx, 1
cmp dword [esp + 0x244], 0x12
push ecx
push 0
cmove eax, ecx
push 0
mov byte [0x44e2a4], al
lea eax, [esp + 0x24c]
push 0
push eax
call esi
test eax, eax
jne 0x430c30
cmp byte [0x44e2a4], 0
jne 0x433a2e
cmp dword [0x45992c], 0
jne 0x430c9d
cmp dword [0x459934], 0
je 0x430c9d
call fcn.00424bc0
mov esi, dword [0x4598f8]
lea eax, [esp + 0x218]
push eax
push dword [0x45993c]
mov dword [esp + 0x230], esi
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [esp + 0x220]
sub eax, dword [esp + 0x218]
movd xmm1, eax
mov eax, dword [esp + 0x224]
sub eax, dword [esp + 0x21c]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
lea eax, [esp + 0x238]
cvtdq2ps xmm0, xmm0
push eax
movss dword [esi + 0x10], xmm1
movss dword [esi + 0x14], xmm0
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov edi, dword [esp + 0x238]
mov ecx, edi
sub ecx, dword [0x459940]
mov esi, dword [esp + 0x23c]
mov edx, esi
sbb edx, dword [0x459944]
call fcn.004395e0
mov edx, dword [0x45994c]
mov ecx, dword [0x459948]
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x22c], xmm0
call fcn.004395e0
movss xmm1, dword [esp + 0x22c]
cvtsd2ss xmm0, xmm0
mov eax, dword [esp + 0x228]
push 0x11
divss xmm1, xmm0
movss dword [eax + 0x18], xmm1
mov dword [0x459940], edi
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
mov dword [0x459944], esi
call edi
mov esi, dword [esp + 0x228]
shr eax, 0xf
and al, 1
push 0x10
mov byte [esi + 0xfc], al
call edi
shr eax, 0xf
and al, 1
push 0x12
mov byte [esi + 0xfd], al
call edi
mov edi, dword [0x4598f8]
shr eax, 0xf
and al, 1
mov byte [esi + 0xff], 0
mov byte [esi + 0xfe], al
cmp byte [edi + 0x357], 0
je 0x430e00
cvttss2si eax, dword [edi + 0xe4]
mov dword [esp + 0x230], eax
cvttss2si eax, dword [edi + 0xe8]
mov dword [esp + 0x234], eax
lea eax, [esp + 0x230]
push eax
push dword [0x45993c]
call dword [sym.imp.USER32.dll_ClientToScreen]
push dword [esp + 0x234]
push dword [esp + 0x234]
call dword [sym.imp.USER32.dll_SetCursorPos]
mov dword [edi + 0xe4], 0xff7fffff
mov dword [edi + 0xe8], 0xff7fffff
call dword [sym.imp.USER32.dll_GetForegroundWindow]
test eax, eax
je 0x430e86
mov ecx, dword [0x45993c]
cmp eax, ecx
je 0x430e34
push ecx
push eax
call dword [sym.imp.USER32.dll_IsChild]
test eax, eax
je 0x430e86
lea eax, [esp + 0x210]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
test eax, eax
je 0x430e86
lea eax, [esp + 0x210]
push eax
push dword [0x45993c]
call dword [sym.imp.USER32.dll_ScreenToClient]
test eax, eax
je 0x430e86
movd xmm0, dword [esp + 0x210]
movd xmm1, dword [esp + 0x214]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
movss dword [edi + 0xe4], xmm0
movss dword [edi + 0xe8], xmm1
cmp byte [esi + 0xb0], 0
je 0x430e94
or eax, 0xffffffff
jmp 0x430e9f
mov eax, dword [0x4598f8]
mov eax, dword [eax + 0x1de4]
cmp dword [0x443294], eax
je 0x430eb1
mov dword [0x443294], eax
call fcn.00424e30
call fcn.00424f60
call fcn.00408e30
mov ecx, dword [0x44e2a8]
call fcn.00410060
mov eax, dword [str.tV__YO_]
xor edx, edx
mov dword [esp + 0x30], eax
mov ax, word [0x43eccc]
mov word [esp + 0x34], ax
mov al, byte [0x43ecce]
mov byte [esp + 0x36], al
mov dword [esp + 0x228], edx
nop dword [eax]
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 7
jl 0x430ef0
push 0x200f
xor edx, edx
lea ecx, [esp + 0x34]
call fcn.0040d8c0
mov esi, dword [0x4598f8]
lea edx, [esp + 0x1bc]
add esp, 4
mov dword [esp + 0x1b8], 0x443b8000
mov dword [esp + 0x1bc], 0x43d48000
mov ecx, dword [esi + 0x1a10]
push 0
call fcn.00410280
mov ecx, dword [esi + 0x1a10]
lea edx, [esp + 0x1ec]
add esp, 4
mov dword [esp + 0x1e8], 0
mov dword [esp + 0x1ec], 0
push 0
call fcn.004101a0
mov eax, dword [esi + 0x1a10]
lea edx, [esp + 0x1d4]
add esp, 4
mov dword [esp + 0x1c0], 0x3f800000
mov dword [esp + 0x1c4], 0x3f800000
mov dword [esp + 0x1c8], 0
mov byte [eax + 0x84], 1
mov eax, dword [esi + 0x1a10]
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0x42c80000
mov dword [esp + 0x1d4], 0x42c80000
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
subss xmm0, dword [0x43f074]
subss xmm2, dword [0x43f06c]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
lea eax, [esp + 0x80]
push eax
lea eax, [esp + 0x204]
xorps xmm0, xmm0
push eax
lea eax, [esp + 0x1c8]
push eax
movups xmmword [esp + 0x8c], xmm0
lea eax, [esp + 0x1d4]
movaps xmm0, xmmword [0x43f540]
push eax
movups xmmword [esp + 0x210], xmm0
call fcn.00426c40
mov ecx, dword [0x4598f8]
add esp, 0x10
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f084]
addss xmm2, dword [0x43f07c]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov ax, word [0x43ecc4]
movq xmm0, qword [0x43ecbc]
mov word [esp + 0xac], ax
mov al, byte [0x43ecc6]
movq qword [esp + 0xa4], xmm0
xor edx, edx
mov byte [esp + 0xae], al
mov dword [esp + 0x228], edx
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0xa4], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0xb
jl 0x431135
lea eax, [esp + 0xa4]
push eax
call fcn.00425b30
mov ecx, dword [0x4598f8]
mov dword [esp], 0x3f800000
push 0xfffffff
mov dword [esp + 0x1e0], 0x43160000
mov eax, dword [ecx + 0x1a10]
mov dword [esp + 0x1e4], 0x43fa0000
mov dword [esp + 0x1e8], 0x43160000
mov dword [esp + 0x1ec], 0
mov byte [eax + 0x84], 1
lea eax, [esp + 0x1e0]
mov ecx, dword [ecx + 0x1a10]
push eax
lea eax, [esp + 0x1ec]
push eax
mov ecx, dword [ecx + 0x294]
call fcn.0041f650
mov ecx, dword [0x4598f8]
push ecx
mov dword [esp], 0x3f800000
push 0xfffffff
mov eax, dword [ecx + 0x1a10]
mov dword [esp + 0x1b8], 0x43160000
mov dword [esp + 0x1bc], 0x42820000
mov dword [esp + 0x1f8], 0
mov byte [eax + 0x84], 1
lea eax, [esp + 0x1b8]
mov ecx, dword [ecx + 0x1a10]
push eax
lea eax, [esp + 0x1fc]
mov dword [esp + 0x200], 0x42820000
push eax
mov ecx, dword [ecx + 0x294]
call fcn.0041f650
mov ecx, dword [0x4598f8]
xor edx, edx
mov dword [esp + 0x228], edx
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f07c]
addss xmm2, dword [0x43f090]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov eax, dword [str.yZNRJX_]
mov dword [esp + 0x38], eax
mov ax, word [0x43ed30]
mov word [esp + 0x3c], ax
mov al, byte [0x43ed32]
mov byte [esp + 0x3e], al
nop dword [eax + eax]
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x38], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 7
jl 0x4312f0
lea eax, [esp + 0x38]
push eax
call fcn.00425b30
add esp, 4
call fcn.0040b0e0
test al, al
je 0x43134c
mov word [0x44e2a1], 0
mov byte [0x44e2a3], 0
mov byte [0x44e2a0], 1
mov ecx, dword [0x4598f8]
xor edx, edx
mov dword [esp + 0x228], edx
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f07c]
addss xmm2, dword [0x43f0a0]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov eax, dword [str.sCH_]
mov dword [esp + 8], eax
mov al, byte [0x43eca4]
mov byte [esp + 0xc], al
nop dword [eax]
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 8], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 5
jl 0x4313e0
lea eax, [esp + 8]
push eax
call fcn.00425b30
add esp, 4
call fcn.0040b0e0
test al, al
je 0x43142f
mov dword [0x44e2a0], 0x100
mov ecx, dword [0x4598f8]
xor edx, edx
mov dword [esp + 0x228], edx
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f07c]
addss xmm2, dword [0x43f0ac]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov eax, dword [str.uPIX_]
mov dword [esp + 0x10], eax
mov al, byte [0x43ec7c]
mov byte [esp + 0x14], al
nop
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x10], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 5
jl 0x4314c0
lea eax, [esp + 0x10]
push eax
call fcn.00425b30
add esp, 4
call fcn.0040b0e0
test al, al
je 0x43150f
mov dword [0x44e2a0], 0x10000
mov ecx, dword [0x4598f8]
xor edx, edx
mov dword [esp + 0x228], edx
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f07c]
addss xmm2, dword [0x43f0c0]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov eax, dword [str.qWT_]
mov dword [esp + 0x18], eax
mov al, byte [0x43ec6c]
mov byte [esp + 0x1c], al
nop
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x18], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 5
jl 0x4315a0
lea eax, [esp + 0x18]
push eax
call fcn.00425b30
add esp, 4
call fcn.0040b0e0
test al, al
je 0x4315f4
mov dword [0x44e2a0], 0x1000000
jmp 0x432f90
cmp byte [0x44e2a0], 0
je 0x431ceb
mov ecx, dword [0x4598f8]
movss xmm2, dword [0x43f020]
mov dword [esp + 0x11c], 0x42aa0000
mov dword [esp + 0x120], 0x42e10000
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
mov esi, dword [eax + 0x294]
mov eax, dword [esi + 0x2c]
movzx eax, byte [eax + 0x8d]
cmp eax, 0xc
jne 0x431662
push 0xb
push 0
lea eax, [esp + 0x124]
mov ecx, esi
push eax
call fcn.0041f070
jmp 0x43169a
movd xmm1, eax
xorps xmm3, xmm3
cvtdq2ps xmm1, xmm1
dec eax
push eax
push ecx
lea eax, [esp + 0x124]
mov ecx, esi
movaps xmm0, xmm1
subss xmm0, dword [0x43efc0]
mulss xmm0, dword [0x43f058]
divss xmm0, xmm1
movss dword [esp], xmm0
push eax
call fcn.0041f1b0
push 0xffffffffffffffff
push dword [esi + 0x54]
mov ecx, esi
push dword [esi + 0x5c]
call fcn.0041ecb0
cmp byte [0x43ecbb], 0
mov ecx, dword [0x4598f8]
mov dword [esi + 0x54], 0
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c0]
addss xmm2, dword [0x43f09c]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
movups xmm0, xmmword [str.LHIYSJ]
mov eax, dword [0x43ecb8]
mov esi, dword [0x4598cc]
movups xmmword [esp + 0x160], xmm0
mov dword [esp + 0x170], eax
je 0x4318ea
xor edx, edx
mov dword [esp + 0x228], edx
cmp esi, 2
jl 0x4318b1
movaps xmm0, xmmword [0x43f230]
mov eax, 4
movaps xmm4, xmmword [0x43f190]
movaps xmm3, xmmword [0x43f580]
movaps xmm6, xmmword [0x43f1c0]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x80], xmm0
mov ecx, dword [esp + 0x80]
movd xmm7, eax
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x160]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x160], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x164]
pxor xmm1, xmm0
movd dword [esp + edx + 0x164], xmm1
add edx, 8
cmp edx, 0x10
jl 0x4317a2
mov dword [esp + 0x228], edx
cmp edx, 0x14
jge 0x4318ea
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x228]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x160], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0x14
jl 0x4318b1
push dword [0x44e2d0]
lea eax, [esp + 0x164]
push eax
call fcn.00425b30
mov ecx, dword [0x4598f8]
xor edx, edx
add esp, 8
mov dword [esp + 0x228], edx
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
movss xmm2, dword [eax + 0x10]
subss xmm0, dword [eax + 0x50]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c0]
addss xmm2, dword [0x43f0a0]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov ax, word [0x43ec90]
mov word [esp + 0xe0], ax
mov al, byte [0x43ec92]
mov byte [esp + 0xe2], al
movups xmm0, xmmword [0x43ec80]
movups xmmword [esp + 0xd0], xmm0
cmp esi, 2
jl 0x431b00
movaps xmm0, xmmword [0x43f230]
mov eax, 4
movaps xmm4, xmmword [0x43f190]
movaps xmm3, xmmword [0x43f580]
movaps xmm6, xmmword [0x43f1c0]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x80], xmm0
mov ecx, dword [esp + 0x80]
movd xmm7, eax
nop dword [eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0xd0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0xd0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0xd4]
pxor xmm1, xmm0
movd dword [esp + edx + 0xd4], xmm1
add edx, 8
cmp edx, 0x10
jl 0x4319f0
mov dword [esp + 0x228], edx
cmp edx, 0x13
jge 0x431b39
nop
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x228]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0xd0], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0x13
jl 0x431b00
push dword [0x44e2d4]
lea eax, [esp + 0xd4]
push eax
call fcn.00425b30
movq xmm0, qword [str.qW_XHTHZ_]
add esp, 8
mov al, byte [0x43ec64]
xor edx, edx
movq qword [esp + 0x18c], xmm0
mov byte [esp + 0x194], al
mov dword [esp + 0x228], edx
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x18c], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 9
jl 0x431b75
xor edx, edx
mov dword [esp + 0x228], edx
cmp byte [0x44e2bd], dl
je 0x431c0a
mov eax, dword [str.yZNRJX_]
mov dword [esp + 0x40], eax
mov ax, word [0x43ed30]
mov word [esp + 0x44], ax
mov al, byte [0x43ed32]
mov byte [esp + 0x46], al
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 7
jl 0x431bd5
lea edx, [esp + 0x40]
jmp 0x431c69
movq xmm0, qword [str.qW_XHTHZ_]
mov al, byte [0x43ec64]
movq qword [esp + 0x98], xmm0
mov byte [esp + 0xa0], al
nop word [eax + eax]
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x98], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 9
jl 0x431c30
lea edx, [esp + 0x98]
mov ecx, dword [0x4598f8]
xorps xmm1, xmm1
push edx
push str.Overlay_:__s
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0d8]
addss xmm2, xmm1
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
call fcn.00425b30
add esp, 8
cmp byte [0x44e2a1], 0
je 0x432427
mov ecx, dword [0x4598f8]
movss xmm2, dword [0x43f020]
mov dword [esp + 0x148], 0x42aa0000
mov dword [esp + 0x14c], 0x433b8000
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
mov esi, dword [eax + 0x294]
mov eax, dword [esi + 0x2c]
movzx eax, byte [eax + 0x8d]
cmp eax, 0xc
jne 0x431d59
push 0xb
push 0
lea eax, [esp + 0x150]
mov ecx, esi
push eax
call fcn.0041f070
jmp 0x431d91
movd xmm1, eax
xorps xmm3, xmm3
cvtdq2ps xmm1, xmm1
dec eax
push eax
push ecx
lea eax, [esp + 0x150]
mov ecx, esi
movaps xmm0, xmm1
subss xmm0, dword [0x43efc0]
mulss xmm0, dword [0x43f058]
divss xmm0, xmm1
movss dword [esp], xmm0
push eax
call fcn.0041f1b0
push 0xffffffffffffffff
push dword [esi + 0x54]
mov ecx, esi
push dword [esi + 0x5c]
call fcn.0041ecb0
mov ecx, dword [0x4598f8]
mov dword [esi + 0x54], 0
push str.Weapons
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0b0]
addss xmm2, dword [0x43f088]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
call fcn.00425b30
mov ecx, dword [0x4598f8]
mov dword [esp], 0x3f800000
push 0x3fffffff
mov dword [esp + 0x200], 0x43a28000
mov eax, dword [ecx + 0x1a10]
mov dword [esp + 0x204], 0x42b40000
mov dword [esp + 0x1a0], 0x437a0000
mov dword [esp + 0x1a4], 0x42b40000
mov byte [eax + 0x84], 1
lea eax, [esp + 0x200]
mov ecx, dword [ecx + 0x1a10]
push eax
lea eax, [esp + 0x1a4]
push eax
mov ecx, dword [ecx + 0x294]
call fcn.0041f650
mov ecx, dword [0x4598f8]
push str._F2_
push str._s_AK47
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0ac]
addss xmm2, dword [0x43f090]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
call fcn.00425b30
mov ecx, dword [0x4598f8]
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0ac]
addss xmm2, dword [0x43f09c]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
push str._F3_
push str._s_LR300
call fcn.00425b30
mov ecx, dword [0x4598f8]
push str._F4_
push str._s_MP5
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0ac]
addss xmm2, dword [0x43f0a4]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
call fcn.00425b30
mov ecx, dword [0x4598f8]
push str._F5_
push str._s_TOMMY
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0ac]
addss xmm2, dword [0x43f0ac]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
call fcn.00425b30
mov ecx, dword [0x4598f8]
push str._F6_
push str._s_CUSTOM
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0ac]
addss xmm2, dword [0x43f0bc]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
call fcn.00425b30
mov ecx, dword [0x4598f8]
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
movss xmm2, dword [eax + 0x10]
subss xmm0, dword [eax + 0x50]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0cc]
addss xmm2, dword [0x43f088]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
push str.Scopes
movss dword [eax + 0xec], xmm0
call fcn.00425b30
mov ecx, dword [0x4598f8]
add esp, 0x28
mov dword [esp + 0x1a4], 0x44034000
mov dword [esp + 0x1a8], 0x42b40000
mov dword [esp + 0x1ac], 0x43e10000
mov eax, dword [ecx + 0x1a10]
mov dword [esp], 0x3f800000
push 0x3fffffff
mov dword [esp + 0x1b4], 0x42b40000
mov byte [eax + 0x84], 1
lea eax, [esp + 0x1a8]
mov ecx, dword [ecx + 0x1a10]
push eax
lea eax, [esp + 0x1b4]
push eax
mov ecx, dword [ecx + 0x294]
call fcn.0041f650
mov ecx, dword [0x4598f8]
push str._NUM0_
push str._s_HOLO
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c8]
addss xmm2, dword [0x43f090]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
call fcn.00425b30
mov ecx, dword [0x4598f8]
push str._NUM1_
push str._s_8X
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c8]
addss xmm2, dword [0x43f09c]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
call fcn.00425b30
mov ecx, dword [0x4598f8]
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c8]
addss xmm2, dword [0x43f0a4]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
push str._NUM2_
push str._s_16X
movss dword [eax + 0xec], xmm0
call fcn.00425b30
mov ecx, dword [0x4598f8]
push str._NUM3_
push str._s_SIMPLE
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c8]
addss xmm2, dword [0x43f0ac]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
call fcn.00425b30
add esp, 0x20
cmp byte [0x44e2a2], 0
je 0x432f83
mov ecx, dword [0x4598f8]
movss xmm2, dword [0x43f020]
mov dword [esp + 0x150], 0x42aa0000
mov dword [esp + 0x154], 0x43834000
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
mov esi, dword [eax + 0x294]
mov eax, dword [esi + 0x2c]
movzx eax, byte [eax + 0x8d]
cmp eax, 0xc
jne 0x432495
push 0xb
push 0
lea eax, [esp + 0x158]
mov ecx, esi
push eax
call fcn.0041f070
jmp 0x4324cd
movd xmm1, eax
xorps xmm3, xmm3
cvtdq2ps xmm1, xmm1
dec eax
push eax
push ecx
lea eax, [esp + 0x158]
mov ecx, esi
movaps xmm0, xmm1
subss xmm0, dword [0x43efc0]
mulss xmm0, dword [0x43f058]
divss xmm0, xmm1
movss dword [esp], xmm0
push eax
call fcn.0041f1b0
push 0xffffffffffffffff
push dword [esi + 0x54]
mov ecx, esi
push dword [esi + 0x5c]
call fcn.0041ecb0
mov ecx, dword [0x4598f8]
mov dword [esi + 0x54], 0
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0a8]
addss xmm2, dword [0x43f09c]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov ax, word [0x43ed28]
movq xmm0, qword [0x43ed20]
movq qword [esp + 0x13c], xmm0
mov word [esp + 0x144], ax
test ah, ah
je 0x4325b6
xor edx, edx
mov dword [esp + 0x228], edx
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x13c], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0xa
jl 0x432584
lea eax, [esp + 0x13c]
push eax
call fcn.00425b30
mov edi, dword [0x4598f8]
add esp, 4
mov edx, 0x437a0000
mov eax, dword [edi + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [edi + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c0]
addss xmm2, dword [0x43f09c]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov eax, dword [edi + 0x1a10]
lea esi, [eax + 0x1c0]
mov dword [esp + 0x22c], eax
mov dword [eax + 0x1ac], 0x437a0000
mov ecx, dword [esi]
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x432696
inc ecx
test eax, eax
je 0x432675
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x43267a
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.004159f0
mov eax, dword [esp + 0x22c]
mov ecx, dword [esi]
mov edx, dword [eax + 0x1ac]
mov eax, dword [esi + 8]
movq xmm0, qword [0x43ed14]
movq qword [esp + 0x58], xmm0
mov dword [eax + ecx*4], edx
inc dword [esi]
and dword [edi + 0x1af8], 0xfffffffe
cmp byte [str.CVTONRR], 0
mov eax, dword [0x43ed1c]
mov dword [esp + 0x60], eax
je 0x432826
xor edx, edx
cmp dword [0x4598cc], 2
mov dword [esp + 0x228], edx
jl 0x4327f0
movaps xmm2, xmmword [0x43f190]
mov eax, 4
movaps xmm4, xmmword [0x43f580]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
mov dword [esp + 0x228], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x43f230]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x43f1a0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x43ed14]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x58], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x5c]
pxor xmm1, xmm0
movd dword [esp + 0x5c], xmm1
nop
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x228]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x58], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0xc
jl 0x4327f0
sub esp, 8
mov dword [esp + 0x230], 0
lea eax, [esp + 0x234]
mov dword [esp + 0x234], 0x3f800000
lea ecx, [esp + 0x60]
push eax
lea eax, [esp + 0x234]
push eax
push 0x44e2c4
call fcn.00427640
mov ecx, dword [0x4598f8]
add esp, 0x14
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0a8]
addss xmm2, dword [0x43f0a4]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov ax, word [0x43ec9c]
movq xmm0, qword [str.VTONRR]
movq qword [esp + 0x130], xmm0
mov word [esp + 0x138], ax
test ah, ah
je 0x432933
xor edx, edx
mov dword [esp + 0x228], edx
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x130], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0xa
jl 0x432901
lea eax, [esp + 0x130]
push eax
call fcn.00425b30
mov edi, dword [0x4598f8]
add esp, 4
mov edx, 0x437a0000
mov eax, dword [edi + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [edi + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c0]
addss xmm2, dword [0x43f0a4]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov eax, dword [edi + 0x1a10]
lea esi, [eax + 0x1c0]
mov dword [esp + 0x22c], eax
mov dword [eax + 0x1ac], 0x437a0000
mov ecx, dword [esi]
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x432a13
inc ecx
test eax, eax
je 0x4329f2
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x4329f7
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.004159f0
mov eax, dword [esp + 0x22c]
mov ecx, dword [esi]
mov edx, dword [eax + 0x1ac]
mov eax, dword [esi + 8]
movq xmm0, qword [0x43ece0]
movq qword [esp + 0x64], xmm0
mov dword [eax + ecx*4], edx
inc dword [esi]
and dword [edi + 0x1af8], 0xfffffffe
cmp byte [0x43eceb], 0
mov eax, dword [0x43ece8]
mov edi, dword [0x4598cc]
mov dword [esp + 0x6c], eax
je 0x432ba6
xor edx, edx
mov dword [esp + 0x228], edx
cmp edi, 2
jl 0x432b70
movaps xmm2, xmmword [0x43f190]
mov eax, 4
movaps xmm4, xmmword [0x43f580]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
mov dword [esp + 0x228], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x43f230]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x43f1a0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x43ece0]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x64], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x68]
pxor xmm1, xmm0
movd dword [esp + 0x68], xmm1
nop
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x228]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x64], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0xc
jl 0x432b70
sub esp, 8
mov dword [esp + 0x230], 0
lea eax, [esp + 0x234]
mov dword [esp + 0x234], 0x3f800000
lea ecx, [esp + 0x6c]
push eax
lea eax, [esp + 0x234]
push eax
push 0x44e2c8
call fcn.00427640
mov ecx, dword [0x4598f8]
add esp, 0x14
cmp byte [0x43ed13], 0
mov esi, dword [0x43ed10]
mov dword [esp + 0x2c], esi
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
mov ecx, dword [str.wO_IPG_e]
mov dword [esp + 0x28], ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0a8]
addss xmm2, dword [0x43f0b8]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
je 0x432dbf
xor edx, edx
mov dword [esp + 0x228], edx
cmp edi, 2
jl 0x432d90
movaps xmm2, xmmword [0x43f190]
mov eax, 4
movaps xmm4, xmmword [0x43f580]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x43f230]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x43f1a0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x28], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, esi
pxor xmm1, xmm0
movd dword [esp + 0x2c], xmm1
jmp 0x432dbf
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x28], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 8
jl 0x432d90
mov edx, 0x44e2bd
lea ecx, [esp + 0x28]
call fcn.004270b0
mov ecx, dword [0x4598f8]
xor edx, edx
mov dword [esp + 0x228], edx
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c4]
addss xmm2, dword [0x43f0b8]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov eax, dword [str.jX__]
mov dword [esp + 0x20], eax
mov al, byte [0x43ec74]
mov byte [esp + 0x24], al
nop dword [eax]
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 5
jl 0x432e60
mov edx, 0x44e2be
lea ecx, [esp + 0x20]
call fcn.004270b0
mov ecx, dword [0x4598f8]
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0d0]
addss xmm2, dword [0x43f0b8]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov ax, word [0x43ed08]
movq xmm0, qword [str.KUHOU_V2A]
movq qword [esp + 0x124], xmm0
mov word [esp + 0x12c], ax
test ah, ah
je 0x432f72
xor edx, edx
mov dword [esp + 0x228], edx
nop
mov eax, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x228]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x124], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0xa
jl 0x432f40
mov edx, 0x44e2bc
lea ecx, [esp + 0x124]
call fcn.004270b0
cmp byte [0x44e2a3], 0
je 0x4336d1
mov ecx, dword [0x4598f8]
movss xmm2, dword [0x43f020]
mov dword [esp + 0x158], 0x42aa0000
mov dword [esp + 0x15c], 0x43a8c000
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
mov esi, dword [eax + 0x294]
mov eax, dword [esi + 0x2c]
movzx eax, byte [eax + 0x8d]
cmp eax, 0xc
jne 0x432ff1
push 0xb
push 0
lea eax, [esp + 0x160]
mov ecx, esi
push eax
call fcn.0041f070
jmp 0x433029
movd xmm1, eax
xorps xmm3, xmm3
cvtdq2ps xmm1, xmm1
dec eax
push eax
push ecx
lea eax, [esp + 0x160]
mov ecx, esi
movaps xmm0, xmm1
subss xmm0, dword [0x43efc0]
mulss xmm0, dword [0x43f058]
divss xmm0, xmm1
movss dword [esp], xmm0
push eax
call fcn.0041f1b0
push 0xffffffffffffffff
push dword [esi + 0x54]
mov ecx, esi
push dword [esi + 0x5c]
call fcn.0041ecb0
mov ecx, dword [0x4598f8]
xorps xmm1, xmm1
mov dword [esi + 0x54], 0
xor edx, edx
mov dword [esp + 0x228], edx
mov eax, dword [ecx + 0x1a10]
lea esi, [edx + 4]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0d4]
addss xmm2, xmm1
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov eax, dword [str.zag0D]
movq xmm0, qword [str.tPYR_]
mov edi, dword [0x4598cc]
mov dword [esp + 0x50], eax
mov al, byte [0x43ecdc]
movq qword [esp + 0x48], xmm0
mov byte [esp + 0x54], al
cmp edi, 2
jl 0x433200
movaps xmm2, xmmword [0x43f190]
mov eax, 0x1f
movaps xmm4, xmmword [0x43f580]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, esi
psrad xmm1, xmm5
movd xmm6, eax
mov eax, dword [0x43f230]
movaps xmm0, xmm1
psrld xmm0, xmm6
mov dword [esp + 0x228], edx
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x43f1a0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.tPYR_]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x48], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x4c]
pxor xmm1, xmm0
movd dword [esp + 0x4c], xmm1
nop dword [eax]
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x228]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x48], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0xd
jl 0x433200
push dword [0x44e28c]
lea eax, [esp + 0x4c]
push eax
call fcn.00425b30
mov ecx, dword [0x4598f8]
xor edx, edx
add esp, 8
mov dword [esp + 0x228], edx
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
movss xmm2, dword [eax + 0x10]
subss xmm0, dword [eax + 0x50]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c4]
addss xmm2, dword [0x43f09c]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov al, byte [0x43ed54]
mov byte [esp + 0xc0], al
movups xmm0, xmmword [str.kTHUIWI_5_cec4H]
movups xmmword [esp + 0xb0], xmm0
cmp edi, 2
jl 0x433432
movaps xmm0, xmmword [0x43f230]
mov eax, 0x1f
movaps xmm4, xmmword [0x43f190]
movaps xmm3, xmmword [0x43f580]
movaps xmm6, xmmword [0x43f1c0]
movaps xmmword [esp + 0x80], xmm0
mov ecx, dword [esp + 0x80]
movd xmm5, esi
movd xmm7, eax
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0xb0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0xb0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0xb4]
pxor xmm1, xmm0
movd dword [esp + edx + 0xb4], xmm1
add edx, 8
cmp edx, 0x10
jl 0x433323
mov dword [esp + 0x228], edx
cmp edx, 0x11
jge 0x43346b
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x228]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0xb0], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0x11
jl 0x433432
push dword [0x44e290]
lea eax, [esp + 0xb4]
push eax
call fcn.00425b30
mov ecx, dword [0x4598f8]
xor edx, edx
add esp, 8
mov dword [esp + 0x228], edx
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
movss xmm2, dword [eax + 0x10]
subss xmm0, dword [eax + 0x50]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0c4]
addss xmm2, dword [0x43f0a0]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov ax, word [0x43ecfc]
mov word [esp + 0x100], ax
mov al, byte [0x43ecfe]
mov byte [esp + 0x102], al
movups xmm0, xmmword [0x43ecec]
movups xmmword [esp + 0xf0], xmm0
cmp edi, 2
jl 0x433680
movaps xmm0, xmmword [0x43f230]
mov eax, 0x1f
movaps xmm4, xmmword [0x43f190]
movaps xmm3, xmmword [0x43f580]
movaps xmm6, xmmword [0x43f1c0]
movaps xmmword [esp + 0x80], xmm0
mov ecx, dword [esp + 0x80]
movd xmm5, esi
movd xmm7, eax
nop dword [eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0xf0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0xf0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0xf4]
pxor xmm1, xmm0
movd dword [esp + edx + 0xf4], xmm1
add edx, 8
cmp edx, 0x10
jl 0x433570
mov dword [esp + 0x228], edx
cmp edx, 0x13
jge 0x4336b9
nop
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x228]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0xf0], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0x13
jl 0x433680
push dword [0x44e294]
lea eax, [esp + 0xf4]
push eax
call fcn.00425b30
add esp, 8
jmp 0x4336d7
mov edi, dword [0x4598cc]
mov ecx, dword [0x4598f8]
mov eax, dword [ecx + 0x1a10]
mov byte [eax + 0x84], 1
mov eax, dword [ecx + 0x1a10]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x50]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x54]
addss xmm0, dword [0x43f0dc]
addss xmm2, dword [0x43f0c4]
movss dword [eax + 0xd0], xmm0
movss dword [eax + 0xd4], xmm2
movss xmm1, dword [eax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xec]
maxss xmm0, xmm2
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xec], xmm0
mov eax, dword [str.zawmtE]
movq xmm0, qword [str.nHHURP]
mov dword [esp + 0x78], eax
mov ax, word [0x43ed40]
movq qword [esp + 0x70], xmm0
mov word [esp + 0x7c], ax
test ah, ah
je 0x4338d6
xor edx, edx
mov dword [esp + 0x228], edx
cmp edi, 2
jl 0x4338a0
movaps xmm2, xmmword [0x43f190]
mov eax, 4
movaps xmm4, xmmword [0x43f580]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
mov dword [esp + 0x228], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x43f230]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x43f1a0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.nHHURP]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x70], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x43f1c0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x43f200]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x74]
pxor xmm1, xmm0
movd dword [esp + 0x74], xmm1
nop dword [eax + eax]
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x228]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x70], cl
inc edx
mov dword [esp + 0x228], edx
cmp edx, 0xe
jl 0x4338a0
lea eax, [esp + 0x70]
push eax
call fcn.00425b30
add esp, 4
call fcn.0040fcb0
call fcn.0040a7c0
mov eax, dword [0x459950]
push 0
push 7
push eax
mov ecx, dword [eax]
call dword [ecx + 0xe4]
mov eax, dword [0x459950]
push 0
push 0x1b
push eax
mov ecx, dword [eax]
call dword [ecx + 0xe4]
mov eax, dword [0x459950]
push 0
push 0xae
push eax
mov ecx, dword [eax]
call dword [ecx + 0xe4]
movss xmm1, dword [0x44e2b8]
movss xmm0, dword [0x44e2ac]
movss xmm2, dword [0x43f0b4]
mulss xmm0, xmm1
push 0
push ecx
mov edx, dword [0x459950]
mulss xmm0, xmm2
mov dword [esp], 0x3f800000
mov esi, dword [edx]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm0, xmm2
movzx ecx, al
cvttss2si eax, xmm0
movss xmm0, dword [0x44e2b0]
mulss xmm0, xmm1
shl eax, 8
or ecx, eax
shl ecx, 8
mulss xmm0, xmm2
cvttss2si eax, xmm0
movss xmm0, dword [0x44e2b4]
mulss xmm0, xmm1
movzx eax, al
or ecx, eax
shl ecx, 8
mulss xmm0, xmm2
cvttss2si eax, xmm0
movzx eax, al
or ecx, eax
push ecx
push 3
push 0
push 0
push edx
call dword [esi + 0xac]
mov eax, dword [0x459950]
push eax
mov ecx, dword [eax]
call dword [ecx + 0xa4]
test eax, eax
js 0x4339f0
call fcn.0040aad0
mov eax, dword [0x4598f8]
xor ecx, ecx
add eax, 0x1c84
cmp byte [eax], cl
cmovne ecx, eax
call fcn.004246d0
mov eax, dword [0x459950]
push eax
mov ecx, dword [eax]
call dword [ecx + 0xa8]
mov eax, dword [0x459950]
push 0
push 0
push 0
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x44]
cmp eax, 0x88760868
jne 0x433a21
mov eax, dword [0x459950]
push eax
mov ecx, dword [eax]
call dword [ecx + 0xc]
cmp eax, 0x88760869
jne 0x433a21
call fcn.004304e0
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x430c0c
mov ecx, dword [0x459934]
test ecx, ecx
je 0x433ac2
mov edx, dword [0x459938]
test edx, edx
je 0x433a5c
mov eax, dword [edx]
push edx
call dword [eax + 8]
mov ecx, dword [0x459934]
mov dword [0x459938], 0
mov edx, dword [0x459930]
test edx, edx
je 0x433a7c
mov eax, dword [edx]
push edx
call dword [eax + 8]
mov ecx, dword [0x459934]
mov dword [0x459930], 0
mov edx, dword [0x45992c]
test edx, edx
je 0x433aae
mov eax, dword [edx]
push edx
call dword [eax + 8]
mov eax, dword [0x4598f8]
mov ecx, dword [0x459934]
mov dword [0x45992c], 0
mov eax, dword [eax + 0x98]
mov dword [eax + 8], 0
test ecx, ecx
je 0x433ac2
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [0x459934], 0
mov esi, dword [0x4598f8]
mov ecx, esi
mov dword [0x45993c], 0
call fcn.00409be0
mov eax, dword [0x4598f8]
xor ecx, ecx
cmp eax, esi
cmove eax, ecx
mov dword [0x4598f8], eax
test esi, esi
je 0x433b0e
mov ecx, esi
call fcn.00415f40
mov eax, dword [0x4598f8]
test eax, eax
je 0x433b04
dec dword [eax + 0x370]
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
mov ecx, dword [0x459950]
test ecx, ecx
je 0x433b28
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [0x459950], 0
mov ecx, dword [0x459954]
test ecx, ecx
je 0x433b42
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [0x459954], 0
mov ecx, dword [esp + 0x25c]
pop edi
pop esi
xor ecx, esp
call fcn.004384ec
mov esp, ebp
pop ebp
ret