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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xb4
movss xmm0, dword [0x68b4fc]
movss dword [esp + 4], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 8], xmm0
movss xmm0, dword [0x68b4fc]
push ebx
mov ebx, ecx
movss dword [esp + 0x10], xmm0
movss xmm0, dword [0x68b500]
mov dword [ebx + 0x590], 2
movss dword [esp + 0x14], xmm0
movaps xmm0, xmmword [esp + 8]
movaps xmmword [ebx + 0x5e0], xmm0
movaps xmmword [ebx + 0x5f0], xmm0
push esi
movaps xmmword [ebx + 0x600], xmm0
mov eax, dword [ebx + 0x1684]
xor esi, esi
cmp eax, 1
push edi
movaps xmmword [esp + 0x50], xmm0
je 0x42b055
mov dword [ebx + 0x1688], eax
mov dword [ebx + 0x1684], 1
mov dword [ebx + 0x168c], esi
or edi, 0xffffffff
push 0x40c90fdb
push 0xc0490fdb
lea ecx, [esp + 0x18]
mov dword [ebx + 0x1690], esi
mov byte [ebx + 0x1430], 1
mov byte [ebx + 0x1480], 0
mov dword [ebx + 0x137c], esi
mov dword [ebx + 0x13a0], edi
mov dword [ebx + 0x13a4], edi
mov dword [ebx + 0x13a8], edi
call fcn.00402250
mov ecx, dword [eax]
mov dword [ebx + 0x770], ecx
mov edx, dword [eax + 4]
push 0x40490fdb
push 0x3f060a92
lea ecx, [esp + 0x18]
mov dword [ebx + 0x774], edx
call fcn.00402250
mov ecx, dword [eax]
mov dword [ebx + 0x778], ecx
mov edx, dword [eax + 4]
push 0x4032b8c3
push 0x40060a92
lea ecx, [esp + 0x18]
mov dword [ebx + 0x77c], edx
call fcn.00402250
mov ecx, dword [eax]
mov dword [ebx + 0x780], ecx
mov edx, dword [eax + 4]
push 0x40278d36
push esi
lea ecx, [esp + 0x18]
mov dword [ebx + 0x784], edx
call fcn.00402250
mov ecx, dword [eax]
movaps xmm4, xmmword [esp + 0x50]
mov dword [ebx + 0x788], ecx
mov edx, dword [eax + 4]
mov dword [ebx + 0x78c], edx
movaps xmm0, xmm4
shufps xmm0, xmm4, 0x39
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x39
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x39
movaps xmmword [ebx + 0x7b0], xmm2
movaps xmmword [ebx + 0x7c0], xmm1
movaps xmmword [ebx + 0x7d0], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [0x68b500]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x1c], xmm0
movaps xmm1, xmmword [esp + 0x10]
movaps xmm3, xmm1
movaps xmmword [ebx + 0x7e0], xmm4
xorps xmm0, xmm0
movaps xmm2, xmm0
shufps xmm2, xmm1, 0x20
shufps xmm3, xmm2, 0x24
movss xmm2, dword [0x68b500]
movss dword [esp + 0x10], xmm2
movss xmm2, dword [0x68b4fc]
movss dword [esp + 0x14], xmm2
movss xmm2, dword [0x68b4fc]
movss dword [esp + 0x18], xmm2
movss xmm2, dword [0x68b4fc]
movaps xmmword [ebx + 0x7b0], xmm3
movss dword [esp + 0x1c], xmm2
movaps xmm2, xmmword [esp + 0x10]
movaps xmm3, xmm0
shufps xmm3, xmm2, 0x20
shufps xmm2, xmm3, 0x24
movaps xmmword [ebx + 0x7c0], xmm2
movss xmm2, dword [0x68b4fc]
movss dword [esp + 0x10], xmm2
movss xmm2, dword [0x68b500]
movss dword [esp + 0x14], xmm2
movss xmm2, dword [0x68b4fc]
movss dword [esp + 0x18], xmm2
movss xmm2, dword [0x68b4fc]
movss dword [esp + 0x1c], xmm2
movaps xmm2, xmmword [esp + 0x10]
movaps xmm3, xmm0
shufps xmm3, xmm2, 0x20
shufps xmm2, xmm3, 0x24
movaps xmmword [ebx + 0x7d0], xmm2
movaps xmm2, xmm4
shufps xmm2, xmm4, 0x39
movaps xmm3, xmm2
shufps xmm3, xmm2, 0x39
movaps xmm5, xmm3
shufps xmm5, xmm3, 0x39
movaps xmmword [ebx + 0x7f0], xmm5
movaps xmmword [ebx + 0x800], xmm3
movaps xmmword [ebx + 0x810], xmm2
movss xmm2, dword [0x68b58c]
movss dword [esp + 0x10], xmm2
movss xmm2, dword [0x68b4fc]
movss dword [esp + 0x14], xmm2
movss xmm2, dword [0x68b4fc]
movss dword [esp + 0x18], xmm2
movss xmm2, dword [0x68b4fc]
movss dword [esp + 0x1c], xmm2
movaps xmm2, xmmword [esp + 0x10]
movaps xmm3, xmm0
shufps xmm3, xmm2, 0x20
shufps xmm2, xmm3, 0x24
movaps xmmword [ebx + 0x820], xmm4
movaps xmmword [ebx + 0x7f0], xmm2
movss xmm2, dword [0x68b4fc]
movss dword [esp + 0x10], xmm2
movss xmm2, dword [0x68b58c]
movss dword [esp + 0x14], xmm2
movss xmm2, dword [0x68b4fc]
movaps xmm3, xmm0
movss dword [esp + 0x18], xmm2
movss xmm2, dword [0x68b4fc]
shufps xmm0, xmm1, 0x20
shufps xmm1, xmm0, 0x24
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x1c], xmm2
movaps xmm2, xmmword [esp + 0x10]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [0x68b588]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [0x68b584]
shufps xmm3, xmm2, 0x20
movaps xmmword [esp + 0x30], xmm2
shufps xmm2, xmm3, 0x24
movaps xmmword [ebx + 0x800], xmm2
movss dword [esp + 0x18], xmm0
movss xmm0, dword [0x68b4fc]
movaps xmmword [ebx + 0x810], xmm1
movss dword [esp + 0x1c], xmm0
movaps xmm1, xmmword [esp + 0x10]
movaps xmm0, xmm1
mulps xmm0, xmm1
movaps xmm3, xmm0
movaps xmm2, xmm0
shufps xmm3, xmm0, 0x55
movaps xmm4, xmm0
shufps xmm2, xmm0, 0xaa
addss xmm4, xmm3
addss xmm4, xmm2
movaps xmmword [esp + 0x50], xmm4
fld dword [esp + 0x50]
fcomp dword [0x68b4fc]
mov dword [ebx + 0x740], 0x3acccccc
mov dword [ebx + 0x744], 0x3c800000
movaps xmmword [esp + 0x40], xmm1
fnstsw ax
test ah, 0x41
jne 0x42b3e6
movaps xmm2, xmm0
shufps xmm2, xmm0, 0xaa
movaps xmm3, xmm0
shufps xmm3, xmm0, 0x55
addss xmm0, xmm3
addss xmm0, xmm2
movaps xmmword [esp + 0x10], xmm0
rsqrtss xmm0, xmm0
movss dword [esp + 0x10], xmm0
movaps xmm0, xmmword [esp + 0x10]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0
mulps xmm1, xmm2
movaps xmmword [esp + 0x50], xmm1
lea eax, [esp + 0x50]
jmp 0x42b3ea
lea eax, [esp + 0x40]
movaps xmm0, xmmword [eax]
movaps xmmword [ebx + 0x730], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [0x68b580]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [0x68b57c]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x1c], xmm0
movaps xmm0, xmmword [esp + 0x10]
movaps xmmword [ebx + 0x700], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [0x68b578]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x1c], xmm0
movaps xmm0, xmmword [esp + 0x10]
push 0x40278d36
movaps xmmword [ebx + 0x710], xmm0
push 0xc0060a92
lea ecx, [esp + 0x18]
mov dword [ebx + 0x62c], esi
mov byte [ebx + 0x6b0], 1
call fcn.00402250
mov ecx, dword [eax]
mov dword [ebx + 0x790], ecx
mov edx, dword [eax + 4]
push 0x4032b8c3
push 0x3fdf66f3
lea ecx, [esp + 0x18]
mov dword [ebx + 0x794], edx
call fcn.00402250
mov ecx, dword [eax]
mov dword [ebx + 0x798], ecx
mov edx, dword [eax + 4]
push 0x3fb2b8c3
push 0xbf32b8c3
lea ecx, [esp + 0x18]
mov dword [ebx + 0x79c], edx
call fcn.00402250
movaps xmm1, xmmword [esp + 0x30]
mov ecx, dword [eax]
movaps xmm0, xmm1
mulps xmm0, xmm1
movaps xmm3, xmm0
movaps xmm2, xmm0
shufps xmm3, xmm0, 0x55
movaps xmm4, xmm0
shufps xmm2, xmm0, 0xaa
addss xmm4, xmm3
addss xmm4, xmm2
movaps xmmword [esp + 0x30], xmm4
fld dword [esp + 0x30]
fcomp dword [0x68b4fc]
mov dword [ebx + 0x7a0], ecx
mov edx, dword [eax + 4]
mov dword [ebx + 0x7a4], edx
movaps xmmword [esp + 0x40], xmm1
fnstsw ax
test ah, 0x41
jne 0x42b573
movaps xmm2, xmm0
shufps xmm2, xmm0, 0xaa
movaps xmm3, xmm0
shufps xmm3, xmm0, 0x55
addss xmm0, xmm3
addss xmm0, xmm2
movaps xmmword [esp + 0x10], xmm0
rsqrtss xmm0, xmm0
movss dword [esp + 0x10], xmm0
movaps xmm0, xmmword [esp + 0x10]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0
mulps xmm1, xmm2
movaps xmmword [esp + 0x30], xmm1
lea eax, [esp + 0x30]
jmp 0x42b577
lea eax, [esp + 0x40]
movaps xmm0, xmmword [eax]
movaps xmmword [ebx + 0x750], xmm0
movss xmm0, dword [0x68b500]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [0x68b58c]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x1c], xmm0
movaps xmm1, xmmword [esp + 0x10]
movaps xmm0, xmm1
mulps xmm0, xmm1
movaps xmm3, xmm0
movaps xmm2, xmm0
shufps xmm3, xmm0, 0x55
movaps xmm4, xmm0
shufps xmm2, xmm0, 0xaa
addss xmm4, xmm3
addss xmm4, xmm2
movaps xmmword [esp + 0x30], xmm4
fld dword [esp + 0x30]
fcomp dword [0x68b4fc]
movaps xmmword [esp + 0x40], xmm1
fnstsw ax
test ah, 0x41
jne 0x42b637
movaps xmm2, xmm0
shufps xmm2, xmm0, 0xaa
movaps xmm3, xmm0
shufps xmm3, xmm0, 0x55
addss xmm0, xmm3
addss xmm0, xmm2
movaps xmmword [esp + 0x10], xmm0
rsqrtss xmm0, xmm0
movss dword [esp + 0x10], xmm0
movaps xmm0, xmmword [esp + 0x10]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0
mulps xmm1, xmm2
movaps xmmword [esp + 0x30], xmm1
lea eax, [esp + 0x30]
jmp 0x42b63b
lea eax, [esp + 0x40]
movaps xmm0, xmmword [eax]
push 1
mov ecx, ebx
movaps xmmword [ebx + 0x760], xmm0
call fcn.005ef7a0
mov dword [ebx + 0x628], eax
mov eax, dword [eax + 0x58]
mov dword [ebx + 0x620], eax
mov eax, dword [eax + 0x58]
mov dword [ebx + 0x624], eax
mov ax, word [ebx + 0x5a4]
cmp ax, di
jle 0x42b809
movsx ecx, ax
lea edi, [ebx + 0x63c]
push ecx
mov ecx, edi
call fcn.005b6a40
mov dword [ebx + 0x684], esi
cmp dword [0x76ba40], esi
mov eax, dword [0x6f2234]
mov dword [esp + 0x28], 0x40c00000
mov dword [esp + 0x24], 0x40400000
mov dword [esp + 0x2c], 0x3f000000
je 0x42b6cc
mov dword [esp + 0x28], 0x41000000
mov dword [esp + 0x24], 0x40800000
mov dword [esp + 0x2c], 0x3f000000
jmp 0x42b6ee
mov cl, byte [eax + 0x1d0]
test cl, cl
je 0x42b6ee
mov dword [esp + 0x28], 0x40800000
mov dword [esp + 0x24], 0x40000000
mov dword [esp + 0x2c], 0x3f28f5c3
movzx esi, byte [edi]
imul esi, esi, 0x58
add esi, 0x6cc3b0
mov ecx, 0x16
lea edi, [esp + 0x68]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [eax + 0x350]
test ecx, ecx
je 0x42b774
mov ax, word [ebx + 0x5a4]
cmp ax, 7
jle 0x42b774
cmp ax, 0x14
jge 0x42b774
cmp ax, 0x10
fld dword [esp + 0x78]
jge 0x42b73f
fmul dword [esp + 0x28]
call fcn.00602090
mov dword [esp + 0x24], eax
fild dword [esp + 0x24]
jmp 0x42b750
fmul dword [esp + 0x24]
call fcn.00602090
mov dword [esp + 0x24], eax
fild dword [esp + 0x24]
mov eax, dword [ebx + 0x648]
fstp dword [ebx + 0x64c]
cmp eax, 1
jle 0x42b774
fild dword [esp + 0x74]
fmul dword [esp + 0x2c]
call fcn.00602090
mov dword [ebx + 0x648], eax
mov eax, dword [ebx + 0x658]
test eax, eax
jl 0x42b78f
push 0
push eax
mov ecx, 0x6de358
call fcn.004ae200
mov esi, eax
jmp 0x42b791
xor esi, esi
xor eax, eax
mov ax, word [ebx + 0x65c]
mov ecx, esi
push eax
push 0
call fcn.0060dad0
test eax, eax
push 8
push 0x80
je 0x42b7c8
sub eax, dword [esi + 0x6c]
mov ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
jmp 0x42b7ca
push 0
mov ecx, esi
call fcn.0060f550
mov dword [ebx + 0x62c], eax
mov ecx, dword [ebx + 0x650]
lea edx, [esp + 0x10]
push edx
mov dword [ebx + 0x654], ecx
push 0x8001
mov ecx, ebx
call fcn.005f09b0
mov ecx, dword [esp + 0x10]
mov edx, dword [ebx + 0x62c]
push ecx
push edx
mov ecx, eax
call fcn.005efcc0
xor esi, esi
push 2
mov ecx, ebx
mov dword [ebx + 0x1498], esi
call fcn.005ef7a0
mov dword [ebx + 0x1490], eax
mov eax, dword [ebx + 0x1e4]
mov dword [ebx + 0x149c], eax
movzx eax, byte [0x6d8267]
movzx edx, byte [0x6d8017]
lea ecx, [eax + eax*4]
mov eax, dword [ecx*4 + 0x6eb770]
mov ecx, dword [eax + edx*4 + 4]
mov dword [ebx + 0x14fc], ecx
movzx eax, byte [0x6d8267]
lea edx, [eax + eax*4]
movzx eax, byte [0x6d8017]
mov ecx, dword [edx*4 + 0x6eb770]
mov edx, dword [ecx + eax*4 + 4]
mov ax, word [ebx + 0x5a4]
cmp ax, 0xffff
mov edi, 0x3e99999a
mov dword [ebx + 0x1500], edx
mov dword [ebx + 0x1504], esi
mov dword [ebx + 0x1548], 0x3e4ccccd
mov dword [ebx + 0x1550], edi
jne 0x42b89d
mov eax, 4
jmp 0x42b8a0
movsx eax, ax
push eax
lea ecx, [ebx + 0x14a4]
call fcn.005b6a40
push 3
mov ecx, ebx
mov dword [ebx + 0x14ec], esi
mov dword [ebx + 0x1588], esi
call fcn.005ef7a0
mov dword [ebx + 0x1580], eax
mov eax, dword [ebx + 0x1e4]
mov dword [ebx + 0x158c], eax
movzx eax, byte [0x6d8268]
movzx edx, byte [0x6d8018]
lea ecx, [eax + eax*4]
mov eax, dword [ecx*4 + 0x6eb770]
mov ecx, dword [eax + edx*4 + 4]
mov dword [ebx + 0x15ec], ecx
movzx eax, byte [0x6d8268]
lea edx, [eax + eax*4]
movzx eax, byte [0x6d8018]
mov ecx, dword [edx*4 + 0x6eb770]
mov edx, dword [ecx + eax*4 + 4]
mov ax, word [ebx + 0x5a4]
cmp ax, 0xffff
mov dword [ebx + 0x15f0], edx
mov dword [ebx + 0x15f4], esi
mov dword [ebx + 0x1638], 0x3e4ccccd
mov dword [ebx + 0x1640], edi
jne 0x42b941
mov eax, 4
jmp 0x42b944
movsx eax, ax
push eax
lea ecx, [ebx + 0x1594]
call fcn.005b6a40
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0x116
mov ecx, ebx
mov dword [ebx + 0x15dc], esi
mov dword [ebx + 0x1670], 0xc016cbe4
mov dword [ebx + 0x1674], 0x3edf66f3
mov dword [ebx + 0x1678], 0x3db2b8c3
mov dword [ebx + 0x167c], 0x40437a15
mov dword [ebx + 0x1680], 0xf
mov dword [ebx + 0x1690], esi
mov dword [ebx + 0x1694], esi
mov dword [ebx + 0x5b8], 0x3f800000
mov dword [ebx + 0x1434], esi
mov dword [ebx + 0x168c], esi
mov word [ebx + 0xd50], 0x6509
mov word [ebx + 0xd52], 0x6301
call fcn.0041b9a0
push esi
mov ecx, ebx
call fcn.004c6dd0
xor eax, eax
mov ax, word [ebx + 0xd50]
push 0x3d800000
mov ecx, ebx
push eax
push eax
xor eax, eax
mov ax, word [ebx + 0xd52]
push eax
call fcn.004036c0
mov dword [ebx + 0x74], esi
mov ecx, dword [0x76ba40]
cmp ecx, esi
je 0x42ba1c
mov eax, dword [ebx + 0x6c]
cmp eax, esi
je 0x42ba89
movsx edx, byte [eax + 0xc]
cmp edx, dword [ecx + 0xb18]
sete al
test al, al
je 0x42ba89
lea eax, [esp + 0x40]
push eax
mov ecx, ebx
call fcn.005efd30
movss xmm0, dword [0x68b4fc]
movaps xmm1, xmmword [eax]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [0x68b5b8]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [0x68b4fc]
lea ecx, [ebx + 0x230]
push ecx
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x20], xmm0
movaps xmm0, xmmword [esp + 0x14]
push esi
lea edx, [esp + 0x38]
subps xmm1, xmm0
push edx
mov ecx, 0x725b20
movaps xmmword [esp + 0x3c], xmm1
call fcn.0052b4a0
fstp st(0)
mov al, byte [ebx + 0x95d]
test al, al
je 0x42baa1
mov byte [ebx + 0x95d], 0
mov byte [0x6d83c4], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret