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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x734
push ebx
push esi
lea eax, [esp + 0x6c]
push edi
xor ebx, ebx
push eax
mov dword [0x870910], ebx
mov dword [esp + 0x734], ebx
call fcn.005b9940
mov ecx, dword [0x86eb28]
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x1c]
mov ecx, dword [ecx + 0x484]
mov edx, dword [eax]
add esp, 4
push ebx
push ecx
push eax
call dword [edx + 0x68]
cmp dword [0x870cd4], ebx
je 0x5ca99c
push 4
call fcn.0048b1b0
mov esi, eax
mov cl, byte [esi + 8]
mov eax, dword [esi + 0x58]
add esp, 4
cmp cl, bl
je 0x5cb7bb
cmp dword [eax + 0x10], ebx
je 0x5cb7bb
push 1
push eax
call fcn.005ba160
mov eax, dword [0x870cd4]
add esp, 8
cmp eax, 1
jle 0x5ca89f
push 8
push esi
lea ecx, [esp + 0x78]
call fcn.005d6820
push esi
call fcn.00566090
push esi
call fcn.00630fd0
mov ecx, dword [0x86eb28]
mov dword [0x870910], ecx
mov edx, dword [ecx]
add esp, 8
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x18]
push ecx
push edi
call dword [eax + 0x104]
push 1
push esi
call fcn.00630b60
mov ecx, dword [0x86eb28]
mov edx, dword [ecx]
add esp, 8
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov ecx, dword [0x86eb28]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x18]
push ecx
push edi
call dword [eax + 0x104]
push esi
call fcn.00615210
mov ecx, dword [0x86eb28]
mov edx, dword [ecx]
add esp, 4
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov dword [0x870910], ebx
call fcn.005cf150
cmp dword [0x8654a4], 6
jne 0x5ca91a
cmp dword [0x870cd4], 3
jne 0x5ca91a
call fcn.005c7b10
mov ecx, dword [0x86eb5c]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x18]
push ecx
push edi
call dword [eax + 0x104]
cmp dword [0x870ce4], ebx
je 0x5ca97d
push 2
push esi
call fcn.00491820
push 1
push esi
call fcn.0061ac10
push 1
push esi
call fcn.0061aa60
push 1
push ebx
push esi
call fcn.00494230
add esp, 0x24
mov ecx, dword [0x86eb5c]
mov edx, dword [ecx]
mov esi, ecx
call dword [edx + 8]
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov dword [0x870910], ebx
cmp dword [0x870cb8], ebx
je 0x5caae2
cmp dword [0x8654a4], 6
jne 0x5caae2
mov edi, 0x10
mov dword [esp + 0x10], edi
mov edi, edi
push edi
call fcn.0048b1b0
mov esi, eax
mov al, byte [esi + 8]
add esp, 4
cmp al, bl
je 0x5caad4
mov eax, dword [esi + 0x58]
cmp dword [eax + 0x10], ebx
je 0x5caad4
push 1
push eax
call fcn.005ba160
mov eax, dword [0x870974]
mov edx, dword [eax]
add esp, 8
push ebx
push 7
push eax
call dword [edx + 0xe4]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push ebx
push 0xe
push eax
call dword [ecx + 0xe4]
push esi
call fcn.0060f600
mov eax, dword [0x870974]
mov edx, dword [eax]
add esp, 4
push 1
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push 1
push 7
push eax
call dword [ecx + 0xe4]
call fcn.005cf150
call fcn.005b9ab0
cmp dword [0x870cbc], ebx
je 0x5caa59
push ebx
push esi
lea ecx, [esp + 0x78]
call fcn.005d6820
call fcn.005cf150
mov ecx, dword [0x86eb5c]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x18]
push ecx
push edi
call dword [eax + 0x104]
cmp dword [0x870ce4], ebx
je 0x5caab1
push 1
push esi
call fcn.00491820
push 4
push ebx
push esi
call fcn.00494230
add esp, 0x14
mov ecx, dword [0x86eb5c]
mov edx, dword [ecx]
mov esi, ecx
call dword [edx + 8]
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov edi, dword [esp + 0x10]
mov dword [0x870910], ebx
inc edi
cmp edi, 0x15
mov dword [esp + 0x10], edi
jle 0x5ca9c0
call fcn.005cf150
mov eax, dword [0x870974]
mov edx, dword [eax]
push 1
push 0xe
push eax
call dword [edx + 0xe4]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push 1
push 7
push eax
call dword [ecx + 0xe4]
push 3
call fcn.0048b1b0
mov esi, eax
mov al, byte [esi + 8]
add esp, 4
cmp al, bl
je 0x5cacc1
push 1
push 0x86e7bc
call fcn.005ba160
add esp, 8
push 1
push esi
lea ecx, [esp + 0x78]
call fcn.005d6820
push esi
call fcn.00631450
add esp, 4
call fcn.005cf150
mov ecx, dword [0x86eb5c]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x18]
push ecx
push edi
call dword [eax + 0x104]
push esi
mov ecx, 0x835860
call fcn.0048bd80
push esi
mov ecx, 0x8357e0
call fcn.0048bd80
cmp dword [0x870ce4], ebx
je 0x5cabbd
push ebx
push esi
call fcn.0061ac10
mov eax, dword [0x870ce4]
add esp, 8
cmp eax, ebx
je 0x5cabbd
push ebx
push esi
call fcn.00491820
add esp, 8
mov ecx, dword [0x86eb5c]
mov edx, dword [ecx]
mov esi, ecx
call dword [edx + 8]
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov ecx, dword [0x86eb48]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov esi, ecx
call dword [edx + 4]
mov edx, dword [esi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov esi, dword [esi + 0x20]
mov eax, dword [esi]
push ebx
lea ecx, [esp + 0x18]
push ecx
push esi
call dword [eax + 0x104]
cmp dword [0x8707e8], ebx
je 0x5cac4a
mov ecx, dword [0x86eb48]
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x1c]
mov ecx, dword [ecx + 0x31c]
mov edx, dword [eax]
push 0xf
push ecx
push eax
call dword [edx + 0x68]
mov edx, dword [0x8707e8]
mov eax, dword [edx]
mov ecx, dword [eax + 0x18]
push 6
push 5
push 0xffffffffffffffff
push ecx
call fcn.005c2480
add esp, 0x10
mov ecx, dword [0x86eb48]
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x1c]
mov ecx, dword [ecx + 0x31c]
mov edx, dword [eax]
push 8
push ecx
push eax
call dword [edx + 0x68]
mov eax, dword [0x8707ec]
cmp eax, ebx
je 0x5cac82
mov edx, dword [eax]
mov eax, dword [edx + 0x18]
push 1
push 2
push 0xffffffffffffffff
push eax
call fcn.005c2480
add esp, 0x10
mov ecx, dword [0x86eb48]
mov edx, dword [ecx]
mov esi, ecx
call dword [edx + 8]
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov ecx, dword [0x86eb48]
mov dword [0x870910], ebx
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x1c]
mov ecx, dword [ecx + 0x31c]
mov edx, dword [eax]
push 0xf
push ecx
push eax
call dword [edx + 0x68]
call fcn.005c2100
call fcn.005cf150
mov dword [esp + 0x10], 1
mov edi, edi
mov edx, dword [esp + 0x10]
push edx
call fcn.0048b1b0
mov esi, eax
mov al, byte [esi + 8]
add esp, 4
cmp al, bl
je 0x5cb3eb
mov eax, dword [esi + 0x58]
cmp dword [eax + 0x10], ebx
je 0x5cb3eb
push ebx
push esi
mov ecx, 0x89e850
call fcn.00614080
fld dword [0x7a27a0]
fsub dword [0x89e85c]
mov ecx, dword [0x7a27a0]
mov dword [esp + 0x40], ecx
fdivr dword [0x784250]
fstp dword [esp + 0x44]
fld dword [0x784250]
fsub dword [0x89e860]
fst dword [esp + 0x48]
fcomp dword [0x784564]
fnstsw ax
test ah, 0x41
jne 0x5cad47
mov dword [esp + 0x48], 0x3f19999a
mov ecx, dword [0x86eb28]
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x1c]
mov ecx, dword [ecx + 0x4ac]
mov edx, dword [eax]
lea edi, [esp + 0x40]
push edi
push ecx
push eax
call dword [edx + 0x88]
mov ecx, dword [0x86eb28]
mov eax, dword [ecx + 0x20]
mov edi, dword [0x870cd8]
mov ecx, dword [ecx + 0x1c]
mov ecx, dword [ecx + 0x484]
mov edx, dword [eax]
push edi
push ecx
push eax
call dword [edx + 0x68]
mov edx, dword [0x86eb28]
mov eax, dword [edx + 0x20]
mov edi, dword [0x89e864]
mov ebx, dword [eax]
and edi, 0xffffff
mov dword [esp + 0x18], eax
mov eax, edi
shr eax, 0x10
and eax, 0xff
test eax, eax
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
mov dword [esp + 0x1c], edi
jge 0x5cadc3
fadd dword [0x78454c]
fmul dword [0x785510]
call fcn.0075bc00
shr edi, 8
or eax, 0xffffff00
and edi, 0xff
shl eax, 8
test edi, edi
mov dword [esp + 0x14], edi
fild dword [esp + 0x14]
jge 0x5cadf1
fadd dword [0x78454c]
fmul dword [0x785510]
mov dword [esp + 0x14], eax
call fcn.0075bc00
mov ecx, dword [esp + 0x14]
and eax, 0xff
or ecx, eax
mov eax, dword [esp + 0x1c]
and eax, 0xff
shl ecx, 8
test eax, eax
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
jge 0x5cae29
fadd dword [0x78454c]
fmul dword [0x785510]
mov dword [esp + 0x14], ecx
call fcn.0075bc00
mov ecx, dword [esp + 0x14]
and eax, 0xff
or ecx, eax
push ecx
mov ecx, dword [0x86eb28]
mov edx, dword [ecx + 0x1c]
mov eax, dword [edx + 0x45c]
mov ecx, dword [esp + 0x1c]
push eax
push ecx
call dword [ebx + 0x68]
mov edi, dword [esi + 0x58]
call fcn.005cf150
mov ecx, dword [edi + 8]
mov eax, dword [0x870974]
mov edx, dword [eax]
push ecx
xor ebx, ebx
push ebx
push eax
call dword [edx + 0x94]
mov ecx, dword [edi + 0xc]
mov eax, dword [0x870974]
mov edx, dword [eax]
push ecx
push eax
call dword [edx + 0x9c]
mov edx, dword [edi + 0x14]
mov eax, dword [edi + 0x18]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
mov eax, dword [0x870974]
lea edx, [esp + 0x28]
push edx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], 0x3f800000
mov ecx, dword [eax]
push eax
call dword [ecx + 0xbc]
cmp dword [0x870cc4], ebx
mov dword [0x870848], edi
mov dword [0x870910], ebx
je 0x5caeed
push 9
call fcn.0048b1b0
add esp, 4
push 0x488b20
push eax
lea ecx, [esp + 0x78]
call fcn.005d6a70
cmp dword [0x8654a4], 6
jne 0x5caeff
push esi
call fcn.0060f600
add esp, 4
call fcn.005cf150
push 0x20
push esi
lea ecx, [esp + 0x78]
call fcn.005d6820
mov ecx, dword [0x86eb28]
mov dword [0x870910], ecx
mov eax, dword [ecx]
mov edi, ecx
call dword [eax + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x28]
push ecx
push edi
call dword [eax + 0x104]
push ebx
push esi
call fcn.0061d230
mov ecx, dword [0x86eb28]
mov edx, dword [ecx]
add esp, 8
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov dword [0x870910], ebx
call fcn.005cf150
mov ecx, dword [0x86eb28]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x24]
push ecx
push edi
call dword [eax + 0x104]
push esi
call fcn.005d7be0
push esi
call fcn.00566090
mov ecx, dword [0x86eb28]
mov edx, dword [ecx]
add esp, 8
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov dword [0x870910], ebx
call fcn.005cf150
cmp dword [0x870cdc], ebx
je 0x5caff4
cmp dword [0x7fee38], ebx
je 0x5caff4
call fcn.005cc130
call fcn.005c2100
push esi
call fcn.00631450
mov ecx, dword [0x86eb28]
mov dword [0x870910], ecx
mov edx, dword [ecx]
add esp, 4
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x6c]
push ecx
push edi
call dword [eax + 0x104]
push ebx
push esi
call fcn.00630b60
mov ecx, dword [0x86eb28]
mov edx, dword [ecx]
add esp, 8
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
cmp dword [esp + 0x10], 1
mov dword [0x870910], ebx
jne 0x5cb0c8
mov ecx, dword [0x86eb28]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x64]
push ecx
push edi
call dword [eax + 0x104]
push esi
call fcn.004022d0
mov ecx, dword [0x86eb28]
mov edx, dword [ecx]
add esp, 4
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov dword [0x870910], ebx
call fcn.005cf150
cmp dword [0x8654a4], 6
jne 0x5cb16b
cmp dword [0x870cec], ebx
je 0x5cb16b
mov ecx, dword [0x86eb28]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x54]
push ecx
push edi
call dword [eax + 0x104]
mov eax, dword [0x870974]
mov edx, dword [eax]
push ebx
push 0xe
push eax
call dword [edx + 0xe4]
push 1
call fcn.0048b1b0
mov ecx, dword [eax + 0x64]
add esp, 4
call fcn.0061eea0
mov eax, dword [0x870974]
mov ecx, dword [eax]
push 1
push 0xe
push eax
call dword [ecx + 0xe4]
mov ecx, dword [0x86eb28]
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov ecx, dword [0x86eb44]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x68]
push ecx
push edi
call dword [eax + 0x104]
push esi
call fcn.005dc1d0
mov ecx, dword [0x86eb44]
mov edx, dword [ecx]
add esp, 4
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov ecx, dword [0x86eb5c]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x60]
push ecx
push edi
call dword [eax + 0x104]
push esi
mov ecx, 0x835860
call fcn.0048bd80
push esi
mov ecx, 0x8357e0
call fcn.0048bd80
push esi
mov ecx, 0x8357e0
call fcn.004031f0
mov ecx, dword [0x86eb5c]
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
cmp dword [0x870ce4], ebx
mov dword [0x870910], ebx
je 0x5cb2f3
cmp dword [0x870ce0], ebx
je 0x5cb27c
mov eax, dword [0x870974]
mov edx, dword [eax]
push ebx
push 0xe
push eax
call dword [edx + 0xe4]
call fcn.005cb7d0
mov eax, dword [0x870974]
mov ecx, dword [eax]
push 1
push 0xe
push eax
call dword [ecx + 0xe4]
jmp 0x5cb383
mov ecx, dword [0x86eb5c]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x70]
push ecx
push edi
call dword [eax + 0x104]
mov eax, dword [0x870974]
mov edx, dword [eax]
push ebx
push 0xe
push eax
call dword [edx + 0xe4]
push ebx
push esi
call fcn.00491820
push ebx
push esi
call fcn.0061ac10
push ebx
push esi
call fcn.0061aa60
push ebx
push ebx
push esi
call fcn.00494230
push esi
call fcn.0061af70
push ebx
push esi
call fcn.0061aa10
add esp, 0x30
jmp 0x5cb352
cmp dword [0x8654a4], 6
je 0x5cb383
mov ecx, dword [0x86eb5c]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x58]
push ecx
push edi
call dword [eax + 0x104]
mov eax, dword [0x870974]
mov edx, dword [eax]
push ebx
push 0xe
push eax
call dword [edx + 0xe4]
push ebx
push esi
call fcn.0061aa10
add esp, 8
mov eax, dword [0x870974]
mov ecx, dword [eax]
push 1
push 0xe
push eax
call dword [ecx + 0xe4]
mov ecx, dword [0x86eb5c]
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 8]
mov eax, dword [edi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov dword [0x870910], ebx
cmp dword [0x870cd0], ebx
je 0x5cb3eb
mov ecx, dword [0x86eb28]
mov dword [0x870910], ecx
mov edx, dword [ecx]
mov edi, ecx
call dword [edx + 4]
mov edx, dword [edi + 0x24]
mov eax, dword [0x870974]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x15c]
mov edi, dword [edi + 0x20]
mov eax, dword [edi]
push ebx
lea ecx, [esp + 0x5c]
push ecx
push edi
call dword [eax + 0x104]
push ebx
push esi
call fcn.00610de0
mov ecx, dword [0x86eb28]
mov edx, dword [ecx]
add esp, 8
mov esi, ecx
call dword [edx + 8]
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
mov dword [0x870910], ebx
mov eax, dword [esp + 0x10]
inc eax
cmp eax, 1
mov dword [esp + 0x10], eax
jle 0x5cacd0
cmp byte [0x8709d0], bl
mov byte [0x87082c], bl
je 0x5cb438
mov eax, dword [0x870974]
mov edx, dword [eax]
push 7
push 0xa8
push eax
call dword [edx + 0xe4]
mov eax, dword [0x870850]
push ebx
push 1
push 7
push 1
push 0xffffffffffffffff
push ebx
push eax
call fcn.005c6e10
add esp, 0x1c
cmp dword [0x870cfc], ebx
je 0x5cb457
cmp dword [0x870ce4], ebx
je 0x5cb457
cmp dword [0x870ce0], ebx
mov byte [0x8707ce], 1
jne 0x5cb45d
mov byte [0x8707ce], bl
mov eax, dword [0x8654a4]
mov edi, 6
cmp eax, edi
jne 0x5cb47a
cmp dword [0x870d0c], ebx
mov byte [0x8707cf], 1
jne 0x5cb480
mov byte [0x8707cf], bl
push 1
call fcn.0048b1b0
mov esi, dword [eax + 0x60]
mov eax, dword [esi + 0xc]
add esp, 4
cmp eax, ebx
jne 0x5cb499
cmp dword [esi + 0x24], ebx
je 0x5cb4a8
cmp dword [0x870d04], ebx
mov byte [0x8707d1], 1
jne 0x5cb4ae
mov byte [0x8707d1], bl
cmp dword [0x8654a4], edi
jne 0x5cb4cd
cmp dword [0x870d10], ebx
je 0x5cb4cd
cmp dword [0x870cec], ebx
mov byte [0x8707d2], 1
jne 0x5cb4d3
mov byte [0x8707d2], bl
cmp byte [0x8707cf], bl
je 0x5cb4e4
push ebx
call fcn.005c7140
add esp, 4
cmp byte [0x8707ce], bl
jne 0x5cb504
cmp byte [0x8707cc], bl
jne 0x5cb504
cmp dword [0x870d00], ebx
jne 0x5cb504
cmp byte [0x8707d2], bl
je 0x5cb51e
call fcn.005cc580
cmp byte [0x8707ce], bl
jne 0x5cb519
cmp byte [0x8707cc], bl
je 0x5cb51e
call fcn.005cc670
cmp byte [0x8707ce], bl
mov byte [esp + 0x18], bl
mov byte [esp + 0x14], bl
mov byte [esp + 0x1c], bl
mov byte [esp + 0x24], bl
mov byte [esp + 0x20], bl
je 0x5cb541
mov byte [esp + 0x14], 1
jmp 0x5cb569
cmp dword [0x870d00], ebx
je 0x5cb550
mov byte [esp + 0x1c], 1
jmp 0x5cb569
cmp byte [0x8707cc], bl
je 0x5cb55f
mov byte [esp + 0x18], 1
jmp 0x5cb569
mov byte [esp + 0x24], 1
mov byte [esp + 0x20], 1
cmp byte [0x8707d8], bl
mov dword [esp + 0x10], 0
je 0x5cb588
mov ecx, dword [0x8707d4]
mov dword [esp + 0x10], ecx
jmp 0x5cb669
cmp dword [0x8654a4], edi
mov eax, dword [0x86eb6c]
je 0x5cb5db
mov edx, 0x3f000000
mov dword [0x7ff15c], edx
mov dword [0x7ff160], edx
mov dword [0x7ff188], 0x3e4ccccd
mov dword [0x7ff164], edx
cmp dword [eax + 0xc], ebx
mov dword [esp + 0x10], 0x3f4ccccd
jbe 0x5cb669
mov dword [esp + 0x10], 0x3ecccccd
mov dword [0x7ff188], 0x3e0f5c29
jmp 0x5cb644
cmp dword [esi + 0x30], ebx
je 0x5cb644
mov ecx, dword [esi + 0x188]
mov edx, dword [esi + 0x1cc]
mov dword [0x7ff188], edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esi + 0x178]
mov dword [0x7ff15c], ecx
mov edx, dword [esi + 0x17c]
mov dword [0x7ff160], edx
fld dword [esi + 0x180]
fld dword [0x7ff15c]
fmul dword [0x784548]
fstp dword [0x7ff15c]
fld dword [0x7ff160]
fmul dword [0x784548]
fstp dword [0x7ff160]
fmul dword [0x784548]
fstp dword [0x7ff164]
cmp dword [eax + 0xc], ebx
jbe 0x5cb669
fld dword [esp + 0x10]
fmul dword [0x784260]
fstp dword [esp + 0x10]
fld dword [0x7ff188]
fmul dword [0x7844d8]
fstp dword [0x7ff188]
cmp byte [0x8707d2], bl
je 0x5cb67e
mov eax, dword [esp + 0x20]
push eax
call fcn.005c7780
add esp, 4
cmp byte [0x8707d1], bl
je 0x5cb693
mov ecx, dword [esp + 0x24]
push ecx
call fcn.005c7530
add esp, 4
cmp byte [0x8707cc], bl
je 0x5cb6a8
mov edx, dword [esp + 0x18]
push edx
call fcn.005cc9a0
add esp, 4
cmp dword [0x870d00], ebx
je 0x5cb6d7
fld dword [0x7ff184]
mov eax, dword [esp + 0x1c]
fsub dword [0x7ff180]
push eax
push ecx
fmul dword [esp + 0x18]
fadd dword [0x7ff180]
fstp dword [esp]
call fcn.005c65a0
add esp, 8
cmp byte [0x8707ce], bl
je 0x5cb6ec
mov ecx, dword [esp + 0x14]
push ecx
call fcn.005cc6d0
add esp, 4
call fcn.005cf150
mov ecx, dword [0x86e770]
mov eax, dword [0x870974]
mov edx, dword [eax]
push ecx
push ebx
push eax
call dword [edx + 0x94]
mov ecx, dword [0x86e774]
mov eax, dword [0x870974]
mov edx, dword [eax]
push ecx
push eax
call dword [edx + 0x9c]
mov edx, dword [0x86e77c]
mov eax, dword [0x86e780]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
mov eax, dword [0x870974]
lea edx, [esp + 0x28]
push edx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0x3f800000
mov ecx, dword [eax]
push eax
call dword [ecx + 0xbc]
mov eax, dword [0x870974]
push 8
push 0xa8
mov dword [0x870848], 0x86e768
mov dword [0x870910], ebx
mov ecx, dword [eax]
push eax
call dword [ecx + 0xe4]
mov edx, dword [0x870850]
push 1
push 1
push 2
push ebx
push ebx
push ebx
push edx
call fcn.005c6e10
mov eax, dword [0x870974]
mov ecx, dword [eax]
add esp, 0x1c
push 0xf
push 0xa8
push eax
call dword [ecx + 0xe4]
call fcn.005dbbf0
call fcn.0048abd0
call fcn.0060f820
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret