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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14c
mov eax, dword [0x1004300c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [0x10043a6c]
push edi
mov edi, esi
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 0xbc], edi
mov eax, dword [edi + 0x19b0]
mov byte [eax + 0x7c], 1
mov ebx, dword [edi + 0x19b0]
mov dword [ebp - 0x104], ebx
cmp byte [ebx + 0x7f], 0
jne 0x1002cc1f
mov ecx, dword [ebp + 0x14]
mov eax, ecx
shr eax, 0xe
mov edx, ecx
and eax, 0xffffff01
shr edx, 0x14
mov dword [ebp - 0xdc], eax
and edx, 0xffffff01
mov eax, ecx
mov dword [ebp - 0xd4], edx
shr eax, 0xf
and eax, 0xffffff01
mov dword [ebp - 0x128], eax
mov eax, ecx
shr eax, 0x10
not al
and eax, 0xffffff01
mov dword [ebp - 0x110], eax
mov eax, ecx
shr eax, 0x12
and eax, 0xffffff01
mov dword [ebp - 0x124], eax
test dl, dl
je 0x1002c8f8
call fcn.10011d90
mov esi, dword [0x10043a6c]
mov ecx, dword [ebx + 0xbc]
xor edx, edx
mov eax, dword [ebx + 0xc4]
push dword [eax + ecx*4 - 4]
mov ecx, dword [ebp - 0x12c]
call fcn.10007790
mov edx, eax
add esp, 4
mov dword [ebp - 0xd0], edx
cmp dword [esi + 0x19e4], edx
jne 0x1002c92e
mov dword [esi + 0x19e8], edx
cmp dword [esi + 0x1a18], edx
jne 0x1002c93d
mov byte [esi + 0x1a1c], 1
mov ecx, dword [ebp - 0x12c]
mov eax, ecx
cmp ecx, 0xffffffff
jae 0x1002c96c
nop word [eax + eax]
mov cl, byte [eax]
test cl, cl
je 0x1002c966
cmp cl, 0x23
jne 0x1002c960
cmp byte [eax + 1], cl
je 0x1002c966
inc eax
cmp eax, 0xffffffff
jb 0x1002c950
mov ecx, dword [ebp - 0x12c]
movss xmm2, dword [esi + 0x18c4]
cmp ecx, eax
jne 0x1002c985
xorps xmm7, xmm7
movss dword [ebp - 0x144], xmm7
jmp 0x1002c9de
movss xmm3, dword [0x1003ff84]
push ecx
push eax
push ecx
push ecx
mov ecx, dword [esi + 0x18c0]
lea eax, [ebp - 0x10c]
mov dword [esp], 0xbf800000
push eax
call fcn.10024500
movss xmm0, dword [ebp - 0x10c]
xorps xmm7, xmm7
addss xmm0, dword [0x1003fe60]
movss xmm2, dword [ebp - 0x108]
mov edx, dword [ebp - 0xd0]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x144], xmm0
cmp byte [ebp - 0xd4], 0
je 0x1002c9f7
movss xmm2, dword [edi + 0x18c4]
mulss xmm2, dword [0x1003fedc]
test byte [esi + 0x1a84], 1
mov ecx, dword [esi + 0x19b0]
je 0x1002ca10
movss xmm0, dword [esi + 0x1a88]
jmp 0x1002ca18
movss xmm0, dword [ecx + 0x1a8]
comiss xmm7, xmm0
jbe 0x1002ca50
mov eax, ecx
cmp dword [eax + 0x190], 0
movss xmm1, dword [eax + 0x244]
je 0x1002ca38
movss xmm1, dword [eax + 0x224]
subss xmm1, dword [ecx + 0xc8]
addss xmm1, xmm0
movss xmm0, dword [0x1003fe64]
maxss xmm0, xmm1
movss xmm5, dword [edi + 0x154c]
xorps xmm1, xmm1
cvttss2si eax, xmm0
movaps xmm3, xmm5
xorps xmm0, xmm0
addss xmm3, xmm5
movd xmm4, eax
mov eax, dword [ebp + 0x10]
addss xmm3, xmm2
cvtdq2ps xmm4, xmm4
movss xmm6, dword [eax]
comiss xmm7, xmm6
movss xmm2, dword [eax + 4]
movss dword [ebp - 0x114], xmm6
movss dword [ebp - 0x118], xmm2
ja 0x1002ca9a
comiss xmm7, xmm2
jbe 0x1002cabb
cmp dword [ecx + 0x190], 0
movss xmm0, dword [ecx + 0x244]
movss xmm1, dword [ecx + 0x248]
je 0x1002cabb
movss xmm0, dword [ecx + 0x224]
movss xmm2, dword [0x1003fecc]
ucomiss xmm6, xmm7
lahf
test ah, 0x44
jp 0x1002cad9
movaps xmm6, xmm4
movss dword [ebp - 0x114], xmm6
jmp 0x1002cb02
comiss xmm7, xmm6
jbe 0x1002cb02
subss xmm0, dword [ecx + 0xc8]
addss xmm6, xmm0
comiss xmm2, xmm6
movss dword [ebp - 0x114], xmm6
jb 0x1002cb02
movaps xmm6, xmm2
movss dword [ebp - 0x114], xmm2
movss xmm0, dword [ebp - 0x118]
ucomiss xmm0, xmm7
lahf
test ah, 0x44
jp 0x1002cb1d
movss dword [ebp - 0x118], xmm3
jmp 0x1002cb43
comiss xmm7, xmm0
jbe 0x1002cb43
subss xmm1, dword [ecx + 0xcc]
addss xmm0, xmm1
comiss xmm2, xmm0
movss dword [ebp - 0x118], xmm0
jb 0x1002cb43
movss dword [ebp - 0x118], xmm2
movss xmm0, dword [ebp - 0x144]
comiss xmm0, xmm7
jbe 0x1002cb5d
movaps xmm2, xmm0
addss xmm2, dword [edi + 0x1560]
jmp 0x1002cb60
xorps xmm2, xmm2
cmp byte [ebp - 0xd4], 0
addss xmm2, xmm6
movss xmm4, dword [ebx + 0xcc]
movss xmm3, dword [ebx + 0xc8]
movaps xmm0, xmm4
addss xmm0, dword [ebp - 0x118]
movaps xmm1, xmm3
movss dword [ebp - 0x4c], xmm3
addss xmm1, xmm6
movss dword [ebp - 0x48], xmm4
addss xmm2, xmm3
movss dword [ebp - 0x14], xmm3
movss dword [ebp - 0x10], xmm4
movss dword [ebp - 0x40], xmm0
movaps xmm0, xmm4
addss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x44], xmm1
movss dword [ebp - 0xc], xmm2
mov dword [ebp - 0xec], ebx
movss dword [ebp - 8], xmm0
je 0x1002cca7
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x14]
call fcn.10009b90
add esp, 4
test al, al
jne 0x1002cc32
movss xmm0, dword [ebp - 0xc]
lea ecx, [ebp - 0x10c]
subss xmm0, dword [ebp - 0x14]
movss xmm1, dword [edi + 0x154c]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 8]
subss xmm0, dword [ebp - 0x10]
movss dword [ebp - 0x108], xmm0
call fcn.10009a60
call fcn.10011ec0
xor al, al
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10038f5a
mov esp, ebp
pop ebp
ret
movss xmm0, dword [ebp - 0x44]
lea edx, [ebp - 0x10c]
subss xmm0, dword [ebp - 0x4c]
mov esi, dword [ebp - 0xd0]
push ecx
mov ecx, esi
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x40]
subss xmm0, dword [ebp - 0x48]
movss dword [ebp - 0x108], xmm0
call fcn.1000cb20
add esp, 4
test al, al
jne 0x1002cc78
call fcn.1000c950
jmp 0x1002cc1a
mov ebx, dword [edi + 0x19b0]
movss xmm0, dword [ebp - 0x114]
mov dword [ebp - 0xec], ebx
subss xmm0, dword [ebx + 0x70]
mov eax, dword [ebx + 0x138]
or dword [ebx + 0x140], eax
movss dword [ebp - 0x114], xmm0
jmp 0x1002ccec
subss xmm2, xmm3
movaps xmm1, xmm5
subss xmm0, xmm4
lea ecx, [ebp - 0x10c]
movss dword [ebp - 0x10c], xmm2
movss dword [ebp - 0x108], xmm0
call fcn.10009a60
mov esi, dword [ebp - 0xd0]
lea eax, [ebp - 0x4c]
push eax
mov edx, esi
lea ecx, [ebp - 0x14]
call fcn.10009b90
add esp, 4
test al, al
je 0x1002cc1f
mov edx, esi
lea ecx, [ebp - 0x4c]
call fcn.10009d40
mov byte [ebp - 0xb3], al
test al, al
je 0x1002cd0a
mov dword [edi + 0x1d38], 1
xor eax, eax
lea ebx, [edi + 0x1e08]
cmp dword [edi + 0x1e08], esi
mov edx, esi
mov esi, dword [ebp - 0x104]
mov ecx, esi
cmovne ebx, eax
mov dword [ebp - 0x100], ebx
call fcn.10009fb0
mov byte [ebp - 0xe1], al
mov edx, edi
test al, al
je 0x1002cdb2
cmp dword [edx + 0x1be4], esi
jne 0x1002cdb2
mov ecx, dword [edx + 0x1bec]
cmp ecx, dword [esi + 0x19c]
jne 0x1002cdb2
mov byte [ebp - 0xbd], 1
mov byte [ebp - 0xc6], 0
cmp byte [ebp - 0xb3], 0
je 0x1002cd79
cmp byte [edx + 0x3d8], 0
mov byte [ebp - 0xb4], 1
jne 0x1002cd80
mov byte [ebp - 0xb4], 0
mov esi, dword [edx + 0x19e4]
mov eax, dword [ebp - 0xd0]
cmp esi, eax
je 0x1002cdcd
cmp dword [edx + 0x1aec], eax
je 0x1002cda9
cmp dword [edx + 0x1ae0], eax
jne 0x1002cdcd
cmp dword [edx + 0x1b00], 3
jne 0x1002cdcd
mov byte [ebp - 0xb2], 1
jmp 0x1002cdd4
mov byte [ebp - 0xbd], 0
test al, al
je 0x1002cd59
mov byte [ebp - 0xc6], 1
mov byte [ebp - 0xbd], 0
jmp 0x1002cd60
mov byte [ebp - 0xb2], 0
mov eax, dword [ebp - 0xd4]
test al, al
je 0x1002ce24
test ebx, ebx
je 0x1002ce24
test esi, esi
jne 0x1002ce24
mov eax, dword [ebp - 0xec]
xor edx, edx
mov ecx, dword [eax + 0xbc]
mov eax, dword [eax + 0xc4]
push dword [eax + ecx*4 - 4]
mov ecx, str.SCROLLY
call fcn.10007790
mov ecx, edi
add esp, 4
cmp dword [ecx + 0x1a18], eax
jne 0x1002ce1e
mov byte [ebp - 0xb0], 1
jmp 0x1002ce3a
mov eax, dword [ebp - 0xd4]
mov byte [ebp - 0xb0], 0
test al, al
je 0x1002ce67
mov byte [ebp - 0xb0], 0
test ebx, ebx
je 0x1002ce67
mov eax, dword [ebp - 0xec]
xor edx, edx
mov ecx, dword [eax + 0xbc]
mov eax, dword [eax + 0xc4]
push dword [eax + ecx*4 - 4]
mov ecx, str.SCROLLY
call fcn.10007790
add esp, 4
cmp esi, eax
jne 0x1002ce67
mov al, 1
jmp 0x1002ce69
xor al, al
mov edx, dword [ebp - 0xd0]
mov cl, byte [ebp - 0xb2]
mov byte [ebp - 0xbe], al
mov byte [ebp - 0xaf], 0
cmp esi, edx
je 0x1002cea0
test byte [ebp + 0x14], 0x10
jne 0x1002ce90
test cl, cl
je 0x1002cea0
cmp byte [ebp - 0xd4], 0
mov byte [ebp - 0xe8], 1
je 0x1002cea7
mov byte [ebp - 0xe8], 0
cmp byte [ebp - 0xe1], 0
jne 0x1002cffd
cmp byte [ebp - 0xb4], 0
jne 0x1002cffd
cmp byte [ebp - 0xb0], 0
jne 0x1002cffd
test cl, cl
jne 0x1002cffd
mov byte [ebp - 0xb0], cl
test al, al
jne 0x1002d004
mov byte [ebp - 0xbf], al
mov edi, edx
mov esi, dword [ebp - 0xbc]
cmp dword [esi + 0x19e4], edi
je 0x1002cf9f
cmp byte [ebp - 0xb0], 0
je 0x1002cf9f
mov edx, dword [ebp - 0x104]
mov ecx, edi
call fcn.10009980
call fcn.10013790
mov ecx, edx
call fcn.100114e0
mov eax, dword [esi + 0x19f8]
mov edx, dword [ebp + 0x14]
or eax, 3
cmp byte [ebp - 0xd4], 0
mov dword [esi + 0x19f8], eax
jne 0x1002cf43
test dl, dl
jns 0x1002cf4c
or eax, 0xc
mov dword [esi + 0x19f8], eax
mov eax, dword [esi + 0x1a00]
or dword [esi + 0x19fc], 2
or eax, 0x180
cmp byte [ebp - 0xd4], 0
mov ecx, dword [esi + 0x1a04]
mov dword [esi + 0x1a00], eax
mov dword [esi + 0x1a04], ecx
je 0x1002cf88
or eax, 0x60
mov dword [esi + 0x1a04], ecx
mov dword [esi + 0x1a00], eax
test edx, 0x440
je 0x1002cf9f
or eax, 1
mov dword [esi + 0x1a04], ecx
mov dword [esi + 0x1a00], eax
mov eax, dword [esi + 0x19e4]
cmp eax, edi
jne 0x1002d24c
test ebx, ebx
jne 0x1002cfc8
xor edx, edx
xor ecx, ecx
call fcn.10009980
mov eax, dword [esi + 0x19e4]
cmp eax, edi
jne 0x1002d24c
cmp byte [esi + 0x3d8], 0
je 0x1002d259
cmp byte [ebp - 0xbf], 0
jne 0x1002d259
cmp byte [ebp - 0xb0], 0
jne 0x1002d259
mov byte [ebp - 0xaf], 1
mov cl, 1
jmp 0x1002d25f
mov byte [ebp - 0xb0], 1
mov byte [ebp - 0xbf], 1
mov dword [ebp - 0x100], ebx
cmp esi, edx
je 0x1002ceea
mov ecx, dword [ebp - 0xd8]
lea ebx, [edi + 0x1e08]
mov dword [ebp - 0x100], ebx
mov dword [ebx + 0xe60], 0xbe99999a
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002d038
mov edi, dword [ebx + 0x28]
lea eax, [ebx + 0x24]
sub ecx, edx
lea esi, [ecx + 1]
cmp esi, edi
jle 0x1002d077
test edi, edi
je 0x1002d05f
mov eax, edi
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
add ecx, edi
jmp 0x1002d064
mov ecx, 8
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
lea ecx, [ebx + 0x24]
push eax
call fcn.10017c50
lea eax, [ebx + 0x24]
push esi
push dword [ebp - 0xd8]
mov dword [eax], esi
push dword [ebx + 0x2c]
call sub.VCRUNTIME140.dll_memcpy
mov edi, dword [ebp + 0xc]
lea eax, [ebx + 0xc]
mov esi, dword [eax + 4]
inc edi
add esp, 0xc
cmp edi, esi
jle 0x1002d0c2
test esi, esi
je 0x1002d0aa
mov eax, esi
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
add ecx, esi
jmp 0x1002d0af
mov ecx, 8
cmp ecx, edi
mov eax, edi
cmovg eax, ecx
lea ecx, [ebx + 0xc]
push eax
call fcn.10017cc0
lea eax, [ebx + 0xc]
mov dword [eax], edi
mov ecx, dword [ebx + 0x1c]
test ecx, ecx
jns 0x1002d0e4
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
lea ecx, [ebx + 0x18]
call fcn.10017c50
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0xd8]
dec eax
mov dword [ebx + 0x18], 0
mov edi, edx
mov ecx, dword [ebx + 0x14]
mov esi, ecx
mov byte [ebx + 0x30], 0
mov dword [ebp - 0xcc], ecx
lea eax, [ecx + eax*2]
cmp ecx, eax
jae 0x1002d15f
nop dword [eax]
cmp byte [edi], 0
je 0x1002d159
push 0
mov edx, edi
lea ecx, [ebp - 0xe0]
call fcn.10007ab0
add edi, eax
add esp, 4
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x1002d153
cmp eax, 0xffff
ja 0x1002d140
mov word [esi], ax
add esi, 2
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0xcc]
dec eax
lea eax, [ecx + eax*2]
cmp esi, eax
jb 0x1002d110
jmp 0x1002d159
mov ecx, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xd8]
xor eax, eax
sub edi, edx
mov word [esi], ax
sub esi, ecx
sar esi, 1
mov dword [ebx + 8], edi
mov edi, dword [ebp - 0xd0]
mov dword [ebx + 4], esi
cmp dword [ebx], edi
jne 0x1002d19e
cmp dword [ebx + 0x3c], esi
mov ecx, esi
cmovl ecx, dword [ebx + 0x3c]
cmp dword [ebx + 0x40], esi
mov dword [ebx + 0x3c], ecx
mov ecx, esi
cmovl ecx, dword [ebx + 0x40]
cmp dword [ebx + 0x44], esi
mov dword [ebx + 0x40], ecx
cmovl esi, dword [ebx + 0x44]
mov dword [ebx + 0x44], esi
jmp 0x1002d1ff
mov ecx, dword [ebp - 0xd4]
mov dword [ebx + 0x38], eax
mov dword [ebx + 0xe58], eax
mov dword [ebx + 0x40], eax
mov dword [ebx + 0x44], eax
mov dword [ebx + 0x3c], eax
mov dword [ebx + 0x50], eax
mov al, cl
xor al, 1
mov dword [ebx], edi
mov dword [ebx + 0xe52], 0x630000
mov dword [ebx + 0xe5c], 0x3e7
mov dword [ebx + 0x48], 0x10000
mov byte [ebx + 0x4c], al
test cl, cl
jne 0x1002d205
mov ecx, dword [ebp - 0xe8]
mov eax, 1
cmp byte [ebp - 0xbd], 0
movzx ecx, cl
cmovne ecx, eax
mov dword [ebp - 0xe8], ecx
mov ecx, dword [ebp - 0xd4]
test dword [ebp + 0x14], 0x2000
je 0x1002d212
mov byte [ebx + 0x48], 1
test cl, cl
jne 0x1002ceec
cmp byte [ebp - 0xc6], cl
jne 0x1002d240
cmp byte [ebp - 0xb4], cl
je 0x1002ceec
mov eax, dword [ebp - 0xbc]
cmp byte [eax + 0x100], cl
je 0x1002ceec
mov byte [ebp - 0xe8], 1
jmp 0x1002ceec
test ebx, ebx
je 0x1002d25d
cmp byte [ebp - 0xbe], 0
je 0x1002d25d
mov cl, 1
jmp 0x1002d25f
xor cl, cl
mov byte [ebp - 0xb4], cl
test ebx, ebx
je 0x1002d279
mov eax, dword [ebx + 0x40]
cmp eax, dword [ebx + 0x44]
je 0x1002d279
test cl, cl
je 0x1002d279
mov al, 1
jmp 0x1002d27b
xor al, al
mov edx, dword [ebp - 0xdc]
mov byte [ebp - 0xae], al
mov byte [ebp - 0xe1], 0
mov byte [ebp - 0xb1], 0
test dl, dl
je 0x1002d3b6
test ebx, ebx
je 0x1002d3b6
test cl, cl
jne 0x1002d2b1
test al, al
je 0x1002d3be
mov esi, dword [ebp + 0xc]
lea eax, [ebx + 0xc]
mov edi, dword [eax + 4]
inc esi
cmp esi, edi
jle 0x1002d2e8
test edi, edi
je 0x1002d2d0
mov eax, edi
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
add ecx, edi
jmp 0x1002d2d5
mov ecx, 8
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
lea ecx, [ebx + 0xc]
push eax
call fcn.10017cc0
lea eax, [ebx + 0xc]
mov edx, dword [ebp - 0xd8]
mov edi, edx
mov dword [eax], esi
mov ecx, dword [ebx + 0x14]
mov esi, ecx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xcc], ecx
lea eax, [ecx + eax*2]
cmp ecx, eax
jae 0x1002d355
cmp byte [edi], 0
je 0x1002d34f
push 0
mov edx, edi
lea ecx, [ebp - 0xe0]
call fcn.10007ab0
add edi, eax
add esp, 4
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x1002d349
cmp eax, 0xffff
ja 0x1002d337
mov word [esi], ax
add esi, 2
mov ecx, dword [ebp - 0xcc]
mov edx, dword [ebp + 0xc]
lea eax, [ecx + edx*2]
cmp esi, eax
jb 0x1002d307
jmp 0x1002d34f
mov ecx, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xd8]
xor eax, eax
sub edi, edx
mov word [esi], ax
sub esi, ecx
movzx eax, byte [ebp - 0xae]
sar esi, 1
cmp dword [ebx + 0x3c], esi
mov ecx, esi
mov edx, esi
mov dword [ebx + 4], esi
cmovl ecx, dword [ebx + 0x3c]
cmp dword [ebx + 0x40], esi
mov dword [ebx + 0x3c], ecx
cmovl edx, dword [ebx + 0x40]
cmp dword [ebx + 0x44], esi
mov dword [ebx + 8], edi
cmovl esi, dword [ebx + 0x44]
xor ecx, ecx
mov edi, dword [ebp - 0xd0]
cmp edx, esi
mov dword [ebx + 0x40], edx
mov edx, dword [ebp - 0xdc]
cmovne ecx, eax
mov al, cl
mov dword [ebx + 0x44], esi
mov esi, dword [ebp - 0xbc]
mov cl, byte [ebp - 0xb4]
mov byte [ebp - 0xae], al
test cl, cl
jne 0x1002d3c6
test al, al
jne 0x1002d3c6
cmp dword [esi + 0x19e4], edi
jne 0x1002d3da
test dl, dl
jne 0x1002d3da
test ebx, ebx
je 0x1002d3da
mov byte [ebp - 0xf9], 1
cmp byte [ebx + 0x30], dl
jne 0x1002d3e1
mov byte [ebp - 0xf9], 0
cmp byte [ebp - 0x128], 0
je 0x1002d488
mov esi, dword [esi + 0x18c0]
cmp dword [esi + 0x14], 0x2a
jg 0x1002d3ff
mov edi, dword [esi + 0x2c]
jmp 0x1002d41e
mov eax, dword [esi + 0x1c]
mov ecx, 0xffff
movzx eax, word [eax + 0x54]
cmp ax, cx
jne 0x1002d415
mov edi, dword [esi + 0x2c]
jmp 0x1002d41e
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x28]
lea edi, [eax + ecx*8]
mov eax, dword [esi + 0x10]
mov esi, dword [ebp - 0xbc]
mov edx, dword [ebp - 0xbc]
add edx, 0x2c7c
mov dword [edx + 0x10], eax
mov eax, dword [esi + 0x18c0]
mov eax, dword [eax + 0x48]
mov dword [edx + 0x48], eax
mov eax, dword [esi + 0x18c0]
mov ecx, dword [eax + 0x30]
mov eax, dword [eax + 0x34]
mov dword [edx + 0x30], ecx
mov ecx, edx
mov dword [edx + 0x34], eax
mov eax, dword [esi + 0x18c0]
mov eax, dword [eax + 0x4c]
mov dword [edx + 0x4c], eax
mov eax, dword [esi + 0x18c0]
mov eax, dword [eax + 0x50]
mov dword [edx + 0x50], eax
mov eax, dword [esi + 0x18c0]
mov eax, dword [eax + 0x38]
mov dword [edx + 0x38], eax
mov dword [edx + 0x2c], edi
mov eax, dword [edi + 4]
mov dword [edx + 0xc], eax
call fcn.100117a0
mov edi, dword [ebp - 0xbc]
mov edx, dword [ebp - 0xd0]
mov dword [ebp - 0xf8], 0
cmp dword [edi + 0x19e4], edx
jne 0x1002d8a5
mov eax, dword [ebx + 8]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp + 0xc]
mov dword [ebx + 0x34], eax
mov eax, dword [ebp + 0x14]
mov dword [ebx + 0xe68], eax
mov dword [ebx + 0xe6c], 0
mov dword [ebx + 0xe70], 0
mov cl, byte [edi + 0xf0]
test cl, cl
mov dword [edi + 0x2f80], 1
sete al
cmp byte [ebp - 0xd4], 0
mov byte [edi + 0x19f1], al
movss xmm7, dword [edi + 0xe8]
subss xmm7, dword [ebp - 0x4c]
subss xmm7, dword [edi + 0x1548]
addss xmm7, dword [ebx + 0x38]
je 0x1002d534
mov eax, dword [ebp - 0xec]
movss xmm2, dword [edi + 0xec]
subss xmm2, dword [eax + 0xcc]
subss xmm2, dword [edi + 0x154c]
jmp 0x1002d544
movss xmm2, dword [edi + 0x18c4]
mulss xmm2, dword [0x1003fe24]
cmp byte [ebp - 0xe8], 0
mov dl, byte [edi + 0xb1]
mov byte [ebp - 0xb0], dl
jne 0x1002d6bc
mov ah, byte [ebp - 0xb3]
test ah, ah
je 0x1002d579
mov al, byte [edi + 0x3dd]
test dl, dl
jne 0x1002d5e1
test al, al
jne 0x1002d6bc
cmp byte [edi + 0x3d8], 0
mov al, byte [ebx + 0xe65]
je 0x1002d636
test al, al
jne 0x1002d636
test ah, ah
je 0x1002d6d7
cmp byte [ebx + 0x4c], al
je 0x1002d5b5
push 0
mov edx, ebx
lea ecx, [ebp - 0x3c]
call fcn.1002afb0
movss xmm2, dword [ebp - 0x30]
add esp, 4
movaps xmm1, xmm7
mov ecx, ebx
call fcn.1002b2c0
mov dl, byte [ebp - 0xb0]
mov dword [ebx + 0x3c], eax
mov dword [ebx + 0x40], eax
mov dword [ebx + 0x44], eax
mov byte [ebx + 0x4b], 0
mov dword [ebx + 0xe60], 0xbe99999a
jmp 0x1002d6d7
test al, al
je 0x1002d579
push 0x20000c
lea edx, [ebx + 0x3c]
mov ecx, ebx
call fcn.1002b6b0
add esp, 4
mov byte [ebx + 0xe64], 1
lea edx, [ebx + 0x3c]
mov dword [ebx + 0xe60], 0xbe99999a
mov ecx, ebx
push 0x60000d
call fcn.1002b6b0
mov dl, byte [ebp - 0xb0]
add esp, 4
mov byte [ebx + 0xe64], 1
mov dword [ebx + 0xe60], 0xbe99999a
jmp 0x1002d6d7
test cl, cl
je 0x1002d6d7
test al, al
jne 0x1002d6d7
movss xmm0, dword [edi + 0x378]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x1002d66b
movss xmm0, dword [edi + 0x37c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1002d6d7
cmp byte [ebx + 0x4c], 0
je 0x1002d685
push 0
mov edx, ebx
lea ecx, [ebp - 0x3c]
call fcn.1002afb0
movss xmm2, dword [ebp - 0x30]
add esp, 4
mov eax, dword [ebx + 0x40]
cmp eax, dword [ebx + 0x44]
jne 0x1002d693
mov eax, dword [ebx + 0x3c]
mov dword [ebx + 0x40], eax
movaps xmm1, xmm7
mov ecx, ebx
call fcn.1002b2c0
mov dl, byte [ebp - 0xb0]
mov dword [ebx + 0x44], eax
mov dword [ebx + 0x3c], eax
mov dword [ebx + 0xe60], 0xbe99999a
mov byte [ebx + 0xe64], 1
jmp 0x1002d6d7
mov eax, dword [ebx + 4]
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], eax
mov dword [ebx + 0x3c], eax
mov byte [ebx + 0x4b], 0
mov byte [ebx + 0xe65], 1
cmp byte [ebx + 0xe65], 0
je 0x1002d6f0
cmp byte [edi + 0xf0], 0
jne 0x1002d6f0
mov byte [ebx + 0xe65], 0
cmp byte [edi + 0x100], 0
je 0x1002d702
cmp byte [edi + 0x102], 0
je 0x1002d70f
test dl, dl
je 0x1002d718
cmp byte [edi + 0x103], 0
je 0x1002d718
mov byte [ebp - 0xad], 1
jmp 0x1002d71f
mov byte [ebp - 0xad], 0
mov edx, dword [ebp + 0x14]
test edx, 0x400
je 0x1002d91a
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x34]
test ecx, ecx
js 0x1002d91a
call fcn.1000c5c0
mov ecx, dword [ebp - 0xdc]
test al, al
mov al, byte [ebp - 0xad]
je 0x1002d7e1
test al, al
jne 0x1002d7e1
cmp byte [edi + 0x101], al
jne 0x1002d7e1
test cl, cl
jne 0x1002d7e1
mov ecx, dword [edi + 0x1508]
mov eax, dword [edi + 0x1500]
lea edx, [ecx + eax*2]
cmp ecx, edx
jae 0x1002d78f
nop
movzx eax, word [ecx]
add ecx, 2
cmp eax, 9
je 0x1002d7d5
cmp ecx, edx
jb 0x1002d780
mov edx, dword [ebp + 0x14]
lea ecx, [ebp - 0xcc]
sub esp, 8
mov dword [ebp - 0xcc], 9
call fcn.1002c690
add esp, 8
test al, al
je 0x1002d7d5
push dword [ebp - 0xcc]
lea edx, [ebx + 0x3c]
mov ecx, ebx
call fcn.1002b6b0
add esp, 4
mov byte [ebx + 0xe64], 1
mov dword [ebx + 0xe60], 0xbe99999a
mov al, byte [ebp - 0xad]
mov ecx, dword [ebp - 0xdc]
mov edx, dword [ebp + 0x14]
cmp dword [edi + 0x1500], 0
jle 0x1002d8a5
test al, al
jne 0x1002d875
test cl, cl
jne 0x1002d875
cmp byte [ebp - 0xb2], cl
jne 0x1002d875
xor esi, esi
mov ecx, edi
nop dword [eax]
mov eax, dword [ecx + 0x1508]
movzx eax, word [eax + esi*2]
mov dword [ebp - 0xcc], eax
cmp eax, 9
jne 0x1002d82e
cmp byte [ecx + 0x101], 0
jne 0x1002d869
sub esp, 8
lea ecx, [ebp - 0xcc]
call fcn.1002c690
add esp, 8
test al, al
je 0x1002d867
push dword [ebp - 0xcc]
lea edx, [ebx + 0x3c]
mov ecx, ebx
call fcn.1002b6b0
add esp, 4
mov byte [ebx + 0xe64], 1
mov dword [ebx + 0xe60], 0xbe99999a
mov ecx, edi
mov edx, dword [ebp + 0x14]
inc esi
cmp esi, dword [edi + 0x1500]
jl 0x1002d810
mov ecx, dword [edi + 0x1504]
test ecx, ecx
jns 0x1002d89b
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
lea ecx, [edi + 0x1500]
call fcn.10017cc0
mov dword [edi + 0x1500], 0
mov eax, dword [edi + 0x19e4]
xor cl, cl
mov esi, dword [ebp - 0xd0]
mov byte [ebp - 0xad], cl
cmp eax, esi
jne 0x1002ea8c
cmp byte [edi + 0x19f0], cl
jne 0x1002e367
cmp byte [ebp - 0xaf], cl
jne 0x1002e367
mov dl, byte [edi + 0x101]
xor esi, esi
mov dh, byte [edi + 0xb1]
test dl, dl
mov ch, byte [edi + 0x100]
mov eax, 0x400000
cmovne esi, eax
mov byte [ebp - 0xc5], dh
mov byte [ebp - 0xb3], ch
test dh, dh
je 0x1002d935
cmp byte [edi + 0x103], cl
je 0x1002d92b
test ch, ch
jne 0x1002d92b
mov eax, 1
jmp 0x1002d92f
mov al, byte [ebp - 0xad]
mov ecx, dword [ebp - 0xdc]
jmp 0x1002d7e4
xor eax, eax
mov cl, ch
test eax, eax
je 0x1002d957
jmp 0x1002d944
test ch, ch
je 0x1002d955
cmp byte [edi + 0x103], 0
jne 0x1002d955
mov cl, ch
cmp byte [edi + 0x102], 0
jne 0x1002d957
test dl, dl
jne 0x1002d957
mov ah, 1
jmp 0x1002d959
mov cl, ch
xor ah, ah
mov byte [ebp - 0xb2], ah
mov al, cl
test dh, dh
je 0x1002d989
cmp byte [edi + 0x103], 0
je 0x1002d989
test dl, dl
je 0x1002d989
mov al, ch
test ch, ch
jne 0x1002d989
cmp byte [edi + 0x102], ch
jne 0x1002d989
mov byte [ebp - 0xbf], 1
jmp 0x1002d998
mov byte [ebp - 0xbf], 0
test dh, dh
je 0x1002da63
cmp byte [edi + 0x103], 0
mov cl, byte [edi + 0x102]
mov byte [ebp - 0xb0], cl
je 0x1002da70
test al, al
jne 0x1002da70
test cl, cl
jne 0x1002da70
mov byte [ebp - 0xbd], 1
mov byte [ebp - 0xb5], 0
test dl, dl
je 0x1002d9ee
test al, al
jne 0x1002d9ee
cmp byte [edi + 0x102], al
jne 0x1002d9ee
mov byte [ebp - 0xbe], 1
cmp byte [edi + 0x103], al
je 0x1002d9f5
mov byte [ebp - 0xbe], 0
test ah, ah
je 0x1002da11
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x80]
test ecx, ecx
js 0x1002da11
call fcn.1000c5c0
test al, al
jne 0x1002da37
cmp byte [ebp - 0xbe], 0
je 0x1002daab
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x1002daab
call fcn.1000c5c0
test al, al
je 0x1002daab
cmp byte [ebp - 0xdc], 0
jne 0x1002daab
cmp byte [ebp - 0x128], 0
jne 0x1002daab
cmp byte [ebp - 0xd4], 0
je 0x1002da5a
mov eax, dword [ebx + 0x40]
cmp eax, dword [ebx + 0x44]
je 0x1002daab
mov byte [ebp - 0xc6], 1
jmp 0x1002dab2
mov byte [ebp - 0xb0], al
mov byte [ebp - 0xbf], 0
mov byte [ebp - 0xbd], 0
test al, al
je 0x1002d9c8
test dl, dl
jne 0x1002d9c8
cmp byte [edi + 0x102], dl
jne 0x1002d9c8
cmp byte [edi + 0x103], dl
jne 0x1002d9c8
mov byte [ebp - 0xb5], 1
jmp 0x1002d9ee
mov byte [ebp - 0xc6], 0
cmp byte [ebp - 0xb2], 0
je 0x1002dad0
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x78]
test ecx, ecx
js 0x1002dad0
call fcn.1000c5c0
test al, al
jne 0x1002daee
cmp byte [ebp - 0xb5], 0
je 0x1002db11
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x1002db11
call fcn.1000c5c0
test al, al
je 0x1002db11
cmp byte [ebp - 0x128], 0
jne 0x1002db11
cmp byte [ebp - 0xd4], 0
je 0x1002db08
mov eax, dword [ebx + 0x40]
cmp eax, dword [ebx + 0x44]
je 0x1002db11
mov byte [ebp - 0xc0], 1
jmp 0x1002db18
mov byte [ebp - 0xc0], 0
cmp byte [ebp - 0xb2], 0
je 0x1002db36
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x7c]
test ecx, ecx
js 0x1002db36
call fcn.1000c5c0
test al, al
jne 0x1002db54
cmp byte [ebp - 0xbe], 0
je 0x1002db64
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x1002db64
call fcn.1000c5c0
test al, al
je 0x1002db64
cmp byte [ebp - 0xdc], 0
mov byte [ebp - 0xbe], 1
je 0x1002db6b
mov byte [ebp - 0xbe], 0
mov dl, byte [ebp - 0xb2]
test dl, dl
je 0x1002dbae
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x1002dbae
call fcn.1000c5c0
test al, al
je 0x1002dba8
cmp byte [ebp - 0xdc], 0
jne 0x1002dba8
cmp byte [ebp - 0x110], 0
je 0x1002dba8
mov byte [ebp - 0xb5], 1
jmp 0x1002dbb9
mov dl, byte [ebp - 0xb2]
mov byte [ebp - 0xb5], 0
test dl, dl
je 0x1002dbd1
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x84]
test ecx, ecx
js 0x1002dbd1
call fcn.1000c5c0
test al, al
jne 0x1002dbf2
cmp byte [ebp - 0xbf], 0
je 0x1002dc0b
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x1002dc0b
call fcn.1000c5c0
test al, al
je 0x1002dc0b
cmp byte [ebp - 0xdc], 0
jne 0x1002dc0b
cmp byte [ebp - 0x110], 0
mov byte [ebp - 0xbf], 1
jne 0x1002dc12
mov byte [ebp - 0xbf], 0
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x38]
test ecx, ecx
js 0x1002dc71
call fcn.1000c5c0
test al, al
je 0x1002dc71
cmp byte [ebp - 0xbd], 0
je 0x1002dc37
mov eax, 0x200004
jmp 0x1002dc4b
cmp byte [ebp - 0xb0], 0
mov eax, 0x200000
mov ecx, 0x20000c
cmovne eax, ecx
or eax, esi
push eax
lea edx, [ebx + 0x3c]
mov ecx, ebx
call fcn.1002b6b0
add esp, 4
mov byte [ebx + 0xe64], 1
mov dword [ebx + 0xe60], 0xbe99999a
jmp 0x1002e328
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
js 0x1002dcd0
call fcn.1000c5c0
test al, al
je 0x1002dcd0
cmp byte [ebp - 0xbd], 0
je 0x1002dc96
mov eax, 0x200005
jmp 0x1002dcaa
cmp byte [ebp - 0xb0], 0
mov eax, 0x200001
mov ecx, 0x20000d
cmovne eax, ecx
or eax, esi
lea edx, [ebx + 0x3c]
push eax
mov ecx, ebx
call fcn.1002b6b0
add esp, 4
mov byte [ebx + 0xe64], 1
mov dword [ebx + 0xe60], 0xbe99999a
jmp 0x1002e328
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x1002dd35
call fcn.1000c5c0
test al, al
je 0x1002dd35
cmp byte [ebp - 0xd4], 0
je 0x1002dd35
cmp byte [ebp - 0xb3], 0
je 0x1002dd22
mov edx, dword [ebp - 0xec]
xorps xmm1, xmm1
movss xmm0, dword [edx + 0x54]
subss xmm0, dword [edi + 0x18c4]
mov dword [edx + 0x6c], 0
maxss xmm0, xmm1
movss dword [edx + 0x64], xmm0
jmp 0x1002e328
movzx eax, byte [ebp - 0xbd]
lea eax, [eax*4 + 0x200002]
jmp 0x1002dc4b
mov edi, dword [0x10043a6c]
mov ecx, dword [edi + 0x44]
test ecx, ecx
js 0x1002ddb2
call fcn.1000c5c0
test al, al
je 0x1002ddb2
cmp byte [ebp - 0xd4], 0
je 0x1002ddb2
cmp byte [ebp - 0xb3], 0
je 0x1002dd92
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xec]
movss xmm0, dword [eax + 0x18c4]
mov eax, dword [edi + 0x19b0]
addss xmm0, dword [ecx + 0x54]
minss xmm0, dword [eax + 0x5c]
mov dword [ecx + 0x6c], 0
movss dword [ecx + 0x64], xmm0
jmp 0x1002e322
movzx eax, byte [ebp - 0xbd]
lea edx, [ebx + 0x3c]
mov ecx, ebx
lea eax, [eax*4 + 0x200003]
or eax, esi
push eax
call fcn.1002b6b0
jmp 0x1002e30e
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x50]
test ecx, ecx
js 0x1002ddee
call fcn.1000c5c0
test al, al
je 0x1002ddee
mov eax, esi
or eax, 0x200006
or esi, 0x200004
cmp byte [ebp - 0xb3], 0
lea edx, [ebx + 0x3c]
mov ecx, ebx
cmovne esi, eax
push esi
call fcn.1002b6b0
jmp 0x1002e30e
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x54]
test ecx, ecx
js 0x1002de12
call fcn.1000c5c0
test al, al
je 0x1002de12
mov eax, esi
or eax, 0x200007
or esi, 0x200005
jmp 0x1002ddd4
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x1002de46
call fcn.1000c5c0
test al, al
je 0x1002de46
cmp byte [ebp - 0xdc], 0
jne 0x1002de46
or esi, 0x200008
lea edx, [ebx + 0x3c]
push esi
mov ecx, ebx
call fcn.1002b6b0
jmp 0x1002e30e
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x60]
test ecx, ecx
js 0x1002df0f
call fcn.1000c5c0
test al, al
je 0x1002df0f
cmp byte [ebp - 0xdc], 0
jne 0x1002df0f
mov eax, dword [ebx + 0x40]
cmp eax, dword [ebx + 0x44]
jne 0x1002dea4
cmp byte [ebp - 0xb0], 0
je 0x1002deb6
push 0x60000c
lea edx, [ebx + 0x3c]
mov ecx, ebx
call fcn.1002b6b0
add esp, 4
mov byte [ebx + 0xe64], 1
mov dword [ebx + 0xe60], 0xbe99999a
mov edi, dword [ebp - 0xbc]
or esi, 0x200009
push esi
jmp 0x1002dc4e
cmp byte [ebp - 0xc5], 0
je 0x1002dea4
mov edi, dword [ebp - 0xbc]
cmp byte [edi + 0x103], 0
je 0x1002deaa
cmp byte [edi + 0x102], 0
jne 0x1002deaa
cmp byte [ebp - 0xb3], 0
jne 0x1002deaa
push 0x600004
lea edx, [ebx + 0x3c]
mov ecx, ebx
call fcn.1002b6b0
add esp, 4
mov byte [ebx + 0xe64], 1
or esi, 0x200009
mov dword [ebx + 0xe60], 0xbe99999a
push esi
jmp 0x1002dc4e
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x68]
test ecx, ecx
js 0x1002df24
call fcn.1000c5c0
test al, al
jne 0x1002df41
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x70]
test ecx, ecx
js 0x1002dfc4
call fcn.1000c5c0
test al, al
je 0x1002dfc4
mov ecx, dword [ebp + 0x14]
mov eax, ecx
shr eax, 0xb
and al, 1
cmp byte [ebp - 0xd4], 0
je 0x1002df61
test al, al
je 0x1002df74
cmp byte [ebp - 0xb3], 0
jne 0x1002df7d
mov byte [ebp - 0xaf], 1
mov byte [ebp - 0xb1], 1
jmp 0x1002e322
cmp byte [ebp - 0xb3], 0
jne 0x1002df61
cmp byte [ebp - 0xdc], 0
jne 0x1002e322
sub esp, 8
mov dword [ebp - 0xcc], 0xa
mov edx, ecx
lea ecx, [ebp - 0xcc]
call fcn.1002c690
add esp, 8
test al, al
je 0x1002e322
push dword [ebp - 0xcc]
lea edx, [ebx + 0x3c]
mov ecx, ebx
call fcn.1002b6b0
jmp 0x1002e30e
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x6c]
test ecx, ecx
js 0x1002dfec
call fcn.1000c5c0
test al, al
je 0x1002dfec
mov edi, dword [ebp - 0xbc]
mov cl, 1
mov byte [ebp - 0xaf], cl
jmp 0x1002e32e
mov al, byte [ebp - 0xb5]
test al, al
jne 0x1002e2ef
cmp byte [ebp - 0xbf], al
jne 0x1002e2ef
cmp byte [ebp - 0xb2], al
je 0x1002e03c
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x74]
test ecx, ecx
js 0x1002e03c
call fcn.1000c5c0
test al, al
je 0x1002e03c
mov eax, dword [ebx + 4]
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], eax
mov dword [ebx + 0x3c], eax
mov byte [ebx + 0x4b], 0
jmp 0x1002e31b
mov al, byte [ebp - 0xc6]
test al, al
jne 0x1002e1de
cmp byte [ebp - 0xc0], al
jne 0x1002e1de
cmp byte [ebp - 0xbe], al
je 0x1002e322
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0xd0]
test ecx, ecx
je 0x1002e087
push dword [eax + 0xd8]
call ecx
mov esi, eax
add esp, 4
test esi, esi
jne 0x1002e08c
jmp 0x1002e322
mov esi, 0x1003f792
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002e091
mov eax, dword [0x10043a6c]
sub ecx, edx
test eax, eax
je 0x1002e0a9
inc dword [eax + 0x374]
lea eax, [ecx*2 + 2]
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
mov dword [ebp - 0xc4], eax
xor edi, edi
cmp byte [esi], 0
je 0x1002e122
mov ebx, eax
nop dword [eax]
push 0
mov edx, esi
lea ecx, [ebp - 0x120]
call fcn.10007ab0
add esp, 4
add esi, eax
cmp dword [ebp - 0x120], 0
je 0x1002e116
mov edx, dword [ebp + 0x14]
lea ecx, [ebp - 0x120]
sub esp, 8
call fcn.1002c690
add esp, 8
test al, al
je 0x1002e111
mov ax, word [ebp - 0x120]
mov word [ebx + edi*2], ax
inc edi
cmp byte [esi], 0
jne 0x1002e0d0
mov ebx, dword [ebp - 0x100]
mov eax, dword [ebp - 0xc4]
xor ecx, ecx
mov word [eax + edi*2], cx
test edi, edi
jle 0x1002e1bb
mov edx, dword [ebx + 0x44]
mov ecx, dword [ebx + 0x40]
mov eax, dword [ebx + 4]
cmp ecx, edx
je 0x1002e156
cmp ecx, eax
jle 0x1002e146
mov dword [ebx + 0x40], eax
mov ecx, eax
cmp edx, eax
jle 0x1002e14f
mov dword [ebx + 0x44], eax
mov edx, eax
cmp ecx, edx
jne 0x1002e156
mov dword [ebx + 0x3c], ecx
cmp dword [ebx + 0x3c], eax
jle 0x1002e15e
mov dword [ebx + 0x3c], eax
lea edx, [ebx + 0x3c]
mov ecx, ebx
call fcn.1002b620
mov edx, dword [ebx + 0x3c]
mov ecx, ebx
push edi
push dword [ebp - 0xc4]
call fcn.1002b190
add esp, 8
test al, al
je 0x1002e19a
mov edx, dword [ebx + 0x3c]
lea ecx, [ebx + 0x54]
push edi
push 0
call fcn.1002c370
add esp, 8
mov byte [ebx + 0x4b], 0
add dword [ebx + 0x3c], edi
jmp 0x1002e1ae
movzx eax, word [ebx + 0xe52]
test ax, ax
je 0x1002e1ae
dec eax
mov word [ebx + 0xe52], ax
mov eax, dword [ebp - 0xc4]
mov byte [ebx + 0xe64], 1
test eax, eax
je 0x1002e1cf
mov ecx, dword [0x10043a6c]
test ecx, ecx
je 0x1002e1cf
dec dword [ecx + 0x374]
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
jmp 0x1002e322
mov edi, dword [ebp - 0xbc]
cmp dword [edi + 0xd4], 0
je 0x1002e2ac
mov edi, dword [ebx + 0x44]
mov eax, dword [ebx + 0x40]
cmp eax, edi
je 0x1002e205
mov ecx, edi
cmovl edi, eax
cmovge ecx, eax
jmp 0x1002e20a
mov ecx, dword [ebx + 4]
xor edi, edi
mov eax, dword [ebx + 0x14]
mov dword [ebp - 0xcc], ecx
lea edx, [eax + ecx*2]
lea ecx, [eax + edi*2]
call fcn.10007d80
mov ecx, dword [0x10043a6c]
inc eax
mov dword [ebp - 0xe0], eax
test ecx, ecx
je 0x1002e235
inc dword [ecx + 0x374]
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov esi, dword [ebx + 0x14]
add esp, 4
mov ecx, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0x104], eax
lea ecx, [esi + ecx*2]
push ecx
lea ecx, [esi + edi*2]
mov esi, eax
push ecx
mov ecx, esi
call fcn.10007c50
mov eax, dword [0x10043a6c]
add esp, 8
mov ecx, dword [eax + 0xd4]
test ecx, ecx
je 0x1002e288
push esi
push dword [eax + 0xd8]
call ecx
mov eax, dword [0x10043a6c]
add esp, 8
test esi, esi
je 0x1002e296
test eax, eax
je 0x1002e296
dec dword [eax + 0x374]
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov al, byte [ebp - 0xc6]
add esp, 4
mov edi, dword [ebp - 0xbc]
test al, al
je 0x1002e328
mov eax, dword [ebx + 0x40]
cmp eax, dword [ebx + 0x44]
jne 0x1002e2d0
mov eax, dword [ebx + 4]
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], eax
mov dword [ebx + 0x3c], eax
mov byte [ebx + 0x4b], 0
mov byte [ebx + 0xe64], 1
mov eax, dword [ebx + 0x40]
cmp eax, dword [ebx + 0x44]
je 0x1002e328
lea edx, [ebx + 0x3c]
mov ecx, ebx
call fcn.1002b620
mov byte [ebx + 0x4b], 0
jmp 0x1002e328
movzx eax, al
lea edx, [ebx + 0x3c]
xor eax, 1
mov ecx, ebx
add eax, 0x20000a
push eax
call fcn.1002b6b0
mov eax, dword [ebx + 0x3c]
mov dword [ebx + 0x44], eax
mov dword [ebx + 0x40], eax
add esp, 4
mov dword [ebx + 0xe60], 0xbe99999a
mov byte [ebx + 0xe64], 1
mov edi, dword [ebp - 0xbc]
mov cl, byte [ebp - 0xad]
mov eax, dword [ebx + 0x40]
cmp eax, dword [ebx + 0x44]
je 0x1002e343
cmp byte [ebp - 0xb4], 0
je 0x1002e343
mov al, 1
jmp 0x1002e345
xor al, al
mov ah, byte [ebp - 0xae]
mov esi, dword [ebp - 0xd0]
or ah, al
mov byte [ebp - 0xae], ah
mov eax, dword [edi + 0x19e4]
cmp eax, esi
jne 0x1002ea8c
xor eax, eax
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xe8], eax
test cl, cl
je 0x1002e3e4
cmp byte [ebp - 0xdc], al
jne 0x1002e3c9
mov esi, dword [ebx + 0x2c]
mov ecx, esi
mov eax, dword [ebp - 0xd8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1002e3b0
test dl, dl
je 0x1002e3ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1002e3b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x1002e390
xor eax, eax
jmp 0x1002e3b5
sbb eax, eax
or eax, 1
test eax, eax
je 0x1002e3c9
mov eax, dword [ebx + 0x24]
dec eax
mov dword [ebp - 0xf0], esi
mov dword [ebp - 0xe8], eax
cmp byte [ebp - 0xb1], 0
mov edx, dword [ebp + 0x14]
je 0x1002e974
test dl, 0x20
je 0x1002e974
jmp 0x1002e3e7
mov edx, dword [ebp + 0x14]
cmp byte [ebp - 0xdc], 0
jne 0x1002e448
mov eax, dword [ebx + 0xc]
mov byte [ebx + 0x30], 1
mov edi, dword [ebx + 0x1c]
lea esi, [eax*4 + 1]
lea eax, [ebx + 0x18]
cmp esi, edi
jle 0x1002e431
test edi, edi
je 0x1002e419
mov eax, edi
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
add ecx, edi
jmp 0x1002e41e
mov ecx, 8
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
lea ecx, [ebx + 0x18]
push eax
call fcn.10017c50
lea eax, [ebx + 0x18]
mov dword [eax], esi
mov edx, esi
mov ecx, dword [ebx + 0x20]
push 0
push dword [ebx + 0x14]
call fcn.10007c50
mov edx, dword [ebp + 0x14]
add esp, 8
test edx, 0x1c0
je 0x1002e923
mov esi, 0x16
test dl, 0x40
je 0x1002e47d
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x34]
test ecx, ecx
js 0x1002e47d
call fcn.1000c5c0
test al, al
je 0x1002e47a
lea eax, [esi + 0x2a]
xor esi, esi
jmp 0x1002e4d6
mov edx, dword [ebp + 0x14]
test dl, dl
jns 0x1002e4c5
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x1002e4a3
call fcn.1000c5c0
test al, al
je 0x1002e4a0
mov eax, 0x80
lea esi, [eax - 0x7d]
jmp 0x1002e4d6
mov edx, dword [ebp + 0x14]
mov eax, dword [0x10043a6c]
mov ecx, dword [eax + 0x44]
test ecx, ecx
js 0x1002e4c5
call fcn.1000c5c0
test al, al
je 0x1002e4c2
mov eax, 0x80
lea esi, [eax - 0x7c]
jmp 0x1002e4d6
mov edx, dword [ebp + 0x14]
test edx, 0x100
je 0x1002e923
mov eax, pe_nt_image_headers32
mov dword [ebp - 0x7c], eax
xor ecx, ecx
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x78], eax
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0x68], eax
mov eax, dword [ebx + 8]
mov dword [ebp - 0x64], eax
mov eax, dword [ebx + 0x34]
mov dword [ebp - 0x6c], esi
mov esi, dword [ebx + 0x14]
mov dword [ebp - 0x60], eax
mov eax, dword [ebx + 0x3c]
mov word [ebp - 0x5b], cx
mov byte [ebp - 0x59], cl
mov dword [ebp - 0x74], ecx
mov byte [ebp - 0x5c], cl
lea edx, [esi + eax*2]
mov ecx, esi
mov dword [ebp - 0x70], 0
call fcn.10007d80
mov ecx, dword [ebx + 0x40]
mov edi, eax
mov dword [ebp - 0x58], edi
lea edx, [esi + ecx*2]
mov ecx, esi
call fcn.10007d80
mov ecx, dword [ebx + 0x44]
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0x54], eax
lea edx, [esi + ecx*2]
mov ecx, esi
call fcn.10007d80
mov dword [ebp - 0x104], eax
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x7c]
push eax
xor eax, eax
call eax
mov ecx, dword [ebp - 0x58]
add esp, 4
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0xf4], eax
cmp ecx, edi
je 0x1002e65e
mov dh, byte [ebp - 0xb1]
lea ebx, [ecx + eax]
mov ch, byte [ebp - 0xae]
xor edi, edi
mov esi, eax
mov dword [ebp - 0xc4], edi
mov ah, byte [ebp - 0xaf]
nop dword [eax]
test ebx, ebx
je 0x1002e59c
cmp esi, ebx
jae 0x1002e648
cmp byte [esi], 0
mov al, dh
mov cl, ch
mov byte [ebp - 0xb5], al
mov dl, ah
mov byte [ebp - 0xc0], cl
mov byte [ebp - 0xc5], dl
mov byte [ebp - 0xaf], ah
mov byte [ebp - 0xae], cl
mov byte [ebp - 0xb1], al
je 0x1002e648
push ebx
mov edx, esi
lea ecx, [ebp - 0xe0]
call fcn.10007ab0
mov dl, byte [ebp - 0xc5]
add esi, eax
mov cl, byte [ebp - 0xc0]
add esp, 4
mov al, byte [ebp - 0xb5]
mov edi, dword [ebp - 0xe0]
mov byte [ebp - 0xaf], dl
mov byte [ebp - 0xae], cl
mov byte [ebp - 0xb1], al
test edi, edi
je 0x1002e642
cmp edi, 0xffff
mov edi, dword [ebp - 0xc4]
ja 0x1002e625
inc edi
mov dword [ebp - 0xc4], edi
mov ah, dl
mov ch, cl
mov dh, al
mov byte [ebp - 0xaf], ah
mov byte [ebp - 0xae], ch
mov byte [ebp - 0xb1], dh
jmp 0x1002e590
mov edi, dword [ebp - 0xc4]
mov ebx, dword [ebp - 0x100]
mov eax, dword [ebp - 0xf4]
mov dword [ebx + 0x3c], edi
mov byte [ebx + 0xe64], 1
mov ecx, dword [ebp - 0x54]
cmp ecx, dword [ebp - 0xcc]
je 0x1002e757
mov dh, byte [ebp - 0xb1]
lea ebx, [ecx + eax]
mov ch, byte [ebp - 0xae]
xor edi, edi
mov esi, eax
mov dword [ebp - 0xc4], edi
mov ah, byte [ebp - 0xaf]
nop dword [eax]
test ebx, ebx
je 0x1002e69c
cmp esi, ebx
jae 0x1002e748
cmp byte [esi], 0
mov al, dh
mov cl, ch
mov byte [ebp - 0xb5], al
mov dl, ah
mov byte [ebp - 0xc0], cl
mov byte [ebp - 0xc5], dl
mov byte [ebp - 0xaf], ah
mov byte [ebp - 0xae], cl
mov byte [ebp - 0xb1], al
je 0x1002e748
push ebx
mov edx, esi
lea ecx, [ebp - 0xe0]
call fcn.10007ab0
mov dl, byte [ebp - 0xc5]
add esi, eax
mov cl, byte [ebp - 0xc0]
add esp, 4
mov al, byte [ebp - 0xb5]
mov edi, dword [ebp - 0xe0]
mov byte [ebp - 0xaf], dl
mov byte [ebp - 0xae], cl
mov byte [ebp - 0xb1], al
test edi, edi
je 0x1002e742
cmp edi, 0xffff
mov edi, dword [ebp - 0xc4]
ja 0x1002e725
inc edi
mov dword [ebp - 0xc4], edi
mov ah, dl
mov ch, cl
mov dh, al
mov byte [ebp - 0xaf], ah
mov byte [ebp - 0xae], ch
mov byte [ebp - 0xb1], dh
jmp 0x1002e690
mov edi, dword [ebp - 0xc4]
mov ebx, dword [ebp - 0x100]
mov eax, dword [ebp - 0xf4]
mov dword [ebx + 0x40], edi
mov ecx, dword [ebp - 0x50]
cmp ecx, dword [ebp - 0x104]
je 0x1002e846
mov dh, byte [ebp - 0xb1]
lea ebx, [ecx + eax]
mov ch, byte [ebp - 0xae]
xor edi, edi
mov esi, eax
mov dword [ebp - 0xc4], edi
mov ah, byte [ebp - 0xaf]
test ebx, ebx
je 0x1002e791
cmp esi, ebx
jae 0x1002e83d
cmp byte [esi], 0
mov al, dh
mov cl, ch
mov byte [ebp - 0xb5], al
mov dl, ah
mov byte [ebp - 0xc0], cl
mov byte [ebp - 0xc5], dl
mov byte [ebp - 0xaf], ah
mov byte [ebp - 0xae], cl
mov byte [ebp - 0xb1], al
je 0x1002e83d
push ebx
mov edx, esi
lea ecx, [ebp - 0xe0]
call fcn.10007ab0
mov dl, byte [ebp - 0xc5]
add esi, eax
mov cl, byte [ebp - 0xc0]
add esp, 4
mov al, byte [ebp - 0xb5]
mov edi, dword [ebp - 0xe0]
mov byte [ebp - 0xaf], dl
mov byte [ebp - 0xae], cl
mov byte [ebp - 0xb1], al
test edi, edi
je 0x1002e837
cmp edi, 0xffff
mov edi, dword [ebp - 0xc4]
ja 0x1002e81a
inc edi
mov dword [ebp - 0xc4], edi
mov ah, dl
mov ch, cl
mov dh, al
mov byte [ebp - 0xaf], ah
mov byte [ebp - 0xae], ch
mov byte [ebp - 0xb1], dh
jmp 0x1002e785
mov edi, dword [ebp - 0xc4]
mov ebx, dword [ebp - 0x100]
mov dword [ebx + 0x44], edi
cmp byte [ebp - 0x5c], 0
je 0x1002e920
mov esi, dword [ebp - 0x64]
mov ecx, dword [ebp - 0xf8]
cmp esi, ecx
jle 0x1002e8a8
cmp byte [ebp - 0x124], 0
je 0x1002e8a8
mov edi, dword [ebx + 0x10]
lea eax, [ebx + 0xc]
sub esi, ecx
add esi, dword [eax]
cmp esi, edi
jle 0x1002e8a6
test edi, edi
je 0x1002e885
mov eax, edi
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
add ecx, edi
jmp 0x1002e88a
mov ecx, 8
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
lea ecx, [ebx + 0xc]
push eax
call fcn.10017cc0
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0xf4], eax
lea eax, [ebx + 0xc]
mov dword [eax], esi
mov ecx, dword [ebx + 0x14]
mov esi, ecx
mov edi, dword [ebx + 0xc]
dec edi
mov dword [ebp - 0xcc], ecx
lea edi, [ecx + edi*2]
cmp ecx, edi
jae 0x1002e904
mov ebx, dword [ebp - 0xf4]
cmp byte [ebx], 0
je 0x1002e8f8
push 0
mov edx, ebx
lea ecx, [ebp - 0xe0]
call fcn.10007ab0
add ebx, eax
add esp, 4
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x1002e8f8
cmp eax, 0xffff
ja 0x1002e8f4
mov word [esi], ax
add esi, 2
cmp esi, edi
jb 0x1002e8c4
mov ebx, dword [ebp - 0x100]
mov ecx, dword [ebp - 0xcc]
xor eax, eax
mov word [esi], ax
sub esi, ecx
mov eax, dword [ebp - 0x64]
sar esi, 1
mov dword [ebx + 4], esi
mov dword [ebx + 8], eax
mov dword [ebx + 0xe60], 0xbe99999a
mov edx, dword [ebp + 0x14]
cmp byte [ebp - 0xdc], 0
jne 0x1002e96e
mov esi, dword [ebx + 0x20]
mov eax, esi
mov ecx, dword [ebp - 0xd8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1002e957
test dl, dl
je 0x1002e953
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1002e957
add eax, 2
add ecx, 2
test dl, dl
jne 0x1002e937
xor eax, eax
jmp 0x1002e95c
sbb eax, eax
or eax, 1
mov edi, dword [ebp - 0xbc]
mov edx, dword [ebp + 0x14]
test eax, eax
je 0x1002e974
mov ecx, dword [ebx + 8]
jmp 0x1002e980
mov edi, dword [ebp - 0xbc]
mov esi, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xe8]
test esi, esi
je 0x1002ea68
cmp dword [ebp - 0xf8], ecx
je 0x1002ea2a
cmp byte [ebp - 0x124], 0
je 0x1002ea2a
mov eax, dword [ebp - 0xd8]
xorps xmm0, xmm0
mov dword [ebp - 0x98], eax
lea eax, [ecx + 1]
cmp dword [ebp + 0xc], eax
movlpd qword [ebp - 0xa0], xmm0
cmovge eax, dword [ebp + 0xc]
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0xac]
push eax
xor eax, eax
movlpd qword [ebp - 0x8c], xmm0
movlpd qword [ebp - 0x84], xmm0
mov dword [ebp - 0xac], 0x40000
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0x94], ecx
mov dword [ebp - 0xa4], 0
call eax
mov edx, dword [ebp - 0x90]
add esp, 4
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0xd8], eax
lea ecx, [edx - 1]
cmp dword [ebp - 0x94], ecx
cmovl ecx, dword [ebp - 0x94]
jmp 0x1002ea2d
mov edx, dword [ebp + 0xc]
lea eax, [ecx + 1]
cmp eax, edx
cmovl edx, eax
mov dword [ebp + 0xc], edx
cmp edx, 1
jb 0x1002ea61
jbe 0x1002ea56
lea eax, [edx - 1]
push eax
push esi
push dword [ebp - 0xd8]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov edx, dword [ebp + 0xc]
add esp, 0xc
mov eax, dword [ebp - 0xd8]
mov byte [eax + edx - 1], 0
mov byte [ebp - 0xe1], 1
mov esi, dword [ebp - 0xd0]
mov dword [ebx + 0xe68], 0
mov dword [ebx + 0xe6c], 0
mov dword [ebx + 0xe70], 0
cmp byte [ebp - 0xaf], 0
je 0x1002eaa6
cmp dword [edi + 0x19e4], esi
jne 0x1002eaa6
xor edx, edx
xor ecx, ecx
call fcn.10009980
mov edx, dword [ebp - 0xd4]
test dl, dl
jne 0x1002eb52
push 1
mov edx, esi
lea ecx, [ebp - 0x4c]
call fcn.10008db0
movss xmm1, dword [0x1003fe64]
add esp, 4
mov ecx, 7
push dword [ebp - 0x40]
push dword [ebp - 0x44]
push dword [ebp - 0x48]
push dword [ebp - 0x4c]
call fcn.10008040
movss xmm2, dword [edi + 0x1550]
mov dl, 1
mov ecx, eax
call fcn.100085f0
movss xmm0, dword [ebp - 0x4c]
add esp, 0x10
movss xmm2, dword [ebp - 0x114]
movss xmm1, dword [ebp - 0x48]
movaps xmm6, xmm2
mov edx, dword [ebp - 0xd4]
addss xmm6, xmm0
movss dword [ebp - 0x24], xmm0
movaps xmm5, xmm1
addss xmm0, dword [edi + 0x1548]
addss xmm5, dword [ebp - 0x118]
movss dword [ebp - 0x20], xmm1
movss dword [ebp - 0x1c], xmm6
movss dword [ebp - 0xc], xmm0
movaps xmm0, xmm1
addss xmm0, dword [edi + 0x154c]
movss dword [ebp - 0x18], xmm5
movss dword [ebp - 8], xmm0
jmp 0x1002eba2
movss xmm0, dword [ebp - 0x48]
movss xmm2, dword [ebp - 0x114]
movaps xmm5, xmm0
movss xmm1, dword [ebp - 0x4c]
movaps xmm6, xmm2
addss xmm5, dword [ebp - 0x118]
mov ecx, dword [ebp - 0xec]
addss xmm6, xmm1
movss dword [ebp - 0x24], xmm1
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x18], xmm5
movss dword [ebp - 0x1c], xmm6
mov eax, dword [ecx + 0xc8]
mov ecx, dword [ecx + 0xcc]
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], ecx
cmp byte [ebp - 0xf9], 0
lea eax, [ebp - 0xc]
movss xmm0, dword [eax]
xorps xmm1, xmm1
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [eax + 4]
movss dword [ebp - 0xd0], xmm0
movss dword [ebp - 0x108], xmm0
xorps xmm0, xmm0
mov dword [ebp - 0x11c], eax
movss dword [ebp - 0xf4], xmm5
movss dword [ebp - 0xe8], xmm6
movss dword [ebp - 0x104], xmm0
movss dword [ebp - 0xcc], xmm0
je 0x1002ec06
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0xd8], eax
jmp 0x1002ec0c
mov eax, dword [ebp - 0xd8]
mov ch, byte [ebp - 0xb4]
mov cl, byte [ebp - 0xae]
test ch, ch
jne 0x1002ed0f
test cl, cl
jne 0x1002ed0f
test dl, dl
je 0x1002ec80
mov dl, byte [eax]
lea ebx, [eax + 1]
xor ecx, ecx
test dl, dl
je 0x1002ec49
cmp dl, 0xa
lea eax, [ecx + 1]
mov dl, byte [ebx]
cmovne eax, ecx
inc ebx
mov ecx, eax
test dl, dl
jne 0x1002ec37
mov al, byte [ebx - 1]
dec ebx
cmp al, 0xa
je 0x1002ec56
cmp al, 0xd
je 0x1002ec56
inc ecx
mov esi, dword [ebp - 0xd8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [edi + 0x18c4]
movss dword [ebp - 0xcc], xmm0
movaps xmm0, xmm2
movss dword [ebp - 0x104], xmm0
jmp 0x1002ecc1
cmp dword [edi + 0x19e4], esi
jne 0x1002ec95
mov ebx, dword [ebx + 8]
mov esi, dword [ebp - 0xd8]
add ebx, eax
jmp 0x1002ecb2
mov ecx, eax
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002eca0
mov esi, dword [ebp - 0xd8]
sub ecx, edx
lea ebx, [esi + ecx]
mov eax, ebx
sub eax, esi
cmp eax, 0x200000
jge 0x1002f780
movss xmm1, dword [0x1003fe64]
lea eax, [ebp - 0x24]
xor ecx, ecx
cmp byte [ebp - 0xd4], cl
cmovne eax, ecx
push eax
push ecx
mov dword [esp], ecx
push ebx
push esi
call fcn.10008040
movss xmm2, dword [edi + 0x18c4]
push eax
lea eax, [ebp - 0x10c]
push eax
mov eax, dword [ebp - 0xec]
push dword [edi + 0x18c0]
mov ecx, dword [eax + 0x278]
call fcn.10021660
jmp 0x1002f6d6
mov eax, dword [ebx + 8]
mov edi, 0xfffffc18
mov esi, dword [ebx + 0x14]
xor edx, edx
mov dword [ebp - 0x134], eax
xorps xmm7, xmm7
add eax, dword [ebp - 0xd8]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0xf8], esi
movss dword [ebp - 0xe0], xmm1
mov dword [ebp - 0x110], 0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xf0], edi
test ch, ch
je 0x1002ed6f
mov eax, dword [ebx + 0x3c]
or edi, 0xffffffff
lea eax, [esi + eax*2]
mov dword [ebp - 0x110], eax
lea edx, [edi + 2]
test cl, cl
je 0x1002ed91
mov ecx, dword [ebx + 0x44]
cmp dword [ebx + 0x40], ecx
mov dword [ebp - 0xf0], 0xffffffff
cmovl ecx, dword [ebx + 0x40]
inc edx
lea eax, [esi + ecx*2]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xd4]
xor esi, esi
movzx eax, al
add edx, eax
mov eax, dword [ebp - 0xf8]
mov ecx, eax
movzx eax, word [eax]
test ax, ax
je 0x1002ee09
mov esi, eax
xor ebx, ebx
cmp si, 0xa
jne 0x1002ede9
inc ebx
cmp edi, 0xffffffff
jne 0x1002edcd
cmp ecx, dword [ebp - 0x110]
jb 0x1002edcd
dec edx
mov edi, ebx
test edx, edx
jle 0x1002edf7
cmp dword [ebp - 0xf0], 0xffffffff
jne 0x1002ede9
cmp ecx, dword [ebp - 0xc4]
jb 0x1002ede9
dec edx
mov dword [ebp - 0xf0], ebx
test edx, edx
jle 0x1002edf7
movzx eax, word [ecx + 2]
add ecx, 2
mov esi, eax
test ax, ax
jne 0x1002edb2
mov dword [ebp - 0x124], ebx
mov ebx, dword [ebp - 0x100]
mov esi, dword [ebp - 0x124]
mov edx, dword [ebp - 0xf8]
inc esi
cmp edi, 0xffffffff
mov dword [ebp - 0x124], esi
mov eax, esi
cmovne eax, edi
mov edi, dword [ebp - 0x110]
mov dword [ebp - 0x13c], eax
mov ecx, edi
mov eax, dword [ebp - 0xf0]
cmp eax, 0xffffffff
cmove eax, esi
mov dword [ebp - 0xf0], eax
cmp edi, edx
jbe 0x1002ee50
cmp word [ecx - 2], 0xa
je 0x1002ee50
add ecx, 0xfffffffe
cmp ecx, edx
ja 0x1002ee42
mov eax, dword [0x10043a6c]
movaps xmm2, xmm1
movaps xmm5, xmm1
mov esi, dword [eax + 0x18c0]
movss xmm4, dword [eax + 0x18c4]
divss xmm4, dword [esi + 0x10]
cmp ecx, edi
jae 0x1002eeba
movzx eax, word [ecx]
add ecx, 2
mov edx, eax
cmp eax, 0xa
jne 0x1002ee88
maxss xmm2, xmm5
movaps xmm5, xmm1
jmp 0x1002eeb0
cmp edx, 0xd
je 0x1002eeb0
mov edx, eax
cmp edx, dword [esi]
jge 0x1002ee9d
mov eax, dword [esi + 8]
movss xmm1, dword [eax + edx*4]
jmp 0x1002eea2
movss xmm1, dword [esi + 0xc]
movaps xmm0, xmm4
mulss xmm0, xmm1
xorps xmm1, xmm1
addss xmm5, xmm0
cmp ecx, edi
jb 0x1002ee72
mov edx, dword [ebp - 0xf8]
movd xmm6, dword [ebp - 0x13c]
maxss xmm5, xmm2
mov ecx, dword [ebp - 0xbc]
mov edi, dword [ebp - 0xf0]
cvtdq2ps xmm6, xmm6
movss xmm3, dword [ecx + 0x18c4]
mulss xmm6, xmm3
movss dword [ebp - 0x140], xmm5
movss dword [ebp - 0x148], xmm6
test edi, edi
js 0x1002ef95
mov eax, dword [ebp - 0xc4]
mov ecx, eax
cmp eax, edx
jbe 0x1002ef19
cmp word [ecx - 2], 0xa
je 0x1002ef13
add ecx, 0xfffffffe
cmp ecx, edx
ja 0x1002ef05
mov eax, dword [ebp - 0xc4]
movaps xmm2, xmm1
movaps xmm7, xmm1
cmp ecx, eax
jae 0x1002ef78
mov ebx, dword [ebp - 0xc4]
nop dword [eax]
movzx eax, word [ecx]
add ecx, 2
mov edx, eax
cmp eax, 0xa
jne 0x1002ef46
maxss xmm2, xmm7
movaps xmm7, xmm1
jmp 0x1002ef6e
cmp edx, 0xd
je 0x1002ef6e
mov edx, eax
cmp edx, dword [esi]
jge 0x1002ef5b
mov eax, dword [esi + 8]
movss xmm1, dword [eax + edx*4]
jmp 0x1002ef60
movss xmm1, dword [esi + 0xc]
movaps xmm0, xmm4
mulss xmm0, xmm1
xorps xmm1, xmm1
addss xmm7, xmm0
cmp ecx, ebx
jb 0x1002ef30
mov ebx, dword [ebp - 0x100]
mov ecx, dword [ebp - 0xbc]
maxss xmm7, xmm2
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm3
movss dword [ebp - 0xe0], xmm0
mov edx, dword [ebp - 0xd4]
test dl, dl
je 0x1002efcb
movd xmm0, dword [ebp - 0x124]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm3
movss xmm3, dword [ebp - 0x114]
movss dword [ebp - 0xcc], xmm0
movaps xmm0, xmm3
movss dword [ebp - 0x104], xmm0
jmp 0x1002efd3
movss xmm3, dword [ebp - 0x114]
cmp byte [ebp - 0xb4], 0
je 0x1002f0bd
cmp byte [ebx + 0xe64], 0
je 0x1002f0bd
test dword [ebp + 0x14], 0x1000
jne 0x1002f03a
movss xmm2, dword [ebx + 0x38]
movaps xmm0, xmm3
comiss xmm2, xmm5
mulss xmm0, dword [0x1003fe08]
movaps xmm1, xmm5
jbe 0x1002f01b
subss xmm1, xmm0
xorps xmm0, xmm0
maxss xmm0, xmm1
jmp 0x1002f028
subss xmm1, xmm3
comiss xmm1, xmm2
jb 0x1002f041
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebx + 0x38], xmm0
jmp 0x1002f041
mov dword [ebx + 0x38], 0
test dl, dl
je 0x1002f0b6
mov esi, dword [ebp - 0xec]
movaps xmm2, xmm6
subss xmm2, dword [ecx + 0x18c4]
movss xmm1, dword [esi + 0x54]
comiss xmm1, xmm2
jbe 0x1002f069
xorps xmm0, xmm0
maxss xmm0, xmm2
jmp 0x1002f078
movaps xmm0, xmm6
subss xmm0, dword [ebp - 0x118]
maxss xmm0, xmm1
mov eax, dword [ebp - 0x11c]
subss xmm1, xmm0
movss dword [esi + 0x54], xmm0
movss xmm0, dword [ebp - 0x18]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0x1c]
addss xmm1, dword [eax + 4]
movss dword [ebp - 0xe8], xmm0
movss dword [ebp - 0xd0], xmm1
movss dword [ebp - 0x108], xmm1
mov byte [ebx + 0xe64], 0
mov ah, byte [ebp - 0xae]
movss xmm4, dword [ebx + 0x38]
movss dword [ebp - 0xc4], xmm4
test ah, ah
je 0x1002f395
mov edx, dword [ebx + 0x44]
mov eax, edx
mov ecx, dword [ebx + 0x40]
cmp ecx, edx
mov edi, dword [ebp - 0xf8]
cmovl eax, ecx
cmovge edx, ecx
cmp byte [ebp - 0xb4], 0
lea esi, [edi + eax*2]
lea edi, [edi + edx*2]
je 0x1002f107
movss xmm1, dword [0x1003fe64]
jmp 0x1002f10f
movss xmm1, dword [0x1003fe30]
mov ecx, 0x2a
call fcn.10008040
mov edx, dword [ebp - 0xd4]
xorps xmm5, xmm5
mov dword [ebp - 0x13c], eax
test dl, dl
je 0x1002f13e
movss dword [ebp - 0xf8], xmm5
movss dword [ebp - 0x110], xmm5
jmp 0x1002f15e
movss xmm0, dword [0x1003ffa4]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [0x1003fe94]
movss dword [ebp - 0x110], xmm0
mov ecx, dword [ebp - 0x11c]
movss xmm4, dword [ecx]
addss xmm4, xmm7
movss xmm7, dword [ebp - 0xd0]
movaps xmm6, xmm7
addss xmm6, dword [ebp - 0xe0]
subss xmm4, dword [ebp - 0xc4]
subss xmm6, xmm5
movss dword [ebp - 0xe0], xmm6
cmp esi, edi
jae 0x1002f3dd
mov ebx, dword [ebp - 0xbc]
movss xmm3, dword [ebp - 0xf4]
movss xmm7, dword [ebx + 0x18c4]
movaps xmm1, xmm7
movaps xmm0, xmm3
addss xmm0, xmm1
comiss xmm6, xmm0
ja 0x1002f381
movss xmm0, dword [ebp - 0x20]
comiss xmm0, xmm6
jbe 0x1002f1ee
cmp esi, edi
jae 0x1002f356
movzx eax, word [esi]
add esi, 2
cmp eax, 0xa
je 0x1002f356
cmp esi, edi
jb 0x1002f1d6
jmp 0x1002f381
mov eax, dword [0x10043a6c]
xorps xmm1, xmm1
xorps xmm5, xmm5
xorps xmm2, xmm2
mov edx, dword [eax + 0x18c0]
movss xmm3, dword [eax + 0x18c4]
divss xmm3, dword [edx + 0x10]
cmp esi, edi
jae 0x1002f25c
movzx eax, word [esi]
add esi, 2
mov ecx, eax
cmp eax, 0xa
je 0x1002f249
cmp ecx, 0xd
je 0x1002f243
cmp ecx, dword [edx]
jge 0x1002f233
mov eax, dword [edx + 8]
movss xmm1, dword [eax + ecx*4]
jmp 0x1002f238
movss xmm1, dword [edx + 0xc]
movaps xmm0, xmm3
mulss xmm0, xmm1
addss xmm2, xmm0
cmp esi, edi
jb 0x1002f213
jmp 0x1002f253
xorps xmm5, xmm5
maxss xmm5, xmm2
xorps xmm2, xmm2
mov ecx, dword [ebp - 0x11c]
xorps xmm1, xmm1
maxss xmm2, xmm5
comiss xmm1, xmm2
jb 0x1002f295
mov eax, dword [ebx + 0x18c0]
cmp dword [eax], 0x20
jle 0x1002f27d
mov eax, dword [eax + 8]
movss xmm0, dword [eax + 0x80]
jmp 0x1002f282
movss xmm0, dword [eax + 0xc]
mulss xmm0, dword [0x1003fe24]
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss xmm0, dword [ebp - 0x110]
addss xmm2, xmm4
movss xmm3, dword [ebp - 0xf4]
addss xmm4, xmm1
movss xmm1, dword [ebp - 0xf8]
addss xmm0, xmm6
movss xmm5, dword [ebp - 0xe8]
subss xmm1, xmm7
minss xmm2, xmm5
maxss xmm4, dword [ebp - 0x24]
minss xmm0, xmm3
addss xmm1, xmm6
movss dword [ebp - 0x2c], xmm2
movss dword [ebp - 0x34], xmm4
comiss xmm0, dword [ebp - 0x20]
maxss xmm1, dword [ebp - 0x20]
movss dword [ebp - 0x28], xmm0
movss dword [ebp - 0x30], xmm1
jbe 0x1002f356
comiss xmm3, xmm1
jbe 0x1002f356
comiss xmm2, dword [ebp - 0x24]
jbe 0x1002f356
comiss xmm5, xmm4
jbe 0x1002f356
push 0xf
push ecx
mov dword [esp], 0
lea eax, [ebp - 0x2c]
push dword [ebp - 0x13c]
push eax
lea eax, [ebp - 0x34]
push eax
mov eax, dword [ebp - 0xec]
mov ecx, dword [eax + 0x278]
call fcn.10021160
movss xmm3, dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x1c]
movss xmm6, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0x11c]
movss dword [ebp - 0xf4], xmm3
movss dword [ebp - 0xe8], xmm0
movss xmm7, dword [ebx + 0x18c4]
movss xmm4, dword [ecx]
addss xmm6, xmm7
movaps xmm1, xmm7
subss xmm4, dword [ebp - 0xc4]
movss dword [ebp - 0xe0], xmm6
cmp esi, edi
jb 0x1002f1b4
movss xmm4, dword [ebp - 0xc4]
mov ebx, dword [ebp - 0x100]
mov edx, dword [ebp - 0xd4]
movss xmm7, dword [ebp - 0xd0]
xorps xmm5, xmm5
test dl, dl
jne 0x1002f3b4
cmp dword [ebp - 0x134], 0x200000
jge 0x1002f514
mov eax, dword [0x10043a6c]
movups xmm1, xmmword [eax + 0x15c0]
comiss xmm5, xmm1
movaps xmm2, xmm1
shufps xmm2, xmm1, 0xff
mulss xmm2, dword [eax + 0x1510]
movups xmmword [ebp - 0x34], xmm1
jbe 0x1002f3e7
xorps xmm0, xmm0
jmp 0x1002f3f3
movss xmm4, dword [ebp - 0xc4]
jmp 0x1002f3a0
movss xmm0, dword [0x1003fe64]
minss xmm0, xmm1
movss xmm3, dword [0x1003ff2c]
movss xmm6, dword [0x1003fe24]
movss xmm1, dword [ebp - 0x30]
comiss xmm5, xmm1
mulss xmm0, xmm3
addss xmm0, xmm6
cvttss2si ecx, xmm0
jbe 0x1002f41e
xorps xmm0, xmm0
jmp 0x1002f42a
movss xmm0, dword [0x1003fe64]
minss xmm0, xmm1
movss xmm1, dword [ebp - 0x2c]
mulss xmm0, xmm3
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm5, xmm1
jbe 0x1002f44a
xorps xmm0, xmm0
jmp 0x1002f456
movss xmm0, dword [0x1003fe64]
minss xmm0, xmm1
mulss xmm0, xmm3
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm5, xmm2
jbe 0x1002f471
xorps xmm1, xmm1
jmp 0x1002f47d
movss xmm1, dword [0x1003fe64]
minss xmm1, xmm2
mov esi, dword [ebp - 0x11c]
lea eax, [ebp - 0x24]
mulss xmm1, xmm3
subss xmm7, xmm5
xor edi, edi
test dl, dl
movss xmm0, dword [esi]
cmovne eax, edi
push eax
addss xmm1, xmm6
movss dword [ebp - 0x134], xmm7
push ecx
mov dword [esp], edi
subss xmm0, xmm4
push dword [ebp - 0x120]
mov edi, dword [ebp - 0xbc]
push dword [ebp - 0xd8]
cvttss2si eax, xmm1
movss xmm2, dword [edi + 0x18c4]
shl eax, 0x18
or eax, ecx
movss dword [ebp - 0x138], xmm0
push eax
lea eax, [ebp - 0x138]
push eax
mov eax, dword [ebp - 0xec]
push dword [edi + 0x18c0]
mov ecx, dword [eax + 0x278]
call fcn.10021660
movss xmm0, dword [ebp - 0x18]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0x1c]
movss dword [ebp - 0xe8], xmm0
jmp 0x1002f520
mov esi, dword [ebp - 0x11c]
mov edi, dword [ebp - 0xbc]
cmp byte [ebp - 0xb4], 0
je 0x1002f6ca
movss xmm0, dword [edi + 0x18]
addss xmm0, dword [ebx + 0xe60]
movss dword [ebx + 0xe60], xmm0
cmp byte [edi + 0xb2], 0
je 0x1002f592
xorps xmm1, xmm1
comiss xmm1, xmm0
jae 0x1002f592
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x138], xmm0
fld qword [ebp - 0x138]
fld qword [0x1003fe88]
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm0, dword [0x1003fe54]
fstp qword [ebp - 0x138]
movsd xmm1, qword [ebp - 0x138]
cvtpd2ps xmm1, xmm1
comiss xmm0, xmm1
jae 0x1002f592
xor al, al
jmp 0x1002f594
mov al, 1
movss xmm3, dword [ebp - 0xd0]
movss xmm4, dword [esi]
movss xmm5, dword [0x1003fe64]
addss xmm3, dword [ebp - 0x148]
addss xmm4, dword [ebp - 0x140]
subss xmm3, dword [0x1003fd9c]
subss xmm4, dword [ebp - 0xc4]
movss dword [ebp - 0xd0], xmm3
movaps xmm0, xmm3
movss dword [ebp - 0x140], xmm4
movaps xmm2, xmm4
movss dword [ebp - 0x34], xmm4
movaps xmm1, xmm3
addss xmm2, xmm5
subss xmm0, dword [edi + 0x18c4]
subss xmm1, dword [0x1003fe74]
movss dword [ebp - 0x2c], xmm2
addss xmm0, dword [0x1003fe24]
movss dword [ebp - 0x28], xmm1
movss dword [ebp - 0x30], xmm0
test al, al
je 0x1002f697
comiss xmm1, dword [ebp - 0x20]
jbe 0x1002f697
movss xmm3, dword [ebp - 0xf4]
comiss xmm3, xmm0
jbe 0x1002f68f
comiss xmm2, dword [ebp - 0x24]
jbe 0x1002f68f
movss xmm0, dword [ebp - 0xe8]
comiss xmm0, xmm4
jbe 0x1002f68f
sub esp, 8
movss dword [ebp - 8], xmm1
movaps xmm1, xmm5
movss dword [ebp - 0xc], xmm4
xor ecx, ecx
mov dword [esp + 4], 0x3f800000
call fcn.10008040
add esp, 4
push eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x34]
push eax
mov eax, dword [ebp - 0xec]
mov ecx, dword [eax + 0x278]
call fcn.10021040
movss xmm4, dword [ebp - 0x140]
movss xmm5, dword [0x1003fe64]
movss xmm3, dword [ebp - 0xd0]
cmp byte [ebp - 0xdc], 0
mov ebx, dword [ebp - 0x120]
mov esi, dword [ebp - 0xd8]
jne 0x1002f6d6
subss xmm3, dword [edi + 0x18c4]
subss xmm4, xmm5
movss dword [edi + 0x2d24], xmm3
movss dword [edi + 0x2d20], xmm4
jmp 0x1002f6d6
mov ebx, dword [ebp - 0x120]
mov esi, dword [ebp - 0xd8]
cmp byte [ebp - 0xd4], 0
je 0x1002f780
mov ecx, dword [0x10043a6c]
xorps xmm1, xmm1
movss xmm0, dword [ebp - 0x104]
addss xmm0, xmm1
movss xmm1, dword [ebp - 0xcc]
addss xmm1, dword [edi + 0x18c4]
mov eax, dword [ecx + 0x19b0]
movss dword [ebp - 0xc], xmm0
mov byte [eax + 0x7c], 1
mov eax, dword [ecx + 0x19b0]
movss dword [ebp - 8], xmm1
cmp byte [eax + 0x7f], 0
jne 0x1002f776
movss xmm2, dword [eax + 0xc8]
lea ecx, [ebp - 0xc]
movaps xmm3, xmm2
movss dword [ebp - 0x34], xmm2
addss xmm3, xmm0
movss xmm0, dword [eax + 0xcc]
addss xmm1, xmm0
movss dword [ebp - 0x30], xmm0
movss dword [ebp - 0x2c], xmm3
movss dword [ebp - 0x28], xmm1
movss xmm1, dword [0x1003ffa4]
call fcn.10009a60
push 0
xor edx, edx
lea ecx, [ebp - 0x34]
call fcn.10009b90
add esp, 4
call fcn.1000c950
call fcn.10011ec0
mov eax, dword [ebp - 0x128]
test al, al
je 0x1002f795
call fcn.100118e0
mov eax, dword [ebp - 0x128]
cmp byte [edi + 0x2d5c], 0
je 0x1002f7b3
test al, al
jne 0x1002f7b3
push ebx
mov edx, esi
lea ecx, [ebp - 0x10c]
call fcn.10016980
add esp, 4
movss xmm0, dword [ebp - 0x144]
comiss xmm0, dword [0x1003fd9c]
jbe 0x1002f80c
movss xmm0, dword [ebp - 0x44]
xor edx, edx
addss xmm0, dword [edi + 0x1560]
mov ecx, dword [ebp - 0x12c]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x48]
addss xmm0, dword [edi + 0x154c]
movss dword [ebp - 0x108], xmm0
push dword [ebp - 0x108]
push dword [ebp - 0x10c]
push 1
call fcn.10008120
add esp, 0xc
mov dl, byte [ebp - 0xe1]
mov ecx, dword [ebp + 0x14]
test dl, dl
je 0x1002f83c
test ecx, 0x200000
jne 0x1002f83c
mov eax, dword [0x10043a6c]
mov word [eax + 0x19f3], 0x101
mov eax, dword [eax + 0x19b0]
or dword [eax + 0x110], 4
test cl, 0x20
movzx eax, dl
movzx ecx, byte [ebp - 0xb1]
cmovne eax, ecx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10038f5a
mov esp, ebp
pop ebp
ret