Function at 0x1001e3a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x138
push esi
mov esi, dword [0x100b7fac]
mov dword [ebp - 0xd4], ecx
mov ecx, esi
push edi
mov dword [ebp - 0x30], edx
mov dword [ebp - 8], ecx
mov eax, dword [ecx + 0x1928]
mov byte [eax + 0x78], 1
mov edi, dword [ecx + 0x1928]
mov dword [ebp - 0x2c], edi
cmp byte [edi + 0x7b], 0
jne 0x1001e734
mov eax, dword [ebx + 0x10]
mov edx, eax
shr edx, 0xe
mov ecx, eax
not dl
shr ecx, 0x14
and edx, 0xffffff01
and ecx, 0xffffff01
mov dword [ebp - 0x3c], edx
mov edx, eax
shr eax, 0x10
shr edx, 0xf
not al
and edx, 0xffffff01
mov dword [ebp - 0x28], ecx
and eax, 0xffffff01
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0x50], eax
test cl, cl
je 0x1001e43d
call fcn.10024720
mov esi, dword [0x100b7fac]
mov ecx, dword [edi + 0x1c8]
xor edx, edx
mov eax, dword [edi + 0x1d0]
push dword [eax + ecx*4 - 4]
mov ecx, dword [ebp - 0xd4]
call fcn.1000b150
add esp, 4
mov dword [ebp - 0x10], eax
cmp dword [esi + 0x1944], eax
jne 0x1001e46f
mov byte [esi + 0x1950], 1
cmp dword [esi + 0x1948], eax
jne 0x1001e47e
mov byte [esi + 0x1954], 1
mov edx, dword [ebp - 0xd4]
mov ecx, edx
cmp edx, 0xffffffff
jae 0x1001e4ac
nop dword [eax + eax]
mov dl, byte [ecx]
test dl, dl
je 0x1001e4a6
cmp dl, 0x23
jne 0x1001e4a0
cmp byte [ecx + 1], dl
je 0x1001e4a6
inc ecx
cmp ecx, 0xffffffff
jb 0x1001e490
mov edx, dword [ebp - 0xd4]
movss xmm0, dword [esi + 0x1854]
movss xmm1, dword [0x1003fc68]
mov eax, dword [esi + 0x1850]
mov dword [ebp - 0x40], eax
movss dword [ebp - 0xdc], xmm0
movss dword [ebp - 0xd8], xmm1
cmp edx, ecx
jne 0x1001e4e6
xorps xmm4, xmm4
movss dword [ebp - 0xe0], xmm4
jmp 0x1001e547
movss xmm3, dword [0x1003fc58]
movaps xmm2, xmm0
push ecx
push ecx
push edx
push ecx
lea ecx, [ebp - 0x68]
mov dword [esp], 0xbf800000
push ecx
mov ecx, eax
call fcn.100359e0
movss xmm1, dword [ebp - 0x68]
xorps xmm4, xmm4
comiss xmm1, xmm4
jbe 0x1001e527
mov eax, dword [ebp - 0x40]
movss xmm0, dword [ebp - 0xdc]
divss xmm0, dword [eax]
subss xmm1, xmm0
addss xmm1, dword [0x1003fb30]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0x64]
cmp byte [ebp - 0x28], 0
je 0x1001e55d
movss xmm0, dword [esi + 0x1854]
mulss xmm0, dword [0x1003fbb4]
mov eax, dword [ebp - 8]
mov esi, dword [esi + 0x1928]
movss xmm5, dword [0x1003fb34]
movss xmm1, dword [eax + 0x1540]
movss xmm2, dword [esi + 0x168]
movaps xmm3, xmm1
comiss xmm4, xmm2
addss xmm3, xmm1
addss xmm3, xmm0
jbe 0x1001e5f4
movss xmm4, dword [esi + 0xc8]
movss xmm1, dword [esi + 0x21c]
mov edi, dword [esi + 0x1c4]
subss xmm4, dword [esi + 0xc]
subss xmm1, dword [esi + 0xc]
test edi, edi
je 0x1001e5e2
mov edx, dword [edi + 0xc]
movss xmm1, dword [edi + 0x18]
subss xmm1, dword [edi + 0x14]
lea eax, [edx + 1]
test eax, eax
cmovns edx, eax
mov eax, dword [edi + 0x34]
lea ecx, [edx*8]
sub ecx, edx
mulss xmm1, dword [eax + ecx*4]
addss xmm1, dword [edi + 0x14]
subss xmm1, dword [esi + 0x3c]
mov edi, dword [ebp - 0x2c]
subss xmm1, xmm4
addss xmm1, xmm2
movaps xmm2, xmm5
maxss xmm2, xmm1
mov eax, dword [ebx + 0xc]
lea ecx, [ebp - 0x68]
push dword [eax + 4]
push dword [eax]
cvttss2si eax, xmm2
movaps xmm2, xmm3
movd xmm1, eax
cvtdq2ps xmm1, xmm1
call fcn.1000d1f0
movss xmm3, dword [edi + 0xc8]
xorps xmm5, xmm5
movss xmm1, dword [ebp - 0x68]
movaps xmm0, xmm3
movss xmm4, dword [edi + 0xcc]
addss xmm0, xmm1
movss xmm2, dword [ebp - 0x64]
add esp, 8
mov eax, dword [ebp - 8]
movss dword [ebp - 0x78], xmm1
movaps xmm1, xmm4
addss xmm1, xmm2
movss dword [ebp - 0xb8], xmm2
movss xmm2, dword [ebp - 0xe0]
comiss xmm2, xmm5
movss dword [ebp - 0xb0], xmm3
movss dword [ebp - 0xac], xmm4
movss dword [ebp - 0xa8], xmm0
movss dword [ebp - 0xa4], xmm1
jbe 0x1001e687
addss xmm2, dword [eax + 0x1554]
jmp 0x1001e68a
xorps xmm2, xmm2
cmp byte [ebp - 0x28], 0
addss xmm0, xmm2
addss xmm1, xmm5
movss dword [ebp - 0x98], xmm3
movss dword [ebp - 0x94], xmm4
mov dword [ebp - 0x58], edi
movss dword [ebp - 0x90], xmm0
movss dword [ebp - 0x8c], xmm1
je 0x1001e775
mov edx, dword [ebp - 0x10]
lea eax, [ebp - 0xb0]
push eax
lea ecx, [ebp - 0x98]
call fcn.1000ccd0
movss xmm0, dword [ebp - 0xa8]
lea edx, [ebp - 0x68]
movss xmm1, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0x10]
movss dword [ebp - 0xdc], xmm0
subss xmm0, xmm1
movss dword [ebp - 0x74], xmm1
movss xmm1, dword [ebp - 0xac]
movss dword [ebp - 0x6c], xmm1
movss dword [ebp - 0x68], xmm0
movss xmm0, dword [ebp - 0xa4]
subss xmm0, xmm1
movss dword [ebp - 0x64], xmm0
call fcn.10013ff0
add esp, 4
test al, al
jne 0x1001e73f
call fcn.10013e60
call fcn.10024840
xor al, al
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov esi, dword [0x100b7fac]
movss xmm0, dword [ebp - 0x78]
mov eax, dword [esi + 0x1928]
mov byte [eax + 0x78], 1
mov edi, dword [esi + 0x1928]
mov dword [ebp - 0x58], edi
subss xmm0, dword [edi + 0x6c]
mov eax, dword [edi + 0x134]
or dword [edi + 0x13c], eax
movss dword [ebp - 0x78], xmm0
jmp 0x1001e7dd
subss xmm1, xmm4
subss xmm0, xmm3
lea ecx, [ebp - 0x68]
movss dword [ebp - 0x64], xmm1
movss xmm1, dword [eax + 0x1540]
movss dword [ebp - 0x68], xmm0
call fcn.1000c3e0
mov edx, dword [ebp - 0x10]
lea eax, [ebp - 0xb0]
push eax
lea ecx, [ebp - 0x98]
call fcn.1000ccd0
add esp, 4
test al, al
je 0x1001e734
movss xmm0, dword [ebp - 0xa8]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xac]
movss dword [ebp - 0x6c], xmm0
movss xmm0, dword [ebp - 0xb0]
movss dword [ebp - 0x74], xmm0
mov edx, dword [ebp - 0x10]
lea ecx, [ebp - 0xb0]
call fcn.1000cf10
mov edx, dword [ebp - 8]
mov byte [ebp - 0x20], al
test al, al
je 0x1001e7ff
mov dword [edx + 0x1bd4], 1
cmp byte [ebp - 0xbc], 0
je 0x1001e895
mov esi, dword [edx + 0x1850]
cmp dword [esi + 0x28], 0x2a
jg 0x1001e81d
mov edi, dword [esi + 0x34]
jmp 0x1001e83c
mov eax, dword [esi + 0x30]
mov ecx, 0xffff
movzx eax, word [eax + 0x54]
cmp ax, cx
jne 0x1001e833
mov edi, dword [esi + 0x34]
jmp 0x1001e83c
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x18]
lea edi, [eax + ecx*8]
mov eax, dword [esi]
add edx, 0x2abc
mov dword [edx], eax
mov eax, dword [esi + 4]
mov esi, dword [ebp - 8]
mov dword [edx + 4], eax
mov eax, dword [esi + 0x1850]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [edx + 8], ecx
mov ecx, edx
mov dword [edx + 0xc], eax
mov eax, dword [esi + 0x1850]
mov eax, dword [eax + 0x48]
mov dword [edx + 0x48], eax
mov eax, dword [esi + 0x1850]
mov eax, dword [eax + 0x4c]
mov dword [edx + 0x4c], eax
mov eax, dword [esi + 0x1850]
mov eax, dword [eax + 0x44]
mov dword [edx + 0x44], eax
mov dword [edx + 0x34], edi
mov eax, dword [edi + 4]
mov dword [edx + 0x38], eax
call fcn.10019d60
mov edi, dword [ebp - 8]
mov edx, dword [ebp - 0x10]
add edi, 0x1c58
test dword [ebx + 0x10], 0x440
mov ecx, dword [ebp - 0x2c]
sete al
mov dword [ebp - 0x38], edi
movzx eax, al
push eax
call fcn.1000d0a0
mov dl, al
add esp, 4
mov byte [ebp - 0x1e], dl
test dl, dl
je 0x1001e940
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax + 0x330]
cmp ecx, dword [eax + 0x338]
jne 0x1001e940
mov byte [ebp - 9], 1
mov byte [ebp - 0x21], 0
cmp byte [ebp - 0x20], 0
mov edx, dword [ebp - 8]
je 0x1001e8f5
cmp byte [edx + 0x3e8], 0
mov byte [ebp - 0xa], 1
jne 0x1001e8f9
mov byte [ebp - 0xa], 0
cmp byte [ebp - 0x28], 0
je 0x1001e952
cmp dword [edx + 0x1944], 0
jne 0x1001e952
mov eax, dword [ebp - 0x10]
cmp dword [edi], eax
jne 0x1001e952
mov eax, dword [ebp - 0x58]
xor edx, edx
mov ecx, dword [eax + 0x1c8]
mov eax, dword [eax + 0x1d0]
push dword [eax + ecx*4 - 4]
mov ecx, str.SCROLLY
call fcn.1000b150
mov edx, dword [ebp - 8]
add esp, 4
cmp dword [edx + 0x1948], eax
jne 0x1001e952
mov cl, 1
jmp 0x1001e954
mov byte [ebp - 9], 0
test dl, dl
je 0x1001e8db
mov byte [ebp - 0x21], 1
mov byte [ebp - 9], 0
jmp 0x1001e8df
xor cl, cl
mov eax, dword [edx + 0x1944]
cmp eax, dword [ebp - 0x10]
je 0x1001e986
mov esi, dword [ebp - 0x10]
cmp dword [edx + 0x1a38], esi
je 0x1001e97b
cmp dword [edx + 0x1a2c], esi
jne 0x1001e986
cmp dword [edx + 0x1a48], 3
jne 0x1001e986
mov dl, 1
mov byte [ebp - 0x1f], 0
mov byte [ebp - 0x12], dl
jmp 0x1001e994
xor dl, dl
mov byte [ebp - 0x1f], 0
mov byte [ebp - 0x12], dl
cmp eax, dword [ebp - 0x10]
je 0x1001e9a8
test byte [ebx + 0x10], 0x10
jne 0x1001e99e
test dl, dl
je 0x1001e9a8
cmp byte [ebp - 0x28], 0
mov byte [ebp - 0x34], 1
je 0x1001e9ac
mov byte [ebp - 0x34], 0
cmp byte [ebp - 0x1e], 0
mov esi, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov dword [ebp - 0x70], esi
mov esi, dword [0x100b7fac]
jne 0x1001e9e7
cmp byte [ebp - 0xa], 0
jne 0x1001e9e7
test cl, cl
jne 0x1001e9e7
test dl, dl
jne 0x1001e9e7
mov edx, dword [ebp - 8]
cmp byte [edx + 0x3e8], cl
je 0x1001eb82
mov byte [ebp - 0x1f], 1
jmp 0x1001eb82
mov ecx, dword [ebp - 0x10]
cmp eax, ecx
je 0x1001eb4d
mov eax, dword [edi + 0x2c]
mov esi, dword [ebp - 0x38]
mov edi, dword [ebx + 8]
inc edi
mov dword [ebp - 0x54], eax
push edi
lea ecx, [esi + 4]
call fcn.10025a80
push edi
lea ecx, [esi + 0x10]
call fcn.10025c90
mov edi, dword [ebp - 0x38]
mov esi, dword [esi + 0x10]
mov eax, dword [edi + 0x18]
mov dword [ebp - 0x40], eax
cmp esi, 1
jb 0x1001ea35
push esi
push dword [ebp - 0x30]
push eax
call dword [ebp - 0x70]
mov eax, dword [ebp - 0x40]
add esp, 0xc
mov byte [eax + esi - 1], 0
mov esi, dword [ebp - 0x30]
lea eax, [ebp - 0x1c]
mov edx, dword [edi + 4]
push eax
push ecx
mov ecx, dword [edi + 0xc]
push esi
mov dword [ebp - 0x1c], 0
call fcn.1000b400
mov ecx, dword [ebp - 0x1c]
add esp, 0xc
sub ecx, esi
mov dword [edi + 0xe5c], 0xbe99999a
mov dword [edi + 0x28], ecx
mov edx, eax
mov ecx, dword [ebp - 0x10]
mov dword [edi + 0x2c], edx
cmp dword [edi], ecx
jne 0x1001eaa1
cmp dword [ebp - 0x54], edx
jne 0x1001eaa1
cmp dword [edi + 0x38], edx
mov ecx, edx
mov eax, dword [edi + 0x40]
cmovl ecx, dword [edi + 0x38]
cmp dword [edi + 0x3c], edx
mov dword [edi + 0x38], ecx
mov ecx, edx
cmovl ecx, dword [edi + 0x3c]
cmp eax, edx
mov dword [edi + 0x3c], ecx
mov ecx, dword [ebp - 0x10]
cmovl edx, eax
mov dword [edi + 0x40], edx
mov edx, dword [ebp - 0x28]
jmp 0x1001eb0d
mov edx, dword [ebp - 0x28]
mov al, dl
mov dword [edi], ecx
xor al, 1
mov dword [edi + 0x34], 0
mov dword [edi + 0xe4e], 0x630000
mov dword [edi + 0xe54], 0
mov dword [edi + 0xe58], 0x3e7
mov dword [edi + 0x3c], 0
mov dword [edi + 0x40], 0
mov dword [edi + 0x38], 0
mov dword [edi + 0x44], 0x10000
mov dword [edi + 0x4c], 0
mov byte [edi + 0x48], al
test dl, dl
jne 0x1001eb0d
mov eax, dword [ebp - 0x34]
mov esi, 1
cmp byte [ebp - 9], dl
movzx eax, al
cmovne eax, esi
mov dword [ebp - 0x34], eax
test dword [ebx + 0x10], 0x2000
je 0x1001eb1a
mov byte [edi + 0x44], 1
test dl, dl
jne 0x1001eb4d
cmp byte [ebp - 0x21], dl
jne 0x1001eb33
cmp byte [ebp - 0xa], dl
je 0x1001eb4d
mov eax, dword [ebp - 8]
cmp byte [eax + 0xf1], dl
je 0x1001eb4d
mov edx, dword [ebp - 0x2c]
mov byte [ebp - 0x34], 1
call fcn.1000c260
call fcn.1000c320
mov ecx, edx
call fcn.10019b80
jmp 0x1001eb67
mov edx, dword [ebp - 0x2c]
call fcn.1000c260
call fcn.1000c320
mov ecx, edx
call fcn.10019b80
cmp byte [ebp - 0x28], 0
jne 0x1001eb79
test byte [ebx + 0x10], 0x80
jne 0x1001eb79
mov edx, dword [ebp - 8]
or dword [edx + 0x1958], 0xc
jmp 0x1001eb7c
mov edx, dword [ebp - 8]
mov esi, dword [0x100b7fac]
movss xmm0, dword [0x1003fb14]
xor al, al
mov byte [ebp - 0x41], al
mov byte [ebp - 0x21], al
mov eax, dword [ebp - 0x10]
cmp dword [edx + 0x1944], eax
jne 0x1001eef9
cmp byte [ebp - 0x3c], 0
jne 0x1001ec1b
cmp byte [edx + 0x1951], 0
jne 0x1001ec1b
mov eax, dword [ebx + 8]
lea ecx, [edi + 4]
inc eax
push eax
call fcn.10025a80
mov edx, dword [edi + 4]
lea eax, [ebp - 0x1c]
push eax
push ecx
push dword [ebp - 0x30]
mov ecx, dword [edi + 0xc]
mov dword [ebp - 0x1c], 0
call fcn.1000b400
mov ecx, dword [ebp - 0x1c]
mov esi, eax
sub ecx, dword [ebp - 0x30]
add esp, 0xc
cmp dword [edi + 0x38], esi
mov edx, esi
movss xmm0, dword [0x1003fb14]
cmovl edx, dword [edi + 0x38]
cmp dword [edi + 0x3c], esi
mov dword [edi + 0x28], ecx
mov ecx, esi
cmovl ecx, dword [edi + 0x3c]
cmp dword [edi + 0x40], esi
mov dword [edi + 0x2c], esi
cmovl esi, dword [edi + 0x40]
mov dword [edi + 0x38], edx
mov edx, dword [ebp - 8]
mov dword [edi + 0x40], esi
mov esi, dword [0x100b7fac]
mov dword [edi + 0x3c], ecx
mov eax, dword [ebx + 8]
mov dword [edi + 0x30], eax
cmp byte [edx + 0xe0], 0
mov dword [edx + 0x2d98], 1
sete al
cmp byte [ebp - 0x28], 0
mov byte [edx + 0x1952], al
movss xmm7, dword [edx + 0xd8]
subss xmm7, dword [ebp - 0x74]
subss xmm7, dword [edx + 0x153c]
addss xmm7, dword [edi + 0x34]
je 0x1001ec78
mov eax, dword [ebp - 0x58]
movss xmm2, dword [edx + 0xdc]
subss xmm2, dword [eax + 0xcc]
subss xmm2, dword [edx + 0x1540]
jmp 0x1001ec84
movss xmm2, dword [edx + 0x1854]
mulss xmm2, xmm0
cmp byte [ebp - 0x34], 0
mov al, byte [edx + 0xbc]
mov byte [ebp - 9], al
jne 0x1001ee09
mov cl, byte [ebp - 0x20]
test cl, cl
je 0x1001ecae
test al, al
jne 0x1001ed19
cmp byte [edx + 0x3ed], al
jne 0x1001ee09
cmp byte [edx + 0x3e8], 0
je 0x1001ed76
cmp byte [edi + 0xe61], 0
jne 0x1001ed76
test cl, cl
je 0x1001ee27
cmp byte [edi + 0x48], 0
je 0x1001ecf0
push 0
mov edx, edi
lea ecx, [ebp - 0xa0]
call fcn.1001c870
movss xmm2, dword [ebp - 0x94]
add esp, 4
movaps xmm1, xmm7
mov ecx, edi
call fcn.1001cb00
mov edx, dword [ebp - 8]
mov dword [edi + 0x38], eax
mov dword [edi + 0x3c], eax
mov dword [edi + 0x40], eax
mov byte [edi + 0x47], 0
mov dword [edi + 0xe5c], 0xbe99999a
jmp 0x1001ee24
cmp byte [edx + 0x3ed], 0
je 0x1001ecae
push 0x1000c
lea edx, [edi + 0x38]
mov ecx, edi
call fcn.1001cf20
add esp, 4
mov byte [edi + 0xe60], 1
lea edx, [edi + 0x38]
mov dword [edi + 0xe5c], 0xbe99999a
mov ecx, edi
push 0x3000d
call fcn.1001cf20
mov esi, dword [0x100b7fac]
add esp, 4
mov edx, dword [ebp - 8]
mov byte [edi + 0xe60], 1
mov dword [edi + 0xe5c], 0xbe99999a
jmp 0x1001ee24
cmp byte [edx + 0xe0], 0
je 0x1001ee27
cmp byte [edi + 0xe61], 0
jne 0x1001ee30
movss xmm0, dword [edx + 0x384]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x1001edb5
movss xmm0, dword [edx + 0x388]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1001ee27
cmp byte [edi + 0x48], 0
je 0x1001edd5
push 0
mov edx, edi
lea ecx, [ebp - 0xa0]
call fcn.1001c870
movss xmm2, dword [ebp - 0x94]
add esp, 4
mov eax, dword [edi + 0x3c]
cmp eax, dword [edi + 0x40]
jne 0x1001ede3
mov eax, dword [edi + 0x38]
mov dword [edi + 0x3c], eax
movaps xmm1, xmm7
mov ecx, edi
call fcn.1001cb00
mov edx, dword [ebp - 8]
mov dword [edi + 0x40], eax
mov dword [edi + 0x38], eax
mov dword [edi + 0xe5c], 0xbe99999a
mov byte [edi + 0xe60], 1
jmp 0x1001ee24
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3c], 0
mov dword [edi + 0x40], eax
mov dword [edi + 0x38], eax
mov byte [edi + 0x47], 0
mov byte [edi + 0xe61], 1
mov al, byte [ebp - 9]
cmp byte [edi + 0xe61], 0
je 0x1001ee40
cmp byte [edx + 0xe0], 0
jne 0x1001ee40
mov byte [edi + 0xe61], 0
cmp word [edx + 0x2f6], 0
je 0x1001eef9
cmp byte [edx + 0xf1], 0
je 0x1001ee60
cmp byte [edx + 0xf3], 0
je 0x1001eedf
test al, al
je 0x1001ee6d
cmp byte [edx + 0xf4], 0
jne 0x1001eedf
cmp byte [ebp - 0x3c], 0
je 0x1001eedf
cmp byte [ebp - 0x12], 0
jne 0x1001eedf
mov dword [ebp - 0x54], 0
lea esi, [edx + 0x2f6]
movzx eax, word [esi]
test ax, ax
je 0x1001eed6
mov edx, dword [ebx + 0x10]
lea ecx, [ebp - 0x1c]
sub esp, 8
mov dword [ebp - 0x1c], eax
call fcn.1001e200
add esp, 8
test al, al
je 0x1001eec7
push dword [ebp - 0x1c]
lea edx, [edi + 0x38]
mov ecx, edi
call fcn.1001cf20
add esp, 4
mov byte [edi + 0xe60], 1
mov dword [edi + 0xe5c], 0xbe99999a
mov eax, dword [ebp - 0x54]
add esi, 2
inc eax
mov dword [ebp - 0x54], eax
cmp eax, 0x11
jl 0x1001ee86
mov esi, dword [0x100b7fac]
mov edx, dword [ebp - 8]
xorps xmm0, xmm0
movups xmmword [edx + 0x2f6], xmm0
movups xmmword [edx + 0x306], xmm0
mov word [edx + 0x316], 0
mov ecx, dword [ebp - 0x10]
xor al, al
mov byte [ebp - 1], al
cmp dword [edx + 0x1944], ecx
jne 0x1002030f
cmp byte [edx + 0x1951], al
jne 0x100202ac
cmp byte [ebp - 0x1f], al
jne 0x100202ac
mov cl, byte [edx + 0xf2]
xor esi, esi
mov dl, byte [edx + 0xbc]
test cl, cl
mov eax, 0x20000
mov byte [ebp - 0x5d], dl
cmovne esi, eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x40], esi
test dl, dl
je 0x1001ef6b
cmp byte [eax + 0xf4], 0
je 0x1001ef60
cmp byte [eax + 0xf1], 0
jne 0x1001ef60
mov eax, 1
jmp 0x1001ef62
xor eax, eax
test eax, eax
je 0x1001ef8e
mov eax, dword [ebp - 8]
jmp 0x1001ef7d
cmp byte [eax + 0xf1], 0
je 0x1001ef8e
cmp byte [eax + 0xf4], 0
jne 0x1001ef8e
cmp byte [eax + 0xf3], 0
jne 0x1001ef8e
test cl, cl
jne 0x1001ef8e
mov ah, 1
jmp 0x1001ef90
xor ah, ah
mov byte [ebp - 9], ah
test dl, dl
je 0x1001efc5
mov esi, dword [ebp - 8]
cmp byte [esi + 0xf4], 0
mov esi, dword [ebp - 0x40]
je 0x1001efc5
test cl, cl
mov ecx, dword [ebp - 8]
je 0x1001efc8
cmp byte [ecx + 0xf1], 0
jne 0x1001efc8
cmp byte [ecx + 0xf3], 0
jne 0x1001efc8
mov byte [ebp - 0x12], 1
jmp 0x1001efd0
mov ecx, dword [ebp - 8]
mov byte [ebp - 0x12], 0
test dl, dl
je 0x1001f034
cmp byte [ecx + 0xf4], 0
mov dl, byte [ecx + 0xf3]
mov byte [ebp - 0x13], dl
je 0x1001f03e
cmp byte [ecx + 0xf1], 0
jne 0x1001f03e
test dl, dl
jne 0x1001f03e
mov cl, byte [ecx + 0xf1]
mov byte [ebp - 0x11], 1
mov edx, dword [ebp - 8]
cmp byte [edx + 0xf2], 0
mov byte [ebp - 0xa], 0
je 0x1001f093
mov byte [ebp - 0xa], 0
test cl, cl
jne 0x1001f093
mov byte [ebp - 0xa], cl
cmp byte [edx + 0xf3], cl
jne 0x1001f093
mov byte [ebp - 0xa], cl
cmp byte [edx + 0xf4], cl
jne 0x1001f093
mov byte [ebp - 0x1d], 1
mov byte [ebp - 0xa], cl
jmp 0x1001f097
mov dl, byte [ecx + 0xf1]
mov byte [ebp - 0x12], 0
mov cl, byte [ecx + 0xf1]
mov al, dl
mov byte [ebp - 0x13], al
mov byte [ebp - 0x11], 0
test cl, cl
je 0x1001eff9
mov edx, dword [ebp - 8]
mov byte [ebp - 0x13], al
mov byte [ebp - 0x11], 0
cmp byte [edx + 0xf2], 0
jne 0x1001effc
cmp byte [edx + 0xf3], 0
mov byte [ebp - 0x13], al
mov byte [ebp - 0x11], 0
jne 0x1001effc
cmp byte [edx + 0xf4], 0
mov byte [ebp - 0x13], al
mov byte [ebp - 0x11], 0
jne 0x1001effc
mov byte [ebp - 0xa], 1
mov byte [ebp - 0x13], al
mov byte [ebp - 0x11], 0
mov byte [ebp - 0x1d], 0
mov edx, dword [0x100b7fac]
xorps xmm4, xmm4
test ah, ah
je 0x1001f129
mov eax, dword [edx + 0x7c]
test eax, eax
js 0x1001f129
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f1b0
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f129
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f0ea
mov eax, 1
jmp 0x1001f121
comiss xmm2, xmm1
jae 0x1001f11f
comiss xmm4, xmm3
jae 0x1001f11f
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f121
xor eax, eax
test eax, eax
jg 0x1001f1b0
cmp byte [ebp - 0x1d], 0
je 0x1001f1d3
mov eax, dword [edx + 0x5c]
test eax, eax
js 0x1001f1d3
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f1b0
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f1d3
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f175
mov eax, 1
jmp 0x1001f1ac
comiss xmm2, xmm1
jae 0x1001f1aa
comiss xmm4, xmm3
jae 0x1001f1aa
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f1ac
xor eax, eax
test eax, eax
jle 0x1001f1d3
cmp byte [ebp - 0x3c], 0
je 0x1001f1d3
cmp byte [ebp - 0xbc], 0
jne 0x1001f1d3
cmp byte [ebp - 0x28], 0
je 0x1001f1cd
mov eax, dword [edi + 0x3c]
cmp eax, dword [edi + 0x40]
je 0x1001f1d3
mov byte [ebp - 0x20], 1
jmp 0x1001f1d7
mov byte [ebp - 0x20], 0
cmp byte [ebp - 9], 0
je 0x1001f262
mov eax, dword [edx + 0x74]
test eax, eax
js 0x1001f262
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f2e9
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f262
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f223
mov eax, 1
jmp 0x1001f25a
comiss xmm2, xmm1
jae 0x1001f258
comiss xmm4, xmm3
jae 0x1001f258
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f25a
xor eax, eax
test eax, eax
jg 0x1001f2e9
cmp byte [ebp - 0xa], 0
je 0x1001f306
mov eax, dword [edx + 0x58]
test eax, eax
js 0x1001f306
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f2e9
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f306
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f2ae
mov eax, 1
jmp 0x1001f2e5
comiss xmm2, xmm1
jae 0x1001f2e3
comiss xmm4, xmm3
jae 0x1001f2e3
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f2e5
xor eax, eax
test eax, eax
jle 0x1001f306
cmp byte [ebp - 0xbc], 0
jne 0x1001f306
cmp byte [ebp - 0x28], 0
je 0x1001f300
mov eax, dword [edi + 0x3c]
cmp eax, dword [edi + 0x40]
je 0x1001f306
mov byte [ebp - 0xa], 1
jmp 0x1001f30a
mov byte [ebp - 0xa], 0
cmp byte [ebp - 9], 0
je 0x1001f395
mov eax, dword [edx + 0x78]
test eax, eax
js 0x1001f395
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f418
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f395
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f356
mov eax, 1
jmp 0x1001f38d
comiss xmm2, xmm1
jae 0x1001f38b
comiss xmm4, xmm3
jae 0x1001f38b
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f38d
xor eax, eax
test eax, eax
jg 0x1001f418
cmp byte [ebp - 0x1d], 0
je 0x1001f422
mov eax, dword [edx + 0x58]
test eax, eax
js 0x1001f422
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f418
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f422
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f3dd
mov eax, 1
jmp 0x1001f414
comiss xmm2, xmm1
jae 0x1001f412
comiss xmm4, xmm3
jae 0x1001f412
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f414
xor eax, eax
test eax, eax
jle 0x1001f422
cmp byte [ebp - 0x3c], 0
mov byte [ebp - 0x1e], 1
jne 0x1001f426
mov byte [ebp - 0x1e], 0
mov cl, byte [ebp - 9]
test cl, cl
je 0x1001f4c6
mov eax, dword [edx + 0x84]
test eax, eax
js 0x1001f4c6
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f4b4
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f4c6
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f476
mov eax, 1
jmp 0x1001f4b0
comiss xmm2, xmm1
jae 0x1001f4ae
comiss xmm4, xmm3
jae 0x1001f4ae
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
mov cl, byte [ebp - 9]
jmp 0x1001f4b0
xor eax, eax
test eax, eax
jle 0x1001f4c6
cmp byte [ebp - 0x3c], 0
je 0x1001f4c6
cmp byte [ebp - 0x50], 0
je 0x1001f4c6
mov byte [ebp - 0x1d], 1
jmp 0x1001f4d2
mov byte [ebp - 0x1d], 0
test cl, cl
je 0x1001f556
mov eax, dword [edx + 0x80]
test eax, eax
js 0x1001f556
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f5e0
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f556
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f517
mov eax, 1
jmp 0x1001f54e
comiss xmm2, xmm1
jae 0x1001f54c
comiss xmm4, xmm3
jae 0x1001f54c
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f54e
xor eax, eax
test eax, eax
jg 0x1001f5e0
cmp byte [ebp - 0x12], 0
je 0x1001f5f0
mov eax, dword [edx + 0x84]
test eax, eax
js 0x1001f5f0
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f5e0
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f5f0
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f5a5
mov eax, 1
jmp 0x1001f5dc
comiss xmm2, xmm1
jae 0x1001f5da
comiss xmm4, xmm3
jae 0x1001f5da
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f5dc
xor eax, eax
test eax, eax
jle 0x1001f5f0
cmp byte [ebp - 0x3c], 0
je 0x1001f5f0
cmp byte [ebp - 0x50], 0
mov byte [ebp - 0x12], 1
jne 0x1001f5f4
mov byte [ebp - 0x12], 0
mov eax, dword [edx + 0x38]
test eax, eax
js 0x1001f6b5
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f675
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f6b5
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f63a
mov eax, 1
jmp 0x1001f671
comiss xmm2, xmm1
jae 0x1001f66f
comiss xmm4, xmm3
jae 0x1001f66f
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f671
xor eax, eax
test eax, eax
jle 0x1001f6b5
cmp byte [ebp - 0x11], 0
je 0x1001f692
mov eax, 0x10004
lea edx, [edi + 0x38]
or eax, esi
mov ecx, edi
push eax
call fcn.1001cf20
jmp 0x10020289
cmp byte [ebp - 0x13], 0
lea edx, [edi + 0x38]
mov ecx, 0x1000c
mov eax, 0x10000
cmovne eax, ecx
mov ecx, edi
or eax, esi
push eax
call fcn.1001cf20
jmp 0x10020289
mov eax, dword [edx + 0x3c]
test eax, eax
js 0x1001f776
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f736
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f776
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f6fb
mov eax, 1
jmp 0x1001f732
comiss xmm2, xmm1
jae 0x1001f730
comiss xmm4, xmm3
jae 0x1001f730
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f732
xor eax, eax
test eax, eax
jle 0x1001f776
cmp byte [ebp - 0x11], 0
je 0x1001f753
mov eax, 0x10005
lea edx, [edi + 0x38]
or eax, esi
mov ecx, edi
push eax
call fcn.1001cf20
jmp 0x10020289
cmp byte [ebp - 0x13], 0
lea edx, [edi + 0x38]
mov ecx, 0x1000d
mov eax, 0x10001
cmovne eax, ecx
mov ecx, edi
or eax, esi
push eax
call fcn.1001cf20
jmp 0x10020289
mov eax, dword [edx + 0x40]
test eax, eax
js 0x1001f85b
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f7f7
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f85b
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f7bc
mov eax, 1
jmp 0x1001f7f3
comiss xmm2, xmm1
jae 0x1001f7f1
comiss xmm4, xmm3
jae 0x1001f7f1
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f7f3
xor eax, eax
test eax, eax
jle 0x1001f85b
cmp byte [ebp - 0x28], 0
je 0x1001f85b
mov edx, dword [ebp - 8]
cmp byte [edx + 0xf1], 0
je 0x1001f83e
mov eax, dword [ebp - 0x58]
movss xmm1, dword [eax + 0x58]
movaps xmm0, xmm1
subss xmm0, dword [edx + 0x1854]
addss xmm1, dword [eax + 0xe4]
maxss xmm0, xmm4
subss xmm1, xmm0
movss dword [eax + 0x58], xmm0
movss dword [eax + 0xe4], xmm1
jmp 0x100202a0
movzx eax, byte [ebp - 0x11]
lea edx, [edi + 0x38]
mov ecx, edi
lea eax, [eax*4 + 0x10002]
or eax, esi
push eax
call fcn.1001cf20
jmp 0x10020289
mov eax, dword [edx + 0x44]
test eax, eax
js 0x1001f96b
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f8e0
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001f96b
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f8a1
mov eax, 1
jmp 0x1001f8d8
comiss xmm2, xmm1
jae 0x1001f8d6
comiss xmm4, xmm3
jae 0x1001f8d6
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f8d8
xor eax, eax
test eax, eax
jle 0x1001f96b
cmp byte [ebp - 0x28], 0
je 0x1001f96b
mov eax, dword [ebp - 8]
cmp byte [eax + 0xf1], 0
je 0x1001f94e
mov eax, dword [edx + 0x1928]
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 8]
movss xmm0, dword [eax + 0x20]
subss xmm0, dword [eax + 0x70]
movss xmm1, dword [eax + 0x30]
movss xmm3, dword [ecx + 0x58]
movaps xmm2, xmm3
addss xmm2, dword [edx + 0x1854]
addss xmm3, dword [ecx + 0xe4]
subss xmm1, xmm0
xorps xmm0, xmm0
maxss xmm0, xmm1
minss xmm2, xmm0
subss xmm3, xmm2
movss dword [ecx + 0x58], xmm2
movss dword [ecx + 0xe4], xmm3
jmp 0x100202a0
movzx eax, byte [ebp - 0x11]
lea edx, [edi + 0x38]
mov ecx, edi
lea eax, [eax*4 + 0x10003]
or eax, esi
push eax
call fcn.1001cf20
jmp 0x10020289
mov eax, dword [edx + 0x50]
test eax, eax
js 0x1001fa12
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001f9e8
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001fa12
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001f9ad
mov eax, 1
jmp 0x1001f9e4
comiss xmm2, xmm1
jae 0x1001f9e2
comiss xmm4, xmm3
jae 0x1001f9e2
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001f9e4
xor eax, eax
test eax, eax
jle 0x1001fa12
mov ecx, dword [ebp - 8]
lea edx, [edi + 0x38]
mov eax, esi
or esi, 0x10004
or eax, 0x10006
cmp byte [ecx + 0xf1], 0
mov ecx, edi
cmovne esi, eax
push esi
call fcn.1001cf20
jmp 0x10020289
mov eax, dword [edx + 0x54]
test eax, eax
js 0x1001fab9
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001fa8f
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001fab9
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001fa54
mov eax, 1
jmp 0x1001fa8b
comiss xmm2, xmm1
jae 0x1001fa89
comiss xmm4, xmm3
jae 0x1001fa89
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001fa8b
xor eax, eax
test eax, eax
jle 0x1001fab9
mov ecx, dword [ebp - 8]
lea edx, [edi + 0x38]
mov eax, esi
or esi, 0x10005
or eax, 0x10007
cmp byte [ecx + 0xf1], 0
mov ecx, edi
cmovne esi, eax
push esi
call fcn.1001cf20
jmp 0x10020289
mov eax, dword [edx + 0x5c]
test eax, eax
js 0x1001fb52
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001fb36
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001fb52
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001fafb
mov eax, 1
jmp 0x1001fb32
comiss xmm2, xmm1
jae 0x1001fb30
comiss xmm4, xmm3
jae 0x1001fb30
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001fb32
xor eax, eax
test eax, eax
jle 0x1001fb52
cmp byte [ebp - 0x3c], 0
je 0x1001fb52
or esi, 0x10008
lea edx, [edi + 0x38]
push esi
mov ecx, edi
call fcn.1001cf20
jmp 0x10020289
mov eax, dword [edx + 0x60]
test eax, eax
js 0x1001fc4b
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001fbd3
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001fc4b
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001fb98
mov eax, 1
jmp 0x1001fbcf
comiss xmm2, xmm1
jae 0x1001fbcd
comiss xmm4, xmm3
jae 0x1001fbcd
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001fbcf
xor eax, eax
test eax, eax
jle 0x1001fc4b
cmp byte [ebp - 0x3c], 0
je 0x1001fc4b
mov eax, dword [edi + 0x3c]
cmp eax, dword [edi + 0x40]
jne 0x1001fc35
cmp byte [ebp - 0x13], 0
je 0x1001fbee
push 0x3000c
jmp 0x1001fc17
cmp byte [ebp - 0x5d], 0
je 0x1001fc35
mov eax, dword [ebp - 8]
cmp byte [eax + 0xf4], 0
je 0x1001fc35
cmp byte [eax + 0xf3], 0
jne 0x1001fc35
cmp byte [eax + 0xf1], 0
jne 0x1001fc35
push 0x30004
lea edx, [edi + 0x38]
mov ecx, edi
call fcn.1001cf20
mov dword [edi + 0xe5c], 0xbe99999a
add esp, 4
mov byte [edi + 0xe60], 1
or esi, 0x10009
lea edx, [edi + 0x38]
push esi
mov ecx, edi
call fcn.1001cf20
jmp 0x10020289
mov eax, dword [edx + 0x68]
test eax, eax
js 0x1001fd38
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001fccc
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001fd38
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001fc91
mov eax, 1
jmp 0x1001fcc8
comiss xmm2, xmm1
jae 0x1001fcc6
comiss xmm4, xmm3
jae 0x1001fcc6
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001fcc8
xor eax, eax
test eax, eax
jle 0x1001fd38
mov eax, dword [ebx + 0x10]
mov edx, dword [ebp - 8]
shr eax, 0xb
and al, 1
cmp byte [ebp - 0x28], 0
je 0x1001fceb
mov cl, byte [edx + 0xf1]
test al, al
je 0x1001fcf8
test cl, cl
jne 0x1001fcfc
mov byte [ebp - 0x1f], 1
mov byte [ebp - 0x21], 1
jmp 0x100202a0
test cl, cl
jne 0x1001fceb
cmp byte [ebp - 0x3c], 0
je 0x100202a0
mov edx, dword [ebx + 0x10]
mov dword [ebp - 0x1c], 0xa
sub esp, 8
lea ecx, [ebp - 0x1c]
call fcn.1001e200
add esp, 8
test al, al
je 0x1002029d
push dword [ebp - 0x1c]
lea edx, [edi + 0x38]
mov ecx, edi
call fcn.1001cf20
jmp 0x10020289
mov ecx, dword [ebx + 0x10]
test ecx, 0x400
je 0x1001fdfd
mov eax, dword [edx + 0x34]
test eax, eax
js 0x1001fdfd
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001fdcb
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001fdfd
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001fd8d
mov eax, 1
jmp 0x1001fdc7
comiss xmm2, xmm1
jae 0x1001fdc5
comiss xmm4, xmm3
jae 0x1001fdc5
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
mov ecx, dword [ebx + 0x10]
jmp 0x1001fdc7
xor eax, eax
test eax, eax
jle 0x1001fdfd
mov eax, dword [ebp - 8]
cmp byte [eax + 0xf1], 0
jne 0x1001fdfd
cmp byte [eax + 0xf2], 0
jne 0x1001fdfd
cmp byte [eax + 0xf3], 0
jne 0x1001fdfd
cmp byte [ebp - 0x3c], 0
je 0x1001fdfd
mov dword [ebp - 0x1c], 9
mov edx, ecx
jmp 0x1001fd10
mov eax, dword [edx + 0x6c]
test eax, eax
js 0x1001fe83
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001fe76
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001fe83
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001fe3b
mov eax, 1
jmp 0x1001fe72
comiss xmm2, xmm1
jae 0x1001fe70
comiss xmm4, xmm3
jae 0x1001fe70
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001fe72
xor eax, eax
test eax, eax
jle 0x1001fe83
mov edx, dword [ebp - 8]
mov al, 1
mov byte [ebp - 0x1f], al
jmp 0x100202a3
mov al, byte [ebp - 0x1d]
test al, al
jne 0x1002026a
cmp byte [ebp - 0x12], al
jne 0x1002026a
cmp byte [ebp - 9], al
je 0x1001ff36
mov eax, dword [edx + 0x70]
test eax, eax
js 0x1001ff36
movss xmm1, dword [edx + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1001ff1d
movss xmm2, dword [edx + 0x88]
comiss xmm1, xmm2
jbe 0x1001ff36
movss xmm3, dword [edx + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x1001fee2
mov eax, 1
jmp 0x1001ff19
comiss xmm2, xmm1
jae 0x1001ff17
comiss xmm4, xmm3
jae 0x1001ff17
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [edx + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x1001ff19
xor eax, eax
test eax, eax
jle 0x1001ff36
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3c], 0
mov dword [edi + 0x40], eax
mov dword [edi + 0x38], eax
mov byte [edi + 0x47], 0
jmp 0x10020296
cmp byte [ebp - 0x20], 0
jne 0x1002014b
cmp byte [ebp - 0xa], 0
jne 0x1002014b
cmp byte [ebp - 0x1e], 0
je 0x1002029d
mov eax, dword [edx + 0xc0]
test eax, eax
je 0x1001ff74
push dword [edx + 0xc8]
call eax
mov esi, eax
add esp, 4
test esi, esi
jne 0x1001ff79
jmp 0x1002029d
mov esi, 0x1003f8ba
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001ff80
inc dword [0x100b7fd8]
sub ecx, edx
lea eax, [ecx*2 + 2]
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov ecx, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x34], eax
cmp byte [esi], al
je 0x10020001
nop
push 0
mov edx, esi
lea ecx, [ebp - 0x5c]
call fcn.1000b270
add esi, eax
add esp, 4
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x1001fffb
cmp eax, 0x10000
jae 0x1001fff6
mov edx, dword [ebx + 0x10]
lea ecx, [ebp - 0x5c]
sub esp, 8
call fcn.1001e200
add esp, 8
test al, al
je 0x1001fff6
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x18]
mov ax, word [ebp - 0x5c]
mov word [edx + ecx*2], ax
inc ecx
mov dword [ebp - 0x34], ecx
cmp byte [esi], 0
jne 0x1001ffb0
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x18]
xor edx, edx
mov word [ecx + eax*2], dx
test eax, eax
jle 0x10020132
mov ecx, dword [edi + 0x40]
lea esi, [edi + 0x38]
mov eax, dword [esi + 4]
mov edx, dword [edi + 0x2c]
mov dword [ebp - 0x1c], edx
cmp eax, ecx
je 0x10020055
mov dword [ebp - 0x4c], eax
cmp eax, edx
jle 0x1002002f
mov dword [esi + 4], edx
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x2c], ecx
cmp ecx, edx
jle 0x10020043
mov ecx, edx
mov dword [esi + 8], edx
mov dword [ebp - 0x2c], ecx
jmp 0x10020046
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
cmp dword [ebp - 0x4c], edx
jne 0x10020055
mov eax, dword [ebp - 0x4c]
mov ecx, edx
mov dword [esi], eax
mov edx, dword [esi]
mov dword [ebp - 0x2c], edx
mov edx, dword [ebp - 0x1c]
cmp dword [esi], edx
jle 0x10020066
mov dword [esi], edx
mov dword [ebp - 0x2c], edx
mov edx, dword [edi + 0x2c]
cmp eax, ecx
je 0x100200a5
mov dword [ebp - 0x4c], eax
cmp eax, edx
jle 0x1002007a
mov dword [esi + 4], edx
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x48], ecx
cmp ecx, edx
jle 0x1002008a
mov dword [esi + 8], edx
mov dword [ebp - 0x48], edx
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x48]
mov esi, ecx
cmp dword [ebp - 0x4c], esi
lea esi, [edi + 0x38]
jne 0x100200a5
mov eax, dword [ebp - 0x4c]
mov dword [esi], eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], edx
jle 0x100200ac
mov dword [esi], edx
cmp eax, ecx
je 0x100200e1
mov edx, esi
jge 0x100200c7
sub ecx, eax
push ecx
push eax
mov ecx, edi
call fcn.1001cde0
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
jmp 0x100200d8
sub eax, ecx
push eax
push ecx
mov ecx, edi
call fcn.1001cde0
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov dword [esi], eax
add esp, 8
mov byte [esi + 0xf], 0
push dword [ebp - 0x34]
mov edx, dword [esi]
mov ecx, edi
push dword [ebp - 0x18]
call fcn.1001ca50
add esp, 8
test al, al
je 0x10020114
push dword [ebp - 0x34]
mov edx, dword [esi]
lea ecx, [esi + 0x18]
push 0
call fcn.1001dd60
mov eax, dword [ebp - 0x34]
add esp, 8
add dword [esi], eax
mov byte [esi + 0xf], 0
jmp 0x10020128
movzx eax, word [esi + 0xe16]
test ax, ax
je 0x10020128
dec eax
mov word [esi + 0xe16], ax
mov ecx, dword [ebp - 0x18]
mov byte [edi + 0xe60], 1
test ecx, ecx
je 0x1002013c
dec dword [0x100b7fd8]
push ecx
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
jmp 0x1002029d
mov edx, dword [ebp - 8]
cmp dword [edx + 0xc4], 0
je 0x100201c8
mov eax, dword [edi + 0x40]
mov ecx, dword [edi + 0x3c]
cmp ecx, eax
je 0x1002016b
mov edx, eax
cmovge eax, ecx
cmovl edx, ecx
jmp 0x10020170
mov eax, dword [edi + 0x2c]
xor edx, edx
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x1c]
sub eax, edx
mov dword [ebp - 0x54], edx
lea eax, [eax*4 + 1]
push eax
call fcn.10025c90
mov ecx, dword [edi + 0xc]
mov eax, dword [ebp - 0x1c]
mov edx, dword [edi + 0x1c]
lea eax, [ecx + eax*2]
push eax
mov eax, dword [ebp - 0x54]
lea eax, [ecx + eax*2]
mov ecx, dword [edi + 0x24]
push eax
call fcn.1000b470
mov edx, dword [0x100b7fac]
add esp, 8
mov eax, dword [edx + 0xc4]
test eax, eax
je 0x100201c5
push dword [edi + 0x24]
push dword [edx + 0xc8]
call eax
add esp, 8
mov edx, dword [ebp - 8]
cmp byte [ebp - 0x20], 0
je 0x100202a0
mov eax, dword [edi + 0x3c]
cmp eax, dword [edi + 0x40]
jne 0x100201ee
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3c], 0
mov dword [edi + 0x40], eax
mov dword [edi + 0x38], eax
mov byte [edi + 0x47], 0
mov byte [edi + 0xe60], 1
mov ecx, dword [edi + 0x40]
mov eax, dword [edi + 0x3c]
cmp eax, ecx
je 0x100202a0
mov edx, dword [edi + 0x2c]
cmp eax, edx
jle 0x1002020f
mov dword [edi + 0x3c], edx
mov eax, edx
cmp ecx, edx
jle 0x10020218
mov dword [edi + 0x40], edx
mov ecx, edx
cmp eax, ecx
jne 0x1002021f
mov dword [edi + 0x38], eax
cmp dword [edi + 0x38], edx
jle 0x10020227
mov dword [edi + 0x38], edx
cmp eax, ecx
je 0x10020264
lea edx, [edi + 0x38]
jge 0x1002024d
sub ecx, eax
push ecx
push eax
mov ecx, edi
call fcn.1001cde0
mov eax, dword [edi + 0x3c]
add esp, 8
mov dword [edi + 0x40], eax
mov dword [edi + 0x38], eax
mov byte [edi + 0x47], 0
jmp 0x1002029d
sub eax, ecx
push eax
push ecx
mov ecx, edi
call fcn.1001cde0
mov eax, dword [edi + 0x40]
add esp, 8
mov dword [edi + 0x3c], eax
mov dword [edi + 0x38], eax
mov byte [edi + 0x47], 0
jmp 0x1002029d
movzx eax, al
lea edx, [edi + 0x38]
xor eax, 1
mov ecx, edi
add eax, 0x1000a
push eax
call fcn.1001cf20
mov eax, dword [edi + 0x38]
mov dword [edi + 0x40], eax
mov dword [edi + 0x3c], eax
add esp, 4
mov dword [edi + 0xe5c], 0xbe99999a
mov byte [edi + 0xe60], 1
mov edx, dword [ebp - 8]
mov al, byte [ebp - 1]
mov esi, dword [0x100b7fac]
mov ecx, dword [ebp - 0x10]
cmp dword [edx + 0x1944], ecx
jne 0x1002030f
test al, al
je 0x100203ea
cmp byte [ebp - 0x3c], 0
je 0x100202fd
mov esi, dword [ebx + 8]
push esi
push dword [edi + 0x18]
push dword [ebp - 0x30]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
je 0x100202f7
cmp esi, 1
jb 0x100202f3
push esi
push dword [edi + 0x18]
push dword [ebp - 0x30]
call dword [ebp - 0x70]
mov eax, dword [ebp - 0x30]
add esp, 0xc
mov byte [eax + esi - 1], 0
mov byte [ebp - 0x41], 1
mov esi, dword [0x100b7fac]
cmp byte [ebp - 0x21], 0
je 0x1002030f
mov ecx, dword [ebx + 0x10]
test cl, 0x20
jne 0x100203ed
mov edi, dword [ebp - 0x38]
cmp byte [ebp - 0x1f], 0
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
je 0x10020374
cmp dword [edx + 0x1944], eax
jne 0x10020388
mov ecx, dword [esi + 0x1944]
test ecx, ecx
setne al
mov byte [esi + 0x1951], al
test ecx, ecx
je 0x1002034c
mov dword [esi + 0x194c], 0
mov byte [esi + 0x1953], 0
mov eax, dword [ebp - 0x10]
mov dword [esi + 0x1944], 0
mov dword [esi + 0x1958], 0
mov byte [esi + 0x1952], 0
mov dword [esi + 0x1964], 0
cmp dword [edx + 0x1944], eax
jne 0x10020388
cmp byte [ebp - 0x3c], 0
je 0x10020388
mov ecx, dword [edi + 0x24]
mov dword [ebp - 0x30], ecx
cmp byte [ebp - 0x28], 0
movss xmm3, dword [0x1003fc10]
jne 0x100209d5
push 1
mov edx, eax
lea ecx, [ebp - 0xb0]
call fcn.10013300
mov eax, dword [0x100b7fac]
xorps xmm3, xmm3
movss xmm6, dword [0x1003fb34]
add esp, 4
movups xmm2, xmmword [eax + 0x1610]
comiss xmm3, xmm2
movaps xmm1, xmm2
movaps xmmword [ebp - 0xa0], xmm2
shufps xmm1, xmm2, 0xff
mulss xmm1, dword [eax + 0x1508]
jbe 0x1002088a
xorps xmm0, xmm0
jmp 0x10020891
mov ecx, dword [ebx + 0x10]
cmp byte [ebp - 0x3c], 0
je 0x1002041e
mov eax, dword [edi + 4]
lea ecx, [edi + 0x1c]
shl eax, 2
push eax
call fcn.10025c90
mov edx, dword [edi + 0x1c]
mov ecx, dword [edi + 0x24]
push 0
push dword [edi + 0xc]
call fcn.1000b470
mov esi, dword [0x100b7fac]
add esp, 8
mov ecx, dword [ebx + 0x10]
test ecx, 0x1c0
je 0x1002081a
xor edx, edx
xorps xmm4, xmm4
test cl, 0x40
je 0x100204c5
mov eax, dword [esi + 0x34]
test eax, eax
js 0x100204c5
movss xmm1, dword [esi + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x100204b6
movss xmm2, dword [esi + 0x88]
comiss xmm1, xmm2
jbe 0x100204c5
movss xmm3, dword [esi + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x10020478
lea eax, [edx + 1]
jmp 0x100204b2
comiss xmm2, xmm1
jae 0x100204b0
comiss xmm4, xmm3
jae 0x100204b0
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [esi + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
mov ecx, dword [ebx + 0x10]
jmp 0x100204b2
xor eax, eax
test eax, eax
jle 0x100204c5
mov eax, dword [ebx + 0x10]
mov edx, 0x40
xor ecx, ecx
jmp 0x10020610
test cl, cl
jns 0x100205fb
mov eax, dword [esi + 0x40]
test eax, eax
js 0x10020571
movss xmm1, dword [esi + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x100204ee
mov al, 1
jmp 0x1002055d
movss xmm2, dword [esi + 0x88]
comiss xmm1, xmm2
jbe 0x1002055b
movss xmm3, dword [esi + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x10020518
mov eax, 1
test eax, eax
setg al
jmp 0x1002055d
comiss xmm2, xmm1
jae 0x10020552
comiss xmm4, xmm3
jae 0x10020552
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [esi + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
test eax, eax
setg al
jmp 0x1002055d
xor eax, eax
test eax, eax
setg al
jmp 0x1002055d
xor al, al
test al, al
je 0x10020571
mov eax, dword [ebx + 0x10]
mov edx, 0x80
lea ecx, [edx - 0x7d]
jmp 0x10020610
mov eax, dword [esi + 0x44]
test eax, eax
js 0x100205fb
movss xmm1, dword [esi + eax*4 + 0x460]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x100205ee
movss xmm2, dword [esi + 0x88]
comiss xmm1, xmm2
jbe 0x100205fb
movss xmm3, dword [esi + 0x8c]
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x100205b3
mov eax, 1
jmp 0x100205ea
comiss xmm2, xmm1
jae 0x100205e8
comiss xmm4, xmm3
jae 0x100205e8
movaps xmm0, xmm1
subss xmm1, xmm2
subss xmm0, dword [esi + 0x18]
divss xmm1, xmm3
subss xmm0, xmm2
cvttss2si ecx, xmm1
divss xmm0, xmm3
cvttss2si eax, xmm0
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovg eax, ecx
jmp 0x100205ea
xor eax, eax
test eax, eax
jle 0x100205fb
mov eax, dword [ebx + 0x10]
mov edx, 0x80
lea ecx, [edx - 0x7c]
jmp 0x10020610
mov eax, dword [ebx + 0x10]
mov ecx, 0x100
test eax, 0x100
cmovne edx, ecx
mov ecx, 0x15
test edx, edx
je 0x1002081a
mov dword [ebp - 0x12c], eax
xor esi, esi
mov al, byte [ebp - 0x3c]
xor al, 1
mov word [ebp - 0x123], si
mov byte [ebp - 0x124], al
mov eax, dword [edi + 0x24]
mov dword [ebp - 0x11c], eax
mov eax, dword [edi + 0x28]
mov dword [ebp - 0x118], eax
mov eax, dword [edi + 0x30]
mov word [ebp - 0x10f], si
mov dword [ebp - 0x128], esi
mov esi, dword [edi + 0xc]
mov dword [ebp - 0x114], eax
mov eax, dword [edi + 0x38]
mov dword [ebp - 0x130], edx
mov dword [ebp - 0x120], ecx
mov ecx, esi
mov byte [ebp - 0x121], 0
lea edx, [esi + eax*2]
mov byte [ebp - 0x10d], 0
mov byte [ebp - 0x110], 0
call fcn.1000b5a0
mov edi, eax
mov ecx, esi
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10c], edi
mov edx, dword [eax + 0x1c94]
lea edx, [esi + edx*2]
call fcn.1000b5a0
mov dword [ebp - 0x1c], eax
mov ecx, esi
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 8]
mov edx, dword [eax + 0x1c98]
lea edx, [esi + edx*2]
call fcn.1000b5a0
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x104], eax
lea eax, [ebp - 0x130]
push eax
xor eax, eax
call eax
mov ecx, dword [ebp - 0x10c]
add esp, 4
cmp ecx, edi
je 0x1002072f
mov eax, dword [ebp - 0x11c]
mov esi, eax
lea edi, [ecx + eax]
xor eax, eax
mov dword [ebp - 0x18], eax
test edi, edi
je 0x100206fb
cmp esi, edi
jae 0x10020727
cmp byte [esi], 0
je 0x10020727
push edi
mov edx, esi
lea ecx, [ebp - 0x40]
call fcn.1000b270
add esi, eax
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x10020724
cmp eax, 0x10000
mov eax, dword [ebp - 0x18]
jae 0x100206f3
inc eax
jmp 0x100206f0
mov eax, dword [ebp - 0x18]
mov edi, dword [ebp - 0x38]
mov dword [edi + 0x38], eax
jmp 0x10020732
mov edi, dword [ebp - 0x38]
mov eax, dword [ebp - 0x108]
cmp eax, dword [ebp - 0x1c]
je 0x10020788
add eax, dword [ebp - 0x11c]
xor ecx, ecx
mov esi, dword [ebp - 0x11c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
test eax, eax
je 0x10020759
cmp esi, eax
jae 0x10020785
cmp byte [esi], 0
je 0x10020785
push eax
mov edx, esi
lea ecx, [ebp - 0x40]
call fcn.1000b270
mov ecx, dword [ebp - 0x18]
add esi, eax
mov eax, dword [ebp - 0x40]
add esp, 4
test eax, eax
je 0x10020785
cmp eax, 0x10000
mov eax, dword [ebp - 0x1c]
jae 0x10020751
inc ecx
jmp 0x1002074e
mov dword [edi + 0x3c], ecx
mov eax, dword [ebp - 0x104]
cmp eax, dword [ebp - 0x54]
je 0x100207de
add eax, dword [ebp - 0x11c]
xor ecx, ecx
mov esi, dword [ebp - 0x11c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
test eax, eax
je 0x100207af
cmp esi, eax
jae 0x100207db
cmp byte [esi], 0
je 0x100207db
push eax
mov edx, esi
lea ecx, [ebp - 0x40]
call fcn.1000b270
mov ecx, dword [ebp - 0x18]
add esi, eax
mov eax, dword [ebp - 0x40]
add esp, 4
test eax, eax
je 0x100207db
cmp eax, 0x10000
mov eax, dword [ebp - 0x1c]
jae 0x100207a7
inc ecx
jmp 0x100207a4
mov dword [edi + 0x40], ecx
cmp byte [ebp - 0x110], 0
je 0x10020814
mov edx, dword [edi + 4]
push 0
push ecx
push dword [ebp - 0x11c]
mov ecx, dword [edi + 0xc]
call fcn.1000b400
mov dword [edi + 0x2c], eax
add esp, 0xc
mov eax, dword [ebp - 0x118]
mov dword [edi + 0x28], eax
mov dword [edi + 0xe5c], 0xbe99999a
mov esi, dword [0x100b7fac]
cmp byte [ebp - 0x3c], 0
mov edi, dword [ebp - 0x38]
je 0x10020312
mov ecx, dword [ebp - 0x30]
mov eax, dword [edi + 0x24]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10020850
test dl, dl
je 0x1002084c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10020850
add eax, 2
add ecx, 2
test dl, dl
jne 0x10020830
xor eax, eax
jmp 0x10020855
sbb eax, eax
or eax, 1
test eax, eax
je 0x10020312
mov eax, dword [ebx + 8]
cmp eax, 1
jb 0x10020881
mov esi, dword [ebp - 0x30]
push eax
push dword [edi + 0x24]
push esi
call dword [ebp - 0x70]
mov eax, dword [ebx + 8]
add esp, 0xc
mov byte [esi + eax - 1], 0
mov esi, dword [0x100b7fac]
mov byte [ebp - 0x41], 1
jmp 0x10020312
movaps xmm0, xmm6
minss xmm0, xmm2
movss xmm4, dword [0x1003fc10]
movss xmm5, dword [0x1003fb14]
movss xmm2, dword [ebp - 0x9c]
comiss xmm3, xmm2
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si edx, xmm0
jbe 0x100208bf
xorps xmm0, xmm0
jmp 0x100208c6
movaps xmm0, xmm6
minss xmm0, xmm2
movss xmm2, dword [ebp - 0x98]
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 8
or edx, eax
comiss xmm3, xmm2
jbe 0x100208e9
xorps xmm0, xmm0
jmp 0x100208f0
movaps xmm0, xmm6
minss xmm0, xmm2
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 0x10
or edx, eax
comiss xmm3, xmm1
jbe 0x1002090b
xorps xmm0, xmm0
jmp 0x10020912
movaps xmm0, xmm6
minss xmm0, xmm1
push dword [ebp - 0xa4]
mov eax, dword [ebp - 8]
push dword [ebp - 0xa8]
mulss xmm0, xmm4
push dword [ebp - 0xac]
movss xmm2, dword [eax + 0x1544]
push dword [ebp - 0xb0]
addss xmm0, xmm5
cvttss2si ecx, xmm0
shl ecx, 0x18
or ecx, edx
mov dl, 1
call fcn.10012a90
movss xmm6, dword [ebp - 0x74]
add esp, 0x10
mov ecx, dword [ebp - 8]
movaps xmm0, xmm6
movss xmm3, dword [ebp - 0x6c]
movaps xmm2, xmm6
movss xmm5, dword [ebp - 0x78]
movss xmm1, dword [ebp - 0xb8]
addss xmm2, xmm5
addss xmm0, dword [ecx + 0x153c]
mov esi, dword [0x100b7fac]
addss xmm1, xmm3
mov edx, dword [ebp - 0x58]
movss dword [ebp - 0xfc], xmm3
movss dword [ebp - 0x100], xmm6
movss dword [ebp - 0xa8], xmm0
movaps xmm0, xmm3
addss xmm0, dword [ecx + 0x1540]
movss xmm3, dword [0x1003fc10]
movss dword [ebp - 0x40], xmm2
movss dword [ebp - 0xf8], xmm2
movss dword [ebp - 0x5c], xmm2
movss dword [ebp - 0xa4], xmm0
movss dword [ebp - 0x70], xmm1
jmp 0x10020a42
movss xmm0, dword [ebp - 0x74]
movss xmm1, dword [ebp - 0x6c]
movaps xmm4, xmm0
movss xmm5, dword [ebp - 0x78]
movss xmm2, dword [ebp - 0xb8]
addss xmm4, xmm5
mov edx, dword [ebp - 0x58]
addss xmm2, xmm1
movss dword [ebp - 0x100], xmm0
movss dword [ebp - 0xfc], xmm1
mov ecx, dword [edx + 0xcc]
movaps xmm0, xmm4
mov eax, dword [edx + 0xc8]
movaps xmm1, xmm2
mov dword [ebp - 0xa4], ecx
mov ecx, dword [ebp - 8]
movss dword [ebp - 0x5c], xmm4
movss dword [ebp - 0x40], xmm0
movss dword [ebp - 0xf8], xmm0
movss dword [ebp - 0x70], xmm2
mov dword [ebp - 0xa8], eax
lea eax, [ebp - 0xa8]
movss dword [ebp - 0xf4], xmm1
movss xmm0, dword [eax]
xorps xmm7, xmm7
movss dword [ebp - 0x68], xmm0
movss xmm0, dword [eax + 4]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x10]
movss dword [ebp - 0x2c], xmm0
movss dword [ebp - 0x64], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x50], xmm1
movss dword [ebp - 0x54], xmm0
movss dword [ebp - 0x1c], xmm7
cmp dword [edi], eax
jne 0x10020abe
cmp byte [ebp - 0x28], 0
je 0x10020abe
mov eax, dword [ebp - 0x58]
mov ecx, str.SCROLLY
mov edx, dword [edx + 0x1c8]
mov eax, dword [eax + 0x1d0]
push dword [eax + edx*4 - 4]
xor edx, edx
call fcn.1000b150
mov ecx, dword [ebp - 8]
add esp, 4
cmp dword [ecx + 0x1944], eax
jne 0x10020abe
mov al, 1
jmp 0x10020ac0
xor al, al
mov edx, dword [ebp - 0x10]
cmp dword [ecx + 0x1944], edx
je 0x10020eaa
test al, al
jne 0x10020eaa
xor edx, edx
cmp byte [ebp - 0x28], dl
je 0x10020b34
mov edx, dword [ebp - 0x30]
xor ecx, ecx
mov al, byte [edx]
inc edx
mov byte [ebp - 0x1e], al
test al, al
je 0x10020b06
nop dword [eax]
cmp byte [ebp - 0x1e], 0xa
lea eax, [ecx + 1]
cmovne eax, ecx
mov ecx, eax
mov al, byte [edx]
inc edx
mov byte [ebp - 0x1e], al
test al, al
jne 0x10020af0
mov al, byte [edx - 1]
dec edx
cmp al, 0xa
je 0x10020b13
cmp al, 0xd
je 0x10020b13
inc ecx
mov edi, dword [ebp - 8]
movaps xmm0, xmm5
movd xmm4, ecx
cvtdq2ps xmm4, xmm4
movss dword [ebp - 0x54], xmm0
mulss xmm4, dword [edi + 0x1854]
movss dword [ebp - 0x1c], xmm4
jmp 0x10020b37
mov edi, dword [ebp - 8]
movups xmm2, xmmword [esi + 0x15a0]
mov eax, dword [ebp - 0x58]
movss xmm5, dword [0x1003fb34]
comiss xmm7, xmm2
mov eax, dword [eax + 0x27c]
mov dword [ebp - 0x50], eax
movaps xmm1, xmm2
movaps xmmword [ebp - 0xa0], xmm2
shufps xmm1, xmm2, 0xff
mulss xmm1, dword [esi + 0x1508]
jbe 0x10020b72
movaps xmm0, xmm7
jmp 0x10020b79
movaps xmm0, xmm5
minss xmm0, xmm2
movss xmm4, dword [0x1003fb14]
movss xmm2, dword [ebp - 0x9c]
comiss xmm7, xmm2
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si ecx, xmm0
jbe 0x10020b9f
movaps xmm0, xmm7
jmp 0x10020ba6
movaps xmm0, xmm5
minss xmm0, xmm2
movss xmm2, dword [ebp - 0x98]
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm7, xmm2
jbe 0x10020bc9
movaps xmm0, xmm7
jmp 0x10020bd0
movaps xmm0, xmm5
minss xmm0, xmm2
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm7, xmm1
jbe 0x10020beb
movaps xmm5, xmm7
jmp 0x10020bef
minss xmm5, xmm1
movss xmm2, dword [edi + 0x1854]
mulss xmm5, xmm3
mov dword [ebp - 0x40], 0
addss xmm5, xmm4
cvttss2si eax, xmm5
shl eax, 0x18
or eax, ecx
mov ecx, dword [edi + 0x1850]
cmp byte [ebp - 0x28], 0
lea edi, [ebp - 0x100]
mov dword [ebp - 0xd8], eax
cmovne edi, dword [ebp - 0x40]
mov dword [ebp - 0x5c], ecx
test eax, 0xff000000
je 0x10020d35
test edx, edx
jne 0x10020c55
mov ecx, dword [ebp - 0x30]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10020c41
mov eax, dword [ebp - 0x30]
sub ecx, edx
lea edx, [eax + ecx]
mov ecx, dword [ebp - 0x5c]
jmp 0x10020c58
mov eax, dword [ebp - 0x30]
cmp eax, edx
je 0x10020d35
mov esi, dword [ebp - 0x50]
test ecx, ecx
jne 0x10020c70
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 8]
mov dword [ebp - 0x5c], eax
ucomiss xmm2, xmm7
lahf
test ah, 0x44
jp 0x10020c81
mov eax, dword [esi + 0x28]
movss xmm2, dword [eax + 0xc]
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi + 0x44]
shl ecx, 4
movups xmm0, xmmword [eax + ecx - 0x10]
movups xmmword [ebp - 0xd0], xmm0
test edi, edi
je 0x10020cfb
movss xmm1, dword [edi]
movss xmm0, dword [ebp - 0xd0]
comiss xmm0, xmm1
jae 0x10020cb3
movss dword [ebp - 0xd0], xmm1
movss xmm1, dword [edi + 4]
movss xmm0, dword [ebp - 0xcc]
comiss xmm0, xmm1
jae 0x10020ccd
movss dword [ebp - 0xcc], xmm1
movss xmm0, dword [edi + 8]
comiss xmm0, dword [ebp - 0xc8]
ja 0x10020ce3
movss dword [ebp - 0xc8], xmm0
movss xmm0, dword [edi + 0xc]
comiss xmm0, dword [ebp - 0xc4]
ja 0x10020cf9
movss dword [ebp - 0xc4], xmm0
test edi, edi
setne al
movzx eax, al
push eax
push ecx
mov ecx, dword [ebp - 0x5c]
lea eax, [ebp - 0xd0]
mov dword [esp], 0
push edx
push dword [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x34]
push dword [ebp - 0xd8]
push dword [eax + 4]
push dword [eax]
push esi
call fcn.10035b90
mov esi, dword [0x100b7fac]
xorps xmm7, xmm7
mov edi, dword [ebp - 8]
cmp byte [ebp - 0x28], 0
je 0x10020df2
mov eax, dword [esi + 0x1928]
movss xmm2, dword [edi + 0x1854]
mov byte [eax + 0x78], 1
mov eax, dword [esi + 0x1928]
cmp byte [eax + 0x7b], 0
jne 0x10020de2
movss xmm3, dword [ebp - 0x54]
lea ecx, [ebp - 0xa8]
addss xmm2, dword [ebp - 0x1c]
movss xmm1, dword [eax + 0xc8]
addss xmm3, xmm7
movss xmm0, dword [eax + 0xcc]
movss dword [ebp - 0x98], xmm1
movss dword [ebp - 0x94], xmm0
addss xmm2, xmm0
addss xmm3, xmm1
movss dword [ebp - 0x8c], xmm2
subss xmm2, xmm0
movss dword [ebp - 0x90], xmm3
subss xmm3, xmm1
movaps xmm1, xmm7
movss dword [ebp - 0xa4], xmm2
movss dword [ebp - 0xa8], xmm3
call fcn.1000c3e0
push 0
xor edx, edx
lea ecx, [ebp - 0x98]
call fcn.1000ccd0
add esp, 4
call fcn.10013e60
call fcn.10024840
mov esi, dword [0x100b7fac]
mov eax, dword [ebp - 0xbc]
test al, al
je 0x10020e0d
call fcn.10019e60
mov esi, dword [0x100b7fac]
mov eax, dword [ebp - 0xbc]
cmp byte [edi + 0x2b8c], 0
je 0x10020e30
test al, al
jne 0x10020e30
mov edx, dword [ebp - 0x30]
lea ecx, [ebp - 0x68]
push 0
call fcn.100120b0
mov esi, dword [0x100b7fac]
add esp, 4
movss xmm0, dword [ebp - 0xe0]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x10020e85
movss xmm0, dword [ebp - 0xdc]
xor edx, edx
addss xmm0, dword [edi + 0x1554]
mov ecx, dword [ebp - 0xd4]
movss dword [ebp - 0x68], xmm0
movss xmm0, dword [ebp - 0x6c]
addss xmm0, dword [edi + 0x1540]
movss dword [ebp - 0x64], xmm0
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 1
call fcn.100121e0
mov esi, dword [0x100b7fac]
add esp, 0xc
mov al, byte [ebp - 0x41]
test al, al
je 0x10020e93
mov byte [esi + 0x1953], 1
test byte [ebx + 0x10], 0x20
movzx ecx, byte [ebp - 0x21]
movzx eax, al
pop edi
cmovne eax, ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movss xmm0, dword [ecx + 0x18]
or esi, 0xffffffff
mov ecx, dword [edi + 0xc]
xorps xmm6, xmm6
mov eax, dword [edi + 0x38]
xorps xmm3, xmm3
addss xmm0, dword [edi + 0xe5c]
mov edx, dword [edi + 0x3c]
mov dword [ebp - 0x10], ecx
lea eax, [ecx + eax*2]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0xb4], eax
mov ecx, 1
mov eax, dword [edi + 0x40]
movss dword [edi + 0xe5c], xmm0
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x38], 0xfffffc19
cmp edx, eax
je 0x10020f0e
mov ecx, dword [ebp - 0x10]
cmovl eax, edx
mov dword [ebp - 0x38], esi
lea eax, [ecx + eax*2]
mov ecx, 2
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x28]
movzx eax, al
add ecx, eax
xor eax, eax
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x10]
mov edx, eax
movzx eax, word [eax]
test ax, ax
je 0x10020f77
mov esi, eax
nop word [eax + eax]
cmp si, 0xa
jne 0x10020f66
mov eax, dword [ebp - 0x4c]
inc eax
cmp dword [ebp - 0x48], 0xffffffff
mov dword [ebp - 0x4c], eax
jne 0x10020f53
cmp edx, dword [ebp - 0xb4]
jb 0x10020f53
dec ecx
mov dword [ebp - 0x48], eax
test ecx, ecx
jle 0x10020f74
cmp dword [ebp - 0x38], 0xffffffff
jne 0x10020f66
cmp edx, dword [ebp - 0x18]
jb 0x10020f66
dec ecx
mov dword [ebp - 0x38], eax
test ecx, ecx
jle 0x10020f74
movzx eax, word [edx + 2]
add edx, 2
mov esi, eax
test ax, ax
jne 0x10020f30
mov esi, dword [ebp - 0x48]
mov eax, dword [ebp - 0x4c]
inc eax
cmp esi, 0xffffffff
mov ecx, eax
mov dword [ebp - 0x4c], eax
cmovne ecx, esi
mov esi, dword [ebp - 0xb4]
mov dword [ebp - 0xc4], ecx
mov edx, esi
mov ecx, dword [ebp - 0x38]
cmp ecx, 0xffffffff
cmove ecx, eax
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x10]
cmp esi, ecx
jbe 0x10020fb5
cmp word [edx - 2], 0xa
je 0x10020fb5
add edx, 0xfffffffe
cmp edx, ecx
ja 0x10020fa7
mov ecx, dword [0x100b7fac]
movaps xmm1, xmm7
movaps xmm4, xmm7
mov eax, dword [ecx + 0x1850]
movss xmm2, dword [ecx + 0x1854]
divss xmm2, dword [eax]
cmp edx, esi
jae 0x10021027
mov ecx, eax
nop dword [eax]
movzx eax, word [edx]
add edx, 2
mov esi, eax
cmp eax, 0xa
jne 0x10020ff6
maxss xmm1, xmm4
movaps xmm4, xmm7
jmp 0x10021019
cmp esi, 0xd
je 0x10021019
mov esi, eax
cmp esi, dword [ecx + 0x1c]
jge 0x1002100c
mov eax, dword [ecx + 0x24]
movss xmm0, dword [eax + esi*4]
jmp 0x10021011
movss xmm0, dword [ecx + 0x38]
mulss xmm0, xmm2
addss xmm4, xmm0
cmp edx, dword [ebp - 0xb4]
jb 0x10020fe0
mov ecx, dword [0x100b7fac]
cmp dword [ebp - 0x38], 0
maxss xmm4, xmm1
movd xmm5, dword [ebp - 0xc4]
mov edx, dword [ebp - 8]
cvtdq2ps xmm5, xmm5
movss xmm0, dword [edx + 0x1854]
mulss xmm5, xmm0
movss dword [ebp - 0xe4], xmm4
movss dword [ebp - 0x134], xmm5
jl 0x10021107
mov esi, dword [ebp - 0x18]
mov edx, esi
cmp esi, dword [ebp - 0x10]
jbe 0x10021084
mov ecx, dword [ebp - 0x10]
nop dword [eax]
cmp word [edx - 2], 0xa
je 0x1002107e
add edx, 0xfffffffe
cmp edx, ecx
ja 0x10021070
mov ecx, dword [0x100b7fac]
mov eax, dword [ecx + 0x1850]
movaps xmm1, xmm7
movss xmm2, dword [ecx + 0x1854]
movaps xmm3, xmm7
mov dword [ebp - 0xc4], eax
divss xmm2, dword [eax]
cmp edx, esi
jae 0x100210ec
mov ecx, eax
movzx eax, word [edx]
add edx, 2
mov esi, eax
cmp eax, 0xa
jne 0x100210be
maxss xmm1, xmm3
movaps xmm3, xmm7
jmp 0x100210e1
cmp esi, 0xd
je 0x100210e1
mov esi, eax
cmp esi, dword [ecx + 0x1c]
jge 0x100210d4
mov eax, dword [ecx + 0x24]
movss xmm0, dword [eax + esi*4]
jmp 0x100210d9
movss xmm0, dword [ecx + 0x38]
mulss xmm0, xmm2
addss xmm3, xmm0
cmp edx, dword [ebp - 0x18]
jb 0x100210a8
mov ecx, dword [0x100b7fac]
movd xmm6, dword [ebp - 0x38]
maxss xmm3, xmm1
mov edx, dword [ebp - 8]
cvtdq2ps xmm6, xmm6
movss xmm0, dword [edx + 0x1854]
mulss xmm6, xmm0
cmp byte [ebp - 0x28], 0
je 0x1002112d
movd xmm1, dword [ebp - 0x4c]
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm0
movss dword [ebp - 0x1c], xmm1
movss xmm1, dword [ebp - 0x78]
movaps xmm0, xmm1
movss dword [ebp - 0x54], xmm0
jmp 0x10021132
movss xmm1, dword [ebp - 0x78]
cmp byte [edi + 0xe60], 0
je 0x100211ed
test dword [ebx + 0x10], 0x1000
jne 0x1002118d
movss xmm2, dword [edi + 0x34]
movaps xmm0, xmm1
comiss xmm2, xmm4
mulss xmm0, dword [0x1003fb00]
movaps xmm1, xmm4
jbe 0x1002116d
subss xmm1, xmm0
movaps xmm0, xmm7
maxss xmm0, xmm1
jmp 0x1002117b
subss xmm1, dword [ebp - 0x78]
comiss xmm1, xmm2
jb 0x10021194
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x34], xmm0
jmp 0x10021194
mov dword [edi + 0x34], 0
cmp byte [ebp - 0x28], 0
je 0x100211ed
mov eax, dword [ebp - 0x58]
movaps xmm1, xmm5
subss xmm1, dword [edx + 0x1854]
movss xmm2, dword [eax + 0x58]
comiss xmm2, xmm1
jbe 0x100211bb
movaps xmm0, xmm7
maxss xmm0, xmm1
jmp 0x100211ca
movaps xmm0, xmm5
subss xmm0, dword [ebp - 0xb8]
maxss xmm0, xmm2
subss xmm2, xmm0
movss dword [eax + 0x58], xmm0
addss xmm2, dword [eax + 0xcc]
movss dword [ebp - 0x2c], xmm2
movss dword [eax + 0xcc], xmm2
movss dword [ebp - 0x64], xmm2
movss xmm5, dword [edi + 0x34]
mov edx, dword [edi + 0x40]
mov esi, dword [edi + 0x3c]
mov byte [edi + 0xe60], 0
movss dword [ebp - 0x48], xmm5
cmp esi, edx
je 0x1002154e
mov eax, edx
cmovl eax, esi
mov esi, dword [ebp - 0x10]
cmp dword [edi + 0x3c], edx
cmovge edx, dword [edi + 0x3c]
cmp byte [ebp - 0x28], 0
lea esi, [esi + eax*2]
mov eax, dword [ebp - 0x10]
lea eax, [eax + edx*2]
mov dword [ebp - 0x18], eax
je 0x1002123f
movss dword [ebp - 0xd8], xmm7
movss dword [ebp - 0xb8], xmm7
jmp 0x1002124f
movss xmm0, dword [0x1003fb74]
movss dword [ebp - 0xb8], xmm0
movups xmm1, xmmword [ecx + 0x17f0]
comiss xmm7, xmm1
movaps xmm2, xmm1
movaps xmmword [ebp - 0xa0], xmm1
shufps xmm2, xmm1, 0xff
mulss xmm2, dword [ecx + 0x1508]
jbe 0x10021276
movaps xmm0, xmm7
jmp 0x10021282
movss xmm0, dword [0x1003fb34]
minss xmm0, xmm1
movss xmm4, dword [0x1003fc10]
movss xmm1, dword [ebp - 0x9c]
comiss xmm7, xmm1
mulss xmm0, xmm4
addss xmm0, dword [0x1003fb14]
cvttss2si edx, xmm0
jbe 0x100212ac
movaps xmm0, xmm7
jmp 0x100212b8
movss xmm0, dword [0x1003fb34]
minss xmm0, xmm1
movss xmm1, dword [ebp - 0x98]
mulss xmm0, xmm4
addss xmm0, dword [0x1003fb14]
cvttss2si eax, xmm0
shl eax, 8
or edx, eax
comiss xmm7, xmm1
jbe 0x100212df
movaps xmm0, xmm7
jmp 0x100212eb
movss xmm0, dword [0x1003fb34]
minss xmm0, xmm1
movss xmm1, dword [0x1003fb14]
mulss xmm0, xmm4
addss xmm0, xmm1
cvttss2si eax, xmm0
shl eax, 0x10
or edx, eax
comiss xmm7, xmm2
jbe 0x1002130e
movaps xmm0, xmm7
jmp 0x1002131a
movss xmm0, dword [0x1003fb34]
minss xmm0, xmm2
mulss xmm0, xmm4
addss xmm0, xmm1
cvttss2si eax, xmm0
shl eax, 0x18
or eax, edx
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x34]
movss xmm4, dword [eax]
mov eax, dword [ebp - 0x18]
addss xmm4, xmm3
subss xmm4, xmm5
movss xmm5, dword [ebp - 0x2c]
addss xmm5, xmm6
subss xmm5, xmm7
movss dword [ebp - 0xb4], xmm5
cmp esi, eax
jae 0x10021549
movss xmm6, dword [ebp - 0x50]
nop word [eax + eax]
mov edx, dword [ebp - 8]
movaps xmm0, xmm6
addss xmm0, dword [edx + 0x1854]
comiss xmm5, xmm0
ja 0x10021549
movss xmm0, dword [ebp - 0x6c]
comiss xmm0, xmm5
jbe 0x100213b9
mov ecx, dword [ebp - 0x18]
cmp esi, ecx
jae 0x10021519
nop dword [eax]
mov ax, word [esi]
add esi, 2
cmp ax, 0xa
je 0x10021519
cmp esi, ecx
jb 0x100213a0
jmp 0x10021519
mov edx, dword [ecx + 0x1850]
movaps xmm3, xmm7
movss xmm2, dword [ecx + 0x1854]
movaps xmm1, xmm7
divss xmm2, dword [edx]
cmp esi, eax
jae 0x10021414
movzx eax, word [esi]
add esi, 2
mov ecx, eax
cmp eax, 0xa
je 0x1002140a
cmp ecx, 0xd
je 0x10021403
cmp ecx, dword [edx + 0x1c]
jge 0x100213f6
mov eax, dword [edx + 0x24]
movss xmm0, dword [eax + ecx*4]
jmp 0x100213fb
movss xmm0, dword [edx + 0x38]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp esi, dword [ebp - 0x18]
jb 0x100213d5
jmp 0x10021414
movaps xmm3, xmm7
maxss xmm3, xmm1
movaps xmm1, xmm7
maxss xmm1, xmm3
comiss xmm7, xmm1
jb 0x10021451
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x1850]
cmp dword [eax + 0x1c], 0x20
jle 0x10021439
mov eax, dword [eax + 0x24]
movss xmm0, dword [eax + 0x80]
jmp 0x1002143e
movss xmm0, dword [eax + 0x38]
mulss xmm0, dword [0x1003fb14]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [ebp - 8]
addss xmm1, xmm4
movss xmm2, dword [ebp - 0xd8]
addss xmm4, xmm7
movss xmm0, dword [ebp - 0xb8]
movss xmm3, dword [ebp - 0x40]
addss xmm0, xmm5
subss xmm2, dword [eax + 0x1854]
minss xmm1, xmm3
maxss xmm4, dword [ebp - 0x74]
minss xmm0, xmm6
addss xmm2, xmm5
movss dword [ebp - 0x90], xmm1
movss dword [ebp - 0x98], xmm4
comiss xmm0, dword [ebp - 0x6c]
maxss xmm2, dword [ebp - 0x6c]
movss dword [ebp - 0x8c], xmm0
movss dword [ebp - 0x94], xmm2
jbe 0x10021519
comiss xmm6, xmm2
jbe 0x10021519
comiss xmm1, dword [ebp - 0x74]
jbe 0x10021519
comiss xmm3, xmm4
jbe 0x10021519
push 0xf
push ecx
mov dword [esp], 0
lea eax, [ebp - 0x90]
push dword [ebp - 0xc4]
push eax
lea eax, [ebp - 0x98]
push eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [eax + 0x27c]
call fcn.100334d0
movss xmm0, dword [ebp - 0x5c]
xorps xmm7, xmm7
movss xmm5, dword [ebp - 0xb4]
movss xmm6, dword [ebp - 0x50]
movss dword [ebp - 0x5c], xmm0
movss xmm0, dword [ebp - 0x70]
movss dword [ebp - 0x70], xmm0
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
movss xmm4, dword [ecx]
mov ecx, dword [ebp - 8]
subss xmm4, dword [ebp - 0x48]
addss xmm5, dword [ecx + 0x1854]
mov ecx, dword [0x100b7fac]
movss dword [ebp - 0xb4], xmm5
cmp esi, eax
jb 0x10021370
movss xmm5, dword [ebp - 0x48]
movups xmm1, xmmword [ecx + 0x15a0]
mov eax, dword [ebp - 0x58]
mov esi, dword [edi + 0x28]
add esi, dword [ebp - 0x30]
movaps xmm2, xmm1
comiss xmm7, xmm1
mov eax, dword [eax + 0x27c]
mov dword [ebp - 0x18], eax
movss xmm6, dword [0x1003fb34]
shufps xmm2, xmm1, 0xff
mulss xmm2, dword [ecx + 0x1508]
movaps xmmword [ebp - 0xa0], xmm1
jbe 0x1002158f
movaps xmm0, xmm7
jmp 0x10021596
movaps xmm0, xmm6
minss xmm0, xmm1
movss xmm3, dword [0x1003fc10]
movss xmm4, dword [0x1003fb14]
movss xmm1, dword [ebp - 0x9c]
comiss xmm7, xmm1
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si ecx, xmm0
jbe 0x100215c4
movaps xmm0, xmm7
jmp 0x100215cb
movaps xmm0, xmm6
minss xmm0, xmm1
movss xmm1, dword [ebp - 0x98]
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm7, xmm1
jbe 0x100215ee
movaps xmm0, xmm7
jmp 0x100215f5
movaps xmm0, xmm6
minss xmm0, xmm1
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm7, xmm2
jbe 0x10021610
movaps xmm0, xmm7
jmp 0x10021617
movaps xmm0, xmm6
minss xmm0, xmm2
mov eax, dword [ebp - 0x34]
lea edx, [ebp - 0x100]
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si edi, xmm0
movss xmm0, dword [eax]
mov eax, dword [ebp - 8]
subss xmm0, xmm5
shl edi, 0x18
or edi, ecx
xor ecx, ecx
cmp byte [ebp - 0x28], cl
movss xmm2, dword [eax + 0x1854]
mov eax, dword [eax + 0x1850]
cmovne edx, ecx
movss dword [ebp - 0xc8], xmm0
movss xmm0, dword [ebp - 0x2c]
mov dword [ebp - 0x50], eax
subss xmm0, xmm7
movss dword [ebp - 0xc4], xmm0
test edi, 0xff000000
je 0x10021771
test esi, esi
jne 0x10021695
mov ecx, dword [ebp - 0x30]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10021684
mov eax, dword [ebp - 0x50]
sub ecx, esi
mov esi, dword [ebp - 0x30]
add esi, ecx
cmp dword [ebp - 0x30], esi
je 0x10021771
mov ecx, dword [ebp - 0x18]
test eax, eax
jne 0x100216ae
mov eax, dword [ecx + 0x28]
mov eax, dword [eax + 8]
mov dword [ebp - 0x50], eax
ucomiss xmm2, xmm7
lahf
test ah, 0x44
jp 0x100216bf
mov eax, dword [ecx + 0x28]
movss xmm2, dword [eax + 0xc]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ecx + 0x3c]
shl ecx, 4
mov eax, dword [eax + 0x44]
movups xmm0, xmmword [ecx + eax - 0x10]
movups xmmword [ebp - 0xa0], xmm0
test edx, edx
je 0x1002173c
movss xmm1, dword [edx]
movss xmm0, dword [ebp - 0xa0]
comiss xmm0, xmm1
jae 0x100216f4
movss dword [ebp - 0xa0], xmm1
movss xmm1, dword [edx + 4]
movss xmm0, dword [ebp - 0x9c]
comiss xmm0, xmm1
jae 0x1002170e
movss dword [ebp - 0x9c], xmm1
movss xmm0, dword [edx + 8]
comiss xmm0, dword [ebp - 0x98]
ja 0x10021724
movss dword [ebp - 0x98], xmm0
movss xmm0, dword [edx + 0xc]
comiss xmm0, dword [ebp - 0x94]
ja 0x1002173a
movss dword [ebp - 0x94], xmm0
test edx, edx
setne al
movzx eax, al
push eax
push ecx
mov ecx, dword [ebp - 0x50]
lea eax, [ebp - 0xa0]
mov dword [esp], 0
push esi
push dword [ebp - 0x30]
push eax
push edi
push dword [ebp - 0xc4]
push dword [ebp - 0xc8]
push dword [ebp - 0x18]
call fcn.10035b90
xorps xmm7, xmm7
mov edi, dword [ebp - 8]
cmp byte [edi + 0xbd], 0
je 0x100217c9
movss xmm0, dword [edi + 0x2ab4]
comiss xmm7, xmm0
jae 0x100217c9
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0xc8], xmm0
fld qword [ebp - 0xc8]
fld qword [0x1003fb60]
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm0, dword [0x1003fb28]
fstp qword [ebp - 0xc8]
movsd xmm1, qword [ebp - 0xc8]
cvtpd2ps xmm1, xmm1
comiss xmm0, xmm1
jae 0x100217c9
xor al, al
jmp 0x100217cb
mov al, 1
movss xmm2, dword [ebp - 0x2c]
xorps xmm7, xmm7
mov ecx, dword [ebp - 0x34]
movss xmm6, dword [0x1003fb14]
movss xmm4, dword [0x1003fb34]
addss xmm2, dword [ebp - 0x134]
movss xmm5, dword [ecx]
addss xmm5, dword [ebp - 0xe4]
subss xmm2, xmm7
subss xmm5, dword [ebp - 0x48]
movss dword [ebp - 0x2c], xmm2
movaps xmm0, xmm2
movaps xmm3, xmm2
movss dword [ebp - 0xe4], xmm5
movaps xmm1, xmm5
movss dword [ebp - 0x98], xmm5
addss xmm1, xmm4
subss xmm0, dword [edi + 0x1854]
subss xmm3, dword [0x1003fb40]
movss dword [ebp - 0x90], xmm1
addss xmm0, xmm6
movss dword [ebp - 0x8c], xmm3
movss dword [ebp - 0x94], xmm0
test al, al
je 0x100219a8
comiss xmm3, dword [ebp - 0x6c]
jbe 0x100219a8
movss xmm4, dword [ebp - 0x70]
comiss xmm4, xmm0
jbe 0x100219a0
comiss xmm1, dword [ebp - 0x74]
jbe 0x100219a0
movss xmm0, dword [ebp - 0x5c]
comiss xmm0, xmm5
jbe 0x100219a0
mov esi, dword [0x100b7fac]
movups xmm2, xmmword [esi + 0x15a0]
comiss xmm7, xmm2
movaps xmm1, xmm2
movaps xmmword [ebp - 0x100], xmm2
shufps xmm1, xmm2, 0xff
mulss xmm1, dword [esi + 0x1508]
jbe 0x100218b6
xorps xmm0, xmm0
jmp 0x100218c2
movss xmm0, dword [0x1003fb34]
minss xmm0, xmm2
movss xmm4, dword [0x1003fc10]
movss xmm2, dword [ebp - 0xfc]
comiss xmm7, xmm2
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si ecx, xmm0
jbe 0x100218e8
xorps xmm0, xmm0
jmp 0x100218f4
movss xmm0, dword [0x1003fb34]
minss xmm0, xmm2
movss xmm2, dword [ebp - 0xf8]
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm7, xmm2
jbe 0x10021917
xorps xmm0, xmm0
jmp 0x10021923
movss xmm0, dword [0x1003fb34]
minss xmm0, xmm2
mulss xmm0, xmm4
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm7, xmm1
jbe 0x1002193e
xorps xmm0, xmm0
jmp 0x1002194a
movss xmm0, dword [0x1003fb34]
minss xmm0, xmm1
mulss xmm0, xmm4
push ecx
mov dword [esp], 0x3f800000
movss dword [ebp - 0xa8], xmm5
addss xmm0, xmm6
movss dword [ebp - 0xa4], xmm3
cvttss2si eax, xmm0
shl eax, 0x18
or eax, ecx
push eax
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x98]
push eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [eax + 0x27c]
call fcn.10033280
movss xmm2, dword [ebp - 0x2c]
xorps xmm7, xmm7
movss xmm5, dword [ebp - 0xe4]
movss xmm4, dword [0x1003fb34]
cmp byte [ebp - 0x3c], 0
mov esi, dword [0x100b7fac]
je 0x10020d38
subss xmm2, dword [edi + 0x1854]
subss xmm5, xmm4
movss dword [edi + 0x2b54], xmm2
movss dword [edi + 0x2b50], xmm5
jmp 0x10020d38