Function at 0x10021440
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1002c212
mov eax, dword fs:[0]
push eax
mov eax, 0x1334
call fcn.1002b710
mov eax, dword [0x1003600c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, dword [0x102320bc]
test ecx, ecx
je 0x100243c6
cmp dword [ecx + 0x3c], 0
je 0x100243c6
mov eax, dword [ecx + 0x2c]
xor esi, esi
xor eax, 0x13855c
mov dword [ebp - 0x11fc], esi
jbe 0x100243c6
mov edx, dword [0x1023219c]
cmp eax, esi
jbe 0x100243af
test esi, esi
jle 0x100243af
mov eax, dword [ecx + 0x44]
xor eax, 0x30fd16
mov ebx, dword [eax + esi*4]
mov dword [ebp - 0x11c8], ebx
test ebx, ebx
je 0x100243af
cmp ebx, edx
je 0x100243af
mov eax, dword [ebx + 0x210]
cmp eax, 0x20
je 0x100214eb
cmp eax, 0x21
jne 0x100243af
mov eax, ebx
shr eax, 0x10
test eax, eax
je 0x100243af
movq xmm0, qword [edx + 0x24]
mov eax, dword [edx + 0x2c]
movq qword [ebp - 0x125c], xmm0
movq xmm0, qword [ebx + 0x24]
movq qword [ebp - 0x1268], xmm0
movss xmm0, dword [ebp - 0x1264]
movss xmm2, dword [ebp - 0x1268]
subss xmm2, dword [ebp - 0x125c]
subss xmm0, dword [ebp - 0x1258]
mov dword [ebp - 0x1254], eax
mov eax, dword [ebx + 0x2c]
mov dword [ebp - 0x1260], eax
movss xmm1, dword [ebp - 0x1260]
subss xmm1, dword [ebp - 0x1254]
mulss xmm2, xmm2
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm2, xmm0
addss xmm2, xmm1
xorps xmm1, xmm1
cvtps2pd xmm0, xmm2
ucomisd xmm1, xmm0
ja 0x1002157a
sqrtsd xmm0, xmm0
jmp 0x1002157f
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
cvtsd2ss xmm0, xmm0
lea eax, [ebp - 0xfec]
mov edx, ebx
push eax
push 6
lea ecx, [ebp - 0x1340]
movss dword [ebp - 0x11c4], xmm0
movss xmm0, dword [ebx + 0x4ec]
movss dword [ebp - 0x11d4], xmm0
call fcn.1001ffc0
lea eax, [ebp - 0x1084]
mov edx, ebx
push eax
push 5
lea ecx, [ebp - 0x12ec]
call fcn.1001ffc0
lea eax, [ebp - 0x10b4]
mov edx, ebx
push eax
push 0x3c
lea ecx, [ebp - 0x1334]
call fcn.1001ffc0
lea eax, [ebp - 0x10a8]
mov edx, ebx
push eax
push 0xa
lea ecx, [ebp - 0x1328]
call fcn.1001ffc0
lea eax, [ebp - 0x1090]
mov edx, ebx
push eax
push 0x37
lea ecx, [ebp - 0x1304]
call fcn.1001ffc0
lea eax, [ebp - 0x109c]
mov edx, ebx
push eax
push 0x1f
lea ecx, [ebp - 0x12f8]
call fcn.1001ffc0
lea eax, [ebp - 0x106c]
mov edx, ebx
push eax
push 0x30
lea ecx, [ebp - 0x131c]
call fcn.1001ffc0
lea eax, [ebp - 0x1078]
mov edx, ebx
push eax
push 0x1a
lea ecx, [ebp - 0x1310]
call fcn.1001ffc0
add esp, 0x40
cmp dword [0x10232190], 0
jne 0x1002168e
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11b4], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push dword [0x10232124]
lea edx, [ebp - 0x1004]
lea ecx, [ebp - 0x10b4]
call fcn.1001eab0
add esp, 4
cmp dword [0x10232190], 0
jne 0x100216e8
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11b4], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push dword [0x10232124]
lea edx, [ebp - 0x1010]
lea ecx, [ebp - 0x10a8]
call fcn.1001eab0
add esp, 4
cmp dword [0x10232190], 0
jne 0x10021742
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11b4], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push dword [0x10232124]
lea edx, [ebp - 0x1028]
lea ecx, [ebp - 0x1090]
call fcn.1001eab0
add esp, 4
cmp dword [0x10232190], 0
jne 0x1002179c
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11b4], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push dword [0x10232124]
lea edx, [ebp - 0x101c]
lea ecx, [ebp - 0x109c]
call fcn.1001eab0
add esp, 4
cmp dword [0x10232190], 0
jne 0x100217f6
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11b4], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push dword [0x10232124]
lea edx, [ebp - 0x1034]
lea ecx, [ebp - 0x106c]
call fcn.1001eab0
add esp, 4
cmp dword [0x10232190], 0
jne 0x10021850
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11b4], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push dword [0x10232124]
lea edx, [ebp - 0x1040]
lea ecx, [ebp - 0x1078]
call fcn.1001eab0
add esp, 4
cmp dword [0x10232190], 0
jne 0x100218aa
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11b4], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push dword [0x10232124]
lea edx, [ebp - 0xff8]
lea ecx, [ebp - 0x1084]
call fcn.1001eab0
mov eax, dword [0x102321b0]
add esp, 4
test eax, eax
jne 0x100218fa
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12cc], eax
mov ecx, eax
mov dword [ebp - 4], 0
call fcn.10026a60
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], eax
cmp byte [eax + 0x80], 0
mov edx, dword [0x1023219c]
je 0x1002191f
mov ecx, dword [edx + 0x3fc]
test ecx, ecx
jle 0x1002191f
cmp ecx, dword [ebx + 0x3fc]
je 0x100243a9
cmp byte [eax + 0x81], 0
je 0x1002193e
mov eax, dword [edx + 0x44c]
test eax, eax
jle 0x1002193e
cmp eax, dword [ebx + 0x44c]
je 0x100243a9
cmp dword [0x10232190], 0
jne 0x1002197e
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11b4], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movq xmm0, qword [ebx + 0x24]
lea edx, [ebp - 0xe74]
mov eax, dword [ebx + 0x2c]
lea ecx, [ebp - 0x1280]
push dword [0x10232124]
movq qword [ebp - 0x1280], xmm0
mov dword [ebp - 0x1278], eax
call fcn.1001eab0
add esp, 4
test al, al
je 0x100243a3
cmp dword [0x10232190], 0
jne 0x100219f6
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11b4], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push dword [0x10232124]
lea edx, [ebp - 0xe80]
lea ecx, [ebp - 0xfec]
call fcn.1001eab0
add esp, 4
test al, al
je 0x100243a3
cvttss2si eax, dword [ebp - 0xe80]
lea ecx, [ebp - 0x11f0]
mov edx, ecx
mov dword [ebp - 0x11f0], eax
cvttss2si eax, dword [ebp - 0x1004]
mov dword [ebp - 0x11ec], eax
cvttss2si eax, dword [ebp - 0x1010]
mov dword [ebp - 0x11e8], eax
cvttss2si eax, dword [ebp - 0x101c]
mov dword [ebp - 0x11e4], eax
cvttss2si eax, dword [ebp - 0x1028]
mov dword [ebp - 0x11e0], eax
cvttss2si eax, dword [ebp - 0x1034]
mov dword [ebp - 0x11dc], eax
cvttss2si eax, dword [ebp - 0x1040]
mov dword [ebp - 0x11d8], eax
lea eax, [ebp - 0x11ec]
nop dword [eax + eax]
lea esi, [eax + 4]
lea edi, [ebp - 0x11d4]
cmp esi, edi
jne 0x10021aaf
mov esi, dword [eax]
cmp esi, dword [ecx]
jge 0x10021aa7
mov ecx, eax
jmp 0x10021ae0
cmp esi, dword [edx]
jl 0x10021ae0
mov edx, eax
jmp 0x10021ae0
mov edi, dword [ecx]
mov ebx, dword [eax]
mov dword [ebp - 0x11b4], edi
mov edi, dword [esi]
cmp edi, ebx
jge 0x10021ad0
cmp edi, dword [ebp - 0x11b4]
cmovl ecx, esi
cmp ebx, dword [edx]
jl 0x10021ade
mov edx, eax
jmp 0x10021ade
cmp ebx, dword [ebp - 0x11b4]
cmovl ecx, eax
cmp edi, dword [edx]
cmovge edx, esi
mov eax, esi
add eax, 4
lea esi, [ebp - 0x11d4]
cmp eax, esi
jne 0x10021a90
movss xmm1, dword [ebp - 0xe7c]
subss xmm1, dword [ebp - 0xff4]
mov eax, dword [ecx]
lea ecx, [ebp - 0x11f0]
mov dword [ebp - 0x11b4], eax
mov esi, ecx
mov eax, dword [edx]
lea edx, [ebp - 0x11ec]
mov dword [ebp - 0x11bc], eax
movaps xmm0, xmm1
addss xmm1, xmm1
mulss xmm0, dword [0x10031c6c]
addss xmm0, dword [ebp - 0xe7c]
movss dword [ebp - 0x11f0], xmm0
movss xmm0, dword [ebp - 0x1000]
subss xmm0, xmm1
movss dword [ebp - 0x11ec], xmm0
movss xmm0, dword [ebp - 0x100c]
movss dword [ebp - 0x11e8], xmm0
movss xmm0, dword [ebp - 0x1018]
movss dword [ebp - 0x11e4], xmm0
movss xmm0, dword [ebp - 0x1024]
subss xmm0, xmm1
movss dword [ebp - 0x11e0], xmm0
movss xmm0, dword [ebp - 0x1030]
movss dword [ebp - 0x11dc], xmm0
movss xmm0, dword [ebp - 0x103c]
movss dword [ebp - 0x11d8], xmm0
movss xmm0, dword [ecx]
lea edi, [edx + 4]
lea eax, [ebp - 0x11d4]
mov ebx, esi
cmp edi, eax
jne 0x10021bd9
movss xmm1, dword [edx]
comiss xmm0, xmm1
seta al
test al, al
je 0x10021bc7
mov ecx, edx
jmp 0x10021c17
movss xmm0, dword [esi]
comiss xmm0, xmm1
seta al
test al, al
jne 0x10021c17
mov esi, edx
jmp 0x10021c17
movss xmm1, dword [edi]
movss xmm2, dword [edx]
comiss xmm2, xmm1
seta al
test al, al
je 0x10021bff
comiss xmm0, xmm1
movss xmm0, dword [esi]
mov esi, edx
cmova ecx, edi
comiss xmm0, xmm2
cmova esi, ebx
jmp 0x10021c15
comiss xmm0, xmm2
movss xmm0, dword [esi]
cmova ecx, edx
comiss xmm0, xmm1
seta al
test al, al
jne 0x10021c15
mov esi, edi
mov edx, edi
add edx, 4
lea eax, [ebp - 0x11d4]
cmp edx, eax
jne 0x10021ba2
movss xmm0, dword [esi]
mov eax, dword [ebp - 0x11b4]
mov ebx, dword [ebp - 0x11bc]
mov edi, dword [ebp - 0x11c8]
sub ebx, eax
movss dword [ebp - 0x11cc], xmm0
subss xmm0, dword [ecx]
movd xmm1, eax
cmp dword [edi + 0x210], 0x240005
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x11bc], ebx
movss dword [ebp - 0x11d0], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x11b4], xmm1
mulss xmm0, dword [0x10031be8]
movss xmm1, dword [edi + 0x4ec]
movss dword [ebp - 0x11f4], xmm1
movss dword [ebp - 0x11f8], xmm0
jne 0x10021e52
mov eax, dword [0x1023219c]
movq xmm0, qword [eax + 0x24]
mov eax, dword [eax + 0x2c]
movq qword [ebp - 0x1274], xmm0
movq xmm0, qword [edi + 0x24]
movq qword [ebp - 0x1250], xmm0
movss xmm0, dword [ebp - 0x124c]
movss xmm2, dword [ebp - 0x1250]
subss xmm2, dword [ebp - 0x1274]
subss xmm0, dword [ebp - 0x1270]
mov dword [ebp - 0x126c], eax
mov eax, dword [edi + 0x2c]
mov dword [ebp - 0x1248], eax
movss xmm1, dword [ebp - 0x1248]
subss xmm1, dword [ebp - 0x126c]
mulss xmm2, xmm2
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm2, xmm0
addss xmm2, xmm1
xorps xmm1, xmm1
cvtps2pd xmm0, xmm2
ucomisd xmm1, xmm0
ja 0x10021d27
sqrtsd xmm0, xmm0
jmp 0x10021d2c
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
cmp dword [0x10232190], 0
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x11b8], xmm0
jne 0x10021d78
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11c0], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push dword [0x10232124]
lea edx, [ebp - 0xe80]
lea ecx, [ebp - 0xfec]
call fcn.1001eab0
add esp, 4
test al, al
je 0x10021e52
movss xmm0, dword [ebp - 0x11b8]
movss xmm1, dword [0x10031d4c]
comiss xmm1, xmm0
jbe 0x10021e52
mov ecx, dword [0x102321b0]
test ecx, ecx
jne 0x10021df5
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12e0], eax
mov ecx, eax
mov dword [ebp - 4], 2
call fcn.10026a60
movss xmm0, dword [ebp - 0x11b8]
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 4], 0
je 0x10021e58
cvtps2pd xmm0, xmm0
sub esp, 8
lea eax, [ebp - 0xaf8]
movsd qword [esp], xmm0
push dword [edi + 0x394]
push str._s___0.1fm_
push eax
call fcn.100268d0
movss xmm0, dword [ebp - 0xe70]
lea eax, [ebp - 0xaf8]
addss xmm0, dword [0x10031ca4]
add esp, 0x14
push eax
cvttss2si eax, xmm0
push 0xff00ff00
push eax
cvttss2si eax, dword [ebp - 0xe74]
push eax
call fcn.1001f850
add esp, 0x10
mov ecx, dword [0x102321b0]
test ecx, ecx
jne 0x10021e8c
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12dc], eax
mov ecx, eax
mov dword [ebp - 4], 3
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x85], 0
je 0x10022159
movss xmm0, dword [ecx + 0x88]
mulss xmm0, dword [0x10031d38]
movss xmm4, dword [ebp - 0xe70]
cvttss2si esi, xmm0
movss xmm0, dword [ecx + 0x8c]
mulss xmm0, dword [0x10031d38]
or esi, 0xff00
shl esi, 8
cvttss2si eax, xmm0
movss xmm0, dword [ecx + 0x90]
cvtps2pd xmm0, xmm0
movzx eax, al
or esi, eax
shl esi, 8
mulsd xmm0, qword [0x10031c78]
cvttsd2si eax, xmm0
movaps xmm0, xmm4
subss xmm0, dword [ebp - 0xe7c]
movzx eax, al
or esi, eax
cmp dword [0x10232190], 0
maxss xmm0, dword [0x10031c24]
movaps xmm2, xmm0
movss dword [ebp - 0x11b0], xmm0
divss xmm2, dword [0x10031c68]
movss dword [ebp - 0x11c0], xmm2
jne 0x10021f7c
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
movss xmm4, dword [ebp - 0xe70]
movss xmm2, dword [ebp - 0x11c0]
movups xmmword [0x102320f8], xmm0
mov dword [ebp - 0x11b8], eax
movss xmm0, dword [ebp - 0x11b0]
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm1, dword [ebp - 0xe74]
subss xmm4, xmm0
movaps xmm0, xmm2
movaps xmm3, xmm2
mulss xmm0, dword [0x10031bfc]
mov edx, esi
push ecx
mov ecx, dword [0x10232124]
movaps xmm2, xmm4
movss dword [esp], xmm4
subss xmm1, xmm0
movss dword [ebp - 0x11b8], xmm0
addss xmm3, xmm1
call fcn.1001ec70
add esp, 4
cmp dword [0x10232190], 0
jne 0x10021fff
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm1, dword [ebp - 0xe74]
mov edx, esi
movss xmm0, dword [ebp - 0x11b0]
movss xmm2, dword [ebp - 0xe70]
subss xmm1, dword [ebp - 0x11b8]
subss xmm2, xmm0
push ecx
mov ecx, dword [0x10232124]
addss xmm1, dword [ebp - 0x11c0]
addss xmm0, xmm2
movaps xmm3, xmm1
movss dword [esp], xmm0
call fcn.1001ec70
add esp, 4
cmp dword [0x10232190], 0
jne 0x10022088
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm2, dword [ebp - 0xe70]
mov edx, esi
movss xmm3, dword [ebp - 0xe74]
subss xmm2, dword [ebp - 0x11b0]
subss xmm3, dword [ebp - 0x11b8]
movss xmm1, dword [ebp - 0x11c0]
push ecx
mov ecx, dword [0x10232124]
addss xmm2, dword [ebp - 0x11b0]
addss xmm1, xmm3
movss dword [esp], xmm2
call fcn.1001ec70
add esp, 4
cmp dword [0x10232190], 0
jne 0x10022112
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm2, dword [ebp - 0x11b0]
mov edx, esi
movss xmm0, dword [ebp - 0xe70]
movss xmm1, dword [ebp - 0xe74]
subss xmm0, xmm2
subss xmm1, dword [ebp - 0x11b8]
push ecx
mov ecx, dword [0x10232124]
addss xmm2, xmm0
movss dword [esp], xmm0
movaps xmm3, xmm1
call fcn.1001ec70
mov ecx, dword [0x102321b0]
add esp, 4
test ecx, ecx
jne 0x1002218d
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12d8], eax
mov ecx, eax
mov dword [ebp - 4], 7
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x41], 0
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
je 0x100221d3
push 0x47
call esi
cwde
test eax, 0x30d40
je 0x100221cd
mov ecx, dword [0x1023219c]
lea edx, [ebp - 0x12bc]
mov eax, dword [edi + 0x2c]
movq xmm0, qword [edi + 0x24]
mov dword [ebp - 0x12b4], eax
mov eax, dword [ecx]
push edx
movq qword [ebp - 0x12bc], xmm0
call dword [eax + 0x34]
mov ecx, dword [0x102321b0]
test ecx, ecx
jne 0x10022207
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12b0], eax
mov ecx, eax
mov dword [ebp - 4], 8
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x3f], 0
je 0x10022245
push 0x46
call esi
test ax, ax
je 0x1002223f
mov eax, dword [0x1023219c]
lea ecx, [ebp - 0x12c8]
push ecx
mov ecx, edi
movq xmm0, qword [eax + 0x24]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x12c0], eax
mov eax, dword [edi]
movq qword [ebp - 0x12c8], xmm0
call dword [eax + 0x34]
mov ecx, dword [0x102321b0]
test ecx, ecx
jne 0x10022279
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12d4], eax
mov ecx, eax
mov dword [ebp - 4], 9
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x3d], 0
je 0x1002233a
push dword [0x102321a4]
movss xmm0, dword [ebp - 0x11c4]
lea eax, [ebp - 0x230]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push 0x1003104c
push eax
call fcn.10001520
cvttss2si esi, dword [ebp - 0xe74]
add esp, 0x14
lea eax, [ebp - 0x230]
push eax
push 0xff000000
cvttss2si edi, dword [ebp - 0xe70]
lea eax, [esi - 1]
push edi
push eax
call fcn.1001f7c0
lea eax, [ebp - 0x230]
push eax
push 0xff000000
lea eax, [esi + 1]
push edi
push eax
call fcn.1001f7c0
lea eax, [ebp - 0x230]
push eax
push 0xff000000
lea eax, [edi - 1]
push eax
push esi
call fcn.1001f7c0
lea eax, [ebp - 0x230]
push eax
push 0xff000000
lea eax, [edi + 1]
push eax
push esi
call fcn.1001f7c0
add esp, 0x40
lea eax, [ebp - 0x230]
push eax
push 0xffffffffffffffff
push edi
push esi
call fcn.1001f7c0
mov ecx, dword [0x102321b0]
add esp, 0x10
mov edi, dword [ebp - 0x11c8]
test ecx, ecx
jne 0x1002236e
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12d0], eax
mov ecx, eax
mov dword [ebp - 4], 0xa
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x3c], 0
je 0x1002316d
movss xmm0, dword [edi + 0x4ec]
movss xmm1, dword [0x10031d28]
ucomiss xmm0, xmm1
movss dword [ebp - 0x11b0], xmm0
lahf
test ah, 0x44
jp 0x100224cb
cmp dword [0x10232190], 0
jne 0x100223dd
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xf10]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xf10], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xf08], eax
sub esi, 2
mov dword [ebp - 0xf0c], esi
lea eax, [esi + 6]
mov dword [ebp - 0xf04], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xed0], ecx
push 0xff00ff00
mov dword [ebp - 0xec8], eax
lea ecx, [ebp - 0xed0]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xecc], edx
push ecx
mov dword [ebp - 0xec4], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
movss xmm1, dword [0x10031d28]
comiss xmm0, dword [0x10031d24]
jb 0x10022607
comiss xmm1, xmm0
jb 0x10022607
cmp dword [0x10232190], 0
jne 0x10022521
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xee0]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xee0], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xed8], eax
sub esi, 2
mov dword [ebp - 0xedc], esi
lea eax, [esi + 6]
mov dword [ebp - 0xed4], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xf00], ecx
push 0xff00ff00
mov dword [ebp - 0xef8], eax
lea ecx, [ebp - 0xf00]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xefc], edx
push ecx
mov dword [ebp - 0xef4], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
comiss xmm0, dword [0x10031d1c]
jb 0x1002274b
movss xmm1, dword [0x10031d20]
comiss xmm1, xmm0
jb 0x1002274b
cmp dword [0x10232190], 0
jne 0x10022665
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xf90]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xf90], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xf88], eax
sub esi, 2
mov dword [ebp - 0xf8c], esi
lea eax, [esi + 6]
mov dword [ebp - 0xf84], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xfd0], ecx
push 0xff00ff00
mov dword [ebp - 0xfc8], eax
lea ecx, [ebp - 0xfd0]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xfcc], edx
push ecx
mov dword [ebp - 0xfc4], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
comiss xmm0, dword [0x10031d0c]
jb 0x1002288f
movss xmm1, dword [0x10031d18]
comiss xmm1, xmm0
jb 0x1002288f
cmp dword [0x10232190], 0
jne 0x100227a9
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xec0]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xec0], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xeb8], eax
sub esi, 2
mov dword [ebp - 0xebc], esi
lea eax, [esi + 6]
mov dword [ebp - 0xeb4], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xeb0], ecx
push 0xff00ff00
mov dword [ebp - 0xea8], eax
lea ecx, [ebp - 0xeb0]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xeac], edx
push ecx
mov dword [ebp - 0xea4], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
comiss xmm0, dword [0x10031d04]
jb 0x100229d3
movss xmm1, dword [0x10031d08]
comiss xmm1, xmm0
jb 0x100229d3
cmp dword [0x10232190], 0
jne 0x100228ed
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xea0]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xea0], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xe98], eax
sub esi, 2
mov dword [ebp - 0xe9c], esi
lea eax, [esi + 6]
mov dword [ebp - 0xe94], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xe90], ecx
push 0xffe1ff00
mov dword [ebp - 0xe88], eax
lea ecx, [ebp - 0xe90]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xe8c], edx
push ecx
mov dword [ebp - 0xe84], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
comiss xmm0, dword [0x10031cf8]
jb 0x10022b17
movss xmm1, dword [0x10031d00]
comiss xmm1, xmm0
jb 0x10022b17
cmp dword [0x10232190], 0
jne 0x10022a31
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xfe0]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xfe0], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xfd8], eax
sub esi, 2
mov dword [ebp - 0xfdc], esi
lea eax, [esi + 6]
mov dword [ebp - 0xfd4], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xfc0], ecx
push 0xffe1ff00
mov dword [ebp - 0xfb8], eax
lea ecx, [ebp - 0xfc0]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xfbc], edx
push ecx
mov dword [ebp - 0xfb4], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
comiss xmm0, dword [0x10031ce8]
jb 0x10022c5b
movss xmm1, dword [0x10031cf4]
comiss xmm1, xmm0
jb 0x10022c5b
cmp dword [0x10232190], 0
jne 0x10022b75
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xfb0]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xfb0], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xfa8], eax
sub esi, 2
mov dword [ebp - 0xfac], esi
lea eax, [esi + 6]
mov dword [ebp - 0xfa4], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xfa0], ecx
push 0xffe1cc00
mov dword [ebp - 0xf98], eax
lea ecx, [ebp - 0xfa0]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xf9c], edx
push ecx
mov dword [ebp - 0xf94], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
comiss xmm0, dword [0x10031ce0]
jb 0x10022d9f
movss xmm1, dword [0x10031ce4]
comiss xmm1, xmm0
jb 0x10022d9f
cmp dword [0x10232190], 0
jne 0x10022cb9
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xef0]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xef0], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xee8], eax
sub esi, 2
mov dword [ebp - 0xeec], esi
lea eax, [esi + 6]
mov dword [ebp - 0xee4], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xf80], ecx
push 0xffe1cc00
mov dword [ebp - 0xf78], eax
lea ecx, [ebp - 0xf80]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xf7c], edx
push ecx
mov dword [ebp - 0xf74], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
comiss xmm0, dword [0x10031cd0]
jb 0x10022ee3
movss xmm1, dword [0x10031cdc]
comiss xmm1, xmm0
jb 0x10022ee3
cmp dword [0x10232190], 0
jne 0x10022dfd
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xf70]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xf70], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xf68], eax
sub esi, 2
mov dword [ebp - 0xf6c], esi
lea eax, [esi + 6]
mov dword [ebp - 0xf64], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xf60], ecx
push 0xffff0000
mov dword [ebp - 0xf58], eax
lea ecx, [ebp - 0xf60]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xf5c], edx
push ecx
mov dword [ebp - 0xf54], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
comiss xmm0, dword [0x10031ca8]
jb 0x10023027
movss xmm1, dword [0x10031ccc]
comiss xmm1, xmm0
jb 0x10023027
cmp dword [0x10232190], 0
jne 0x10022f41
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xf50]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, dword [0x10031ca4]
sub edi, 0x16
mov dword [ebp - 0xf50], edi
cvttss2si esi, xmm0
lea eax, [edi + 0x2d]
mov dword [ebp - 0xf48], eax
sub esi, 2
mov dword [ebp - 0xf4c], esi
lea eax, [esi + 6]
mov dword [ebp - 0xf44], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xf40], ecx
push 0xffff0000
mov dword [ebp - 0xf38], eax
lea ecx, [ebp - 0xf40]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xf3c], edx
push ecx
mov dword [ebp - 0xf34], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
movss xmm0, dword [ebp - 0x11b0]
comiss xmm0, dword [0x10031c24]
jb 0x10023167
movss xmm1, dword [0x10031ca4]
comiss xmm1, xmm0
jb 0x10023167
cmp dword [0x10232190], 0
jne 0x1002308d
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
movss xmm1, dword [0x10031ca4]
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0xe74]
addss xmm0, dword [0x10031c98]
mov ebx, dword [0x10232124]
push 0
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0xf30]
cvttss2si edi, xmm0
push 0xff000000
push 1
push ecx
push 1
push ebx
movss xmm0, dword [ebp - 0xe70]
addss xmm0, xmm1
sub edi, 0x16
mov dword [ebp - 0xf30], edi
lea eax, [edi + 0x2d]
cvttss2si esi, xmm0
mov dword [ebp - 0xf28], eax
sub esi, 2
mov dword [ebp - 0xf2c], esi
lea eax, [esi + 6]
mov dword [ebp - 0xf24], eax
mov eax, dword [ebx]
call dword [eax + 0xac]
movss xmm0, dword [ebp - 0x11b0]
mulss xmm0, dword [0x10031cec]
divss xmm0, dword [0x10031d28]
call fcn.1002b740
push 0
lea ecx, [edi + 1]
push ecx
mov dword [esp], 0
lea edx, [esi + 1]
add eax, ecx
mov dword [ebp - 0xf20], ecx
push 0xffff0000
mov dword [ebp - 0xf18], eax
lea ecx, [ebp - 0xf20]
push 1
lea eax, [edx + 4]
mov dword [ebp - 0xf1c], edx
push ecx
mov dword [ebp - 0xf14], eax
mov eax, dword [ebx]
push 1
push ebx
call dword [eax + 0xac]
mov ecx, dword [0x102321b0]
mov ebx, dword [ebp - 0x11bc]
test ecx, ecx
jne 0x100231a1
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12ac], eax
mov ecx, eax
mov dword [ebp - 4], 0xb
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x42], 0
je 0x100232cf
movss xmm1, dword [ebp - 0x11f4]
comiss xmm1, dword [0x10031c24]
jb 0x100232cf
movss xmm0, dword [0x10031d28]
minss xmm0, xmm1
movaps xmm1, xmm0
comiss xmm1, dword [0x10031d14]
movss dword [ebp - 0x11f4], xmm1
jbe 0x100231e7
mov edi, 0xff00ff00
jmp 0x100231fb
comiss xmm1, dword [0x10031ce4]
mov edi, 0xffff0000
mov eax, 0xffff9b00
cmova edi, eax
cmp dword [0x10232190], 0
jne 0x1002323b
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0x11f8]
mov ecx, 0xff000000
movss xmm4, dword [ebp - 0x11b4]
mov esi, dword [0x10232124]
subss xmm4, xmm0
mulss xmm0, dword [0x10031bfc]
mov edx, esi
movss xmm3, dword [ebp - 0x11d0]
movss xmm2, dword [0x10031c48]
movss xmm1, dword [ebp - 0x11cc]
subss xmm4, xmm0
movaps xmm0, xmm4
movss dword [ebp - 0x11b8], xmm4
call fcn.1001f440
movss xmm3, dword [ebp - 0x11f4]
mov edx, esi
mulss xmm3, dword [ebp - 0x11d0]
mov ecx, edi
movss xmm2, dword [0x10031c24]
movss xmm1, dword [ebp - 0x11cc]
divss xmm3, dword [0x10031d28]
movss xmm0, dword [ebp - 0x11b8]
call fcn.1001f440
mov ecx, dword [0x102321b0]
test ecx, ecx
jne 0x10023303
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12a8], eax
mov ecx, eax
mov dword [ebp - 4], 0xc
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x3b], 0
je 0x1002357c
cmp dword [0x10232190], 0
movss xmm4, dword [ebp - 0xe70]
movaps xmm0, xmm4
subss xmm0, dword [ebp - 0xe7c]
maxss xmm0, dword [0x10031c24]
movaps xmm2, xmm0
movss dword [ebp - 0x11bc], xmm0
divss xmm2, dword [0x10031c68]
movss dword [ebp - 0x11b8], xmm2
jne 0x1002339b
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
movss xmm4, dword [ebp - 0xe70]
movss xmm2, dword [ebp - 0x11b8]
movups xmmword [0x102320f8], xmm0
mov dword [ebp - 0x11ac], eax
movss xmm0, dword [ebp - 0x11bc]
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm1, dword [ebp - 0xe74]
subss xmm4, xmm0
movaps xmm0, xmm2
movaps xmm3, xmm2
mulss xmm0, dword [0x10031bfc]
or edx, 0xffffffff
push ecx
mov ecx, dword [0x10232124]
movaps xmm2, xmm4
movss dword [esp], xmm4
subss xmm1, xmm0
movss dword [ebp - 0x11c0], xmm0
addss xmm3, xmm1
call fcn.1001ec70
add esp, 4
cmp dword [0x10232190], 0
jne 0x1002341f
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm1, dword [ebp - 0xe74]
or edx, 0xffffffff
movss xmm0, dword [ebp - 0x11bc]
movss xmm2, dword [ebp - 0xe70]
subss xmm1, dword [ebp - 0x11c0]
subss xmm2, xmm0
push ecx
mov ecx, dword [0x10232124]
addss xmm1, dword [ebp - 0x11b8]
addss xmm0, xmm2
movaps xmm3, xmm1
movss dword [esp], xmm0
call fcn.1001ec70
add esp, 4
cmp dword [0x10232190], 0
jne 0x100234a9
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm2, dword [ebp - 0xe70]
or edx, 0xffffffff
movss xmm3, dword [ebp - 0xe74]
subss xmm2, dword [ebp - 0x11bc]
subss xmm3, dword [ebp - 0x11c0]
movss xmm1, dword [ebp - 0x11b8]
push ecx
mov ecx, dword [0x10232124]
addss xmm2, dword [ebp - 0x11bc]
addss xmm1, xmm3
movss dword [esp], xmm2
call fcn.1001ec70
add esp, 4
cmp dword [0x10232190], 0
jne 0x10023534
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm2, dword [ebp - 0x11bc]
or edx, 0xffffffff
movss xmm0, dword [ebp - 0xe70]
movss xmm1, dword [ebp - 0xe74]
subss xmm0, xmm2
subss xmm1, dword [ebp - 0x11c0]
push ecx
mov ecx, dword [0x10232124]
addss xmm2, xmm0
movss dword [esp], xmm0
movaps xmm3, xmm1
call fcn.1001ec70
mov ecx, dword [0x102321b0]
add esp, 4
test ecx, ecx
jne 0x100235b0
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12a4], eax
mov ecx, eax
mov dword [ebp - 4], 0xd
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x6d], 0
je 0x100236ab
cmp dword [0x10232190], 0
jne 0x100235fa
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm2, dword [ebp - 0x11f8]
xor ecx, ecx
movss xmm4, dword [ebp - 0x11b4]
movaps xmm0, xmm2
mulss xmm0, dword [0x10031bfc]
subss xmm4, xmm2
mov edi, dword [0x10232124]
mov edx, edi
cvttss2si esi, dword [ebp - 0x11d0]
subss xmm4, xmm0
movaps xmm1, xmm2
movd xmm0, ebx
addss xmm1, xmm2
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x11c0], xmm4
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movd xmm0, esi
cvtdq2ps xmm3, xmm0
movss dword [ebp - 0x11b8], xmm1
movaps xmm2, xmm1
movss xmm1, dword [ebp - 0x11cc]
movaps xmm0, xmm4
call fcn.1001f440
movss xmm3, dword [ebp - 0x11b8]
movss xmm2, dword [ebp - 0x11cc]
movss xmm1, dword [ebp - 0x11c0]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push ecx
mov ecx, edi
movss dword [esp], xmm0
call fcn.1001f180
mov ecx, dword [0x102321b0]
add esp, 4
test ecx, ecx
jne 0x100236df
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x12a0], eax
mov ecx, eax
mov dword [ebp - 4], 0xe
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x61], 0
mov ebx, dword [ebp - 0x11c8]
je 0x10023738
cmp dword [ebx + 0x3fc], 0
je 0x10023738
movss xmm0, dword [ebp - 0xe70]
lea eax, [ebx + 0x404]
push eax
xorps xmm1, xmm1
addss xmm0, xmm1
push 0xffffffffffffffff
push dword [0x102321a4]
push 0x10031060
cvttss2si eax, xmm0
push 0xffff0000
push eax
cvttss2si eax, dword [ebp - 0xe74]
push eax
call fcn.1001f7c0
mov ecx, dword [0x102321b0]
add esp, 0x1c
test ecx, ecx
jne 0x1002376c
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x129c], eax
mov ecx, eax
mov dword [ebp - 4], 0xf
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0xa4], 0
je 0x100238ac
cmp dword [0x10232190], 0
jne 0x100237b5
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
xor esi, esi
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], esi
mov dword [0x102321a0], esi
mov dword [0x10232190], eax
jmp 0x100237bb
mov esi, dword [0x10232130]
lea eax, [ebp - 0x1060]
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x1058]
sub eax, dword [ebp - 0x1060]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10031bfc]
call fcn.1002b740
mov edi, eax
lea eax, [ebp - 0x1050]
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [ebp - 0x1044]
sub ecx, dword [ebp - 0x104c]
sub ecx, 0xc
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10031bfc]
call fcn.1002b740
cmp dword [0x10232190], 0
mov esi, eax
jne 0x1002385e
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
mov eax, dword [0x102321b0]
test eax, eax
jne 0x10023894
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x1298], eax
mov ecx, eax
mov dword [ebp - 4], 0x10
call fcn.10026a60
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], eax
movd xmm0, dword [eax + 0x20]
cvtdq2ps xmm0, xmm0
push esi
push edi
call fcn.1001f950
mov ecx, dword [0x102321b0]
add esp, 8
test ecx, ecx
jne 0x100238e0
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x1294], eax
mov ecx, eax
mov dword [ebp - 4], 0x11
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x12], 0
je 0x10023f7a
movss xmm0, dword [0x10031d3c]
comiss xmm0, dword [ebp - 0x11c4]
jbe 0x10023f7a
cmp dword [ebx + 0x3fc], 0
je 0x10023b6e
mov ecx, dword [ebp - 0x11c8]
or ebx, 0xffffffff
mov eax, dword [ecx + 0x400]
dec eax
cmp eax, 7
ja case.default.0x10023921
jmp dword [eax*4 + 0x100243e8]
mov ebx, 0xffaa0000
jmp case.default.0x10023921
mov ebx, 0xffa6780c
jmp case.default.0x10023921
mov ebx, 0xff10a49e
jmp case.default.0x10023921
mov ebx, 0xff20a414
jmp case.default.0x10023921
mov ebx, 0xff104ea4
jmp case.default.0x10023921
mov ebx, 0xff9610a4
jmp case.default.0x10023921
mov ebx, 0xff444444
jmp case.default.0x10023921
mov ebx, 0xffa4a4a4
lea eax, [ecx + 0x404]
push eax
lea eax, [ebp - 0x150]
push str.__s_
push eax
call fcn.100268f0
lea ecx, [ebp - 0x150]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10023982
sub ecx, edx
lea eax, [ecx + 1]
push eax
lea eax, [ebp - 0xe68]
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x150]
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jle 0x10023b68
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x1244], 0
mov dword [ebp - 0x1234], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x1230], 0xf
mov byte [ebp - 0x1244], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100239e2
sub ecx, edx
lea eax, [ebp - 0x150]
push ecx
push eax
lea ecx, [ebp - 0x1244]
call fcn.10026450
push 0x50
lea eax, [ebp - 0x11a8]
mov dword [ebp - 4], 0x12
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x11a8]
call fcn.10025a90
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x1244]
cmp dword [ebp - 0x1230], 0x10
mov eax, dword [ebp - 0x1234]
cmovae ecx, dword [ebp - 0x1244]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0x11ec]
push eax
lea ecx, [ebp - 0x11a8]
call fcn.10025dc0
lea ecx, [ebp - 0x11a8]
call fcn.100259d0
mov byte [ebp - 4], 0x14
lea edx, [ebp - 0x11ec]
cmp dword [ebp - 0x11d8], 8
cmovae edx, dword [ebp - 0x11ec]
sub esp, 0x18
mov esi, esp
mov ecx, edx
mov dword [esi], 0
lea edi, [ecx + 2]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10023aa0
sub ecx, edi
sar ecx, 1
push ecx
push edx
mov ecx, esi
call fcn.100261e0
movss xmm0, dword [ebp - 0x11c4]
subss xmm0, dword [0x10031cb8]
cvttss2si edx, dword [ebp - 0x11c4]
push dword [0x102320d8]
cvttss2si ecx, xmm0
push ebx
call fcn.1001f5e0
mov byte [ebp - 4], 0x12
add esp, 0x20
mov edx, dword [ebp - 0x11d8]
cmp edx, 8
jb 0x10023b27
mov ecx, dword [ebp - 0x11ec]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10023b1d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100243e2
push edx
push ecx
call fcn.1002a93d
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x1230]
cmp edx, 0x10
jb 0x10023b68
mov ecx, dword [ebp - 0x1244]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10023b5e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100243e2
push edx
push ecx
call fcn.1002a93d
add esp, 8
mov ebx, dword [ebp - 0x11c8]
mov esi, dword [ebx + 0x440]
lea edi, [ebx + 0x400]
lea eax, [esi + 1]
push eax
lea eax, [ebp - 0x3f0]
push edi
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
xor ecx, ecx
test esi, esi
jle 0x10023ba4
mov al, cl
add al, 0x77
xor byte [ebp + ecx - 0x3f0], al
inc ecx
cmp ecx, esi
jl 0x10023b94
lea eax, [ebp - 0x3f0]
push eax
lea eax, [ebp - 0x150]
push 0x10031078
push eax
call fcn.100268f0
lea ecx, [ebp - 0x150]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10023bc8
sub ecx, edx
lea eax, [ecx + 1]
push eax
lea eax, [ebp - 0xcb0]
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x150]
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jle 0x10023f74
lea ecx, [ebp - 0x150]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10023c03
sub ecx, edx
lea eax, [ebp - 0x150]
cmp dword [edi], 0
push ecx
push eax
jne 0x10023dc4
mov dword [ebp - 0x122c], 0
lea ecx, [ebp - 0x122c]
mov dword [ebp - 0x121c], 0
mov dword [ebp - 0x1218], 0xf
mov byte [ebp - 0x122c], 0
call fcn.10026450
push 0x50
lea eax, [ebp - 0x1158]
mov dword [ebp - 4], 0x15
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x1158]
call fcn.10025a90
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x122c]
cmp dword [ebp - 0x1218], 0x10
mov eax, dword [ebp - 0x121c]
cmovae ecx, dword [ebp - 0x122c]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0x11ec]
push eax
lea ecx, [ebp - 0x1158]
call fcn.10025dc0
lea ecx, [ebp - 0x1158]
call fcn.100259d0
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x11ec]
cmp dword [ebp - 0x11d8], 8
cmovae edx, dword [ebp - 0x11ec]
sub esp, 0x18
mov esi, esp
mov ecx, edx
mov dword [esi], 0
lea edi, [ecx + 2]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10023ce7
sub ecx, edi
sar ecx, 1
push ecx
push edx
mov ecx, esi
call fcn.100261e0
cvttss2si edx, dword [ebp - 0x11c4]
cvttss2si ecx, dword [ebp - 0x11c4]
push dword [0x102320d8]
push 0xffffffffffffffff
call fcn.1001f5e0
mov byte [ebp - 4], 0x15
add esp, 0x20
mov edx, dword [ebp - 0x11d8]
cmp edx, 8
jb 0x10023d63
mov ecx, dword [ebp - 0x11ec]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10023d59
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100243e2
push edx
push ecx
call fcn.1002a93d
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x1218]
cmp edx, 0x10
jb 0x10023da4
mov ecx, dword [ebp - 0x122c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10023d9a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100243e2
push edx
push ecx
call fcn.1002a93d
add esp, 8
mov dword [ebp - 0x121c], 0
mov dword [ebp - 0x1218], 0xf
mov byte [ebp - 0x122c], 0
jmp 0x10023f74
mov dword [ebp - 0x1214], 0
lea ecx, [ebp - 0x1214]
mov dword [ebp - 0x1204], 0
mov dword [ebp - 0x1200], 0xf
mov byte [ebp - 0x1214], 0
call fcn.10026450
push 0x50
lea eax, [ebp - 0x1108]
mov dword [ebp - 4], 0x18
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x1108]
call fcn.10025a90
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x1214]
cmp dword [ebp - 0x1200], 0x10
mov eax, dword [ebp - 0x1204]
cmovae ecx, dword [ebp - 0x1214]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0x11ec]
push eax
lea ecx, [ebp - 0x1108]
call fcn.10025dc0
lea ecx, [ebp - 0x1108]
call fcn.100259d0
mov byte [ebp - 4], 0x1a
lea edx, [ebp - 0x11ec]
cmp dword [ebp - 0x11d8], 8
cmovae edx, dword [ebp - 0x11ec]
sub esp, 0x18
mov esi, esp
mov ecx, edx
mov dword [esi], 0
lea edi, [ecx + 2]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10023e90
sub ecx, edi
sar ecx, 1
push ecx
push edx
mov ecx, esi
call fcn.100261e0
movss xmm0, dword [ebp - 0x11c4]
addss xmm0, dword [0x10031cf0]
cvttss2si edx, dword [ebp - 0x11c4]
push dword [0x102320d8]
cvttss2si ecx, xmm0
push 0xffffffffffffffff
call fcn.1001f5e0
mov byte [ebp - 4], 0x18
add esp, 0x20
mov edx, dword [ebp - 0x11d8]
cmp edx, 8
jb 0x10023f18
mov ecx, dword [ebp - 0x11ec]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10023f0e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100243e2
push edx
push ecx
call fcn.1002a93d
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x1200]
cmp edx, 0x10
jb 0x10023f59
mov ecx, dword [ebp - 0x1214]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10023f4f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100243e2
push edx
push ecx
call fcn.1002a93d
add esp, 8
mov dword [ebp - 0x1204], 0
mov dword [ebp - 0x1200], 0xf
mov byte [ebp - 0x1214], 0
mov ecx, dword [0x102321b0]
test ecx, ecx
jne 0x10023fae
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x1290], eax
mov ecx, eax
mov dword [ebp - 4], 0x1b
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0xd], 0
je 0x10024013
mov eax, dword [ebp - 0x11d4]
movss xmm1, dword [0x10031d28]
mov dword [ebp - 0x11d4], eax
movss xmm0, dword [ebp - 0x11d4]
comiss xmm0, xmm1
jbe 0x10023fd8
movaps xmm0, xmm1
push dword [0x102321a4]
cvttss2si eax, dword [ebp - 0xe70]
sub esp, 8
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.HP___.f_
push 0xffffff00
push eax
cvttss2si eax, dword [ebp - 0xe74]
push eax
call fcn.1001f7c0
mov ecx, dword [0x102321b0]
add esp, 0x1c
test ecx, ecx
jne 0x10024047
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x128c], eax
mov ecx, eax
mov dword [ebp - 4], 0x1c
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x44], 0
je 0x10024179
movss xmm1, dword [ebp - 0x11f4]
comiss xmm1, dword [0x10031c24]
jb 0x10024179
movss xmm0, dword [0x10031d28]
minss xmm0, xmm1
comiss xmm0, dword [0x10031d14]
movss dword [ebp - 0x11d4], xmm0
jbe 0x1002408a
mov edi, 0xff00ff00
jmp 0x1002409e
comiss xmm0, dword [0x10031ce4]
mov edi, 0xffff0000
mov eax, 0xffff9b00
cmova edi, eax
cmp dword [0x10232190], 0
jne 0x100240de
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm0, dword [ebp - 0x11f8]
mov ecx, 0xff000000
movss xmm1, dword [ebp - 0x11b4]
subss xmm1, xmm0
mov esi, dword [0x10232124]
cvtps2pd xmm0, xmm0
mov edx, esi
movss xmm3, dword [ebp - 0x11d0]
divsd xmm0, qword [0x10031c40]
movss xmm2, dword [0x10031c74]
cvtps2pd xmm1, xmm1
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss xmm1, dword [ebp - 0x11cc]
movss dword [ebp - 0x11c4], xmm0
call fcn.1001f440
movss xmm3, dword [ebp - 0x11d4]
mov edx, esi
mulss xmm3, dword [ebp - 0x11d0]
mov ecx, edi
movss xmm2, dword [0x10031c58]
movss xmm1, dword [ebp - 0x11cc]
divss xmm3, dword [0x10031d28]
movss xmm0, dword [ebp - 0x11c4]
call fcn.1001f440
mov ecx, dword [0x102321b0]
test ecx, ecx
jne 0x100241ad
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x1288], eax
mov ecx, eax
mov dword [ebp - 4], 0x1d
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x59], 0
je 0x100242aa
mov esi, dword [ebx + 0x440]
lea eax, [esi + 1]
push eax
lea eax, [ebx + 0x400]
push eax
lea eax, [ebp - 0x310]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
xor ecx, ecx
test esi, esi
jle 0x100241f0
nop dword [eax]
mov al, cl
add al, 0x77
xor byte [ebp + ecx - 0x310], al
inc ecx
cmp ecx, esi
jl 0x100241e0
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x530]
push 0x10031078
push eax
call fcn.100268f0
add esp, 0xc
lea eax, [ebp - 0x890]
push eax
lea eax, [ebp - 0x610]
push 0x10031078
push eax
call fcn.10001520
lea ecx, [ebp - 0x530]
add esp, 0xc
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10024230
sub ecx, edx
lea eax, [ecx + 1]
push eax
lea eax, [ebp - 0x890]
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x530]
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jle 0x100242a4
movss xmm0, dword [ebp - 0xe70]
lea eax, [ebp - 0x890]
addss xmm0, dword [0x10031cb4]
push 0x101
push eax
push 0xffffffffffffffff
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0xe74]
subss xmm0, dword [0x10031c84]
push eax
cvttss2si eax, xmm0
push eax
push dword [0x102321a4]
call fcn.1001f540
add esp, 0x18
mov ecx, dword [0x102321b0]
test ecx, ecx
jne 0x100242de
push 0x4c0
call fcn.1002a9ee
add esp, 4
mov dword [ebp - 0x1284], eax
mov ecx, eax
mov dword [ebp - 4], 0x1e
call fcn.10026a60
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x102321b0], ecx
cmp byte [ecx + 0x3e], 0
je 0x1002439d
cmp dword [0x10232190], 0
jne 0x10024328
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
movss xmm2, dword [ebp - 0xe7c]
sub esp, 0x10
movss xmm1, dword [ebp - 0xe80]
movaps xmm3, xmm2
subss xmm3, dword [ebp - 0xff4]
addss xmm2, xmm3
call fcn.1001ee60
add esp, 0x10
cmp dword [0x10232190], 0
jne 0x10024392
push 1
call fcn.1002a9ee
movaps xmm0, xmmword [0x10032200]
add esp, 4
mov dword [ebp - 0x11ac], eax
movups xmmword [0x102320f8], xmm0
mov dword [0x10232130], 0
mov dword [0x102321a0], 0
mov dword [0x10232190], eax
push ecx
mov ecx, ebx
call fcn.10020150
add esp, 4
mov esi, dword [ebp - 0x11fc]
mov edx, dword [0x1023219c]
mov ecx, dword [0x102320bc]
mov eax, dword [ecx + 0x2c]
inc esi
xor eax, 0x13855c
mov dword [ebp - 0x11fc], esi
cmp eax, esi
ja 0x100214ae
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1002a31b
mov esp, ebp
pop ebp
ret
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
sub byte [ecx], bh
add dl, byte [eax]
das
cmp dword [edx], eax
adc byte [esi], dh
cmp dword [edx], eax
adc byte [0x44100239], bh
cmp dword [edx], eax
adc byte [ebx + 0x39], cl
add dl, byte [eax]
push edx
cmp dword [edx], eax
adc byte [ecx + 0x39], bl
add dl, byte [eax]
int3