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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x188
mov eax, dword [0x10162378]
xor eax, esp
mov dword [esp + 0x184], eax
mov eax, dword [ebp + 8]
push esi
mov esi, dword [0x10167324]
push edi
mov dword [esp + 0x68], edx
mov dword [esp + 0x70], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x20], esi
call fcn.1000da20
mov edi, eax
mov dword [esp + 0x74], eax
test edi, edi
sete byte [esp + 0xb]
test eax, eax
jne 0x1001068a
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x70]
call fcn.1000ddb0
mov edi, eax
mov eax, dword [esp + 0xc]
mov ecx, eax
mov edx, eax
and ecx, 0xc0200
or edx, 6
cmp ecx, 0xc0200
mov ecx, dword [esi + 0x3fe0]
cmovne edx, eax
mov dword [esp + 0x50], ecx
cmp dword [esi + 0x4040], 0
mov eax, dword [edi + 0x270]
mov dword [esp + 0x4c], eax
lea eax, [esi + 0x4040]
mov dword [esp + 0x14], edx
jne 0x100106d8
cmp byte [esi + 0x3ff1], 0
je 0x100106d8
mov al, 1
jmp 0x100106da
xor al, al
mov byte [edi + 0xe7], al
lea eax, [ecx - 1]
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
setl ch
mov byte [esp + 0x13], ch
test edx, 0x4000000
je 0x1001072e
mov eax, dword [esi + 0x4ac4]
lea esi, [eax + eax*4]
mov eax, dword [esp + 0x20]
mov edx, dword [eax + 0x4ac0]
mov eax, dword [edi + 0xf8]
cmp edi, dword [edx + esi*8 + 4]
setne cl
cmp eax, dword [edx + esi*8]
mov esi, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
setne al
or cl, al
or ch, cl
mov byte [esp + 0x13], ch
mov al, byte [edi + 0xe5]
mov byte [esp + 0x11], al
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x50]
je 0x100107c9
push edx
mov dl, byte [esp + 0xf]
mov ecx, edi
call fcn.1000db60
mov al, byte [esp + 0x17]
add esp, 4
mov byte [edi + 0xe5], al
test al, al
je 0x1001077f
or byte [edi + 0x108], 8
or byte [edi + 0x109], 8
or byte [edi + 0x10a], 8
or byte [edi + 0x10b], 8
mov eax, dword [edi + 0xc]
mov dword [edi + 0x10], eax
mov eax, dword [esp + 0x14]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x50]
mov dword [edi + 0x270], eax
xor eax, eax
movsd xmm0, qword [esi + 0x3fd8]
cvtpd2ps xmm0, xmm0
mov word [edi + 0xf0], ax
movss dword [edi + 0x278], xmm0
movzx eax, word [esi + 0x4058]
inc dword [esi + 0x4058]
mov word [edi + 0xf2], ax
jmp 0x100107d0
mov eax, dword [edi + 0xc]
mov dword [esp + 0x14], eax
test dword [esi + 0x49e4], 0x200
je 0x100107f2
push dword [esi + 0x49f4]
mov edx, dword [esi + 0x4a44]
mov ecx, edi
call fcn.100278b0
add esp, 4
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x50]
je 0x100108ec
cmp dword [edi + 0x3c0], 0
jne 0x100108c5
cmp dword [edi + 0x3b8], 0
jne 0x100108c5
mov eax, dword [0x10167324]
xor cl, cl
cmp byte [eax + 0x46], cl
jne 0x1001082f
cmp byte [edi + 0x2c], cl
je 0x100108c7
test dword [edi + 0xc], 0x1200001
lea eax, [edi + 0xc]
mov dword [esp + 0xc], eax
jne 0x100108c7
cmp byte [edi + 0xe7], 0
jne 0x100108c7
mov al, byte [edi + 0x39d]
mov byte [esp + 0xa], al
mov edx, dword [esp + 0x68]
mov ecx, edi
call fcn.10028290
test byte [edi + 0x39d], 1
mov eax, dword [esp + 0xc]
mov edx, dword [eax]
mov dword [esp + 0x14], edx
je 0x1001087b
and dword [esi + 0x49e4], 0xffffffef
test byte [edi + 0x39d], 4
je 0x100108f0
mov al, byte [esp + 0xa]
test al, 4
jne 0x100108f0
test al, 2
je 0x100108f0
cmp byte [edi + 0xe5], 0
jne 0x100108f0
cmp byte [esp + 0x11], 0
jne 0x100108f0
or byte [edi + 0x108], 8
or byte [edi + 0x109], 8
or byte [edi + 0x10a], 8
or byte [edi + 0x10b], 8
mov byte [edi + 0xe5], 1
jmp 0x100108f0
mov cl, 1
lea eax, [edi + 0xc]
mov dword [esp + 0xc], eax
mov al, byte [edi + 0x39d]
mov byte [esp + 0xa], al
test cl, cl
jne 0x10010856
and al, 0xfb
and al, 0xfd
and al, 0xfe
mov byte [edi + 0x39d], al
mov edx, dword [esp + 0x14]
test byte [edi + 0x39d], 1
je 0x1001090a
mov eax, dword [edi + 0x3b8]
mov eax, dword [eax + 0x70]
mov dword [esp + 0x40], eax
test eax, eax
jne 0x10010925
mov eax, dword [esi + 0x4040]
test eax, eax
je 0x10010921
imul ecx, eax, 0x54
mov eax, dword [esi + 0x4048]
mov eax, dword [ecx + eax - 0x54]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x4c]
cmp ecx, dword [esp + 0x50]
je 0x10010943
mov ecx, edx
and ecx, 0x5000000
neg ecx
sbb ecx, ecx
and ecx, eax
mov dword [esp + 0x38], ecx
jmp 0x1001094d
mov eax, dword [edi + 0x338]
mov dword [esp + 0x38], eax
cmp dword [edi + 0x11c], 0
lea eax, [edi + 0x11c]
jne 0x10010982
cmp dword [eax + 4], 0
jne 0x10010971
push 8
mov ecx, eax
call fcn.100359f0
lea eax, [edi + 0x11c]
mov edx, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [edi + 8]
mov dword [ecx + edx*4], eax
inc dword [edi + 0x11c]
push 0x3c
lea eax, [esp + 0xd8]
mov dword [esi + 0x4064], edi
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esi + 0x49e0]
lea edx, [esi + 0x4040]
mov dword [esp + 0x118], eax
xorps xmm0, xmm0
movzx eax, word [edi + 0x11c]
add esp, 0xc
movups xmmword [esp + 0x110], xmm0
mov word [esp + 0x110], ax
movzx eax, word [esi + 0x4a70]
movups xmm0, xmmword [esi + 0x49a8]
mov word [esp + 0x112], ax
movzx eax, word [esi + 0x4a7c]
mov ecx, dword [edx]
mov word [esp + 0x114], ax
movzx eax, word [esi + 0x4a88]
mov word [esp + 0x116], ax
movzx eax, word [esi + 0x4a94]
mov word [esp + 0x118], ax
movzx eax, word [esi + 0x4aac]
mov word [esp + 0x11a], ax
movzx eax, word [esi + 0x4aa0]
movups xmmword [esp + 0xd4], xmm0
mov word [esp + 0x11c], ax
lea eax, [esi + 0x4ac4]
movups xmm0, xmmword [esi + 0x49b8]
mov dword [esp + 0x60], eax
movzx eax, word [eax]
movups xmmword [esp + 0xe4], xmm0
mov word [esp + 0x11e], ax
movups xmm0, xmmword [esi + 0x49c8]
movzx eax, word [esi + 0x5dc4]
mov word [esp + 0x120], 0
movups xmmword [esp + 0xf4], xmm0
mov word [esp + 0x120], ax
movq xmm0, qword [esi + 0x49d8]
mov eax, dword [edx + 4]
mov dword [esp + 0xd0], edi
movq qword [esp + 0x104], xmm0
cmp ecx, eax
jne 0x10010acc
inc ecx
test eax, eax
je 0x10010ab4
cdq
sub eax, edx
lea edx, [esi + 0x4040]
sar eax, 1
add eax, dword [edx + 4]
jmp 0x10010ab9
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, edx
call fcn.10036110
lea edx, [esi + 0x4040]
imul ecx, dword [edx], 0x54
movups xmm0, xmmword [esp + 0xd0]
mov eax, dword [esp + 0x120]
add ecx, dword [edx + 8]
movups xmmword [ecx], xmm0
movups xmm0, xmmword [esp + 0xe0]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [esp + 0xf0]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [esp + 0x100]
movups xmmword [ecx + 0x30], xmm0
movups xmm0, xmmword [esp + 0x110]
movups xmmword [ecx + 0x40], xmm0
mov dword [ecx + 0x50], eax
inc dword [edx]
mov eax, dword [esp + 0x14]
test eax, 0x10000000
je 0x10010b2a
inc dword [esi + 0x4adc]
mov ecx, dword [esp + 0x4c]
cmp ecx, dword [esp + 0x50]
je 0x10010b4e
push dword [esp + 0x38]
mov edx, eax
mov ecx, edi
call fcn.10010560
mov eax, dword [esp + 0x44]
add esp, 4
mov dword [edi + 0x33c], eax
mov eax, dword [edi + 8]
mov dword [esp + 0x18], eax
mov eax, dword [0x10167324]
mov ecx, dword [eax + 0x4a98]
lea edx, [eax + 0x4a94]
mov dword [esp + 0x13c], eax
mov dword [esp + 0xc], edx
cmp dword [edx], ecx
jne 0x10010ba1
test ecx, ecx
je 0x10010b88
mov eax, ecx
cdq
sub eax, edx
mov edx, dword [esp + 0xc]
sar eax, 1
add eax, ecx
jmp 0x10010b8d
mov eax, 8
mov ecx, dword [edx]
inc ecx
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, edx
call fcn.100359f0
mov edx, dword [esp + 0xc]
mov ecx, dword [edx]
mov eax, dword [edx + 8]
mov esi, dword [esp + 0x18]
mov dword [eax + ecx*4], esi
mov eax, esi
inc dword [edx]
test dword [esp + 0x14], 0x4000000
mov ecx, dword [esp + 0x13c]
mov esi, dword [esp + 0x20]
mov dword [ecx + 0x497c], eax
mov eax, dword [esi + 0x497c]
mov dword [edi + 0x390], eax
mov dword [esi + 0x4064], 0
je 0x10010c99
mov eax, dword [esi + 0x4ac4]
mov ecx, dword [esi + 0x4ac0]
mov dword [esp + 0xc], ecx
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x40]
mov dword [ecx + edx*8 + 4], edi
mov dword [esp + 0x13c], edx
mov eax, dword [eax + 0x180]
mov dword [ecx + edx*8 + 0xc], eax
mov eax, dword [esi + 0x4ac8]
mov ecx, dword [esi + 0x4ac4]
cmp ecx, eax
jne 0x10010c56
inc ecx
test eax, eax
je 0x10010c37
cdq
sub eax, edx
lea edx, [esi + 0x4ac4]
sar eax, 1
add eax, dword [edx + 4]
jmp 0x10010c42
mov eax, 8
lea edx, [esi + 0x4ac4]
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, edx
call fcn.10036040
mov edx, dword [esp + 0x13c]
mov esi, dword [esp + 0x60]
mov eax, dword [esi]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 8]
mov esi, dword [esp + 0xc]
movups xmm0, xmmword [esi + edx*8]
movups xmmword [eax + ecx*8], xmm0
movups xmm0, xmmword [esi + edx*8 + 0x10]
movups xmmword [eax + ecx*8 + 0x10], xmm0
movq xmm0, qword [esi + edx*8 + 0x20]
movq qword [eax + ecx*8 + 0x20], xmm0
mov eax, dword [esp + 0x60]
inc dword [eax]
mov eax, esi
mov esi, dword [esp + 0x20]
mov eax, dword [eax + edx*8]
mov dword [edi + 0xf8], eax
test byte [esi + 0x49e4], 1
mov byte [esp + 0x11], 0
mov byte [esp + 0xa], 0
mov byte [esp + 0x12], 0
je 0x10010d53
mov dl, byte [edi + 0x108]
mov ecx, dword [esi + 0x49e8]
movsx eax, dl
test ecx, eax
setne byte [esp + 0x11]
test ecx, eax
je 0x10010d42
movss xmm1, dword [esi + 0x4a04]
movss xmm0, dword [esi + 0x4a00]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
comiss xmm0, dword [0x1015c96c]
jbe 0x10010d42
mov eax, dword [esi + 0x49f8]
mov ecx, dword [esi + 0x49fc]
mov dword [edi + 0x110], ecx
mov dword [edi + 0x10c], eax
mov eax, dword [esi + 0x4a00]
mov ecx, dword [esi + 0x4a04]
mov dword [edi + 0x118], ecx
mov dword [edi + 0x114], eax
mov eax, dword [edi + 0x108]
movzx ecx, dl
and eax, 0xffffff00
and ecx, 0xf1
or ecx, eax
mov dword [edi + 0x108], ecx
jmp 0x10010d53
push ecx
lea edx, [esi + 0x49f8]
mov ecx, edi
call fcn.10014590
add esp, 4
test byte [esi + 0x49e4], 2
xorps xmm1, xmm1
je 0x10010db4
movsx eax, byte [edi + 0x109]
lea edx, [esi + 0x4a08]
mov ecx, dword [esi + 0x49ec]
and eax, ecx
je 0x10010d86
movss xmm0, dword [edx]
comiss xmm0, xmm1
jbe 0x10010d86
mov byte [esp + 0xa], 1
jmp 0x10010d8f
mov byte [esp + 0xa], 0
test eax, eax
je 0x10010da1
movss xmm0, dword [esi + 0x4a0c]
comiss xmm0, xmm1
mov byte [esp + 0x12], 1
ja 0x10010da6
mov byte [esp + 0x12], 0
push ecx
mov ecx, edi
call fcn.100146f0
add esp, 4
xorps xmm1, xmm1
test byte [esi + 0x49e4], 0x80
je 0x10010dfb
movss xmm0, dword [esi + 0x4a18]
comiss xmm0, xmm1
jb 0x10010ddc
movss dword [edi + 0xbc], xmm0
mov dword [edi + 0xc4], 0
movss xmm0, dword [esi + 0x4a1c]
comiss xmm0, xmm1
jb 0x10010dfb
movss dword [edi + 0xc0], xmm0
mov dword [edi + 0xc8], 0
test byte [esi + 0x49e4], 4
je 0x10010e18
mov eax, dword [esi + 0x4a10]
mov ecx, dword [esi + 0x4a14]
mov dword [edi + 0x6c], eax
mov dword [edi + 0x70], ecx
jmp 0x10010e30
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x50]
je 0x10010e30
mov dword [edi + 0x6c], 0
mov dword [edi + 0x70], 0
test dword [esi + 0x49e4], 0x400
je 0x10010e5d
movups xmm0, xmmword [esi + 0x4a48]
movups xmmword [edi + 0x14], xmm0
movq xmm0, qword [esi + 0x4a58]
movq qword [edi + 0x24], xmm0
mov eax, dword [esi + 0x4a60]
mov dword [edi + 0x2c], eax
test byte [esi + 0x49e4], 8
je 0x10010eaa
mov ecx, dword [esi + 0x49f0]
mov dl, byte [esi + 0x4a21]
test ecx, ecx
je 0x10010e81
movsx eax, byte [edi + 0x10a]
test ecx, eax
je 0x10010eaa
movzx ecx, byte [edi + 0x10a]
mov eax, dword [edi + 0x108]
and ecx, 0xf1
shl ecx, 0x10
and eax, 0xff00ffff
or ecx, eax
mov byte [edi + 0xe2], dl
mov dword [edi + 0x108], ecx
test byte [esi + 0x49e4], 0x20
je 0x10010ebc
xor edx, edx
mov ecx, edi
call fcn.10013b80
cmp byte [edi + 0xe5], 0
je 0x10010ee1
and byte [edi + 0x108], 0xf7
and byte [edi + 0x109], 0xf7
and byte [edi + 0x10a], 0xf7
and byte [edi + 0x10b], 0xf7
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x50]
je 0x1001338f
mov eax, dword [esp + 0x14]
lea ecx, [edi + 0x11c]
and eax, 0x3000000
mov byte [edi + 0xdf], 1
cmp dword [esp + 0x68], 0
mov dword [esp + 0x60], eax
mov al, byte [edi + 0x105]
mov byte [esp + 0x37], al
setne al
mov byte [edi + 0xe9], al
mov dword [edi + 0x248], 0xff7fffff
mov dword [edi + 0x24c], 0xff7fffff
mov dword [edi + 0x250], 0x7f7fffff
mov dword [edi + 0x254], 0x7f7fffff
mov eax, dword [ecx + 4]
mov dword [esp + 0xc], eax
cmp eax, 1
jge 0x10010f81
test eax, eax
je 0x10010f66
cdq
sub eax, edx
mov edx, eax
sar edx, 1
add edx, dword [esp + 0xc]
jmp 0x10010f6b
mov edx, 8
mov eax, 1
cmp edx, eax
cmovg eax, edx
push eax
call fcn.100359f0
lea ecx, [edi + 0x11c]
mov dword [ecx], 1
mov ecx, dword [edi + 0x2a4]
call fcn.1006a7a0
test dword [esp + 0x14], 0x20000000
mov dword [edi + 0x1cc], 0xffffffff
je 0x10010fc8
push 2
push ecx
mov ecx, dword [edi + 0x2a4]
add ecx, 0x78
call fcn.1006e300
mov ecx, dword [edi + 0x2a4]
push 1
push ecx
add ecx, 0x78
call fcn.1006e8f0
cmp byte [edi + 0x39c], 0
je 0x10011014
mov ecx, dword [edi + 0x2a4]
push dword [edi + 0x394]
add ecx, 0xc
mov byte [edi + 0x39c], 0
call fcn.10035d90
mov ecx, dword [edi + 0x2a4]
push dword [edi + 0x398]
add ecx, 0x18
call fcn.10035b20
mov dword [edi + 0x398], 0
mov dword [edi + 0x394], 0
mov eax, dword [edi + 0x30]
test eax, eax
je 0x10011020
cmp dword [eax + 0x48], edi
je 0x10011043
test byte [edi + 0x39d], 1
jne 0x10011043
cmp dword [esi + 0x4cf0], 0
je 0x10011172
test dword [edi + 0xc], 0x80000
jne 0x10011172
cmp dword [esp + 0x74], 0
je 0x10011172
mov eax, dword [edi + 4]
mov ecx, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x70]
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10011080
test dl, dl
je 0x1001107c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10011080
add eax, 2
add ecx, 2
test dl, dl
jne 0x10011060
xor eax, eax
jmp 0x10011085
sbb eax, eax
or eax, 1
test eax, eax
je 0x10011172
mov ecx, dword [esp + 0x70]
mov edx, dword [edi + 0x9c]
mov dword [esp + 0xc], edx
lea eax, [ecx + 1]
mov dword [esp + 0x18], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100110a2
sub ecx, dword [esp + 0x18]
lea eax, [ecx + 1]
mov dword [esp + 0x18], eax
cmp edx, eax
jae 0x10011154
mov edx, dword [esp + 0x28]
test edx, edx
je 0x10011135
mov ecx, dword [0x10167324]
test ecx, ecx
je 0x10011135
mov eax, dword [ecx + 0x3fe0]
mov dword [esp + 0xc], eax
movsx eax, word [ecx + 0x5fa4]
mov esi, dword [esp + 0xc]
add eax, 0xbf5
cmp dword [ecx + eax*8], esi
mov esi, dword [esp + 0x20]
lea eax, [ecx + eax*8]
je 0x1001112b
movsx eax, word [ecx + 0x5fa4]
inc eax
mov dword [esp + 0x3c], 6
cdq
idiv dword [esp + 0x3c]
movzx eax, dx
mov edx, dword [esp + 0xc]
mov word [ecx + 0x5fa4], ax
cwde
add eax, 0xbf5
lea eax, [ecx + eax*8]
mov dword [eax], edx
xor edx, edx
mov dword [eax + 4], edx
mov edx, dword [esp + 0x28]
inc word [eax + 6]
inc dword [ecx + 0x5fa0]
push edx
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov ecx, dword [esp + 0x1c]
add esp, 4
call fcn.10009920
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc], eax
push eax
push dword [esp + 0x74]
push dword [esp + 0x30]
call sub.VCRUNTIME140.dll_memcpy
mov dword [edi + 4], eax
add esp, 0xc
mov eax, dword [esp + 0xc]
mov dword [edi + 0x9c], eax
lea eax, [edi + 0x64]
mov ecx, edi
lea edx, [edi + 0x5c]
push eax
call fcn.1000e1c0
mov al, byte [edi + 0x104]
add esp, 4
test al, al
jle 0x10011195
dec al
mov byte [edi + 0x104], al
mov al, byte [edi + 0x105]
test al, al
jle 0x100111a7
dec al
mov byte [edi + 0x105], al
mov al, byte [edi + 0x106]
test al, al
jle 0x100111b9
dec al
mov byte [edi + 0x106], al
cmp dword [esp + 0x74], 0
mov cl, byte [esp + 0xa]
mov dl, byte [esp + 0x12]
jne 0x100111d7
test cl, cl
je 0x100111d0
test dl, dl
jne 0x100111d7
mov byte [edi + 0x105], 1
cmp byte [esp + 0x13], 0
je 0x10011234
mov eax, dword [esp + 0x14]
test eax, 0x6000000
je 0x10011234
mov byte [edi + 0x105], 1
test al, 0x40
je 0x10011234
test cl, cl
jne 0x10011206
mov dword [edi + 0x54], 0
mov dword [edi + 0x4c], 0
test dl, dl
jne 0x10011218
mov dword [edi + 0x58], 0
mov dword [edi + 0x50], 0
mov dword [edi + 0x64], 0
mov dword [edi + 0x68], 0
mov dword [edi + 0x5c], 0
mov dword [edi + 0x60], 0
mov ecx, edi
call fcn.10020520
mov ecx, dword [edi + 0x30]
mov edx, dword [0x10167324]
test ecx, ecx
je 0x10011251
mov eax, dword [edx + 0x3fe0]
mov dword [ecx + 0x50], eax
movss xmm0, dword [0x1015ca30]
cmp dword [edx + 0x4af0], ecx
je 0x100112a4
test ecx, ecx
je 0x10011294
mov eax, dword [ecx + 0x28]
mov dword [edx + 0x4aec], eax
mov eax, dword [edx + 0x3920]
mov dword [edx + 0x4af0], ecx
test eax, eax
je 0x100112a4
push ecx
call eax
mov edx, dword [0x10167324]
add esp, 4
movss xmm0, dword [0x1015ca30]
jmp 0x100112a4
mov dword [edx + 0x4aec], 0x3f800000
mov dword [edx + 0x4af0], ecx
test dword [esi + 8], 0x8000
je 0x100112b5
mov eax, dword [edi + 0x30]
movss xmm0, dword [eax + 0x28]
movss dword [edi + 0x29c], xmm0
mov dword [edx + 0x4064], edi
mov ecx, dword [edi + 0x1cc]
cmp ecx, 0xffffffff
je 0x100112d9
shl ecx, 9
add ecx, dword [edx + 0x4dd0]
jmp 0x100112db
xor ecx, ecx
mov dword [edx + 0x4db4], ecx
mov eax, dword [edi]
movss xmm0, dword [eax + 0x3dd0]
mulss xmm0, dword [edi + 0x298]
mov eax, dword [edi + 0x338]
mulss xmm0, dword [edi + 0x29c]
test eax, eax
je 0x1001130d
mulss xmm0, dword [eax + 0x298]
movss dword [edx + 0x3de0], xmm0
movss dword [edx + 0x3dcc], xmm0
test ecx, ecx
jne 0x1001132d
cmp dword [edi + 0x1c8], ecx
jne 0x1001132d
mov al, 1
jmp 0x1001132f
xor al, al
mov byte [edi + 0x188], al
mov al, byte [edi + 0x39d]
mov ecx, dword [edi + 0xc]
and al, 1
mov dword [esp + 0x14], ecx
mov byte [esp + 0x5f], al
jne 0x1001136a
test ecx, 0x1000000
je 0x1001136a
movss xmm1, dword [esi + 0x3984]
lea eax, [edi + 0x80]
mov dword [esp + 0x24], eax
movss dword [eax], xmm1
jmp 0x100113a9
test ecx, 0x6000000
je 0x10011384
test ecx, 0x8000000
jne 0x10011384
movss xmm0, dword [esi + 0x398c]
jmp 0x1001138c
movss xmm0, dword [esi + 0x3968]
movss dword [edi + 0x80], xmm0
lea esi, [edi + 0x80]
mov dword [esp + 0x24], esi
movaps xmm1, xmm0
mov esi, dword [esp + 0x20]
test al, al
jne 0x100113e0
mov eax, ecx
and eax, 0x5010000
cmp eax, 0x1000000
jne 0x100113e0
xorps xmm2, xmm2
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jp 0x100113e0
test ecx, 0x400
je 0x100113d8
movss xmm0, dword [esi + 0x3960]
xorps xmm1, xmm1
jmp 0x100113f0
xorps xmm0, xmm0
xorps xmm1, xmm1
jmp 0x100113f0
movss xmm1, dword [esi + 0x395c]
movss xmm0, dword [esi + 0x3960]
movss dword [edi + 0x74], xmm1
movss dword [edi + 0x78], xmm0
movss xmm0, dword [edi + 0x74]
maxss xmm0, dword [esi + 0x39a0]
maxss xmm0, dword [esi + 0x4a64]
movss dword [edi + 0x18c], xmm0
mov eax, dword [esi + 0x4a68]
mov dword [edi + 0x190], eax
mov al, byte [esp + 0xb]
mov byte [esp + 0x3c], al
test cl, 0x21
jne 0x100115f1
cmp byte [esp + 0x5f], 0
jne 0x100115f1
mov eax, dword [edi]
test cl, 1
je 0x1001144b
xorps xmm1, xmm1
jmp 0x10011487
movss xmm0, dword [eax + 0x3dd0]
mulss xmm0, dword [edi + 0x298]
mov eax, dword [edi + 0x338]
mulss xmm0, dword [edi + 0x29c]
test eax, eax
je 0x10011475
mulss xmm0, dword [eax + 0x298]
mov eax, dword [edi]
movss xmm1, dword [eax + 0x3994]
addss xmm1, xmm1
addss xmm1, xmm0
movss xmm3, dword [edi + 0x44]
movaps xmm2, xmm3
movss xmm5, dword [edi + 0x48]
addss xmm2, dword [edi + 0x54]
addss xmm1, dword [edi + 0x48]
cmp dword [esi + 0x4068], edi
jne 0x100115a1
cmp dword [esi + 0x409c], 0
jne 0x100115a1
cmp dword [esi + 0x40a0], 0
jne 0x100115a1
mov eax, dword [edx + 0x4064]
movss xmm7, dword [edx + 0x39b8]
movss xmm4, dword [edx + 0xe08]
maxss xmm3, dword [eax + 0x248]
maxss xmm5, dword [eax + 0x24c]
minss xmm2, dword [eax + 0x250]
minss xmm1, dword [eax + 0x254]
movaps xmm0, xmm3
subss xmm0, xmm7
comiss xmm4, xmm0
jb 0x10011597
movss xmm4, dword [edx + 0x39bc]
movaps xmm0, xmm5
movss xmm6, dword [edx + 0xe0c]
subss xmm0, xmm4
comiss xmm6, xmm0
jb 0x10011597
movaps xmm0, xmm2
addss xmm0, xmm7
comiss xmm0, dword [edx + 0xe08]
jbe 0x10011597
movaps xmm0, xmm1
addss xmm0, xmm4
comiss xmm0, xmm6
jbe 0x10011597
mov eax, dword [edx + 0x4af4]
lea ecx, [edi + 0x80]
mov dword [esp + 0x24], ecx
movss xmm6, dword [eax + 0xc]
movss xmm7, dword [eax + 8]
movaps xmm0, xmm6
addss xmm0, dword [eax + 0x14]
movaps xmm4, xmm7
addss xmm4, dword [eax + 0x10]
comiss xmm0, xmm5
jbe 0x10011591
comiss xmm1, xmm6
jbe 0x10011591
comiss xmm4, xmm3
jbe 0x10011591
comiss xmm2, xmm7
jbe 0x10011591
cmp word [esi + 0x383a], 2
jne 0x100115a1
mov byte [edi + 0xe3], 1
mov dword [esp + 0x24], ecx
jmp 0x100115a1
lea eax, [edi + 0x80]
mov dword [esp + 0x24], eax
cmp byte [edi + 0xe3], 0
je 0x100115f8
mov cl, byte [edi + 0xe2]
test cl, cl
sete al
test cl, cl
mov byte [edi + 0xe2], al
mov ecx, 1
mov eax, dword [esp + 0x3c]
movzx eax, al
cmovne eax, ecx
test dword [esp + 0x14], 0x100
mov dword [esp + 0x3c], eax
jne 0x100115f8
xorps xmm1, xmm1
comiss xmm1, dword [edx + 0x5e98]
jb 0x100115f8
mov eax, dword [edx + 0x1c]
mov dword [edx + 0x5e98], eax
jmp 0x100115f8
mov byte [edi + 0xe2], 0
movss xmm0, dword [edi + 0xd4]
mov ecx, dword [edi + 0xc]
mov eax, dword [esp + 0x24]
mov edx, dword [edi]
movss dword [esp + 0x44], xmm0
movss xmm0, dword [edi + 0xd8]
mov dword [esp + 0x18], eax
mov byte [edi + 0xe3], 0
movss dword [esp + 0x2c], xmm0
mov dword [edi + 0x84], 0
mov dword [edi + 0x8c], 0
test cl, 1
je 0x10011646
xorps xmm2, xmm2
jmp 0x10011683
movss xmm0, dword [edi + 0x298]
mulss xmm0, dword [edx + 0x3dd0]
mov ecx, dword [edi + 0x338]
mulss xmm0, dword [edi + 0x29c]
test ecx, ecx
je 0x10011670
mulss xmm0, dword [ecx + 0x298]
movss xmm2, dword [edx + 0x3994]
mov ecx, dword [edi + 0xc]
addss xmm2, xmm2
addss xmm2, xmm0
test ecx, 0x400
je 0x100116cf
movss xmm0, dword [edx + 0x3dd0]
mulss xmm0, dword [edi + 0x298]
mov eax, dword [edi + 0x338]
mulss xmm0, dword [edi + 0x29c]
test eax, eax
je 0x100116b5
mulss xmm0, dword [eax + 0x298]
movss xmm1, dword [edx + 0x3994]
addss xmm0, dword [edi + 0x190]
addss xmm1, xmm1
addss xmm1, xmm0
jmp 0x100116d2
xorps xmm1, xmm1
addss xmm1, xmm2
mov dword [edi + 0x90], 0
lea eax, [edi + 0x64]
mov dword [edi + 0xd4], 0
push eax
mov edx, edi
mov dword [edi + 0xd8], 0
lea ecx, [esp + 0x15c]
movss dword [edi + 0x88], xmm1
call fcn.1000e2f0
add esp, 4
lea eax, [edi + 0xe2]
test byte [esp + 0x14], 0x40
je 0x10011764
cmp byte [eax], 0
mov dword [esp + 0x48], eax
jne 0x10011764
cmp byte [esp + 0xa], 0
jne 0x10011741
movss xmm0, dword [esp + 0x158]
movss dword [edi + 0x54], xmm0
mov byte [esp + 0xb], 1
cmp byte [esp + 0x12], 0
jne 0x1001182d
movss xmm0, dword [esp + 0x15c]
movss dword [edi + 0x58], xmm0
mov byte [esp + 0x3c], 1
jmp 0x1001182d
mov ecx, eax
mov al, byte [edi + 0xfc]
test al, al
jg 0x10011781
cmp byte [edi + 0xfd], 0
mov dword [esp + 0x48], ecx
jle 0x1001182d
cmp byte [esp + 0xa], 0
jne 0x100117b8
test al, al
jle 0x100117b8
cmp byte [edi + 0xfe], 0
je 0x100117a5
movss xmm0, dword [edi + 0x54]
maxss xmm0, dword [esp + 0x158]
jmp 0x100117ae
movss xmm0, dword [esp + 0x158]
movss dword [edi + 0x54], xmm0
mov byte [esp + 0xb], 1
cmp byte [esp + 0x12], 0
jne 0x100117f4
cmp byte [edi + 0xfd], 0
jle 0x100117f4
cmp byte [edi + 0xfe], 0
je 0x100117e1
movss xmm0, dword [edi + 0x58]
maxss xmm0, dword [esp + 0x15c]
jmp 0x100117ea
movss xmm0, dword [esp + 0x15c]
movss dword [edi + 0x58], xmm0
mov byte [esp + 0x3c], 1
cmp byte [ecx], 0
mov dword [esp + 0x48], ecx
jne 0x1001182d
test dword [edi + 0xc], 0x100
mov edx, dword [0x10167324]
mov dword [esp + 0x48], ecx
jne 0x1001182d
xorps xmm1, xmm1
mov dword [esp + 0x48], ecx
comiss xmm1, dword [edx + 0x5e98]
jb 0x1001182d
mov eax, dword [edx + 0x1c]
mov dword [edx + 0x5e98], eax
mov dword [esp + 0x48], ecx
lea eax, [edi + 0x54]
mov edx, edi
push eax
lea ecx, [esp + 0x94]
call fcn.1000df80
mov ecx, dword [esp + 0x4c]
add esp, 4
mov edx, dword [esp + 0x14]
movss xmm2, dword [eax]
movss xmm0, dword [eax + 4]
mov eax, edx
and eax, 0x1000000
movss dword [edi + 0x54], xmm2
cmp byte [ecx], 0
movss dword [edi + 0x58], xmm0
mov dword [esp + 0x28], eax
je 0x100118e2
test eax, eax
jne 0x100118e2
test byte [edi + 0xc], 1
mov ecx, dword [edi]
je 0x1001187e
xorps xmm1, xmm1
jmp 0x100118b8
movss xmm0, dword [ecx + 0x3dd0]
mulss xmm0, dword [edi + 0x298]
mov eax, dword [edi + 0x338]
mulss xmm0, dword [edi + 0x29c]
test eax, eax
je 0x100118a8
mulss xmm0, dword [eax + 0x298]
movss xmm1, dword [ecx + 0x3994]
addss xmm1, xmm1
addss xmm1, xmm0
addss xmm2, dword [edi + 0x44]
addss xmm1, dword [edi + 0x48]
mov dword [esp + 0x28], 0
subss xmm2, dword [edi + 0x44]
subss xmm1, dword [edi + 0x48]
movss dword [esp + 0x54], xmm2
movss dword [esp + 0x58], xmm1
jmp 0x100118f0
mov eax, dword [edi + 0x54]
mov ecx, dword [edi + 0x58]
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
mov esi, dword [esp + 0x20]
lea ecx, [esp + 0x54]
mov eax, edi
add eax, 0x44
cmp byte [esp + 0x13], 0
mov dword [esp + 0x1c], eax
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [edi + 0x4c], eax
mov dword [edi + 0x50], ecx
je 0x1001195a
mov eax, edx
mov dword [edi + 0x100], 0xffffffff
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x1001195a
cmp byte [esp + 0x11], 0
jne 0x1001195a
mov eax, dword [esi + 0x4ac4]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x4acc]
movss xmm0, dword [eax + ecx*8 - 0x10]
movss xmm1, dword [eax + ecx*8 - 0xc]
mov eax, dword [esp + 0x1c]
movss dword [eax], xmm0
movss dword [eax + 4], xmm1
cmp dword [esp + 0x28], 0
je 0x10011a03
mov ecx, dword [esp + 0x38]
add ecx, 0x1b8
mov dword [esp + 0x6c], ecx
mov ax, word [ecx]
mov word [edi + 0xf0], ax
mov eax, dword [ecx + 4]
cmp dword [ecx], eax
jne 0x100119b5
mov edx, dword [ecx]
inc edx
mov dword [esp + 0xc], edx
test eax, eax
je 0x1001199d
cdq
sub eax, edx
mov edx, dword [esp + 0xc]
sar eax, 1
add eax, dword [ecx + 4]
jmp 0x100119a2
mov eax, 8
cmp eax, edx
cmovg edx, eax
push edx
call fcn.100359f0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x38]
mov ecx, dword [ecx]
mov eax, dword [eax + 0x1c0]
mov dword [eax + ecx*4], edi
mov ecx, dword [esp + 0x38]
mov al, byte [esp + 0x11]
inc dword [ecx + 0x1b8]
test edx, 0x4000000
jne 0x10011a07
test al, al
jne 0x10011a07
cmp dword [esp + 0x60], 0x3000000
je 0x10011a07
mov esi, dword [esp + 0x1c]
mov eax, dword [ecx + 0x128]
mov ecx, dword [ecx + 0x12c]
mov dword [esi], eax
mov eax, esi
mov esi, dword [esp + 0x20]
mov dword [eax + 4], ecx
mov al, byte [esp + 0x11]
movss xmm1, dword [edi + 0x10c]
ucomiss xmm1, dword [0x1015cc20]
lahf
test ah, 0x44
jnp 0x10011a6d
cmp byte [edi + 0x105], 0
jne 0x10011a6d
movss xmm0, dword [edi + 0x114]
lea edx, [esp + 0x54]
mulss xmm0, dword [edi + 0x4c]
mov ecx, edi
push 0
subss xmm1, xmm0
movss xmm0, dword [edi + 0x110]
movss dword [esp + 0x58], xmm1
movss xmm1, dword [edi + 0x118]
mulss xmm1, dword [edi + 0x50]
subss xmm0, xmm1
movss dword [esp + 0x5c], xmm0
call fcn.10014590
add esp, 4
jmp 0x10011ac0
test edx, 0x10000000
jne 0x10011a87
test edx, 0x4000000
je 0x10011aaa
test al, al
jne 0x10011aaa
cmp byte [esp + 0x37], al
jle 0x10011aaa
mov edx, edi
lea ecx, [esp + 0x78]
call fcn.10019600
mov ecx, dword [esp + 0x1c]
movss xmm0, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [ecx], xmm0
movss dword [ecx + 4], xmm1
jmp 0x10011ac4
test edx, 0x2000000
je 0x10011ac0
test al, al
jne 0x10011ac0
cmp dword [esp + 0x60], 0x3000000
jne 0x10011a87
mov ecx, dword [esp + 0x1c]
cmp dword [edi + 0x40], 0
jl 0x10011c68
cmp byte [edi + 0xde], 0
jne 0x10011c68
mov eax, dword [edi + 0x30]
test dword [eax + 4], 0x1000
jne 0x10011c68
movss xmm1, dword [eax + 8]
movss xmm6, dword [eax + 0xc]
movaps xmm3, xmm1
movss xmm0, dword [ecx]
movaps xmm5, xmm6
comiss xmm0, xmm1
movss xmm7, dword [edi + 0x48]
movaps xmm2, xmm0
addss xmm3, dword [eax + 0x10]
addss xmm5, dword [eax + 0x14]
addss xmm2, dword [edi + 0x4c]
lea eax, [edi + 0x4c]
movaps xmm4, xmm7
addss xmm4, dword [edi + 0x50]
jb 0x10011b39
comiss xmm7, xmm6
jb 0x10011b39
comiss xmm3, xmm2
jb 0x10011b39
comiss xmm5, xmm4
jae 0x10011c68
mov edx, dword [edi + 8]
push 0x20
push eax
push ecx
mov ecx, edi
call fcn.100201a0
mov edx, dword [0x10167324]
mov ecx, eax
add esp, 0xc
mov dword [edi + 0x30], ecx
test ecx, ecx
je 0x10011b62
mov eax, dword [edx + 0x3fe0]
mov dword [ecx + 0x50], eax
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x20]
mov dword [esp + 0x24], eax
cmp dword [edx + 0x4af0], ecx
je 0x10011bc5
test ecx, ecx
je 0x10011bb1
mov eax, dword [ecx + 0x28]
mov esi, dword [esp + 0x18]
mov dword [edx + 0x4aec], eax
mov eax, dword [edx + 0x3920]
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x20]
mov dword [edx + 0x4af0], ecx
test eax, eax
je 0x10011bc5
push ecx
call eax
mov eax, dword [esp + 0x1c]
add esp, 4
mov edx, dword [0x10167324]
jmp 0x10011bc1
mov dword [edx + 0x4aec], 0x3f800000
mov dword [edx + 0x4af0], ecx
mov dword [esp + 0x24], eax
test dword [esi + 8], 0x8000
je 0x10011bd8
mov eax, dword [edi + 0x30]
movss xmm0, dword [eax + 0x28]
jmp 0x10011be0
movss xmm0, dword [0x1015ca30]
movss dword [edi + 0x29c], xmm0
mov dword [edx + 0x4064], edi
mov ecx, dword [edi + 0x1cc]
cmp ecx, 0xffffffff
je 0x10011c04
shl ecx, 9
add ecx, dword [edx + 0x4dd0]
jmp 0x10011c06
xor ecx, ecx
mov dword [edx + 0x4db4], ecx
mov eax, dword [edi]
movss xmm0, dword [eax + 0x3dd0]
mulss xmm0, dword [edi + 0x298]
mov eax, dword [edi + 0x338]
mulss xmm0, dword [edi + 0x29c]
test eax, eax
je 0x10011c38
mulss xmm0, dword [eax + 0x298]
movss dword [edx + 0x3de0], xmm0
movss dword [edx + 0x3dcc], xmm0
test ecx, ecx
jne 0x10011c5e
cmp dword [edi + 0x1c8], ecx
jne 0x10011c5e
mov al, 1
mov byte [edi + 0x188], al
jmp 0x10011c6e
xor al, al
mov byte [edi + 0x188], al
jmp 0x10011c6e
mov edx, dword [0x10167324]
mov eax, dword [esp + 0x24]
mov dword [esp + 0xc], eax
mov al, byte [edi + 0xde]
mov byte [esp + 0xa], al
test al, al
je 0x10011c9f
mov edx, dword [esp + 0x40]
mov ecx, edi
call fcn.10020ad0
mov al, byte [edi + 0xde]
mov edx, dword [0x10167324]
mov byte [esp + 0xa], al
cmp byte [esp + 0x11], 0
mov ecx, dword [edi + 0x30]
movss xmm2, dword [esi + 0x3a18]
maxss xmm2, dword [esi + 0x3a20]
movss xmm3, dword [esi + 0x3a1c]
movss xmm7, dword [ecx + 0x18]
addss xmm7, dword [ecx + 0x20]
movss xmm0, dword [ecx + 0xc]
movss xmm6, dword [ecx + 8]
movaps xmm5, xmm0
maxss xmm3, dword [esi + 0x3a24]
addss xmm5, dword [ecx + 0x14]
subss xmm7, xmm2
movss dword [esp + 0x40], xmm2
addss xmm2, dword [ecx + 0x18]
movaps xmm4, xmm6
movss dword [esp + 0x140], xmm6
addss xmm4, dword [ecx + 0x10]
movss dword [esp + 0x64], xmm3
movss dword [esp + 0x6c], xmm7
movss xmm7, dword [ecx + 0x1c]
addss xmm7, dword [ecx + 0x24]
movss xmm1, dword [esp + 0x6c]
movss dword [esp + 0x18], xmm0
movss dword [esp + 0x144], xmm0
movss dword [esp + 0x148], xmm4
subss xmm7, xmm3
movss dword [esp + 0x14c], xmm5
addss xmm3, dword [ecx + 0x1c]
movss dword [esp + 0x160], xmm2
mov cl, al
movss dword [esp + 0x168], xmm1
movss dword [esp + 0x16c], xmm7
movss dword [esp + 0x164], xmm3
jne 0x10011f15
cmp dword [esp + 0x28], 0
jne 0x10011f15
test al, al
jne 0x10011e0a
subss xmm4, xmm6
xorps xmm0, xmm0
comiss xmm4, xmm0
jbe 0x10011e0a
subss xmm5, dword [esp + 0x18]
comiss xmm5, xmm0
jbe 0x10011e0a
movss xmm0, dword [edi + 0x50]
cmp byte [edx + 0x53], al
je 0x10011dcc
test byte [edi + 0xc], 1
je 0x10011db8
cmp dword [edi + 0x3bc], 0
je 0x10011dcc
movss xmm0, dword [edx + 0x3994]
addss xmm0, xmm0
addss xmm0, dword [edx + 0x3dcc]
mov edx, dword [esp + 0x1c]
subss xmm3, xmm0
subss xmm2, dword [edi + 0x4c]
movss xmm0, dword [edx + 4]
comiss xmm3, xmm0
ja 0x10011dea
movaps xmm3, xmm7
minss xmm3, xmm0
movss xmm0, dword [edx]
comiss xmm2, xmm0
ja 0x10011dfa
movaps xmm2, xmm1
minss xmm2, xmm0
movss dword [edx], xmm2
xor cl, cl
movss dword [edx + 4], xmm3
jmp 0x10011f19
mov cl, al
test al, al
je 0x10011f15
cmp dword [esi + 0x393c], 0
jle 0x10011f15
mov esi, dword [edi + 0x30]
movsx eax, word [esi + 0x6e]
mov esi, dword [esp + 0x20]
test eax, eax
js 0x10011e4e
cmp eax, dword [edx + 0x393c]
jge 0x10011e4a
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x3944]
lea eax, [eax + ecx*8]
mov cl, byte [esp + 0xa]
jmp 0x10011e54
mov cl, byte [esp + 0xa]
lea eax, [edx + 0x4b00]
movss xmm0, dword [esp + 0x40]
addss xmm0, dword [eax + 0x10]
movss xmm1, dword [esp + 0x64]
addss xmm1, dword [eax + 0x14]
movss xmm2, dword [edi + 0x50]
movss dword [esp + 0x160], xmm0
movss dword [esp + 0x164], xmm1
movss xmm4, dword [eax + 0x18]
movss xmm3, dword [eax + 0x1c]
addss xmm4, dword [eax + 0x10]
addss xmm3, dword [eax + 0x14]
subss xmm4, dword [esp + 0x40]
subss xmm3, dword [esp + 0x64]
movss dword [esp + 0x168], xmm4
movss dword [esp + 0x16c], xmm3
cmp byte [edx + 0x53], 0
je 0x10011edc
test byte [edi + 0xc], 1
je 0x10011ec8
cmp dword [edi + 0x3bc], 0
je 0x10011edc
movss xmm2, dword [edx + 0x3994]
addss xmm2, xmm2
addss xmm2, dword [edx + 0x3dcc]
mov edx, dword [esp + 0x1c]
subss xmm1, xmm2
subss xmm0, dword [edi + 0x4c]
movss xmm2, dword [edx + 4]
comiss xmm1, xmm2
ja 0x10011efa
movaps xmm1, xmm3
minss xmm1, xmm2
movss xmm2, dword [edx]
comiss xmm0, xmm2
ja 0x10011f0a
movaps xmm0, xmm4
minss xmm0, xmm2
movss dword [edx], xmm0
movss dword [edx + 4], xmm1
jmp 0x10011f19
mov edx, dword [esp + 0x1c]
cvttss2si eax, dword [edx]
test cl, cl
mov cl, byte [edi + 0x39d]
movd xmm1, eax
cvttss2si eax, dword [edx + 4]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edx], xmm1
movss dword [edx + 4], xmm0
jne 0x10011f7e
test cl, 1
jne 0x10011f7e
mov edx, dword [esp + 0x28]
test edx, edx
je 0x10011f5a
movss xmm0, dword [esi + 0x3980]
jmp 0x10011f85
mov eax, dword [esp + 0x14]
and eax, 0xc000000
cmp eax, 0x4000000
jne 0x10011f74
movss xmm0, dword [esi + 0x3988]
jmp 0x10011f85
movss xmm0, dword [esi + 0x3964]
jmp 0x10011f85
mov edx, dword [esp + 0x28]
xorps xmm0, xmm0
cmp byte [esp + 0x13], 0
movss dword [edi + 0x7c], xmm0
mov byte [esp + 0x28], 0
je 0x10011fd0
mov eax, dword [esp + 0x14]
test eax, 0x1000
jne 0x10011fd0
test eax, 0x4000000
je 0x10011faf
mov byte [esp + 0x28], 1
jmp 0x10011fd0
test cl, 1
jne 0x10011fb8
test edx, edx
jne 0x10011fd0
test eax, 0x2000000
mov edx, 1
mov eax, dword [esp + 0x28]
movzx eax, al
cmove eax, edx
mov dword [esp + 0x28], eax
cmp dword [edi + 0x3bc], 0
jne 0x10011fe2
test cl, 1
je 0x10011fe2
xor al, al
jmp 0x10011fe4
mov al, 1
movss xmm2, dword [esi + 0x3dcc]
xorps xmm0, xmm0
movaps xmmword [esp + 0x170], xmm0
movaps xmm1, xmm2
movss xmm0, dword [edi + 0x7c]
xor ecx, ecx
addss xmm0, dword [0x1015ca30]
mulss xmm2, dword [0x1015c9c0]
cmp byte [esi + 0x52], cl
mulss xmm1, dword [0x1015ca40]
setne cl
mov byte [esp + 0x40], al
addss xmm2, xmm0
mov dword [esp + 0x13c], 0xffffffff
inc ecx
mov dword [esp + 0x54], ecx
maxss xmm1, xmm2
cvttss2si esi, xmm1
test al, al
je 0x10012084
mov eax, dword [esp + 0x48]
cmp byte [eax], 0
jne 0x10012084
lea eax, [esp + 0x160]
push eax
lea eax, [esp + 0x174]
push eax
push ecx
lea eax, [esp + 0x148]
mov ecx, edi
push eax
lea edx, [esp + 0x168]
call fcn.1000e540
add esp, 0x10
test al, al
je 0x10012084
mov byte [esp + 0x3c], 1
mov byte [esp + 0xb], 1
cmp byte [edi + 0xde], 0
mov al, byte [esp + 0x13c]
mov byte [edi + 0xea], al
je 0x1001217e
mov edx, dword [edi + 0x30]
cmp byte [edx + 0x45], 0
jne 0x100120b6
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [edx + 8], eax
mov dword [edx + 0xc], ecx
mov edx, dword [edi + 0x30]
cmp byte [edx + 0x46], 0
jne 0x100120cb
mov eax, dword [edi + 0x4c]
mov ecx, dword [edi + 0x50]
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
mov eax, dword [edi + 0x30]
movss xmm0, dword [eax + 0xc]
addss xmm0, dword [eax + 0xe8]
movss xmm2, dword [eax + 0xe4]
movaps xmm1, xmm2
addss xmm1, dword [eax + 8]
movss dword [eax + 0x1c], xmm0
movss xmm0, dword [eax + 0x10]
subss xmm0, xmm2
xorps xmm2, xmm2
movss dword [eax + 0x18], xmm1
xorps xmm1, xmm1
addss xmm0, dword [eax + 0xec]
maxss xmm2, xmm0
movss xmm0, dword [eax + 0x14]
subss xmm0, dword [eax + 0xe8]
addss xmm0, dword [eax + 0xf0]
movss dword [eax + 0x20], xmm2
maxss xmm1, xmm0
movss dword [eax + 0x24], xmm1
mov eax, dword [edi + 0x30]
movss xmm0, dword [eax + 0xc]
movss xmm1, dword [eax + 8]
movss dword [esp + 0x140], xmm1
addss xmm1, dword [eax + 0x10]
movss dword [esp + 0x144], xmm0
addss xmm0, dword [eax + 0x14]
movss dword [esp + 0x148], xmm1
movss dword [esp + 0x14c], xmm0
movaps xmm0, xmmword [esp + 0x140]
movaps xmmword [esp + 0x140], xmm0
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [edi + 0x3c], eax
mov eax, dword [esp + 0x48]
mov dword [edi + 0x38], ecx
cmp byte [eax], 0
jne 0x10012338
cmp dword [esp + 0x74], 0
lea eax, [esp + 0x2c]
movss xmm6, dword [edi + 0x90]
movss xmm2, dword [edi + 0x210]
movaps xmm0, xmm6
movss xmm3, dword [edi + 0x214]
addss xmm0, dword [edi + 0x88]
subss xmm2, dword [edi + 0x208]
subss xmm3, dword [edi + 0x20c]
movss xmm4, dword [edi + 0x58]
movss xmm5, dword [edi + 0x54]
subss xmm4, xmm0
addss xmm2, dword [esp + 0x44]
addss xmm3, dword [esp + 0x2c]
jne 0x10012204
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
jmp 0x1001222c
movss xmm0, dword [edi + 0x74]
movss xmm1, dword [edi + 0x78]
addss xmm0, xmm0
addss xmm1, xmm1
addss xmm0, dword [edi + 0x5c]
addss xmm1, dword [edi + 0x60]
movss dword [esp + 0x2c], xmm0
movss dword [esp + 0x30], xmm1
cmp byte [esp + 0xb], 0
movss xmm7, dword [eax]
movss xmm1, dword [eax + 4]
jne 0x1001223f
movaps xmm5, xmm2
cmp byte [esp + 0x3c], 0
jne 0x10012249
movaps xmm4, xmm3
mov edx, dword [esp + 0x14]
test edx, 0x4000
jne 0x10012263
comiss xmm1, xmm4
jbe 0x1001225f
test dl, 8
je 0x10012263
xor cl, cl
jmp 0x10012265
mov cl, 1
mov eax, dword [esp + 0x20]
add eax, 0x39c8
mov byte [edi + 0xdd], cl
test edx, 0x8000
jne 0x100122c0
mov dword [esp + 0x18], eax
test cl, cl
je 0x1001228a
movss xmm0, dword [eax]
jmp 0x1001228d
xorps xmm0, xmm0
subss xmm5, xmm0
comiss xmm7, xmm5
jbe 0x100122a4
mov eax, edx
and eax, 0x808
cmp eax, 0x800
je 0x100122bc
mov eax, dword [esp + 0xc]
xorps xmm1, xmm1
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x18]
mov byte [edi + 0xdc], 0
jmp 0x100122fd
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x14]
mov byte [edi + 0xdc], 1
test cl, cl
jne 0x100122f9
comiss xmm1, xmm4
jbe 0x100122e5
test dl, 8
jne 0x100122e5
mov cl, 1
jmp 0x100122e7
xor cl, cl
mov edx, dword [esp + 0xc]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x14]
mov byte [edi + 0xdd], cl
movss xmm1, dword [eax]
test cl, cl
je 0x10012307
movss xmm0, dword [eax]
jmp 0x1001230a
xorps xmm0, xmm0
movss dword [edi + 0xd4], xmm0
addss xmm6, xmm1
addss xmm0, dword [edi + 0x8c]
movss dword [edi + 0xd8], xmm1
movss dword [edi + 0x90], xmm6
movss dword [edi + 0x8c], xmm0
jmp 0x1001233c
mov edx, dword [esp + 0x14]
mov eax, edx
and eax, 0x5000000
mov dword [esp + 0x3c], eax
cmp eax, 0x1000000
jne 0x10012363
cmp dword [esp + 0x60], 0x3000000
je 0x10012363
mov eax, dword [esp + 0x38]
add eax, 0x248
jmp 0x1001236a
lea eax, [esp + 0x140]
movups xmm4, xmmword [eax]
mov eax, dword [esp + 0x1c]
movss xmm1, dword [edi + 0x48]
mov ecx, dword [edi]
movaps xmm7, xmm1
addss xmm7, dword [edi + 0x50]
movss xmm5, dword [eax]
mov eax, dword [edi + 0xc]
movaps xmm6, xmm5
movaps xmmword [esp + 0x90], xmm4
movss dword [esp + 0x2c], xmm1
addss xmm6, dword [edi + 0x4c]
and eax, 1
je 0x100123a7
xorps xmm3, xmm3
jmp 0x100123e3
movss xmm0, dword [ecx + 0x3dd0]
mulss xmm0, dword [edi + 0x298]
mov ecx, dword [edi + 0x338]
mulss xmm0, dword [edi + 0x29c]
test ecx, ecx
je 0x100123d1
mulss xmm0, dword [ecx + 0x298]
mov ecx, dword [edi]
movss xmm3, dword [ecx + 0x3994]
addss xmm3, xmm3
addss xmm3, xmm0
mov ecx, dword [esp + 0x1c]
addss xmm1, xmm3
movaps xmm2, xmm5
movss dword [esp + 0xc0], xmm5
addss xmm2, dword [edi + 0x54]
movss xmm0, dword [ecx + 4]
movss dword [esp + 0xc4], xmm0
movss dword [esp + 0xcc], xmm1
movss dword [esp + 0xc8], xmm2
movss dword [edi + 0x1f8], xmm5
movss xmm0, dword [esp + 0x2c]
movss dword [edi + 0x1fc], xmm0
movss dword [edi + 0x200], xmm6
movss dword [edi + 0x204], xmm7
test byte [edi + 0x39d], 1
je 0x100124a0
mov ecx, dword [edi]
test eax, eax
je 0x10012456
xorps xmm0, xmm0
jmp 0x10012490
movss xmm1, dword [ecx + 0x3dd0]
mulss xmm1, dword [edi + 0x298]
mov eax, dword [edi + 0x338]
mulss xmm1, dword [edi + 0x29c]
test eax, eax
je 0x10012480
mulss xmm1, dword [eax + 0x298]
movss xmm0, dword [ecx + 0x3994]
addss xmm0, xmm0
addss xmm0, xmm1
addss xmm0, dword [edi + 0x1fc]
movss dword [edi + 0x1fc], xmm0
movss xmm0, dword [edi + 0x1fc]
movaps xmm2, xmm4
movss xmm1, dword [edi + 0x1f8]
mov eax, dword [esp + 0x1c]
maxss xmm1, xmm4
shufps xmm2, xmm4, 0x55
maxss xmm0, xmm2
mov ecx, dword [esp + 0x20]
movups xmmword [esp + 0xb0], xmm2
movss dword [edi + 0x1f8], xmm1
movaps xmm2, xmm4
shufps xmm2, xmm4, 0xff
movss dword [edi + 0x1fc], xmm0
movaps xmm0, xmm4
movss xmm1, dword [edi + 0x200]
shufps xmm0, xmm4, 0xaa
minss xmm1, xmm0
movups xmmword [esp + 0xa0], xmm0
movss xmm0, dword [edi + 0x204]
minss xmm0, xmm2
movss dword [edi + 0x200], xmm1
movups xmmword [esp + 0x80], xmm2
movss dword [edi + 0x204], xmm0
movss xmm1, dword [eax]
mov eax, edx
movss xmm2, dword [edi + 0x48]
movaps xmm3, xmm1
addss xmm1, dword [edi + 0x4c]
addss xmm3, dword [edi + 0x84]
movaps xmm5, xmm2
and eax, 0x401
addss xmm2, dword [edi + 0x50]
addss xmm5, dword [edi + 0x88]
subss xmm1, dword [edi + 0x8c]
movss dword [edi + 0x208], xmm3
subss xmm2, dword [edi + 0x90]
movss dword [edi + 0x20c], xmm5
movss dword [edi + 0x210], xmm1
movss dword [edi + 0x214], xmm2
cmp eax, 1
jne 0x10012594
mov eax, dword [esp + 0x24]
movss xmm0, dword [eax]
jmp 0x1001259c
movss xmm0, dword [ecx + 0x399c]
movss xmm6, dword [0x1015c9e4]
movss dword [esp + 0xc], xmm0
addss xmm3, xmm6
movss xmm0, dword [edi + 0x74]
mulss xmm0, xmm6
cvttss2si eax, xmm0
movd xmm7, eax
mov eax, dword [esp + 0x24]
cvtdq2ps xmm7, xmm7
maxss xmm7, dword [eax]
addss xmm3, xmm7
comiss xmm3, dword [0x1015c950]
cvttss2si eax, xmm3
mov dword [esp + 0x2c], eax
jae 0x100125fa
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jnp 0x100125f6
cvttss2si eax, xmm3
dec eax
jmp 0x100125fa
mov eax, dword [esp + 0x2c]
addss xmm5, xmm6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm5, dword [esp + 0xc]
movss dword [edi + 0x218], xmm0
comiss xmm5, dword [0x1015c950]
cvttss2si eax, xmm5
mov dword [esp + 0x2c], eax
jae 0x1001263f
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jnp 0x1001263b
cvttss2si eax, xmm5
dec eax
jmp 0x1001263f
mov eax, dword [esp + 0x2c]
addss xmm1, xmm6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm7
xorps xmm7, xmm7
movss dword [edi + 0x21c], xmm0
comiss xmm1, xmm7
cvttss2si eax, xmm1
mov dword [esp + 0x2c], eax
jae 0x10012681
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1001267d
cvttss2si eax, xmm1
dec eax
jmp 0x10012681
mov eax, dword [esp + 0x2c]
movd xmm0, eax
addss xmm2, xmm6
mov eax, dword [esp + 0x24]
cvtdq2ps xmm0, xmm0
subss xmm2, dword [eax]
movss dword [edi + 0x220], xmm0
comiss xmm2, xmm7
cvttss2si eax, xmm2
mov dword [esp + 0x2c], eax
jae 0x100126c4
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jnp 0x100126c0
cvttss2si eax, xmm2
dec eax
jmp 0x100126c4
mov eax, dword [esp + 0x2c]
movups xmm2, xmmword [esp + 0xb0]
movups xmm6, xmmword [esp + 0x80]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x224], xmm0
movss xmm0, dword [edi + 0x21c]
comiss xmm2, xmm0
jbe 0x100126f5
movaps xmm1, xmm2
jmp 0x100126fc
movaps xmm1, xmm6
minss xmm1, xmm0
movss xmm3, dword [edi + 0x218]
comiss xmm4, xmm3
movups xmm5, xmmword [esp + 0xa0]
jbe 0x10012716
movaps xmm0, xmm4
jmp 0x1001271d
movaps xmm0, xmm5
minss xmm0, xmm3
movss dword [edi + 0x218], xmm0
movss dword [edi + 0x21c], xmm1
movss xmm1, dword [edi + 0x224]
comiss xmm2, xmm1
jbe 0x1001273f
movaps xmm0, xmm2
jmp 0x10012746
movaps xmm0, xmm6
minss xmm0, xmm1
movss xmm1, dword [edi + 0x220]
comiss xmm4, xmm1
ja 0x1001275a
movaps xmm4, xmm5
minss xmm4, xmm1
movss dword [edi + 0x220], xmm4
movss dword [edi + 0x224], xmm0
movss xmm0, dword [edi + 0x4c]
comiss xmm0, xmm7
jbe 0x10012786
test edx, 0x2000040
jne 0x10012786
mulss xmm0, dword [0x1015c9f0]
jmp 0x10012796
movss xmm0, dword [ecx + 0x3dcc]
mulss xmm0, dword [0x1015cb2c]
cvttss2si eax, xmm0
mov edx, edi
lea ecx, [esp + 0x78]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x27c], xmm0
movss xmm1, dword [edi + 0x74]
movss xmm0, dword [edi + 0x210]
addss xmm1, xmm1
subss xmm0, dword [edi + 0x208]
addss xmm1, dword [edi + 0x5c]
subss xmm1, xmm0
xorps xmm0, xmm0
maxss xmm0, xmm1
movss xmm1, dword [edi + 0x78]
addss xmm1, xmm1
movss dword [edi + 0xb4], xmm0
movss xmm0, dword [edi + 0x214]
subss xmm0, dword [edi + 0x20c]
addss xmm1, dword [edi + 0x60]
subss xmm1, xmm0
xorps xmm0, xmm0
maxss xmm0, xmm1
movss dword [edi + 0xb8], xmm0
call fcn.10017e30
movss xmm0, dword [eax]
movss xmm1, dword [eax + 4]
mov eax, dword [esp + 0x20]
movss dword [edi + 0xac], xmm0
movss dword [edi + 0xb0], xmm1
mov dword [edi + 0xbc], 0x7f7fffff
mov dword [edi + 0xc0], 0x7f7fffff
mov dword [edi + 0x98], 0
mov dword [edi + 0x94], 0
mov eax, dword [eax + 0x3dc8]
mov ecx, dword [edi + 0x2a4]
mov dword [esp + 0x44], ecx
add ecx, 0x48
mov dword [esp + 0xc], ecx
mov eax, dword [eax + 0x30]
mov edx, dword [ecx]
mov eax, dword [eax + 4]
mov dword [esp + 0x18], eax
mov eax, dword [ecx + 4]
cmp edx, eax
jne 0x100128b0
inc edx
mov dword [esp + 0x2c], edx
test eax, eax
je 0x1001289c
cdq
sub eax, edx
mov edx, dword [esp + 0x2c]
sar eax, 1
add eax, dword [ecx + 4]
jmp 0x100128a1
mov eax, 8
cmp eax, edx
cmovg edx, eax
push edx
call fcn.100359f0
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx]
mov eax, dword [ecx + 8]
mov ecx, dword [esp + 0x18]
mov dword [eax + edx*4], ecx
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x18]
inc dword [ecx]
mov ecx, dword [esp + 0x44]
mov dword [ecx + 0x70], eax
call fcn.1006abd0
mov ecx, dword [0x10167324]
movaps xmm0, xmmword [esp + 0x90]
comiss xmm0, dword [esp + 0xa0]
mov eax, dword [ecx + 0x4064]
mov byte [eax + 0xe1], 1
mov eax, dword [ecx + 0x4064]
mov dword [esp + 0x6c], eax
movaps xmmword [esp + 0x140], xmm0
mov eax, dword [eax + 0x2a4]
mov dword [esp + 0x64], eax
jb 0x1001292c
movss dword [esp + 0x148], xmm0
movaps xmm0, xmmword [esp + 0x140]
movaps xmmword [esp + 0x90], xmm0
movups xmm0, xmmword [esp + 0xb0]
comiss xmm0, dword [esp + 0x80]
jb 0x10012957
movss dword [esp + 0x14c], xmm0
movaps xmm0, xmmword [esp + 0x140]
movaps xmmword [esp + 0x90], xmm0
mov edx, dword [eax + 0x3c]
lea ecx, [eax + 0x3c]
mov eax, dword [ecx + 4]
mov dword [esp + 0x44], ecx
cmp edx, eax
jne 0x10012993
inc edx
mov dword [esp + 0x2c], edx
test eax, eax
je 0x1001297f
cdq
sub eax, edx
mov edx, dword [esp + 0x2c]
sar eax, 1
add eax, dword [ecx + 4]
jmp 0x10012984
mov eax, 8
cmp eax, edx
cmovg edx, eax
push edx
call fcn.10035f70
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx]
movaps xmm0, xmmword [esp + 0x90]
shl eax, 4
add eax, dword [ecx + 8]
movups xmmword [eax], xmm0
inc dword [ecx]
mov ecx, dword [esp + 0x64]
movups xmmword [ecx + 0x60], xmm0
call fcn.1006ab30
mov edx, dword [esp + 0x6c]
mov eax, dword [edx + 0x2a4]
mov ecx, dword [eax + 0x3c]
mov eax, dword [eax + 0x44]
add ecx, ecx
movss xmm0, dword [eax + ecx*8 - 0xc]
movss xmm1, dword [eax + ecx*8 - 8]
movss xmm2, dword [eax + ecx*8 - 4]
mov eax, dword [eax + ecx*8 - 0x10]
mov dword [edx + 0x248], eax
movss dword [edx + 0x24c], xmm0
movss dword [edx + 0x250], xmm1
movss dword [edx + 0x254], xmm2
mov al, byte [edi + 0x39d]
and al, 5
cmp al, 1
je 0x10012b63
cmp dword [esp + 0x3c], 0x1000000
mov byte [esp + 0xa], 0
jne 0x10012ad3
cmp dword [esp + 0x60], 0x3000000
je 0x10012ad3
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x1b8]
cmp ecx, 2
jl 0x10012a97
mov eax, dword [eax + 0x1c0]
mov eax, dword [eax + ecx*4 - 8]
test eax, eax
je 0x10012a97
movss xmm5, dword [eax + 0x48]
mov ecx, dword [esp + 0x1c]
movaps xmm0, xmm5
addss xmm0, dword [eax + 0x50]
movss xmm7, dword [eax + 0x44]
movss xmm2, dword [edi + 0x48]
movaps xmm3, xmm7
movss xmm6, dword [ecx]
addss xmm3, dword [eax + 0x4c]
comiss xmm0, dword [edi + 0x48]
addss xmm2, dword [edi + 0x50]
movaps xmm4, xmm6
addss xmm4, dword [edi + 0x4c]
jbe 0x10012a97
comiss xmm2, xmm5
jbe 0x10012a97
comiss xmm3, xmm6
jbe 0x10012a97
comiss xmm4, xmm7
mov byte [esp + 0xb], 1
ja 0x10012a9c
mov byte [esp + 0xb], 0
mov edx, dword [edi + 0x2a4]
mov eax, dword [edx]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 8]
cmp dword [eax + ecx*8 - 0xc], 0
jne 0x10012ad3
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 0x2a4]
cmp dword [eax + 0x18], 0
je 0x10012ad3
cmp byte [esp + 0xb], 0
jne 0x10012ad3
mov byte [esp + 0xa], 1
mov dword [edi + 0x2a4], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 0x4ce8]
test ecx, ecx
jne 0x10012ae7
mov ecx, dword [eax + 0x4b34]
cmp byte [esp + 0x28], 0
jne 0x10012b19
test ecx, ecx
je 0x10012b12
mov eax, dword [edi + 0x34c]
cmp eax, dword [ecx + 0x34c]
je 0x10012b19
mov eax, dword [edi + 0x3b8]
test eax, eax
je 0x10012b12
cmp eax, dword [ecx + 0x3b8]
je 0x10012b19
mov byte [esp + 0xc], 0
jmp 0x10012b1e
mov byte [esp + 0xc], 1
movd xmm0, esi
lea eax, [esp + 0x170]
push ecx
cvtdq2ps xmm0, xmm0
lea edx, [esp + 0xc4]
mov ecx, edi
movss dword [esp], xmm0
push eax
push dword [esp + 0x5c]
push dword [esp + 0x4c]
push dword [esp + 0x1c]
call fcn.1000f5c0
add esp, 0x14
cmp byte [esp + 0xa], 0
je 0x10012b63
lea eax, [edi + 0x2a8]
mov dword [edi + 0x2a4], eax
mov ecx, dword [esp + 0x14]
xorps xmm2, xmm2
movss xmm4, dword [edi + 0x6c]
mov edx, ecx
shr edx, 3
not dl
and dl, 1
ucomiss xmm4, xmm2
lahf
test ah, 0x44
jnp 0x10012b87
movaps xmm7, xmm4
jmp 0x10012bc9
movss xmm0, dword [edi + 0x74]
mov eax, ecx
movss xmm1, dword [edi + 0x4c]
addss xmm0, xmm0
and eax, 0x808
subss xmm1, xmm0
movss xmm0, dword [edi + 0x8c]
addss xmm0, dword [edi + 0x84]
subss xmm1, xmm0
cmp eax, 0x800
jne 0x10012bc2
movss xmm7, dword [edi + 0x5c]
jmp 0x10012bc5
xorps xmm7, xmm7
maxss xmm7, xmm1
movss xmm5, dword [edi + 0x70]
ucomiss xmm5, xmm2
lahf
test ah, 0x44
jnp 0x10012bdc
movaps xmm6, xmm5
jmp 0x10012c14
movss xmm0, dword [edi + 0x78]
movss xmm1, dword [edi + 0x50]
addss xmm0, xmm0
subss xmm1, xmm0
movss xmm0, dword [edi + 0x90]
addss xmm0, dword [edi + 0x88]
subss xmm1, xmm0
test dl, dl
je 0x10012c0d
movss xmm6, dword [edi + 0x60]
jmp 0x10012c10
xorps xmm6, xmm6
maxss xmm6, xmm1
movss xmm1, dword [edi + 0x74]
movss xmm2, dword [edi + 0xac]
movss xmm0, dword [edi + 0x208]
mov eax, dword [esp + 0x24]
subss xmm0, xmm2
movss dword [esp + 0x54], xmm1
movss dword [esp + 0x18], xmm2
movss xmm3, dword [eax]
maxss xmm1, xmm3
addss xmm1, xmm0
cvttss2si eax, xmm1
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [edi + 0x228], xmm2
addss xmm2, xmm7
movss xmm0, dword [edi + 0xb0]
movss xmm1, dword [edi + 0x78]
movss dword [esp + 0xc], xmm0
movss xmm0, dword [edi + 0x20c]
subss xmm0, dword [esp + 0xc]
movss dword [esp + 0x2c], xmm1
maxss xmm1, xmm3
addss xmm1, xmm0
cvttss2si eax, xmm1
movss xmm1, dword [esp + 0x2c]
movd xmm0, eax
mov eax, dword [esp + 0x1c]
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x22c], xmm0
addss xmm6, xmm0
movss dword [edi + 0x230], xmm2
movss xmm2, dword [esp + 0x54]
movss dword [edi + 0x234], xmm6
movups xmm0, xmmword [edi + 0x228]
movups xmmword [edi + 0x238], xmm0
movss xmm0, dword [eax]
movss xmm6, dword [edi + 0x84]
movaps xmm3, xmm0
subss xmm3, dword [esp + 0x18]
movss dword [esp + 0x44], xmm0
addss xmm3, xmm2
addss xmm3, xmm6
movss dword [edi + 0x258], xmm3
movss xmm0, dword [edi + 0x48]
movss xmm7, dword [edi + 0x88]
movss dword [esp + 0x64], xmm0
subss xmm0, dword [esp + 0xc]
addss xmm0, xmm1
addss xmm0, xmm7
movss dword [esp + 0x54], xmm0
movss dword [edi + 0x25c], xmm0
xorps xmm0, xmm0
ucomiss xmm4, xmm0
lahf
test ah, 0x44
jp 0x10012d5c
movss xmm4, dword [edi + 0x4c]
movaps xmm0, xmm2
addss xmm0, xmm2
subss xmm4, xmm0
movaps xmm0, xmm6
addss xmm0, dword [edi + 0x8c]
subss xmm4, xmm0
xorps xmm0, xmm0
ucomiss xmm5, xmm0
addss xmm4, xmm3
lahf
movss dword [edi + 0x260], xmm4
test ah, 0x44
jp 0x10012d90
movss xmm5, dword [edi + 0x50]
movaps xmm0, xmm1
addss xmm0, xmm1
subss xmm5, xmm0
movaps xmm0, xmm7
addss xmm0, dword [edi + 0x90]
subss xmm5, xmm0
movss xmm4, dword [esp + 0x18]
lea ecx, [edi + 0x194]
addss xmm5, dword [esp + 0x54]
movss xmm3, dword [esp + 0x44]
movaps xmm0, xmm6
addss xmm0, xmm2
mov esi, dword [esp + 0x20]
cvtps2pd xmm3, xmm3
movss dword [edi + 0x264], xmm5
subss xmm0, xmm4
movss dword [edi + 0x16c], xmm0
cvtps2pd xmm0, xmm2
mov dword [edi + 0x174], 0
mov dword [edi + 0x170], 0
movss xmm2, dword [esp + 0x64]
addsd xmm3, xmm0
cvtps2pd xmm0, xmm4
cvtps2pd xmm2, xmm2
subsd xmm3, xmm0
cvtps2pd xmm0, xmm6
addsd xmm3, xmm0
cvtps2pd xmm0, xmm1
addsd xmm3, qword [0x1015c958]
addsd xmm2, xmm0
movss xmm0, dword [esp + 0xc]
cvtps2pd xmm0, xmm0
subsd xmm2, xmm0
cvtps2pd xmm0, xmm7
addsd xmm2, xmm0
cvtpd2ps xmm0, xmm3
cvtpd2ps xmm1, xmm2
movss dword [edi + 0x138], xmm0
movss dword [edi + 0x13c], xmm1
movss xmm0, dword [edi + 0x138]
cvtps2pd xmm0, xmm0
subsd xmm3, xmm0
movss xmm0, dword [edi + 0x13c]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm3
subsd xmm2, xmm0
movss dword [edi + 0x178], xmm1
cvtpd2ps xmm0, xmm2
movss dword [edi + 0x17c], xmm0
movss xmm1, dword [edi + 0x138]
movss xmm0, dword [edi + 0x13c]
movss dword [edi + 0x128], xmm1
movss dword [edi + 0x12c], xmm0
movss dword [edi + 0x130], xmm1
movss dword [edi + 0x134], xmm0
movss dword [edi + 0x140], xmm1
movss dword [edi + 0x144], xmm0
movss dword [edi + 0x148], xmm1
xorps xmm1, xmm1
movss dword [edi + 0x14c], xmm0
mov dword [edi + 0x158], 0
mov dword [edi + 0x15c], 0
mov dword [edi + 0x150], 0
mov dword [edi + 0x154], 0
mov dword [edi + 0x164], 0
mov dword [edi + 0x160], 0
mov word [edi + 0x168], 0
mov dword [edi + 0x180], 0
mov ax, word [edi + 0x186]
mov word [edi + 0x184], ax
mov dword [edi + 0x186], 0x10000
movss xmm0, dword [edi + 0xb8]
comiss xmm0, xmm1
seta al
cmp byte [esp + 0x13], 0
mov byte [edi + 0x18a], al
mov byte [edi + 0x18b], 0
movss xmm1, dword [esi + 0x39a0]
je 0x10012f59
xorps xmm0, xmm0
movq qword [ecx + 0x12], xmm0
cvttss2si eax, xmm1
push 1
mov word [ecx + 8], ax
call fcn.1009c620
xorps xmm0, xmm0
movq qword [edi + 0x1a6], xmm0
mov eax, dword [edi + 0x198]
mov dword [edi + 0x194], eax
lea eax, [edi + 0x1b8]
mov dword [edi + 0x198], 0
mov dword [edi + 0x1b0], 0
mov dword [edi + 0x1b4], 0
mov ecx, dword [eax + 4]
test ecx, ecx
jns 0x10012fcc
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 + 0x1b8]
call fcn.100359f0
lea eax, [edi + 0x1b8]
mov dword [eax], 0
lea eax, [edi + 0x280]
mov dword [edi + 0x1c4], eax
mov eax, dword [esp + 0x38]
mov dword [edi + 0x1c8], 0
mov dword [edi + 0x1d0], 1
test eax, eax
je 0x10013002
mov eax, dword [eax + 0x1d0]
jmp 0x10013007
mov eax, 1
mov dword [edi + 0x1d4], eax
mov eax, dword [edi + 0x27c]
mov dword [edi + 0x1d8], eax
lea eax, [edi + 0x1e0]
mov dword [edi + 0x1dc], 0xbf800000
mov ecx, dword [eax + 4]
test ecx, ecx
jns 0x10013052
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 + 0x1e0]
call fcn.100359f0
lea eax, [edi + 0x1e0]
mov dword [eax], 0
lea eax, [edi + 0x1ec]
mov ecx, dword [eax + 4]
test ecx, ecx
jns 0x10013087
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 + 0x1ec]
call fcn.100359f0
lea eax, [edi + 0x1ec]
mov dword [eax], 0
mov al, byte [edi + 0xfc]
test al, al
jle 0x1001309f
dec al
mov byte [edi + 0xfc], al
mov al, byte [edi + 0xfd]
test al, al
jle 0x100130b1
dec al
mov byte [edi + 0xfd], al
cmp byte [esp + 0x28], 0
je 0x100130d5
mov edx, 2
mov ecx, edi
call fcn.10013b80
cmp edi, dword [esi + 0x4b34]
jne 0x100130d5
xor dl, dl
mov ecx, edi
call fcn.1001a710
mov ecx, dword [esp + 0x68]
test ecx, ecx
je 0x10013125
mov ecx, dword [edi + 0x30]
cmp byte [ecx + 0x47], 0
je 0x10013121
mov eax, dword [0x10167324]
mov eax, dword [eax + 0x4ae8]
cmp ecx, dword [eax]
je 0x10013121
test dword [esi + 0x5f3c], 0x100
je 0x10013111
push dword [edi + 4]
push str._viewport__Window__s_closed_by_PlatformRequestClose_n
call fcn.100331f0
add esp, 8
mov ecx, dword [esp + 0x68]
mov byte [ecx], 0
mov byte [esi + 0x4cfc], 0
jmp 0x10013125
mov ecx, dword [esp + 0x68]
test byte [esp + 0x14], 1
jne 0x1001319f
test byte [edi + 0x39d], 1
jne 0x1001319f
mov eax, dword [esp + 0x24]
lea edx, [esp + 0x140]
movss xmm0, dword [esp + 0xc0]
push ecx
push dword [esp + 0x74]
addss xmm0, dword [eax]
mov ecx, edi
movss dword [esp + 0x148], xmm0
movss xmm0, dword [esp + 0xcc]
movss dword [esp + 0x14c], xmm0
movss xmm0, dword [esp + 0xd0]
subss xmm0, dword [eax]
movss dword [esp + 0x150], xmm0
movss xmm0, dword [esp + 0xd4]
movss dword [esp + 0x154], xmm0
call fcn.10010020
add esp, 8
xor eax, eax
mov dword [edi + 0x268], eax
test byte [esi + 8], 0x40
je 0x10013208
cmp dword [esi + 0x4070], edi
jne 0x100131cb
mov eax, dword [edi + 0x348]
test dword [eax + 0xc], 0x200000
jne 0x100131cb
mov ecx, edi
call fcn.100287d0
cmp byte [esi + 0x4d14], 0
je 0x10013208
test dword [esp + 0x14], 0x200000
jne 0x10013208
mov eax, dword [esi + 0x4070]
test eax, eax
je 0x100131f0
cmp dword [eax + 0x348], edi
je 0x10013208
cmp edi, dword [edi + 0x348]
jne 0x10013208
test dword [edi + 0xc], 0x20000000
jne 0x10013208
mov ecx, edi
call fcn.10028a50
test byte [edi + 0x39d], 1
je 0x10013260
mov ecx, dword [esi + 0x4980]
mov esi, dword [0x10167324]
mov edx, dword [edi + 0x3c4]
mov eax, dword [edi + 0xa0]
mov dword [esi + 0x49a8], eax
mov dword [esi + 0x49ac], ecx
mov dword [esi + 0x49b0], edx
movups xmm0, xmmword [edi + 0x3c8]
movups xmmword [esi + 0x49c4], xmm0
movups xmm0, xmmword [esi + 0x49c4]
movups xmmword [esi + 0x49b4], xmm0
mov esi, dword [esp + 0x20]
jmp 0x10013366
mov eax, dword [0x10167324]
movss xmm7, dword [esp + 0xc0]
movaps xmm0, xmm7
movss xmm1, dword [eax + 0x39b8]
movss xmm2, dword [eax + 0xe08]
subss xmm0, xmm1
comiss xmm2, xmm0
jb 0x10013319
movss xmm6, dword [esp + 0xc4]
movss xmm3, dword [eax + 0x39bc]
movaps xmm0, xmm6
movss xmm5, dword [eax + 0xe0c]
subss xmm0, xmm3
comiss xmm5, xmm0
jb 0x10013319
movss xmm4, dword [esp + 0xc8]
movaps xmm0, xmm4
addss xmm0, xmm1
comiss xmm0, xmm2
jbe 0x10013319
movss xmm2, dword [esp + 0xcc]
movaps xmm0, xmm2
addss xmm0, xmm3
comiss xmm0, xmm5
jbe 0x10013319
mov eax, dword [eax + 0x4af4]
movss xmm3, dword [eax + 0xc]
movss xmm5, dword [eax + 8]
movaps xmm0, xmm3
addss xmm0, dword [eax + 0x14]
movaps xmm1, xmm5
addss xmm1, dword [eax + 0x10]
comiss xmm0, xmm6
jbe 0x10013319
comiss xmm2, xmm3
jbe 0x10013319
comiss xmm1, xmm7
jbe 0x10013319
comiss xmm4, xmm5
mov dword [esp + 0xc], 1
ja 0x10013321
mov dword [esp + 0xc], 0
mov edx, dword [0x10167324]
mov eax, dword [edi + 0xa0]
mov ecx, dword [esi + 0x4980]
mov dword [edx + 0x49a8], eax
mov eax, dword [esp + 0xc]
mov dword [edx + 0x49ac], ecx
mov dword [edx + 0x49b0], eax
movups xmm0, xmmword [esp + 0xc0]
movups xmmword [edx + 0x49c4], xmm0
movups xmm0, xmmword [edx + 0x49c4]
movups xmmword [edx + 0x49b4], xmm0
mov eax, dword [esi + 0x4984]
test eax, eax
je 0x10013460
cmp dword [edi + 8], eax
je 0x10013385
cmp dword [edi + 0xa0], eax
jne 0x10013460
call fcn.10033fb0
jmp 0x10013460
mov ecx, dword [edi + 0x30]
mov edx, dword [0x10167324]
test ecx, ecx
je 0x100133a5
mov eax, dword [edx + 0x3fe0]
mov dword [ecx + 0x50], eax
cmp dword [edx + 0x4af0], ecx
je 0x100133e2
test ecx, ecx
je 0x100133d2
mov eax, dword [ecx + 0x28]
mov dword [edx + 0x4aec], eax
mov eax, dword [edx + 0x3920]
mov dword [edx + 0x4af0], ecx
test eax, eax
je 0x100133e2
push ecx
call eax
add esp, 4
jmp 0x100133e2
mov dword [edx + 0x4aec], 0x3f800000
mov dword [edx + 0x4af0], ecx
mov edx, dword [0x10167324]
mov dword [edx + 0x4064], edi
mov ecx, dword [edi + 0x1cc]
cmp ecx, 0xffffffff
je 0x10013404
shl ecx, 9
add ecx, dword [edx + 0x4dd0]
jmp 0x10013406
xor ecx, ecx
mov dword [edx + 0x4db4], ecx
mov eax, dword [edi]
movss xmm0, dword [eax + 0x3dd0]
mulss xmm0, dword [edi + 0x298]
mov eax, dword [edi + 0x338]
mulss xmm0, dword [edi + 0x29c]
test eax, eax
je 0x10013438
mulss xmm0, dword [eax + 0x298]
movss dword [edx + 0x3de0], xmm0
movss dword [edx + 0x3dcc], xmm0
test ecx, ecx
jne 0x10013458
cmp dword [edi + 0x1c8], ecx
jne 0x10013458
mov al, 1
jmp 0x1001345a
xor al, al
mov byte [edi + 0x188], al
mov ecx, dword [esp + 0x14]
test ecx, 0x20000000
jne 0x1001360a
mov ecx, dword [0x10167324]
mov eax, dword [ecx + 0x4064]
mov byte [eax + 0xe1], 1
mov eax, dword [ecx + 0x4064]
movss xmm1, dword [edi + 0x218]
movss xmm0, dword [edi + 0x21c]
movss xmm2, dword [edi + 0x220]
movss xmm3, dword [edi + 0x224]
mov dword [esp + 0x64], eax
mov eax, dword [eax + 0x2a4]
mov dword [esp + 0x44], eax
movss dword [esp + 0xc0], xmm1
movss dword [esp + 0xc4], xmm0
movups xmm4, xmmword [eax + 0x60]
movss dword [esp + 0xc8], xmm2
comiss xmm4, xmm1
movss dword [esp + 0xcc], xmm3
movaps xmmword [esp + 0x80], xmm4
jbe 0x100134f8
movaps xmm1, xmm4
movss dword [esp + 0xc0], xmm1
movss xmm4, dword [esp + 0x84]
comiss xmm4, xmm0
jbe 0x10013512
movaps xmm0, xmm4
movss dword [esp + 0xc4], xmm0
movss xmm4, dword [esp + 0x88]
comiss xmm2, xmm4
jbe 0x1001352c
movaps xmm2, xmm4
movss dword [esp + 0xc8], xmm2
movss xmm4, dword [esp + 0x8c]
comiss xmm3, xmm4
jbe 0x10013546
movaps xmm3, xmm4
movss dword [esp + 0xcc], xmm3
comiss xmm1, xmm2
jb 0x10013554
movss dword [esp + 0xc8], xmm1
comiss xmm0, xmm3
jb 0x10013562
movss dword [esp + 0xcc], xmm0
mov edx, dword [eax + 0x3c]
lea ecx, [eax + 0x3c]
mov eax, dword [ecx + 4]
mov dword [esp + 0x2c], ecx
cmp edx, eax
jne 0x1001359e
inc edx
mov dword [esp + 0x54], edx
test eax, eax
je 0x1001358a
cdq
sub eax, edx
mov edx, dword [esp + 0x54]
sar eax, 1
add eax, dword [ecx + 4]
jmp 0x1001358f
mov eax, 8
cmp eax, edx
cmovg edx, eax
push edx
call fcn.10035f70
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx]
mov edx, dword [ecx + 8]
add eax, eax
movaps xmm0, xmmword [esp + 0xc0]
movups xmmword [edx + eax*8], xmm0
inc dword [ecx]
mov ecx, dword [esp + 0x44]
movups xmmword [ecx + 0x60], xmm0
call fcn.1006ab30
mov edx, dword [esp + 0x64]
mov eax, dword [edx + 0x2a4]
mov ecx, dword [eax + 0x3c]
mov eax, dword [eax + 0x44]
add ecx, ecx
movss xmm0, dword [eax + ecx*8 - 0xc]
movss xmm1, dword [eax + ecx*8 - 8]
movss xmm2, dword [eax + ecx*8 - 4]
mov eax, dword [eax + ecx*8 - 0x10]
mov ecx, dword [esp + 0x14]
mov dword [edx + 0x248], eax
movss dword [edx + 0x24c], xmm0
movss dword [edx + 0x250], xmm1
movss dword [edx + 0x254], xmm2
mov eax, dword [esp + 0x4c]
mov byte [edi + 0xe1], 0
inc word [edi + 0xec]
mov dword [esi + 0x49e4], 0
cmp eax, dword [esp + 0x50]
je 0x100137c0
mov al, byte [edi + 0x39d]
and al, 5
cmp al, 1
jne 0x1001365a
mov eax, dword [edi + 0x274]
cmp eax, dword [esi + 0x3fe0]
jne 0x10013653
mov byte [edi + 0x105], 1
jmp 0x1001365a
mov byte [edi + 0x104], 1
test ecx, 0x1000000
je 0x1001371c
test cl, 0x40
jne 0x100136e2
cmp byte [edi + 0xfc], 0
jg 0x100136e2
cmp byte [edi + 0xfd], 0
jg 0x100136e2
test ecx, 0x800000
je 0x100136aa
cmp byte [esi + 0x4b7c], 0
je 0x100136aa
mov eax, dword [esi + 0x4b34]
test eax, eax
je 0x100136aa
mov eax, dword [eax + 0x350]
cmp eax, dword [edi + 0x350]
jne 0x100136aa
mov al, 1
jmp 0x100136ac
xor al, al
cmp byte [esi + 0x5f08], 0
jne 0x100136e2
test al, al
jne 0x100136e2
movss xmm0, dword [edi + 0x1f8]
comiss xmm0, dword [edi + 0x200]
jae 0x100136db
movss xmm0, dword [edi + 0x1fc]
comiss xmm0, dword [edi + 0x204]
jb 0x100136e2
mov byte [edi + 0x104], 1
mov eax, dword [esp + 0x38]
test eax, eax
je 0x1001371c
cmp byte [eax + 0xe2], 0
jne 0x100136fc
cmp byte [eax + 0x104], 0
jle 0x10013703
mov byte [edi + 0x104], 1
cmp byte [eax + 0xe2], 0
jne 0x10013715
cmp byte [eax + 0x105], 0
jle 0x1001371c
mov byte [edi + 0x105], 1
xorps xmm0, xmm0
comiss xmm0, dword [esi + 0x3954]
jb 0x1001372f
mov byte [edi + 0x104], 1
cmp byte [edi + 0x104], 0
jg 0x1001374f
cmp byte [edi + 0x105], 0
jg 0x1001374f
xor cl, cl
cmp byte [edi + 0x106], cl
jg 0x10013751
xor al, al
jmp 0x10013753
mov cl, 1
mov al, 1
mov byte [edi + 0xe6], al
mov al, byte [edi + 0x107]
test al, al
jle 0x10013772
dec al
mov byte [edi + 0x107], al
or dword [edi + 0xc], 0xc0200
xor al, al
cmp byte [edi + 0xe2], al
jne 0x10013788
cmp byte [edi + 0xdf], al
je 0x10013788
test cl, cl
je 0x100137ba
cmp byte [edi + 0xfc], 0
jg 0x100137ba
cmp byte [edi + 0xfd], 0
jg 0x100137ba
cmp byte [edi + 0x105], 0
jg 0x100137ba
mov byte [edi + 0xe4], 1
mov ax, word [edi + 0x184]
mov word [edi + 0x186], ax
jmp 0x100137c0
mov byte [edi + 0xe4], al
cmp byte [edi + 0xe7], 0
jne 0x10013825
cmp byte [esi + 0x6c], 0
je 0x100137d6
cmp dword [esp + 0x74], 0
je 0x100137eb
cmp byte [esi + 0x6d], 0
je 0x10013825
movsx eax, byte [esi + 0x5f5e]
cmp eax, dword [esi + 0x4040]
jne 0x10013825
mov al, byte [edi + 0xfc]
test al, al
jle 0x100137fd
inc al
mov byte [edi + 0xfc], al
mov al, byte [edi + 0xfd]
test al, al
jle 0x1001380f
inc al
mov byte [edi + 0xfd], al
xor al, al
pop edi
pop esi
mov ecx, dword [esp + 0x184]
xor ecx, esp
call fcn.10110a52
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0xe4], 0
mov ecx, dword [esp + 0x18c]
pop edi
sete al
pop esi
xor ecx, esp
call fcn.10110a52
mov esp, ebp
pop ebp
ret