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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x6cab2b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x578
mov eax, dword [0x1209e40]
push ebx
mov ebx, dword [ebp + 8]
push esi
xor esi, esi
cmp eax, esi
push edi
mov dword [esp + 0x68], ecx
jne 0x5d0df9
mov eax, dword [ebx]
push 2
push 2
push esi
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push 1
push 3
push esi
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push 5
push 1
push esi
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push 1
push 1
push 1
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push 1
push 1
push 2
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push 1
push esi
push ebx
call dword [edx + 0xb8]
mov eax, dword [ebx]
push 1
push 0x89
push ebx
call dword [eax + 0xc8]
xor eax, eax
mov ecx, 0x1a
lea edi, [esp + 0x148]
rep stosd dword es:[edi], eax
movzx ecx, byte [0x106fcee]
mov dword [esp + 0x10], ecx
movzx edx, byte [0x106fced]
fild dword [esp + 0x10]
movzx eax, byte [0x106fcec]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
mov dword [esp + 0x10], edx
fdiv dword [0x6d5098]
mov edi, 0xbf800000
lea ecx, [esp + 0x34]
mov dword [esp + 0x148], 3
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
fstp dword [esp + 0x14c]
fild dword [esp + 0x10]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
mov dword [esp + 0x10], eax
fdiv dword [0x6d5098]
fstp dword [esp + 0x150]
fild dword [esp + 0x10]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fdiv dword [0x6d5098]
fstp dword [esp + 0x154]
call fcn.00413a3f
mov eax, dword [esp + 0x34]
mov dword [esp + 0x188], eax
mov dword [esp + 0x17c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x18c], eax
mov dword [esp + 0x180], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x190], eax
mov dword [esp + 0x184], eax
mov ecx, dword [ebx]
lea edx, [esp + 0x148]
push edx
push esi
push ebx
mov dword [esp + 0x1a0], 0x447a0000
call dword [ecx + 0xb0]
mov ecx, dword [0x106fce8]
mov eax, dword [ebx]
push ecx
push 0x8b
push ebx
call dword [eax + 0xc8]
jmp 0x5d0dfe
mov edi, 0xbf800000
mov edx, dword [ebx]
lea eax, [esp + 0x1fc]
push eax
push ebx
call dword [edx + 0xa4]
lea ecx, [esp + 0x1fc]
push ecx
call fcn.005ed57c
mov edx, dword [ebx]
add esp, 4
lea eax, [esp + 0x500]
push eax
push 3
push ebx
call dword [edx + 0x98]
lea ecx, [esp + 0x500]
push ecx
call fcn.005ed58f
add esp, 4
lea ecx, [esp + 0x4c0]
call fcn.005e5a4d
mov edx, dword [ebx]
lea eax, [esp + 0x4c0]
push eax
push pe_nt_image_headers32
push ebx
call dword [edx + 0x94]
lea ecx, [esp + 0x2d0]
call fcn.005ebd40
cmp dword [0x1209fd8], esi
mov dword [esp + 0x58c], esi
mov dword [esp + 0x36c], 0x43960000
mov dword [esp + 0x30], esi
jle 0x5d104e
mov eax, dword [0x1209fd4]
xor edi, edi
lea esp, [esp]
mov cl, byte [edi + eax + 0xc9]
test cl, cl
jne 0x5d102c
mov cl, byte [edi + eax + 0xc8]
test cl, cl
mov ecx, dword [edi + eax + 4]
jne 0x5d0ed3
push 1
call fcn.005b7390
mov ecx, dword [0x1209fd4]
mov ecx, dword [edi + ecx + 4]
push 1
jmp 0x5d0ee3
push esi
call fcn.005b7390
mov eax, dword [0x1209fd4]
mov ecx, dword [edi + eax + 4]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [0x1209fd4]
mov ecx, dword [edi + eax + 4]
mov dl, byte [ecx + 4]
test dl, dl
jne 0x5d102c
mov edx, dword [ecx + 0x1c]
mov dword [esp + 0xac], edx
mov edx, dword [ecx + 0x20]
mov dword [esp + 0xb0], edx
mov ecx, dword [ecx + 0x24]
mov dword [esp + 0xb4], ecx
lea edx, [esp + 0x24]
push edx
lea ecx, [esp + 0x38]
push ecx
mov ecx, dword [edi + eax + 4]
call fcn.005b5fd0
fld dword [esp + 0x24]
fsub dword [esp + 0x34]
sub esp, 8
fstp dword [esp + 0x2c]
fld dword [esp + 0x30]
fsub dword [esp + 0x40]
fstp dword [esp + 0x30]
fld dword [esp + 0x34]
fsub dword [esp + 0x44]
fstp dword [esp + 0x34]
fld dword [esp + 0x34]
fmul dword [esp + 0x34]
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 + 0x18]
fld dword [esp + 0x18]
fstp qword [esp]
call fcn.00693b94
fstp dword [esp + 0x18]
add esp, 8
fld dword [esp + 0x10]
lea edx, [esp + 0xac]
fstp dword [esp + 0x36c]
push edx
lea ecx, [esp + 0x2f0]
call fcn.005e5bc6
lea ecx, [esp + 0x2d0]
call fcn.005ebd70
test al, al
mov eax, dword [0x1209fd4]
mov ecx, dword [edi + eax + 4]
je 0x5d1009
push esi
call fcn.005b7390
lea ecx, [esp + 0x1c8]
push ecx
lea edx, [esp + 0x1d0]
push edx
lea eax, [esp + 0xb4]
push eax
call fcn.005c1713
fld dword [esp + 0x1d8]
add esp, 0xc
call fcn.00693530
mov ecx, dword [0x1209fd4]
mov dword [edi + ecx + 8], eax
fld dword [esp + 0x1d0]
call fcn.00693530
jmp 0x5d101d
push 1
call fcn.005b7390
mov ecx, dword [0x1209fd4]
or eax, 0xffffffff
mov dword [edi + ecx + 8], eax
mov edx, dword [0x1209fd4]
mov dword [edi + edx + 0xc], eax
mov eax, dword [0x1209fd4]
mov ecx, dword [esp + 0x30]
mov edx, dword [0x1209fd8]
inc ecx
add edi, 0xf4
cmp ecx, edx
mov dword [esp + 0x30], ecx
jl 0x5d0ea0
mov edi, 0xbf800000
call fcn.005c84b0
fild dword [0x7203a4]
mov eax, dword [ebx]
push esi
fstp dword [esp + 0x14]
push 0x1b
fld dword [esp + 0x18]
push ebx
fdiv dword [0x6d5048]
fstp dword [esp + 0x6c]
call dword [eax + 0xc8]
cmp dword [0x1209e40], esi
je 0x5d1115
lea ecx, [esp + 0x48]
push ecx
mov edx, ecx
push edx
mov dword [esp + 0x50], edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], esi
call fcn.005410ce
mov eax, dword [ebx]
push 1
lea ecx, [esp + 0x4c]
push ecx
push 0xc
push ebx
call dword [eax + 0x13c]
mov edx, dword [ebx]
push esi
push 0x1b
push ebx
call dword [edx + 0xc8]
mov eax, dword [ebx]
push 1
push 0xb
push 1
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push esi
push 0x18
push 1
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push 2
push 0xb
push 2
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push esi
push 0x18
push 2
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push 1
push 0x12
push esi
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push 1
push 0x12
push 1
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push esi
push 0x13
push esi
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push esi
push 0x13
push 1
push ebx
call dword [ecx + 0xfc]
movzx edx, byte [0x106fcea]
mov dword [esp + 0x10], edx
mov eax, dword [0x106fce8]
movzx ecx, ah
fild dword [esp + 0x10]
movzx edx, al
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fdiv dword [0x6d5098]
mov dword [esp + 0x10], ecx
movzx ecx, byte [0x106fcee]
mov eax, 0x3f800000
push 1
mov dword [esp + 0xc8], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0xd8], eax
lea eax, [esp + 0xbc]
push eax
push esi
push ebx
mov dword [esp + 0xf8], esi
mov dword [esp + 0xfc], esi
mov dword [esp + 0x100], esi
mov dword [esp + 0x104], esi
fstp dword [esp + 0xc8]
fild dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
mov dword [esp + 0x20], edx
fdiv dword [0x6d5098]
movzx edx, byte [0x106fced]
fstp dword [esp + 0xcc]
fild dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
mov dword [esp + 0x20], ecx
fdiv dword [0x6d5098]
movzx ecx, byte [0x106fcec]
fstp dword [esp + 0xd0]
fild dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
mov dword [esp + 0x20], edx
fdiv dword [0x6d5098]
mov edx, dword [ebx]
fstp dword [esp + 0x98]
fild dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
mov dword [esp + 0x20], ecx
fdiv dword [0x6d5098]
fstp dword [esp + 0x9c]
fild dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fdiv dword [0x6d5098]
fstp dword [esp + 0xa0]
fld dword [esp + 0x98]
fmul dword [0x6eeeb0]
fstp dword [esp + 0xd8]
fld dword [esp + 0x9c]
fmul dword [0x6eeeb0]
fstp dword [esp + 0xdc]
fld dword [esp + 0xa0]
fmul dword [0x6eeeb0]
fstp dword [esp + 0xe0]
call dword [edx + 0x16c]
mov ecx, dword [ebx]
push 1
lea edx, [esp + 0xec]
push edx
push 1
push ebx
call dword [ecx + 0x16c]
mov eax, dword [ebx]
push 1
lea ecx, [esp + 0xcc]
push ecx
push 2
push ebx
call dword [eax + 0x16c]
mov edx, dword [ebx]
push 1
lea eax, [esp + 0x8c]
push eax
push 3
push ebx
call dword [edx + 0x16c]
mov edi, dword [0x1209fd8]
dec edi
cmp edi, esi
mov dword [esp + 0x30], edi
jl 0x5d1e83
lea ecx, [ecx]
mov eax, dword [0x1209fd4]
imul edi, edi, 0xf4
mov cl, byte [edi + eax + 0xc9]
test cl, cl
mov dword [esp + 0x10], edi
jne 0x5d1e74
mov cl, byte [edi + eax + 0xc8]
test cl, cl
je 0x5d1e74
mov ecx, dword [ebx]
lea edx, [esp + 0x2b8]
push edx
push ebx
call dword [ecx + 0xa4]
mov ecx, dword [0x1209fd4]
mov eax, dword [edi + ecx + 4]
mov edx, dword [eax + 0x1c]
mov dword [esp + 0x6c], edx
mov edx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x74], eax
mov eax, dword [edi + ecx + 0xc4]
cmp eax, 1
je 0x5d1357
cmp eax, 4
je 0x5d1357
cmp eax, 2
je 0x5d1357
cmp eax, esi
jne 0x5d14c8
mov al, byte [0x106a678]
test al, al
jne 0x5d14df
fld dword [0x106a624]
fcomp dword [0x6ee8cc]
fnstsw ax
test ah, 0x41
jp 0x5d14ef
fld dword [0x106a624]
fcomp dword [0x6dec3c]
fnstsw ax
test ah, 1
jne 0x5d14ef
mov eax, dword [esp + 0x6c]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [esp + 0x74]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x80]
mov dword [ecx + 8], edx
mov ecx, dword [eax + 4]
call fcn.005bc9c0
fild dword [0x7203a4]
mov dword [esp + 0x1c], eax
fstp dword [esp + 0x14]
fld dword [esp + 0x6c]
fdiv dword [esp + 0x14]
call fcn.00693530
fld dword [esp + 0x74]
fdiv dword [esp + 0x14]
mov esi, eax
call fcn.00693530
mov ecx, dword [0x7203a4]
imul esi, ecx
imul eax, ecx
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
test eax, eax
fild dword [esp + 0x18]
fstp dword [esp + 0x18]
fld dword [esp + 0x6c]
fsub dword [esp + 0x18]
fstp dword [esp + 0x18]
fild dword [esp + 0x14]
fstp dword [esp + 0x14]
fld dword [esp + 0x74]
fsub dword [esp + 0x14]
fstp dword [esp + 0x14]
je 0x5d14b5
fld dword [esp + 0x18]
fdiv dword [esp + 0x60]
fstp dword [esp + 0x18]
fld dword [esp + 0x14]
fdiv dword [esp + 0x60]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
call fcn.00693530
fld dword [esp + 0x18]
mov esi, eax
shl esi, 8
call fcn.00693530
add esi, dword [esp + 0x1c]
test byte [eax + esi], 1
je 0x5d1477
mov ecx, dword [ebx]
push 4
push 1
push 0
push ebx
call dword [ecx + 0xfc]
xor esi, esi
jmp 0x5d14fd
mov edx, dword [ebx]
push 5
push 1
push 0
push ebx
call dword [edx + 0xfc]
mov al, byte [0x1070af8]
test al, al
je 0x5d14a2
mov eax, dword [ebx]
push 4
push 1
push 0
push ebx
call dword [eax + 0xfc]
xor esi, esi
jmp 0x5d14fd
mov ecx, dword [ebx]
push 5
push 1
push 0
push ebx
call dword [ecx + 0xfc]
xor esi, esi
jmp 0x5d14fd
mov edx, dword [ebx]
push 5
push 1
push 0
push ebx
call dword [edx + 0xfc]
xor esi, esi
jmp 0x5d14fd
mov edx, dword [ebx]
push 5
push 1
push esi
push ebx
call dword [edx + 0xfc]
mov al, byte [0x1070af8]
test al, al
je 0x5d14ef
mov eax, dword [ebx]
push 4
push 1
push esi
push ebx
call dword [eax + 0xfc]
jmp 0x5d14fd
mov ecx, dword [ebx]
push 5
push 1
push esi
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push esi
push esi
push esi
push ebx
call dword [edx + 0x14c]
mov eax, dword [ebx]
push esi
push esi
push 1
push ebx
call dword [eax + 0x14c]
mov ecx, dword [ebx]
push esi
push esi
push 2
push ebx
call dword [ecx + 0x14c]
mov eax, dword [0x1209fd4]
cmp dword [edi + eax + 0x80], esi
jle 0x5d155b
mov edx, dword [ebx]
lea eax, [edi + eax + 0x18]
push eax
push 1
push ebx
call dword [edx + 0xb0]
mov ecx, dword [ebx]
push 1
push 1
push ebx
call dword [ecx + 0xb8]
mov edx, dword [ebx]
push esi
push esi
push ebx
call dword [edx + 0xb8]
jmp 0x5d1573
mov eax, dword [ebx]
push esi
push 1
push ebx
call dword [eax + 0xb8]
mov ecx, dword [ebx]
push 1
push esi
push ebx
call dword [ecx + 0xb8]
mov al, byte [0x106a678]
test al, al
jne 0x5d15a6
fld dword [0x106a624]
fcomp dword [0x6ee8cc]
fnstsw ax
test ah, 0x41
je 0x5d15a6
fld dword [0x106a624]
fcomp dword [0x6dec3c]
fnstsw ax
test ah, 5
jp 0x5d17a5
mov esi, dword [0x1209fd4]
fild dword [0x7203a4]
mov ecx, dword [edi + esi + 0xa0]
mov dword [esp + 0x1bc], ecx
fstp dword [esp + 0x14]
mov edx, dword [edi + esi + 0xa8]
fld dword [esp + 0x1bc]
mov eax, dword [edi + esi + 0xa4]
fdiv dword [esp + 0x14]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x9c], eax
call fcn.00693530
fld dword [esp + 0x5c]
fdiv dword [esp + 0x14]
mov dword [esp + 0xa4], eax
call fcn.00693530
mov edx, dword [0x106cc04]
imul edx, dword [0x106cc00]
mov dword [esp + 0x20], eax
xor eax, eax
test edx, edx
mov dword [esp + 0x1c], eax
jle 0x5d17ab
mov dword [esp + 0x18], eax
jmp 0x5d1630
mov eax, dword [0x106cd40]
fild dword [0x7203a4]
mov ecx, dword [esp + 0x18]
lea esi, [ecx + eax]
fstp dword [esp + 0x14]
fld dword [esi + 0x4c]
fdiv dword [esp + 0x14]
call fcn.00693530
fld dword [esi + 0x54]
fdiv dword [esp + 0x14]
mov dword [esp + 0x44], eax
call fcn.00693530
mov edx, dword [esp + 0xa4]
cmp dword [esp + 0x44], edx
jne 0x5d1779
cmp eax, dword [esp + 0x20]
jne 0x5d1779
test esi, esi
je 0x5d1779
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x1bc]
push eax
push ecx
push edx
lea ecx, [esi + 0x1f5f8]
call fcn.0061dd00
mov eax, dword [esi + 0x1f630]
test eax, eax
je 0x5d1779
xor eax, eax
mov ecx, 0x1a
lea edi, [esp + 0x148]
rep stosd dword es:[edi], eax
mov dword [esp + 0x1a4], eax
mov eax, dword [esi + 0x1f624]
mov dword [esp + 0x148], 1
mov dword [esp + 0x19c], 0x3e4ccccd
mov dword [esp + 0x1a0], 0x3ba3d70a
fld dword [eax + 0xc]
fdiv dword [0x6d5098]
fstp dword [esp + 0x14c]
fld dword [eax + 0x10]
fdiv dword [0x6d5098]
fstp dword [esp + 0x150]
fld dword [eax + 0x14]
fdiv dword [0x6d5098]
fstp dword [esp + 0x154]
mov ecx, dword [eax]
mov dword [esp + 0x17c], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x180], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x184], ecx
mov edx, dword [eax + 0x18]
mov eax, dword [ebx]
lea ecx, [esp + 0x148]
push ecx
push 0
push ebx
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x1a4], 0x3f800000
call dword [eax + 0xb0]
mov edx, dword [ebx]
push 5
push 1
push 0
push ebx
call dword [edx + 0xfc]
mov edi, dword [esp + 0x10]
mov ecx, dword [0x106cc04]
imul ecx, dword [0x106cc00]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
inc eax
add esi, 0x1f650
cmp eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], esi
jl 0x5d1630
mov esi, dword [0x1209fd4]
mov al, byte [0x71c74c]
test al, al
je 0x5d1988
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x5d18ae
mov eax, dword [0x106a554]
mov edx, dword [eax + 0x258]
mov ecx, dword [eax + 0x254]
mov dword [esp + 0xa0], edx
mov edx, dword [eax + 0x250]
fld dword [esp + 0xa0]
mov eax, dword [esi + 0xa8]
mov dword [esp + 0x58], eax
fsub dword [esp + 0x58]
mov dword [esp + 0x84], ecx
mov ecx, dword [esi + 0xa4]
mov dword [esp + 0x64], ecx
fstp dword [esp + 0x44]
mov dword [esp + 0x1e4], edx
fld dword [esp + 0x84]
mov edx, dword [esi + 0xa0]
fsub dword [esp + 0x64]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x1b0], edx
lea edx, [esp + 0x78]
fstp dword [esp + 0x20]
push edx
mov eax, dword [esp + 0x24]
fld dword [esp + 0x1e8]
fsub dword [esp + 0x1b4]
mov dword [esp + 0x80], eax
mov eax, edx
push eax
fstp dword [esp + 0x80]
mov dword [esp + 0x88], ecx
call fcn.00540bf1
fld dword [esp + 0x78]
fmul dword [0x6e4e60]
fadd dword [esp + 0x1b0]
fstp dword [0x106a5c4]
fld dword [esp + 0x7c]
fmul dword [0x6e4e60]
fadd dword [esp + 0x64]
fstp dword [0x106a5c8]
fld dword [esp + 0x80]
fmul dword [0x6e4e60]
fadd dword [esp + 0x58]
fstp dword [0x106a5cc]
jmp 0x5d1963
mov ecx, dword [edi + esi + 0xa8]
fld dword [0x106a5cc]
mov edx, dword [edi + esi + 0xa4]
mov eax, dword [edi + esi + 0xa0]
mov dword [esp + 0xa8], ecx
fsub dword [esp + 0xa8]
mov dword [esp + 0x98], edx
mov dword [esp + 0x1f0], eax
sub esp, 8
fstp dword [esp + 0x20]
fld dword [0x106a5c8]
fsub dword [esp + 0xa0]
fstp dword [esp + 0x24]
fld dword [0x106a5c4]
fsub dword [esp + 0x1f8]
fstp dword [esp + 0x1e0]
fld dword [esp + 0x1e0]
fmul dword [esp + 0x1e0]
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 + 0x28]
fld dword [esp + 0x28]
fstp qword [esp]
call fcn.00693b94
fstp dword [esp + 0x28]
add esp, 8
fld dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fcomp dword [0x106a5dc]
fnstsw ax
test ah, 0x41
je 0x5d1982
mov ecx, dword [ebx]
push 0x106a590
push 0
push ebx
call dword [ecx + 0xb0]
mov edx, dword [ebx]
push 5
push 1
push 0
push ebx
call dword [edx + 0xfc]
mov esi, dword [0x1209fd4]
mov eax, dword [0x1209e40]
test eax, eax
je 0x5d1c58
mov edi, dword [edi + esi + 4]
add edi, 0x1c
mov eax, dword [edi]
mov ecx, dword [edi + 4]
mov edx, dword [edi + 8]
push edx
push ecx
push eax
mov dword [esp + 0x40], eax
lea eax, [esp + 0x284]
push eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], edx
call fcn.00541e7f
mov ecx, dword [ebx]
lea edx, [esp + 0x540]
push edx
push 2
push ebx
call dword [ecx + 0x98]
mov eax, dword [ebx]
lea ecx, [esp + 0x380]
push ecx
push 3
push ebx
call dword [eax + 0x98]
lea edx, [esp + 0x540]
push edx
lea eax, [esp + 0x27c]
push eax
lea ecx, [esp + 0x408]
push ecx
call fcn.00541522
lea edx, [esp + 0x380]
push edx
mov ecx, 0x10
lea esi, [esp + 0x404]
lea edi, [esp + 0x484]
lea eax, [esp + 0x484]
rep movsd dword es:[edi], dword [esi]
push eax
lea ecx, [esp + 0x3c8]
push ecx
call fcn.00541522
lea edx, [esp + 0x440]
push edx
lea eax, [esp + 0x23c]
mov ecx, 0x10
lea esi, [esp + 0x3c4]
lea edi, [esp + 0x444]
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.0054176b
mov ecx, dword [ebx]
push 4
lea edx, [esp + 0x23c]
push edx
push 8
push ebx
call dword [ecx + 0x13c]
lea eax, [esp + 0x278]
push eax
lea ecx, [esp + 0x23c]
push ecx
call fcn.0054176b
mov edx, dword [ebx]
push 4
lea eax, [esp + 0x23c]
push eax
xor esi, esi
push esi
push ebx
call dword [edx + 0x13c]
lea ecx, [esp + 0x220]
push ecx
mov ecx, dword [0x106a554]
add ecx, 0x220
call fcn.005e5ddb
mov edx, dword [eax]
mov dword [esp + 0x48], edx
lea eax, [esp + 0x214]
mov ecx, dword [0x106a554]
push eax
add ecx, 0x220
call fcn.005e5ddb
mov ecx, dword [eax + 4]
mov dword [esp + 0x4c], ecx
mov ecx, dword [0x106a554]
lea edx, [esp + 0x22c]
push edx
add ecx, 0x220
call fcn.005e5ddb
mov eax, dword [eax + 8]
mov ecx, dword [ebx]
push 1
lea edx, [esp + 0x4c]
push edx
push 0x18
push ebx
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], esi
call dword [ecx + 0x13c]
fld dword [esp + 0x38]
fadd dword [0x6d4fd4]
sub esp, 8
fstp dword [esp + 0x40]
fld dword [esp + 0x44]
fsub dword [esp + 0x58]
fstp dword [esp + 0x1c]
fld dword [esp + 0x40]
fsub dword [esp + 0x54]
fstp dword [esp + 0x20]
fld dword [esp + 0x3c]
fsub dword [esp + 0x50]
fstp dword [esp + 0x2c]
fld dword [esp + 0x2c]
fmul dword [esp + 0x2c]
fld dword [esp + 0x20]
fmul dword [esp + 0x20]
faddp st(1)
fld dword [esp + 0x1c]
fmul dword [esp + 0x1c]
faddp st(1)
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fstp qword [esp]
call fcn.00693b94
fstp dword [esp + 0x28]
add esp, 8
fld dword [esp + 0x20]
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fcomp dword [0x6d1030]
fnstsw ax
test ah, 0x41
jp 0x5d1b9d
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x5d1bdb
fld dword [0x6d4fc8]
fdiv dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fmul dword [esp + 0x24]
fstp dword [esp + 0x24]
mov edx, dword [esp + 0x24]
fld dword [esp + 0x18]
fmul dword [esp + 0x1c]
fstp dword [esp + 0x28]
mov eax, dword [esp + 0x28]
fld dword [esp + 0x14]
fmul dword [esp + 0x1c]
fstp dword [esp + 0x2c]
mov ecx, dword [esp + 0x2c]
push 1
mov dword [esp + 0xe4], ecx
lea ecx, [esp + 0xdc]
push ecx
push 0xd
mov dword [esp + 0xe8], eax
mov eax, dword [ebx]
push ebx
mov dword [esp + 0xe8], edx
mov dword [esp + 0xf4], esi
call dword [eax + 0x13c]
mov edx, dword [ebx]
mov eax, 0x3f000000
push 1
mov dword [esp + 0xfc], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], eax
lea eax, [esp + 0xfc]
push eax
push 0x21
push ebx
call dword [edx + 0x13c]
mov ecx, dword [ebx]
push esi
push 0x1c
push ebx
call dword [ecx + 0xc8]
mov edi, dword [esp + 0x10]
mov esi, dword [0x1209fd4]
mov ecx, dword [edi + esi + 4]
mov al, byte [ecx + 4]
test al, al
jne 0x5d1e72
call fcn.005b7190
mov eax, dword [0x1209e40]
test eax, eax
je 0x5d1c93
mov esi, dword [esp + 0x68]
mov eax, dword [esi + 8]
mov edx, dword [ebx]
push eax
push ebx
call dword [edx + 0x160]
mov edx, dword [esi + 0xc]
mov ecx, dword [ebx]
push edx
push ebx
call dword [ecx + 0x130]
mov ecx, dword [0x1209fd4]
fld dword [edi + ecx + 0xcc]
fcomp dword [0x6f3614]
fnstsw ax
test ah, 0x41
je 0x5d1ce4
mov eax, dword [edi + ecx + 4]
mov eax, dword [eax + 0xd4]
test eax, eax
je 0x5d1cc5
mov cl, byte [eax + 0x1b4]
test cl, cl
jne 0x5d1ce4
mov eax, dword [ebx]
push 0
push 0x1b
push ebx
call dword [eax + 0xc8]
mov ecx, dword [ebx]
push 0
push 0xf
push ebx
call dword [ecx + 0xc8]
jmp 0x5d1e4a
mov edx, dword [ebx]
push 1
push 0x1b
push ebx
call dword [edx + 0xc8]
mov eax, dword [ebx]
push 5
push 0x13
push ebx
call dword [eax + 0xc8]
mov ecx, dword [ebx]
push 6
push 0x14
push ebx
call dword [ecx + 0xc8]
mov edx, dword [0x1209fd4]
fld dword [edi + edx + 0xcc]
mov byte [esp + 0x42], 0xff
fmul dword [0x6d5098]
mov byte [esp + 0x41], 0xff
mov byte [esp + 0x40], 0xff
call fcn.00693530
mov byte [esp + 0x43], al
mov ecx, dword [esp + 0x40]
mov eax, dword [ebx]
push ecx
push 0x3c
push ebx
call dword [eax + 0xc8]
mov ecx, dword [0x1209fd4]
fld dword [edi + ecx + 0xcc]
fcomp dword [0x6f3614]
fnstsw ax
test ah, 0x41
jne 0x5d1db7
mov eax, dword [edi + ecx + 4]
mov eax, dword [eax + 0xd4]
test eax, eax
je 0x5d1db7
mov dl, byte [eax + 0x1b4]
test dl, dl
je 0x5d1db7
mov edx, dword [ebx]
push 2
push 5
push 0
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push 3
push 6
push 0
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push 4
push 4
push 0
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push 0
push 0xf
push ebx
call dword [edx + 0xc8]
jmp 0x5d1e3b
mov ecx, dword [edi + ecx + 4]
mov eax, dword [ecx + 0xd4]
test eax, eax
je 0x5d1e10
mov cl, byte [eax + 0x1b4]
test cl, cl
je 0x5d1e10
mov eax, dword [ebx]
push 2
push 5
push 0
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push 2
push 4
push 0
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push 1
push 0xf
push ebx
call dword [edx + 0xc8]
mov eax, dword [ebx]
push 7
push 0x19
push ebx
call dword [eax + 0xc8]
push 0xa0
push 0x18
jmp 0x5d1e32
mov edx, dword [ebx]
push 3
push 6
push 0
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push 3
push 4
push 0
push ebx
call dword [eax + 0xfc]
push 0
push 0xf
mov ecx, dword [ebx]
push ebx
call dword [ecx + 0xc8]
mov edx, dword [ebx]
push 1
push 4
push 1
push ebx
call dword [edx + 0xfc]
mov eax, dword [0x1209fd4]
mov ecx, dword [edi + eax + 4]
call fcn.005b71e0
mov ecx, dword [ebx]
push 0
push 0x1b
push ebx
call dword [ecx + 0xc8]
mov edx, dword [ebx]
push 0
push 0xf
push ebx
call dword [edx + 0xc8]
xor esi, esi
mov edi, dword [esp + 0x30]
dec edi
mov dword [esp + 0x30], edi
jns 0x5d12e0
mov eax, dword [ebx]
xor edi, edi
push edi
push 0x13
push esi
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push edi
push 0x13
push 1
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push 0xee
push 0x18
push ebx
call dword [edx + 0xc8]
mov eax, dword [ebx]
push esi
push 0x1b
push ebx
call dword [eax + 0xc8]
mov ecx, dword [ebx]
push esi
push 0x18
push ebx
call dword [ecx + 0xc8]
mov edx, dword [ebx]
push 2
push 5
push esi
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push 2
push 4
push esi
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push 1
push 4
push 1
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push 2
push 2
push esi
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push 2
push 1
push esi
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push 1
push 1
push 1
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push esi
push 0x89
push ebx
call dword [edx + 0xc8]
mov eax, dword [ebx]
push esi
push ebx
call dword [eax + 0x160]
call fcn.005c7f80
mov edi, 1
mov ecx, dword [ebx]
push esi
push edi
push ebx
call dword [ecx + 0xb8]
inc edi
cmp edi, 8
jl 0x5d1f41
mov edx, dword [ebx]
push 1
push 0xb
push 1
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push esi
push 0x18
push 1
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push 2
push 0xb
push 2
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push esi
push 0x18
push 2
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push 2
push 0x12
push esi
push ebx
call dword [eax + 0xfc]
mov ecx, dword [ebx]
push 2
push 0x12
push 1
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
mov eax, 0x3f800000
mov dword [esp + 0x108], eax
mov dword [esp + 0x11c], eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x144], eax
lea eax, [esp + 0x108]
push eax
push 0x11
push ebx
mov dword [esp + 0x118], esi
mov dword [esp + 0x11c], esi
mov dword [esp + 0x120], esi
mov dword [esp + 0x124], esi
mov dword [esp + 0x12c], esi
mov dword [esp + 0x130], esi
mov dword [esp + 0x134], esi
mov dword [esp + 0x138], esi
mov dword [esp + 0x140], esi
mov dword [esp + 0x144], esi
mov dword [esp + 0x148], esi
mov dword [esp + 0x14c], esi
call dword [edx + 0x94]
mov ecx, dword [ebx]
push 1
push 1
push 1
push ebx
call dword [ecx + 0xfc]
mov edx, dword [ebx]
push 1
push 1
push 2
push ebx
call dword [edx + 0xfc]
mov eax, dword [ebx]
push esi
push 1
push ebx
call dword [eax + 0xf4]
mov ecx, dword [ebx]
push esi
push 2
push ebx
call dword [ecx + 0xf4]
mov edx, dword [ebx]
push esi
push 3
push ebx
call dword [edx + 0xf4]
lea ecx, [esp + 0x2d0]
mov dword [esp + 0x58c], 0xffffffff
call fcn.005ebd60
mov ecx, dword [esp + 0x584]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4