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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x114
xorps xmm0, xmm0
push ebx
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x1f8]
mov ecx, dword [ebx + 0x204]
imul eax, eax, 0xf8
movss dword [eax + ecx + 0xd0], xmm0
mov edx, dword [ebx + 8]
mov eax, dword [ebx + 0xc]
push esi
push edi
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], eax
mov esi, 0x918370
mov ecx, dword [esi - 8]
cmp ecx, dword [esp + 0x18]
jne 0x4e3109
mov edx, dword [esi - 4]
cmp edx, dword [esp + 0x1c]
jne 0x4e3109
mov eax, dword [esi - 0xc]
mov ecx, dword [esi - 0x10]
push eax
push ecx
mov eax, 0x8d68e0
call fcn.0043b2d0
cmp eax, 0xffffffff
je 0x4e30a0
lea edx, [eax + eax*2]
mov eax, dword [0x8d68e8]
cmp word [eax + edx*8 + 8], 0xffff
je 0x4e30a0
mov ecx, dword [esi - 0xc]
mov edx, dword [esi - 0x10]
xor edi, edi
push edi
push ecx
push edx
mov ecx, 0x8d68e0
call fcn.004602f0
mov dword [esi - 0x10], edi
mov dword [esi - 0xc], edi
mov eax, dword [0x80edf4]
test eax, eax
mov edi, dword [esi]
je 0x4e30ff
mov ecx, edi
and ecx, 0xffff
dec ecx
js 0x4e30e9
cmp ecx, dword [0x955578]
jge 0x4e30e9
mov eax, dword [0x955570]
imul ecx, ecx, 0x130
lea edx, [ecx + eax]
mov eax, dword [edx + 0x104]
mov ecx, edi
sar ecx, 0x10
xor ecx, eax
and ecx, 0xffff
neg ecx
sbb ecx, ecx
not ecx
and ecx, edx
jmp 0x4e30eb
xor ecx, ecx
xor eax, eax
test ecx, ecx
setne al
test eax, eax
je 0x4e30ff
push 0
mov eax, edi
call fcn.00633c50
xor eax, eax
mov dword [esi], eax
mov dword [esi - 8], eax
mov dword [esi - 4], eax
add esi, 0x30
cmp esi, 0x918670
jl 0x4e3043
mov ecx, dword [ebx + 0x1f8]
mov edx, dword [ebx + 0x204]
imul ecx, ecx, 0xf8
lea eax, [ecx + edx + 0xe0]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
or ecx, edx
je 0x4e319d
mov ecx, dword [eax]
mov dword [esp + 0x1c], edx
xor edx, edx
cmp ecx, 0xffffffff
jne 0x4e3164
test edx, edx
jne 0x4e3164
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
mov ecx, dword [0x916514]
push edx
call fcn.00467180
mov eax, dword [0x916514]
jmp 0x4e3190
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
mov eax, 0x8d68e0
call fcn.0043b2d0
cmp eax, 0xffffffff
je 0x4e319d
mov ecx, dword [0x8d68e8]
lea eax, [eax + eax*2]
mov eax, dword [ecx + eax*8 + 8]
shl eax, 5
mov eax, dword [eax + 0x8d725c]
test eax, eax
je 0x4e319d
mov edx, dword [eax]
push 1
mov ecx, eax
call dword [edx + 0x3c]
mov eax, dword [ebx + 0x1f8]
mov ecx, dword [ebx + 0x204]
imul eax, eax, 0xf8
mov eax, dword [eax + ecx + 0x68]
cmp eax, 0xffffffff
je 0x4e320b
movss xmm0, dword [ebx + 0x40]
xor edx, edx
mov dl, byte [ebx + 0x76]
push 1
push 1
lea ecx, [esp + 0x38]
movss dword [esp + 0x38], xmm0
movss xmm0, dword [ebx + 0x44]
movss dword [esp + 0x3c], xmm0
movss xmm0, dword [ebx + 0x48]
and edx, 0xff
push edx
mov edx, dword [0x91a2c0]
mov edx, dword [edx + eax*8]
push ecx
mov ecx, dword [0x91a2d4]
push 1
add edx, ecx
push 0x940c00
movss dword [esp + 0x50], xmm0
call fcn.006335d0
mov eax, dword [ebx + 0x1f8]
mov ecx, dword [ebx + 0x204]
imul eax, eax, 0xf8
mov edx, dword [eax + ecx + 0xd8]
xor esi, esi
cmp edx, esi
je 0x4e323b
call fcn.00476490
mov ecx, dword [ebp + 0xc]
mov edx, dword [eax]
push ecx
push ebx
mov ecx, eax
call dword [edx + 0xc]
movss xmm0, dword [ebx + 0x20]
mov edx, dword [ebx]
lea eax, [ebx + 0x10]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [eax + 0x14]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [eax + 0x18]
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x100]
push eax
mov ecx, ebx
movss dword [esp + 0x5c], xmm0
call dword [edx + 0x58]
mov ecx, dword [ebx + 0x1f8]
movss xmm0, dword [eax]
imul ecx, ecx, 0xf8
addss xmm0, dword [eax + 0x10]
movss xmm1, dword [eax + 4]
addss xmm1, dword [eax + 0x14]
movss xmm2, dword [0x738a1c]
mov edx, dword [ebx + 0x204]
movss xmm3, dword [0x7389c8]
mulss xmm0, xmm2
mulss xmm1, xmm2
movss xmm2, dword [ecx + edx + 0x60]
lea eax, [ecx + edx]
mulss xmm2, xmm3
addss xmm2, xmm0
movss dword [esp + 0x90], xmm2
movss xmm2, dword [eax + 0x60]
addss xmm2, xmm0
movss xmm0, dword [eax + 0x64]
addss xmm0, xmm1
movss dword [esp + 0x104], xmm0
movss xmm0, dword [eax + 0x64]
cvttss2si eax, dword [eax + 0x50]
test eax, eax
mulss xmm0, xmm3
addss xmm0, xmm1
movss dword [esp + 0xf0], xmm2
movss dword [esp + 0xa4], xmm0
mov dword [esp + 0x78], esi
mov dword [esp + 0x28], esi
jle 0x4e3731
mov edi, dword [0x77eab0]
mov esi, dword [esp + 0x4c]
mov ecx, dword [ebx + 0x1f8]
imul edi, edi, 0x343fd
mov edx, dword [ebx + 0x204]
imul ecx, ecx, 0xf8
movss xmm0, dword [ecx + edx + 0x58]
movss xmm1, dword [esp + 0x54]
lea eax, [ecx + edx]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [eax + 0x54]
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [esp + 0x58]
movaps xmm2, xmm1
mulss xmm2, xmm1
movss xmm1, dword [esp + 0x50]
mulss xmm0, xmm0
addss xmm0, xmm2
add edi, 0x269ec3
movaps xmm2, xmm1
mulss xmm2, xmm1
addss xmm0, xmm2
ucomiss xmm0, dword [0x738a54]
lahf
test ah, 0x44
mov dword [0x77eab0], edi
movss dword [esp + 0x88], xmm0
jnp 0x4e33f9
fld dword [esp + 0x88]
mov eax, edi
fsqrt
shr eax, 0x10
and eax, 0x7fff
mov dword [esp + 0x24], eax
fdivr dword [0x7389bc]
fild dword [esp + 0x24]
fmul dword [0x738a60]
fld dword [esp + 0x18]
fsub dword [esp + 0x2c]
fmulp st(1)
fadd dword [esp + 0x2c]
fmulp st(1)
fld dword [esp + 0x50]
fmul st(1)
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fmul st(1)
fstp dword [esp + 0x54]
fld dword [esp + 0x58]
fmul st(1)
fstp dword [esp + 0x58]
fstp st(0)
imul edi, edi, 0x343fd
add edi, 0x269ec3
mov eax, edi
mov dword [0x77eab0], eax
imul eax, eax, 0x343fd
movss xmm4, dword [0x738a60]
movss xmm2, dword [0x738bc0]
movss xmm3, dword [0x738bbc]
add eax, 0x269ec3
mov dword [0x77eab0], eax
mov edx, eax
imul eax, eax, 0x343fd
mov ecx, edi
shr ecx, 0x10
and ecx, 0x7fff
add eax, 0x269ec3
mov dword [0x77eab0], eax
cvtsi2ss xmm0, ecx
mov ecx, dword [ebx + 0x1f8]
mulss xmm0, xmm4
imul ecx, ecx, 0xf8
mulss xmm0, xmm2
subss xmm0, xmm3
shr edx, 0x10
movss dword [esp + 0x7c], xmm0
shr eax, 0x10
and edx, 0x7fff
and eax, 0x7fff
cvtsi2ss xmm1, edx
mov edx, dword [ebx + 0x204]
cvtsi2ss xmm0, eax
mulss xmm1, xmm4
mulss xmm0, xmm4
mulss xmm1, xmm2
mulss xmm0, xmm2
subss xmm1, xmm3
subss xmm0, xmm3
add ecx, edx
movss dword [esp + 0x80], xmm1
movss dword [esp + 0x84], xmm0
mov eax, dword [ecx]
call dword [eax + 0x20]
test eax, eax
je 0x4e3702
mov ax, word [eax + 0x40]
cmp ax, 1
jle 0x4e3702
mov edi, dword [0x77eab0]
imul edi, edi, 0x343fd
movsx ecx, ax
add edi, 0x269ec3
mov eax, edi
shr eax, 0x10
and eax, 0x7fff
cdq
idiv ecx
mov dword [0x77eab0], edi
mov eax, dword [ebx + 0x1f8]
imul eax, eax, 0xf8
mov dword [esp + 0x24], ecx
mov ecx, edx
mov edx, 1
shl edx, cl
mov ecx, dword [ebx + 0x204]
mov eax, dword [eax + ecx + 0xec]
and eax, edx
mov dword [esp + 0x24], edx
je 0x4e3539
mov edx, dword [esp + 0x78]
test dword [esp + 0x24], edx
je 0x4e3541
test eax, eax
jne 0x4e3708
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x78]
or ecx, eax
movss xmm2, dword [0x738a60]
movss xmm1, dword [esp + 0x90]
movss xmm3, dword [esp + 0xf0]
mov eax, edi
imul eax, eax, 0x343fd
add eax, 0x269ec3
mov dword [esp + 0x78], ecx
mov dword [0x77eab0], eax
mov ecx, eax
imul eax, eax, 0x343fd
shr ecx, 0x10
add eax, 0x269ec3
and ecx, 0x7fff
subss xmm3, xmm1
mov edx, eax
cvtsi2ss xmm0, ecx
mulss xmm0, xmm2
mulss xmm0, xmm3
addss xmm0, xmm1
shr edx, 0x10
and edx, 0x7fff
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x104]
cvtsi2ss xmm1, edx
mulss xmm1, xmm2
movss xmm2, dword [esp + 0xa4]
subss xmm2, xmm0
lea ecx, [esp + 0xb0]
mulss xmm1, xmm2
addss xmm1, xmm0
xorps xmm0, xmm0
mov dword [0x77eab0], eax
mov eax, dword [ebx]
push ecx
mov ecx, ebx
movss dword [esp + 0x68], xmm1
movss dword [esp + 0x6c], xmm0
call dword [eax + 0x58]
movss xmm0, dword [eax + 0x18]
addss xmm0, dword [eax + 8]
movss xmm1, dword [esp + 0x64]
mulss xmm0, dword [0x738a1c]
movss xmm3, dword [esi + 0x20]
mulss xmm3, xmm0
movaps xmm2, xmm1
mulss xmm2, dword [esi + 0x10]
addss xmm3, xmm2
movss xmm2, dword [esp + 0x60]
movaps xmm4, xmm2
mulss xmm4, dword [esi]
addss xmm3, xmm4
addss xmm3, dword [esi + 0x30]
movss xmm4, dword [esi + 0x24]
movss dword [esp + 0x30], xmm3
movss xmm3, dword [esi + 4]
mov edx, dword [esp + 0x30]
mulss xmm3, xmm2
mulss xmm4, xmm0
addss xmm3, xmm4
movaps xmm4, xmm1
mulss xmm4, dword [esi + 0x14]
mulss xmm1, dword [esi + 0x18]
addss xmm3, xmm4
addss xmm3, dword [esi + 0x34]
movss dword [esp + 0x34], xmm3
movss xmm3, dword [esi + 8]
mov eax, dword [esp + 0x34]
mulss xmm3, xmm2
movss xmm2, dword [esi + 0x28]
mulss xmm2, xmm0
addss xmm3, xmm2
addss xmm3, xmm1
addss xmm3, dword [esi + 0x38]
movss dword [esp + 0x38], xmm3
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x6c], edx
call fcn.00476490
mov ecx, dword [ebx + 0x1f8]
mov edx, dword [ebx + 0x204]
imul ecx, ecx, 0xf8
mov edi, dword [esp + 0x24]
add ecx, edx
mov edx, dword [eax]
push edi
mov edi, dword [ecx + 0x5c]
push 0
push edi
push ecx
lea ecx, [esp + 0x8c]
push ecx
lea ecx, [esp + 0x64]
push ecx
movzx ecx, word [ebx + 0x76]
push ecx
lea ecx, [esp + 0x7c]
push ecx
mov ecx, eax
call dword [edx + 0x10]
mov edi, dword [0x77eab0]
mov edx, dword [ebx + 0x1f8]
mov eax, dword [esp + 0x28]
imul edx, edx, 0xf8
mov ecx, dword [ebx + 0x204]
cvttss2si edx, dword [edx + ecx + 0x50]
inc eax
cmp eax, edx
mov dword [esp + 0x28], eax
jl 0x4e3322
mov eax, dword [ebx + 0x1f8]
mov ecx, dword [ebx + 0x204]
imul eax, eax, 0xf8
mov edx, dword [eax + ecx + 0x28]
lea ecx, [eax + ecx + 0x28]
call dword [edx + 0x20]
test eax, eax
je 0x4e38e5
movsx eax, word [eax + 0x40]
xorps xmm2, xmm2
xor edi, edi
test eax, eax
mov dword [esp + 0x24], eax
movss dword [esp + 0x7c], xmm2
movss dword [esp + 0x80], xmm2
movss dword [esp + 0x84], xmm2
jle 0x4e38e5
jmp 0x4e3790
xorps xmm2, xmm2
jmp 0x4e3790
mov eax, dword [ebx + 0x1f8]
mov edx, dword [0x77eab0]
imul eax, eax, 0xf8
movss xmm1, dword [esp + 0x54]
imul edx, edx, 0x343fd
mov ecx, edi
mov esi, 1
shl esi, cl
mov ecx, dword [ebx + 0x204]
movss xmm0, dword [eax + ecx + 0x58]
add eax, ecx
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [eax + 0x54]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [esp + 0x58]
movaps xmm3, xmm1
mulss xmm3, xmm1
movss xmm1, dword [esp + 0x50]
mulss xmm0, xmm0
addss xmm0, xmm3
add edx, 0x269ec3
movaps xmm3, xmm1
mulss xmm3, xmm1
addss xmm0, xmm3
ucomiss xmm0, xmm2
lahf
test ah, 0x44
mov dword [0x77eab0], edx
movss dword [esp + 0x18], xmm0
jnp 0x4e3871
fld dword [esp + 0x18]
mov eax, edx
fsqrt
shr eax, 0x10
and eax, 0x7fff
mov dword [esp + 0x88], eax
fdivr dword [0x7389bc]
fild dword [esp + 0x88]
fmul dword [0x738a60]
fld dword [esp + 0x2c]
fsub dword [esp + 0x28]
fmulp st(1)
fadd dword [esp + 0x28]
fmulp st(1)
fld dword [esp + 0x50]
fmul st(1)
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fmul st(1)
fstp dword [esp + 0x54]
fld dword [esp + 0x58]
fmul st(1)
fstp dword [esp + 0x58]
fstp st(0)
call fcn.00476490
mov ecx, dword [esp + 0x4c]
movss xmm0, dword [ecx + 0x30]
mov edx, dword [ebx + 0x204]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [ecx + 0x34]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [ecx + 0x38]
mov ecx, dword [ebx + 0x1f8]
imul ecx, ecx, 0xf8
add ecx, edx
push esi
push 1
add ecx, 0x28
movss dword [esp + 0x40], xmm0
mov esi, dword [ecx + 0x34]
mov edx, dword [eax]
push esi
push ecx
lea ecx, [esp + 0x8c]
push ecx
lea ecx, [esp + 0x64]
push ecx
movzx ecx, word [ebx + 0x76]
push ecx
lea ecx, [esp + 0x4c]
push ecx
mov ecx, eax
call dword [edx + 0x10]
mov eax, dword [esp + 0x24]
inc edi
cmp edi, eax
jl 0x4e3785
mov ax, word [ebx + 0x194]
cmp ax, 0xffff
je 0x4e3ae6
mov edx, dword [0x8cf1b4]
movsx ecx, ax
imul ecx, ecx, 0x98
mov ecx, dword [ecx + edx + 0x84]
test ecx, ecx
jne 0x4e3956
movsx esi, ax
cmp esi, 0xffffffff
je 0x4e394e
imul esi, esi, 0x98
mov ecx, dword [edx + esi + 0x84]
test ecx, ecx
lea eax, [edx + esi]
jne 0x4e3947
mov ecx, dword [0x8cf5c0]
test ecx, ecx
je 0x4e3947
push eax
push 0x8ce750
call fcn.0043adc0
mov edx, dword [0x8cf1b4]
mov ecx, dword [edx + esi + 0x84]
test ecx, ecx
je 0x4e3ae6
mov eax, dword [ebx + 0x1f0]
test eax, eax
jl 0x4e3ae6
cmp eax, dword [ecx + 4]
jge 0x4e3ae6
mov edx, dword [ecx + 8]
imul eax, eax, 0x2c
add eax, edx
mov edx, dword [eax + 0x24]
test edx, edx
jle 0x4e3ae6
mov eax, dword [eax + 0x28]
mov edx, dword [ecx + 0x10]
imul eax, eax, 0x150
mov ecx, dword [ebx + 0x70]
add eax, edx
test ch, 6
mov dword [esp + 0x18], eax
je 0x4e39cb
mov eax, dword [ebx]
lea ecx, [esp + 0xb0]
push ecx
mov ecx, ebx
call dword [eax + 0x58]
lea edx, [ebx + 0x50]
mov esi, eax
mov edi, edx
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x4c]
call fcn.004045c0
and dword [ebx + 0x70], 0xfffff9ff
mov eax, dword [esp + 0x18]
movss xmm2, dword [0x738a1c]
fld dword [ebx + 0x60]
fsub dword [ebx + 0x50]
movss xmm1, dword [ebx + 0x64]
addss xmm1, dword [ebx + 0x54]
movss xmm0, dword [ebx + 0x50]
addss xmm0, dword [ebx + 0x60]
movss xmm3, dword [ebx + 0x68]
subss xmm3, dword [ebx + 0x58]
mulss xmm1, xmm2
mulss xmm0, xmm2
movss dword [esp + 0x64], xmm1
movss xmm1, dword [ebx + 0x68]
addss xmm1, dword [ebx + 0x58]
mulss xmm1, xmm2
movss xmm2, dword [ebx + 0x64]
subss xmm2, dword [ebx + 0x54]
movss dword [esp + 0x28], xmm2
fld dword [esp + 0x28]
movss dword [esp + 0x2c], xmm3
fmul dword [esp + 0x28]
mov edx, dword [0x77eab0]
fld dword [esp + 0x2c]
imul edx, edx, 0x343fd
fmul dword [esp + 0x2c]
faddp st(1)
fld st(1)
fmul st(2)
add edx, 0x269ec3
movss dword [esp + 0x60], xmm0
movss dword [esp + 0x30], xmm0
faddp st(1)
movss xmm0, dword [ebx + 0x64]
subss xmm0, dword [ebx + 0x54]
mulss xmm0, dword [0x738a58]
fsqrt
mov ecx, edx
shr ecx, 0x10
and ecx, 0x7fff
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 0x34]
push ecx
movss dword [esp + 0x6c], xmm1
movss dword [esp + 0x3c], xmm1
movss xmm1, dword [eax + 0x30]
cvtsi2ss xmm2, ecx
mulss xmm2, dword [0x738a60]
subss xmm0, xmm1
mov dword [0x77eab0], edx
mulss xmm2, xmm0
addss xmm2, xmm1
movss dword [esp], xmm2
lea edx, [esp + 0x1c]
push edx
push eax
push 0x8ce4a0
lea eax, [esp + 0x40]
lea ecx, [esp + 0x70]
fstp st(1)
fmul dword [0x738a1c]
fst dword [esp + 0x28]
fstp dword [esp + 0x2c]
call fcn.00432b60
mov esi, dword [esp + 0x4c]
mov ecx, 0x10
lea edi, [esp + 0xb0]
lea eax, [esp + 0x7c]
rep movsd dword es:[edi], dword [esi]
push eax
lea ecx, [esp + 0xb4]
call fcn.0043f160
xorps xmm0, xmm0
movss dword [esp + 0x30], xmm0
movss dword [esp + 0x34], xmm0
movss xmm0, dword [0x7389bc]
lea edi, [esp + 0x7c]
lea esi, [esp + 0x30]
movss dword [esp + 0x38], xmm0
call fcn.0042e0f0
mov ecx, dword [ebx + 0x1f8]
mov edx, dword [ebx + 0x204]
imul ecx, ecx, 0xf8
movss xmm0, dword [esp + 0xe0]
movsx eax, word [ecx + edx + 0x6c]
cmp eax, 0xffffffff
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0xe4]
movss dword [esp + 0x64], xmm0
movss xmm0, dword [esp + 0xe8]
movss dword [esp + 0x68], xmm0
jne 0x4e3b83
mov eax, 0x70a557
jmp 0x4e3b91
mov ecx, dword [0x8cf1b4]
imul eax, eax, 0x98
add eax, ecx
xor ecx, ecx
mov cl, byte [ebx + 0x76]
lea edx, [esp + 0x60]
and ecx, 0xff
push ecx
push edx
lea ecx, [esp + 0x38]
push ecx
lea edx, [esp + 0x24]
push edx
mov ecx, eax
call fcn.004c54a0
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x9c], edx
add esp, 0x10
xor edx, edx
cmp ecx, 0xffffffff
jne 0x4e3be7
test edx, edx
jne 0x4e3be7
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
mov ecx, dword [0x916514]
push edx
call fcn.00467180
mov edi, dword [0x916514]
jmp 0x4e3c13
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
mov eax, 0x8d68e0
call fcn.0043b2d0
cmp eax, 0xffffffff
je 0x4e3c77
mov ecx, dword [0x8d68e8]
lea eax, [eax + eax*2]
mov eax, dword [ecx + eax*8 + 8]
shl eax, 5
mov edi, dword [eax + 0x8d725c]
test edi, edi
je 0x4e3c77
call fcn.00471b40
mov edx, dword [edi]
mov ecx, edi
mov esi, eax
call dword [edx + 0x1c]
cmp eax, esi
je 0x4e3c3d
lea esp, [esp]
mov ecx, dword [eax + 4]
cmp eax, ecx
je 0x4e3c77
mov eax, ecx
cmp eax, esi
jne 0x4e3c30
mov eax, dword [ebx + 0x1f8]
mov ecx, dword [ebx + 0x204]
imul eax, eax, 0xf8
movss xmm0, dword [eax + ecx + 0x74]
movss xmm1, dword [0x738ac0]
comiss xmm1, xmm0
jbe 0x4e3c65
movaps xmm0, xmm1
mov ebx, edi
movss dword [edi + 0xb0], xmm0
call fcn.004c49b0
mov ebx, dword [ebp + 8]
mov ax, word [ebx + 0xb0]
cmp ax, 0xffff
je 0x4e3e5c
mov esi, dword [0x8cf1b4]
movsx edx, ax
imul edx, edx, 0x98
mov ecx, dword [edx + esi + 0x84]
test ecx, ecx
jne 0x4e3cee
movsx edi, ax
cmp edi, 0xffffffff
jne 0x4e3cae
xor edi, edi
jmp 0x4e3ce4
imul edi, edi, 0x98
mov ecx, dword [esi + edi + 0x84]
test ecx, ecx
lea eax, [esi + edi]
jne 0x4e3cdd
mov ecx, dword [0x8cf5c0]
test ecx, ecx
je 0x4e3cdd
push eax
push 0x8ce750
call fcn.0043adc0
mov esi, dword [0x8cf1b4]
mov edi, dword [esi + edi + 0x84]
mov ecx, edi
test ecx, ecx
je 0x4e3e5c
mov ax, word [ebx + 0xb0]
cmp ax, 0xffff
je 0x4e3e5c
movsx eax, ax
imul eax, eax, 0x98
cmp dword [eax + esi + 0x80], 2
jne 0x4e3e5c
mov ecx, dword [ebx + 0x1f8]
mov edx, dword [ebx + 0x204]
imul ecx, ecx, 0xf8
mov eax, dword [ecx + edx + 0xf0]
mov ecx, dword [0x91a2c0]
mov edx, dword [ecx + eax*8]
mov edi, dword [0x91a2d4]
mov ax, word [ebx + 0xc4]
add edx, edi
cmp ax, 0xffff
mov dword [esp + 0x18], edx
jne 0x4e3d55
xor eax, eax
jmp 0x4e3db5
movsx ecx, ax
imul ecx, ecx, 0x98
mov ecx, dword [ecx + esi + 0x84]
test ecx, ecx
je 0x4e3d6d
mov eax, ecx
jmp 0x4e3db5
movsx edi, ax
cmp edi, 0xffffffff
jne 0x4e3d79
xor edi, edi
jmp 0x4e3db3
imul edi, edi, 0x98
mov ecx, dword [esi + edi + 0x84]
test ecx, ecx
lea eax, [esi + edi]
jne 0x4e3da8
mov ecx, dword [0x8cf5c0]
test ecx, ecx
je 0x4e3da8
push eax
push 0x8ce750
call fcn.0043adc0
mov esi, dword [0x8cf1b4]
mov edi, dword [esi + edi + 0x84]
mov edx, dword [esp + 0x18]
mov eax, edi
push edx
push eax
call fcn.0050ab40
mov ecx, eax
cmp ecx, 0xffffffff
mov dword [esp + 0x18], ecx
je 0x4e3e5c
mov ax, word [ebx + 0xc4]
cmp ax, 0xffff
jne 0x4e3ddc
xor eax, eax
jmp 0x4e3e3c
movsx edx, ax
imul edx, edx, 0x98
mov edx, dword [edx + esi + 0x84]
test edx, edx
je 0x4e3df4
mov eax, edx
jmp 0x4e3e3c
movsx edi, ax
cmp edi, 0xffffffff
jne 0x4e3e00
xor esi, esi
jmp 0x4e3e3a
imul edi, edi, 0x98
mov ecx, dword [esi + edi + 0x84]
test ecx, ecx
lea eax, [esi + edi]
jne 0x4e3e2f
mov ecx, dword [0x8cf5c0]
test ecx, ecx
je 0x4e3e2f
push eax
push 0x8ce750
call fcn.0043adc0
mov esi, dword [0x8cf1b4]
mov esi, dword [esi + edi + 0x84]
mov ecx, dword [esp + 0x18]
mov eax, esi
mov eax, dword [eax + 0x78]
lea edx, [ecx + ecx*4]
shl edx, 5
movzx eax, byte [eax + edx + 0x84]
and eax, 1
push ecx
lea esi, [ebx + 0xc0]
call fcn.00573d30
mov eax, dword [ebx + 0x70]
test ah, 6
mov ecx, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], edx
je 0x4e3e9f
mov eax, dword [ebx]
lea ecx, [esp + 0xb0]
push ecx
mov ecx, ebx
call dword [eax + 0x58]
lea edx, [ebx + 0x50]
mov esi, eax
mov edi, edx
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x4c]
call fcn.004045c0
and dword [ebx + 0x70], 0xfffff9ff
lea edx, [esp + 0x18]
push edx
lea eax, [ebx + 0x50]
push 0x91afe0
call fcn.00513c50
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8