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

Disassembly:
sub esp, 0xa0
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov eax, dword [esi + 0xc]
test ah, 1
jne 0x5e4f9a
mov ecx, dword [esi + 0x190]
call fcn.004f7270
test al, al
je 0x5e4f9a
mov eax, dword [0x72d944]
mov ecx, dword [eax + 0x88]
mov edi, dword [ecx + 8]
mov ecx, edi
call fcn.004e69b0
mov ecx, edi
mov dword [esp + 0xa0], eax
call fcn.004e6a80
mov byte [esp + 0x33], al
mov byte [esp + 0x34], 0
call fcn.00404010
and eax, 0xffff
mov dword [esp + 0x48], 0
add eax, eax
mov ecx, dword [esi + 0x190]
shr eax, 0xf
mov dword [esp + 0x44], eax
fild qword [esp + 0x44]
fadd st(0), st(0)
fsub dword [0x6d0348]
fstp dword [esp + 0x14]
call fcn.004f7380
fcomp dword [0x6d035c]
fnstsw ax
test ah, 0x44
jnp 0x5e4a5a
mov eax, dword [esi + 0xc]
test ah, 0x20
jne 0x5e43c4
mov al, byte [esi + 0x1f4]
test al, al
je 0x5e4a5a
mov eax, 0xfffffe00
lea ebx, [esi + 0x200]
sub eax, esi
mov dword [esp + 0x14], ebx
lea edi, [esi + 0x1f8]
mov dword [esp + 0x50], eax
mov al, byte [ebx]
test al, al
jne 0x5e456c
mov byte [esp + 0x13], al
mov dl, byte [esp + 0x33]
mov al, byte [esp + 0x34]
cmp al, dl
jae 0x5e4a36
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x50]
and eax, 0xff
add edx, ebx
mov byte [esp + 0x32], 1
lea ebp, [ecx + eax*4]
xor eax, eax
test edx, edx
mov ecx, dword [ebp]
jle 0x5e4445
cmp dword [esi + eax*4 + 0x1f8], ecx
jne 0x5e4434
mov byte [esp + 0x32], 0
mov eax, edx
inc eax
cmp eax, edx
jl 0x5e4424
mov al, byte [esp + 0x32]
test al, al
je 0x5e4551
push 0
push esi
call fcn.004f7910
mov ebx, dword [esp + 0x14]
cmp al, 1
jne 0x5e4551
mov byte [ebx], 3
mov ecx, dword [ebp]
push 1
mov dword [edi], ecx
mov byte [esp + 0x17], al
call fcn.004f7b80
mov ecx, dword [esi + 0x19c]
mov eax, dword [esi + 0x198]
mov edx, dword [esi + 0x1a0]
mov dword [esp + 0x8c], ecx
mov ecx, dword [esi + 0x190]
mov dword [esp + 0x88], eax
mov dword [esp + 0x90], edx
call fcn.004f7330
mov ecx, dword [eax]
push 1
mov dword [esp + 0x5c], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x60], edx
mov ecx, dword [edi]
fld dword [eax + 8]
fld dword [esp + 0x5c]
fmul dword [0x6d197c]
fstp dword [esp + 0x5c]
fld dword [esp + 0x60]
fmul dword [0x6d197c]
fstp dword [esp + 0x60]
fmul dword [0x6d197c]
fstp dword [esp + 0x64]
fld dword [edi - 0xd8]
fld dword [esp + 0x5c]
fmul st(1)
fadd dword [esp + 0x8c]
fstp dword [esp + 0x8c]
fld dword [esp + 0x60]
fmul st(1)
fadd dword [esp + 0x90]
fstp dword [esp + 0x90]
fld dword [esp + 0x64]
fmul st(1)
fadd dword [esp + 0x94]
fstp dword [esp + 0x94]
fstp st(0)
call fcn.004f7cd0
push 1
push 0
lea eax, [esp + 0x60]
push 0
lea ecx, [esp + 0x94]
push eax
push ecx
mov ecx, dword [edi]
call fcn.004f81d0
mov ecx, dword [edi]
call fcn.004f72b0
and eax, 0xff
mov ecx, esi
push eax
push 5
call fcn.005e5350
mov cl, byte [esp + 0x34]
mov al, byte [esp + 0x13]
inc cl
test al, al
mov byte [esp + 0x34], cl
je 0x5e43ed
jmp 0x5e4a36
cmp al, 2
je 0x5e4942
cmp al, 1
je 0x5e4942
cmp al, 3
jne 0x5e46ea
mov ecx, dword [esi + 0x1a0]
mov edx, dword [esi + 0x198]
mov eax, dword [esi + 0x19c]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esi + 0x190]
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], eax
call fcn.004f7330
mov edx, dword [eax]
push 1
mov dword [esp + 0x74], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x78], ecx
mov ecx, dword [edi]
fld dword [eax + 8]
fld dword [esp + 0x74]
fmul dword [0x6d197c]
push 0
lea edx, [esp + 0x78]
push 0
lea eax, [esp + 0x30]
push edx
push eax
fstp dword [esp + 0x84]
fld dword [esp + 0x88]
fmul dword [0x6d197c]
fstp dword [esp + 0x88]
fmul dword [0x6d197c]
fstp dword [esp + 0x8c]
fld dword [edi - 0xd8]
fld dword [esp + 0x84]
fmul st(1)
fadd dword [esp + 0x38]
fstp dword [esp + 0x38]
fld dword [esp + 0x88]
fmul st(1)
fadd dword [esp + 0x3c]
fstp dword [esp + 0x3c]
fld dword [esp + 0x8c]
fmul st(1)
fadd dword [esp + 0x40]
fstp dword [esp + 0x40]
fstp st(0)
call fcn.004f81d0
mov ecx, dword [esp + 0xb4]
push 0
push ecx
mov ecx, dword [edi]
call fcn.004f8310
cmp al, 1
je 0x5e4698
mov ecx, dword [edi]
call fcn.004f72c0
fld dword [eax]
fsub dword [esp + 0x24]
fld dword [eax + 4]
fsub dword [esp + 0x28]
fld dword [eax + 8]
fsub dword [esp + 0x2c]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fcomp dword [0x6d1310]
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 0x41
fstp st(0)
jp 0x5e4a36
mov ecx, dword [edi]
push 0
call fcn.004f8a40
mov ecx, dword [edi]
push 0
call fcn.004f8a80
mov byte [ebx], 4
mov ecx, dword [edi]
push 1
call fcn.004f7ae0
mov ecx, dword [edi]
call fcn.004f72b0
mov edx, dword [esi + 0x60]
and eax, 0xff
push 0
push 0x3ecccccd
mov eax, dword [edx + eax*4]
push 1
mov eax, dword [eax + 4]
mov ecx, dword [eax + 8]
push ecx
mov ecx, dword [edi]
call fcn.004f7f60
inc byte [esi + 0x1f4]
jmp 0x5e4a36
cmp al, 5
jne 0x5e47f3
mov byte [ebx], 3
mov ecx, dword [edi]
push 0
call fcn.004f8a40
mov ecx, dword [edi]
push 0
call fcn.004f8a80
mov ecx, dword [edi]
push 0
call fcn.004f7ae0
mov ecx, dword [edi]
push 1
call fcn.004f7b80
mov ecx, dword [edi]
push 0
push 0
push 0
call fcn.004f7b10
mov ecx, dword [esi + 0x1a0]
mov edx, dword [esi + 0x198]
mov eax, dword [esi + 0x19c]
mov dword [esp + 0x9c], ecx
mov ecx, dword [esi + 0x190]
mov dword [esp + 0x94], edx
mov dword [esp + 0x98], eax
call fcn.004f7330
mov edx, dword [eax]
push 1
mov dword [esp + 0x68], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x6c], ecx
mov ecx, dword [edi]
fld dword [eax + 8]
fld dword [esp + 0x68]
fmul dword [0x6d197c]
fstp dword [esp + 0x68]
fld dword [esp + 0x6c]
fmul dword [0x6d197c]
fstp dword [esp + 0x6c]
fmul dword [0x6d197c]
fstp dword [esp + 0x70]
fld dword [edi - 0xd8]
fld dword [esp + 0x68]
fmul st(1)
fadd dword [esp + 0x98]
fstp dword [esp + 0x98]
fld dword [esp + 0x6c]
fmul st(1)
fadd dword [esp + 0x9c]
fstp dword [esp + 0x9c]
fld dword [esp + 0x70]
fmul st(1)
fadd dword [esp + 0xa0]
fstp dword [esp + 0xa0]
fstp st(0)
call fcn.004f7cd0
push 1
push 0
lea edx, [esp + 0x6c]
push 0
lea eax, [esp + 0xa0]
push edx
push eax
jmp 0x5e4a2f
mov ecx, dword [esi + 0x190]
call fcn.004f7330
mov ecx, dword [eax]
mov dword [esp + 0x44], ecx
mov edx, dword [eax + 4]
mov ecx, dword [esi + 0x190]
mov dword [esp + 0x48], edx
mov eax, dword [eax + 8]
mov dword [esp + 0x4c], eax
call fcn.004f72c0
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov edx, dword [eax + 4]
lea ecx, [esp + 0xa4]
mov dword [esp + 0x1c], edx
mov eax, dword [eax + 8]
push ecx
mov ecx, dword [edi]
mov dword [esp + 0x24], eax
call fcn.00501680
mov ecx, eax
call fcn.00431830
fld dword [esp + 0x44]
fmul dword [0x6d197c]
push ecx
mov dword [esp + 0x20], 0
fstp dword [esp + 0x48]
fld dword [esp + 0x4c]
fmul dword [0x6d197c]
fstp dword [esp + 0x4c]
fld dword [esp + 0x50]
fmul dword [0x6d197c]
fstp dword [esp + 0x50]
fld dword [edi - 0xd8]
fld dword [esp + 0x48]
fmul st(1)
fadd dword [esp + 0x1c]
fld dword [esp + 0x50]
fmul st(2)
fadd dword [esp + 0x24]
fstp dword [esp + 0x24]
fsub dword [esp + 0xa8]
fstp dword [esp + 0x1c]
fstp st(0)
fld dword [esp + 0x24]
fsub dword [esp + 0xb0]
fstp dword [esp + 0x24]
fld dword [esp + 0x1c]
fmul dword [esp + 0x1c]
fld dword [esp + 0x24]
fmul dword [esp + 0x24]
faddp st(1)
fstp dword [esp]
call fcn.00404020
mov ebp, dword [esp + 0xb8]
add esp, 4
fld dword [ebp + 0x1c]
fmul dword [0x6d1c38]
fld st(1)
fcompp
fnstsw ax
and eax, 0x4100
jne 0x5e4915
fdivr dword [ebp + 0x1c]
fmul dword [0x6d1c38]
fld dword [esp + 0x18]
fmul st(1)
fstp dword [esp + 0x18]
fld dword [esp + 0x1c]
fmul st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x20]
fmul st(1)
fstp dword [esp + 0x20]
mov ecx, dword [edi]
lea edx, [esp + 0x18]
push edx
fstp st(0)
call fcn.004f7790
mov ecx, dword [edi]
lea eax, [esp + 0x44]
push eax
call fcn.004f8aa0
fld dword [ebp + 0x1c]
push ecx
mov ecx, dword [edi]
fstp dword [esp]
call fcn.004f7fe0
jmp 0x5e4a36
mov byte [ebx], 3
mov ecx, dword [edi]
push 0
call fcn.004f7ae0
mov ecx, dword [edi]
push 1
call fcn.004f7b80
mov ecx, dword [edi]
push 0
push 0
push 0
call fcn.004f7b10
mov ecx, dword [esi + 0x198]
mov edx, dword [esi + 0x19c]
mov eax, dword [esi + 0x1a0]
mov dword [esp + 0x38], ecx
mov ecx, dword [esi + 0x190]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], eax
call fcn.004f7330
mov ecx, dword [eax]
push 1
mov dword [esp + 0x80], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x84], edx
mov ecx, dword [edi]
fld dword [eax + 8]
fld dword [esp + 0x80]
fmul dword [0x6d197c]
fstp dword [esp + 0x80]
fld dword [esp + 0x84]
fmul dword [0x6d197c]
fstp dword [esp + 0x84]
fmul dword [0x6d197c]
fstp dword [esp + 0x88]
fld dword [edi - 0xd8]
fld dword [esp + 0x80]
fmul st(1)
fadd dword [esp + 0x3c]
fstp dword [esp + 0x3c]
fld dword [esp + 0x84]
fmul st(1)
fadd dword [esp + 0x40]
fstp dword [esp + 0x40]
fld dword [esp + 0x88]
fmul st(1)
fadd dword [esp + 0x44]
fstp dword [esp + 0x44]
fstp st(0)
call fcn.004f7cd0
push 1
push 0
lea eax, [esp + 0x84]
push 0
lea ecx, [esp + 0x44]
push eax
push ecx
mov ecx, dword [edi]
call fcn.004f81d0
mov edx, dword [esp + 0x50]
inc ebx
add edx, ebx
add edi, 4
cmp edx, 2
mov dword [esp + 0x14], ebx
jl 0x5e43df
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret 4
mov eax, 0xfffffe00
lea ebx, [esi + 0x200]
sub eax, esi
lea edi, [esi + 0x1f8]
mov dword [esp + 0x50], eax
mov al, byte [ebx]
test al, al
jne 0x5e4b96
mov byte [esp + 0x13], al
mov al, byte [esp + 0x33]
mov cl, byte [esp + 0x34]
cmp cl, al
jae 0x5e4f79
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0xa0]
and ecx, 0xff
lea ebp, [edx + ecx*4]
mov dword [esp + 0x54], ebp
mov ecx, dword [ebp]
call fcn.004f77e0
test eax, eax
jne 0x5e4b7b
mov ecx, dword [ebp]
push eax
push esi
call fcn.004f7910
cmp al, 1
jne 0x5e4b7b
mov eax, ebp
mov byte [esp + 0x13], 1
mov ecx, dword [eax]
mov dword [edi], ecx
mov edx, dword [esi + 0x20]
mov ebp, dword [edx + 4]
add ebp, 0x40
call fcn.004f72c0
fld dword [eax]
fsub dword [ebp]
fld dword [eax + 8]
fsub dword [ebp + 8]
fld dword [esi + 0x140]
fld st(1)
fmul st(2)
fld st(3)
fmul st(4)
faddp st(1)
fld st(1)
fmul st(2)
fcompp
fstp st(0)
fnstsw ax
fstp st(0)
and eax, 0x100
fstp st(0)
jne 0x5e4b71
mov byte [ebx], 2
mov ecx, dword [edi]
push 1
call fcn.004f7ae0
mov ecx, dword [edi]
push 1
call fcn.004f7b80
mov ecx, dword [edi]
push 0
push 0
push 0
call fcn.004f7b10
mov ecx, dword [edi]
push 0
call fcn.004f8a40
mov ecx, dword [edi]
push 0
call fcn.004f8a80
mov ecx, dword [edi]
call fcn.004f72b0
mov ecx, dword [esi + 0x60]
and eax, 0xff
push 0
push 0x3dcccccd
mov eax, dword [ecx + eax*4]
mov ecx, dword [edi]
push 1
mov edx, dword [eax + 4]
mov eax, dword [edx + 0x10]
push eax
call fcn.004f7f60
jmp 0x5e4b7b
mov byte [ebx], 1
mov ecx, dword [edi]
call fcn.004f78b0
mov cl, byte [esp + 0x34]
mov al, byte [esp + 0x13]
inc cl
test al, al
mov byte [esp + 0x34], cl
je 0x5e4a7f
jmp 0x5e4f79
cmp al, 1
jne 0x5e4c4c
mov ecx, dword [esi + 0x20]
mov ebp, dword [ecx + 4]
mov ecx, dword [edi]
add ebp, 0x40
call fcn.004f72c0
fld dword [eax]
fsub dword [ebp]
fld dword [eax + 8]
fsub dword [ebp + 8]
fld dword [esi + 0x140]
fld st(1)
fmul st(2)
fld st(3)
fmul st(4)
faddp st(1)
fld st(1)
fmul st(2)
fcompp
fstp st(0)
fnstsw ax
fstp st(0)
and eax, 0x100
fstp st(0)
jne 0x5e4c40
mov byte [ebx], 2
mov ecx, dword [edi]
push 1
call fcn.004f7ae0
mov ecx, dword [edi]
push 1
call fcn.004f7b80
mov ecx, dword [edi]
push 0
push 0
push 0
call fcn.004f7b10
mov ecx, dword [edi]
push 0
call fcn.004f8a40
mov ecx, dword [edi]
push 0
call fcn.004f8a80
mov ecx, dword [edi]
call fcn.004f72b0
mov edx, dword [esi + 0x60]
and eax, 0xff
push 0
push 0x3dcccccd
mov eax, dword [edx + eax*4]
push 1
mov eax, dword [eax + 4]
mov ecx, dword [eax + 0x10]
push ecx
mov ecx, dword [edi]
call fcn.004f7f60
jmp 0x5e4f79
mov ecx, dword [edi]
call fcn.004f78b0
jmp 0x5e4f79
cmp al, 2
jne 0x5e4d1b
mov ecx, dword [esi + 0x190]
call fcn.004f72c0
mov edx, dword [eax]
mov dword [esp + 0x18], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x1c], ecx
mov edx, dword [eax + 8]
mov ecx, dword [edi]
mov dword [esp + 0x20], edx
call fcn.004f72c0
fld dword [esp + 0x18]
fsub dword [eax]
push ecx
fstp dword [esp + 0x1c]
fld dword [esp + 0x20]
fsub dword [eax + 4]
fstp dword [esp + 0x20]
fld dword [esp + 0x24]
fsub dword [eax + 8]
fstp dword [esp + 0x24]
fld dword [esp + 0x1c]
fmul dword [esp + 0x1c]
fld dword [esp + 0x24]
fmul dword [esp + 0x24]
faddp st(1)
fld dword [esp + 0x20]
fmul dword [esp + 0x20]
faddp st(1)
fstp dword [esp]
call fcn.00404020
fcom dword [0x6d035c]
add esp, 4
fnstsw ax
test ah, 0x44
jnp 0x5e4cf3
fdivr dword [0x6d0348]
fld dword [esp + 0x18]
fmul st(1)
fstp dword [esp + 0x18]
fld dword [esp + 0x1c]
fmul st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x20]
fmul st(1)
fstp dword [esp + 0x20]
mov ecx, dword [edi]
lea eax, [esp + 0x18]
push eax
fstp st(0)
call fcn.004f8aa0
mov ecx, dword [esp + 0xb4]
push ecx
fld dword [ecx + 0x1c]
mov ecx, dword [edi]
fstp dword [esp]
call fcn.004f7fe0
jmp 0x5e4f79
cmp al, 5
jne 0x5e4dc9
mov edx, dword [esp + 0xb4]
mov eax, dword [edx + 0x1c]
mov ecx, eax
mov dword [esp + 0x44], eax
push ecx
mov ecx, dword [edi]
call fcn.004f8090
test al, al
je 0x5e4d82
mov ecx, dword [edi]
push 0
call fcn.004f8a40
mov ecx, dword [edi]
push 0
call fcn.004f8a80
mov byte [ebx], 2
mov ecx, dword [edi]
call fcn.004f72b0
mov edx, dword [esi + 0x60]
and eax, 0xff
push 0
push 0x3dcccccd
mov eax, dword [edx + eax*4]
push 1
mov eax, dword [eax + 4]
mov ecx, dword [eax + 0x10]
push ecx
mov ecx, dword [edi]
call fcn.004f7f60
jmp 0x5e4f79
mov edx, dword [esp + 0xb4]
push ecx
mov ecx, dword [edi]
fld dword [edx + 0x1c]
fstp dword [esp]
call fcn.004f7fe0
mov ecx, dword [edi]
call fcn.004f8130
fstp dword [esp + 0x54]
mov ecx, dword [edi]
call fcn.004f8160
fdivr dword [esp + 0x54]
push ecx
mov ecx, dword [edi]
fsubr dword [0x6d0348]
fmul dword [0x6e08c0]
fstp dword [esp]
call fcn.004f8a80
jmp 0x5e4f79
mov ecx, dword [edi]
push 1
call fcn.004f7ae0
mov ecx, dword [edi]
push 1
call fcn.004f7b80
cmp byte [ebx], 4
jne 0x5e4f13
mov byte [ebx], 5
mov dl, byte [esi + 0x1f4]
dec dl
mov byte [esi + 0x1f4], dl
mov ecx, dword [edi]
call fcn.004f72b0
mov ecx, dword [esi + 0x60]
and eax, 0xff
push 0
push 0x3dcccccd
mov eax, dword [ecx + eax*4]
mov ecx, dword [edi]
push 1
mov edx, dword [eax + 4]
mov eax, dword [edx + 0x14]
push eax
call fcn.004f7f60
mov ecx, dword [esi + 0x190]
mov edx, dword [ecx + 0x1c]
mov eax, dword [edx + 4]
add eax, 0x10
mov ecx, dword [eax]
mov dword [esp + 0x24], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x28], edx
mov ecx, dword [edi]
fld dword [eax + 8]
fld dword [esp + 0x24]
fmul dword [esp + 0x14]
fstp dword [esp + 0x24]
fld dword [esp + 0x28]
fmul dword [esp + 0x14]
fstp dword [esp + 0x28]
fmul dword [esp + 0x14]
fstp dword [esp + 0x2c]
fld dword [esp + 0x14]
fmul dword [0x6d197c]
fstp dword [esp + 0x14]
call fcn.004f7330
fld dword [esp + 0x24]
fadd dword [eax]
push ecx
fstp dword [esp + 0x28]
fld dword [esp + 0x2c]
fadd dword [eax + 4]
fstp dword [esp + 0x2c]
fld dword [esp + 0x30]
fadd dword [eax + 8]
fstp dword [esp + 0x30]
fld dword [esp + 0x28]
fmul dword [esp + 0x28]
fld dword [esp + 0x30]
fmul dword [esp + 0x30]
faddp st(1)
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
faddp st(1)
fstp dword [esp]
call fcn.00404020
fcom dword [0x6d035c]
add esp, 4
fnstsw ax
test ah, 0x44
jnp 0x5e4eeb
fdivr dword [0x6d0348]
fld dword [esp + 0x24]
fmul st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x28]
fmul st(1)
fstp dword [esp + 0x28]
fld dword [esp + 0x2c]
fmul st(1)
fstp dword [esp + 0x2c]
mov ecx, dword [edi]
lea eax, [esp + 0x24]
push eax
fstp st(0)
call fcn.004f8aa0
mov ecx, dword [edi]
push 0xc0400000
call fcn.004f8a40
mov ecx, dword [edi]
push 0xc0400000
call fcn.004f8a80
jmp 0x5e4f79
mov ecx, dword [esi + 0x20]
mov ebp, dword [ecx + 4]
mov ecx, dword [edi]
add ebp, 0x40
call fcn.004f72c0
fld dword [eax]
fsub dword [ebp]
fld dword [eax + 8]
fsub dword [ebp + 8]
fld dword [esi + 0x140]
mov ecx, dword [edi]
push 0
fld st(1)
fmul st(2)
fld st(3)
fmul st(4)
faddp st(1)
fld st(1)
fmul st(2)
fcompp
fstp st(0)
fnstsw ax
fstp st(0)
and eax, 0x100
fstp st(0)
je 0x5e4d43
call fcn.004f7ae0
mov ecx, dword [edi]
push 0
call fcn.004f7b80
mov ecx, dword [edi]
push 0
push 0
push 0
call fcn.004f7b10
mov byte [ebx], 1
mov edx, dword [esp + 0x50]
add edi, 4
inc ebx
lea eax, [ebx + edx]
cmp eax, 2
jl 0x5e4a71
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret 4
mov dword [esp + 0x14], 0x3f800000
xor ebx, ebx
lea edi, [esi + 0x1f8]
mov ecx, dword [edi]
test ecx, ecx
je 0x5e504e
mov edx, dword [esi + 0x190]
push 0
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 4]
add eax, 0x10
mov edx, dword [eax]
mov dword [esp + 0x3c], edx
mov edx, dword [eax + 4]
mov dword [esp + 0x40], edx
fld dword [eax + 8]
fld dword [esp + 0x3c]
fmul dword [esp + 0x18]
fstp dword [esp + 0x3c]
fld dword [esp + 0x40]
fmul dword [esp + 0x18]
fstp dword [esp + 0x40]
fmul dword [esp + 0x18]
fstp dword [esp + 0x44]
fld dword [esp + 0x18]
fmul dword [0x6d197c]
fstp dword [esp + 0x18]
call fcn.004f7cd0
mov ecx, dword [edi]
call fcn.004f7980
push 0x40400000
push 0x40a00000
lea eax, [esp + 0x40]
push 0x40a00000
lea ecx, [esp + 0x44]
push eax
push ecx
mov ecx, dword [edi]
call fcn.004f8950
mov dword [edi], 0
mov al, byte [ebx + esi + 0x200]
cmp al, 4
jne 0x5e5046
dec byte [esi + 0x1f4]
mov byte [ebx + esi + 0x200], 0
inc ebx
add edi, 4
cmp ebx, 2
jl 0x5e4faa
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret 4