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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xd8
mov eax, dword [0x1011b140]
xor eax, esp
mov dword [esp + 0xd4], eax
mov eax, dword [ebp + 8]
push esi
push edi
mov edi, ecx
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x4c], eax
mov eax, dword [0x1014261c]
test byte [edi + 8], 0x42
mov dword [esp + 0x68], edx
mov dword [esp + 0x10], edi
mov dword [esp + 0x18], eax
jne 0x10065d0c
cmp byte [edi + 0xc0], 0
jg 0x10065d0c
cmp byte [edi + 0xc1], 0
jg 0x10065d0c
cmp byte [edi + 0xa7], 0
je 0x10065d0c
movss xmm0, dword [eax + 0x3bb4]
xor edx, edx
movss xmm1, dword [edi + 0x48]
movaps xmm2, xmm0
addss xmm1, dword [0x10112ff0]
mulss xmm2, dword [0x10112f24]
mov esi, 4
mov cl, byte [eax + 0x66]
mulss xmm0, dword [0x10112ffc]
test cl, cl
mov byte [esp + 0xb], 0
addss xmm1, xmm2
cmovne edx, esi
mov dword [esp + 0x48], edx
call fcn.10072390
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10112fb0]
cvttss2si esi, xmm0
test cl, cl
je 0x1006548c
movss xmm0, dword [0x1011302c]
jmp 0x1006548f
xorps xmm0, xmm0
movss dword [esp + 0x14], xmm0
lea ecx, [esp + 0x60]
movss xmm0, dword [0x10113408]
movaps xmm2, xmm0
movaps xmm1, xmm0
call fcn.1005cf60
lea ecx, [esp + 0x2c]
call fcn.1005cf60
mov ecx, str.RESIZE
mov dword [edi + 0x144], 1
call fcn.10069090
xor eax, eax
mov dword [esp + 0xc], eax
cmp dword [ebp + 0xc], eax
jle 0x1006582a
lea ecx, [edi + 0x18]
lea edx, [edi + 0x10]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0xc4], edx
xor edi, edi
nop dword [eax + eax]
lea eax, [edi + edi*2]
lea edi, [eax*8 + 0x1010bbd0]
push edi
push ecx
lea ecx, [esp + 0x8c]
mov dword [esp + 0x3c], edi
call fcn.1005d470
add esp, 4
lea ecx, [esp + 0x54]
push eax
call fcn.1005d5c0
movd xmm0, esi
lea eax, [edi + 8]
cvtdq2ps xmm2, xmm0
mov edx, eax
mov dword [esp + 0x4c], eax
lea ecx, [esp + 0x94]
call fcn.1005d450
push eax
lea edx, [esp + 0x5c]
lea ecx, [esp + 0xa0]
call fcn.1005d470
movss xmm2, dword [esp + 0x20]
lea ecx, [esp + 0xa8]
mov edx, dword [esp + 0x50]
add esp, 0xc
mov edi, eax
call fcn.1005d450
push eax
lea edx, [esp + 0x54]
lea ecx, [esp + 0xa8]
call fcn.1005d490
add esp, 4
lea ecx, [esp + 0xcc]
push edi
push eax
call fcn.1005d760
movss xmm0, dword [esp + 0xcc]
comiss xmm0, dword [esp + 0xd4]
jbe 0x100655a2
lea edx, [esp + 0xd4]
call fcn.100723b0
movss xmm0, dword [esp + 0xd0]
comiss xmm0, dword [esp + 0xd8]
jbe 0x100655c8
lea edx, [esp + 0xd8]
lea ecx, [esp + 0xd0]
call fcn.100723b0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
push eax
call fcn.10061f10
mov edi, eax
lea ecx, [esp + 0xcc]
push 8
push 0
mov edx, edi
call fcn.1006b200
push 0x40800
lea eax, [esp + 0x15]
mov edx, edi
push eax
lea eax, [esp + 0x1a]
push eax
lea ecx, [esp + 0xe0]
call fcn.10083620
mov cl, byte [esp + 0x1e]
add esp, 0x14
test cl, cl
jne 0x1006561e
mov al, byte [esp + 9]
test al, al
je 0x10065931
mov edi, dword [esp + 0xc]
mov eax, edi
mov ecx, dword [esp + 0x18]
not eax
and eax, 1
add eax, 5
mov dword [ecx + 0x492c], eax
mov al, byte [esp + 9]
test al, al
je 0x100657d9
cmp word [ecx + 0x3702], 2
jne 0x1006569b
test edi, edi
jne 0x1006569b
push dword [esp + 0x68]
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0xb0]
call fcn.10064c10
add esp, 4
mov byte [esp + 0xb], 1
movss xmm0, dword [eax]
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x30], xmm0
call fcn.10062250
cmp byte [esp + 9], 0
je 0x100657f1
mov ecx, 0x20
jmp 0x100657fd
mov ecx, dword [esp + 0x34]
movss xmm4, dword [0x10112ff0]
mov edx, dword [ebp + 0x14]
movss xmm1, dword [0x10113434]
movss xmm0, dword [ecx + 4]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jp 0x100656c7
movss xmm2, dword [edx + 4]
jmp 0x100656ca
movaps xmm2, xmm1
movss xmm3, dword [ecx]
ucomiss xmm3, xmm4
lahf
test ah, 0x44
jp 0x100656db
movss xmm1, dword [edx]
lea ecx, [esp + 0x74]
call fcn.1005cf60
xorps xmm1, xmm1
ucomiss xmm0, xmm1
movss xmm0, dword [0x10113408]
lahf
test ah, 0x44
jp 0x100656ff
movss xmm2, dword [edx + 0xc]
jmp 0x10065702
movaps xmm2, xmm0
ucomiss xmm3, xmm1
lahf
test ah, 0x44
jp 0x10065710
movss xmm0, dword [edx + 8]
movaps xmm1, xmm0
lea ecx, [esp + 0x58]
call fcn.1005cf60
mov edx, dword [esp + 0x44]
lea ecx, [esp + 0xb4]
movd xmm0, esi
cvtdq2ps xmm2, xmm0
xorps xmm2, xmmword [0x10113530]
call fcn.1005d450
movss xmm2, dword [esp + 0x14]
lea ecx, [esp + 0xbc]
mov edi, eax
call fcn.1005d450
push dword [esp + 0x34]
mov edx, eax
lea ecx, [esp + 0x80]
push edi
call fcn.1005d5c0
mov ecx, dword [esp + 0x20]
mov edi, eax
lea eax, [ecx + 0x3e88]
lea edx, [ecx + 0xdb8]
push eax
lea ecx, [esp + 0x78]
call fcn.1005d490
add esp, 0xc
lea ecx, [esp + 0x24]
mov edx, eax
push edi
call fcn.1005d470
add esp, 4
lea eax, [esp + 0x74]
mov edx, ecx
lea ecx, [esp + 0x3c]
push dword [esp + 0x5c]
push dword [esp + 0x5c]
push eax
call fcn.1005d580
add esp, 0xc
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x64]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x14]
push eax
push dword [esp + 0x3c]
call fcn.100651d0
mov edi, dword [esp + 0x18]
add esp, 0xc
mov al, byte [esp + 9]
mov cl, byte [esp + 0xa]
test edi, edi
je 0x10065686
test al, al
jne 0x10065691
test cl, cl
je 0x10065811
xor ecx, ecx
cmp byte [esp + 0xa], cl
setne cl
add ecx, 0x1e
movss xmm1, dword [0x10112ff0]
call fcn.10060860
mov ecx, dword [esp + 0x4c]
mov dword [ecx + edi*4], eax
mov edx, dword [esp + 0xc4]
inc edi
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xc], edi
cmp edi, dword [ebp + 0xc]
jl 0x100654f0
xor edi, edi
mov dword [esp + 0x14], edi
cmp dword [esp + 0x48], edi
jbe 0x10065a87
nop word [eax + eax]
lea eax, [edi*8]
sub eax, edi
shl eax, 2
mov dword [esp + 0x1c], eax
test edi, edi
je 0x10065861
mov dword [esp + 0xc], 1
cmp edi, 1
jne 0x10065869
mov dword [esp + 0xc], 0
mov edx, dword [esp + 0x10]
movd xmm0, esi
push ecx
cvtdq2ps xmm3, xmm0
mov dword [esp], 0x40800000
lea ecx, [esp + 0xd0]
push edi
call fcn.100652b0
mov ecx, dword [esp + 0x18]
lea eax, [edi + 4]
add esp, 8
push eax
call fcn.10061f10
mov edi, eax
lea ecx, [esp + 0xcc]
push 8
push 0
mov edx, edi
call fcn.1006b200
push 0x40800
lea eax, [esp + 0x15]
mov edx, edi
push eax
lea eax, [esp + 0x1a]
push eax
lea ecx, [esp + 0xe0]
call fcn.10083620
mov dl, byte [esp + 0x1d]
add esp, 0x14
cmp byte [esp + 0xa], 0
mov ecx, dword [esp + 0x18]
je 0x100658ed
movss xmm0, dword [ecx + 0x3e6c]
comiss xmm0, dword [0x10112efc]
ja 0x100658f5
test dl, dl
je 0x10065a74
mov eax, dword [esp + 0xc]
mov edi, dword [esp + 0x14]
xor eax, 1
add eax, 3
mov dword [ecx + 0x492c], eax
test dl, dl
je 0x10065a78
mov eax, dword [esp + 0x38]
movss xmm0, dword [0x10113434]
mov dword [eax], edi
cmp edi, 3
jne 0x1006593a
mov edx, dword [ebp + 0x14]
movss xmm2, dword [edx + 4]
jmp 0x10065a3f
mov edi, dword [esp + 0xc]
jmp 0x100657dd
movaps xmm2, xmm0
cmp edi, 1
jne 0x10065a3c
mov eax, dword [ebp + 0x14]
lea ecx, [esp + 0x50]
movss xmm1, dword [eax]
call fcn.1005cf60
movss xmm2, dword [0x10113408]
movss xmm1, dword [0x10113408]
lea ecx, [esp + 0x58]
call fcn.1005cf60
mov ecx, dword [esp + 0x10]
push dword [esp + 0xc]
mov eax, dword [ecx + 0x10]
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0xcc], ecx
mov ecx, dword [esp + 0x1c]
add ecx, 0xdb8
mov dword [esp + 0xc8], eax
call fcn.1005cf80
mov ecx, dword [esp + 0x18]
push dword [esp + 0xc]
movss xmm0, dword [eax]
lea ecx, [ecx + 0x3e88]
call fcn.1005cf80
push dword [esp + 0xc]
lea ecx, [esp + 0xc8]
subss xmm0, dword [eax]
addss xmm0, dword [0x1011302c]
call fcn.1005cf80
push dword [esp + 0x5c]
mov edx, ecx
lea ecx, [esp + 0x40]
push dword [esp + 0x5c]
movss dword [eax], xmm0
lea eax, [esp + 0x58]
push eax
call fcn.1005d580
add esp, 0xc
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0xc8], eax
lea eax, [esp + 0x2c]
mov dword [esp + 0xc4], ecx
mov ecx, dword [esp + 0x1c]
push eax
lea eax, [esp + 0x64]
push eax
lea eax, [ecx + 0x1010ba38]
lea edx, [ecx + 0x1010ba30]
push eax
lea ecx, [esp + 0x78]
call fcn.1005d540
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0xd0]
add esp, 4
push eax
call fcn.100651d0
add esp, 0xc
jmp 0x10065a78
mov edx, dword [ebp + 0x14]
movaps xmm1, xmm0
lea ecx, [esp + 0x50]
call fcn.1005cf60
cmp edi, 2
jne 0x10065a5a
movss xmm2, dword [edx + 0xc]
jmp 0x1006595e
movss xmm2, dword [0x10113408]
test edi, edi
jne 0x1006595e
movss xmm1, dword [edx + 8]
jmp 0x10065966
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
cmp edi, dword [esp + 0x48]
jl 0x10065840
call fcn.100691b0
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x18]
mov dword [esi + 0x144], 0
mov eax, dword [edi + 0x4900]
test eax, eax
je 0x10065c8c
cmp dword [eax + 0x2fc], esi
jne 0x10065c8c
lea ecx, [esp + 0x1c]
call fcn.10047530
cmp dword [edi + 0x47dc], 2
jne 0x10065b0a
cmp byte [edi + 0xdd1], 0
je 0x10065b0a
push 0x204
push 0x203
push 0x202
mov edx, 0x201
lea ecx, [esp + 0x48]
call fcn.100693d0
add esp, 0xc
movss xmm0, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm1
jmp 0x10065b16
movss xmm1, dword [esp + 0x20]
movss xmm0, dword [esp + 0x1c]
cmp dword [edi + 0x47dc], 3
jne 0x10065b54
push 0x272
push 0x271
push 0x270
mov edx, 0x26f
lea ecx, [esp + 0x48]
call fcn.100693d0
add esp, 0xc
movss xmm0, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm1
xorps xmm4, xmm4
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jp 0x10065b6d
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x10065c8c
movss xmm1, dword [edi + 0x5c]
movss xmm0, dword [edi + 0x58]
call fcn.10072380
movaps xmm2, xmm0
lea eax, [edi + 0x4920]
movss xmm0, dword [edi + 0x18]
lea edx, [esp + 0x1c]
mulss xmm0, dword [0x101133e8]
lea ecx, [esp + 0x3c]
mov dword [esp + 0x38], eax
mulss xmm2, xmm0
call fcn.1005d450
mov edx, eax
lea ecx, [edi + 0x4920]
call fcn.1005d4f0
mov edx, dword [ebp + 0x14]
lea eax, [esi + 0x18]
push eax
lea eax, [esi + 0x10]
push eax
lea ecx, [esp + 0x44]
call fcn.1005d490
add esp, 4
lea ecx, [esp + 0x70]
mov edx, eax
call fcn.1005d490
add esp, 4
lea edx, [edi + 0x4920]
lea ecx, [esp + 0x7c]
push eax
call fcn.1005d560
movss xmm1, dword [0x10112ff0]
add esp, 4
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [edx], ecx
mov ecx, 0x20
mov dword [edx + 4], eax
mov byte [edi + 0x4914], 0
mov byte [edi + 0x47e7], 1
call fcn.10060860
mov ecx, dword [esp + 0x4c]
mov edi, dword [esp + 0x38]
mov edx, edi
mov dword [ecx], eax
lea ecx, [esp + 0x24]
call fcn.1005d680
movss xmm0, dword [esp + 0x24]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jp 0x10065c49
movss xmm0, dword [esp + 0x28]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jnp 0x10065c8c
lea eax, [esp + 0x24]
push eax
lea edx, [esi + 0x20]
lea ecx, [esp + 0x40]
call fcn.1005d470
add esp, 4
lea ecx, [esp + 0x6c]
mov edx, esi
push eax
call fcn.10064c10
add esp, 4
lea edx, [esp + 0x24]
mov ecx, edi
movss xmm0, dword [eax]
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x30], xmm0
call fcn.1005d510
movss xmm0, dword [esp + 0x2c]
movss xmm1, dword [0x10113408]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10065cba
movss dword [esi + 0x20], xmm0
mov ecx, esi
movss xmm0, dword [esp + 0x30]
movss dword [esi + 0x24], xmm0
call fcn.10070050
movss xmm0, dword [esp + 0x60]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10065ce8
lea edx, [esp + 0x60]
lea ecx, [esp + 0x3c]
call fcn.1005d680
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esi + 0x10], ecx
mov ecx, esi
mov dword [esi + 0x14], edx
call fcn.10070050
mov ecx, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov al, byte [esp + 0xb]
mov dword [esi + 0x18], ecx
mov dword [esi + 0x1c], edx
pop edi
pop esi
mov ecx, dword [esp + 0xd4]
xor ecx, esp
call fcn.100bd374
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0xdc]
xor al, al
pop edi
pop esi
xor ecx, esp
call fcn.100bd374
mov esp, ebp
pop ebp
ret