Function at 0x403f50
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
push 8
call fcn.00404673
add esp, 4
mov dword [ebp - 0x2c], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0x20001
push 0
push ebx
push 1
mov ebx, 0
mov eax, 1
call fcn.00404679
add esp, 0x10
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
push 0
mov ebx, 0x308
call fcn.0040467f
add esp, 4
mov dword [0x24], eax
mov dword [ebp - 4], 0x20
fild dword [ebp - 4]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fdiv qword [0x2d]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
call fcn.00403ad9
mov dword [ebp - 8], eax
fild dword [0x1c]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fild dword [ebp - 8]
fstp qword [ebp - 0x48]
fmul qword [ebp - 0x48]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.00403ad9
mov dword [ebp - 0xc], eax
push 0x80000601
push 0x40100000
push 0
fild dword [ebp - 0xc]
fstp qword [ebp - 0x40]
push 0x80000601
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push 2
mov ebx, 0x48
call fcn.0040467f
add esp, 0x1c
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00403ad9
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jle 0x4040c6
fild dword [ebp - 0xc]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fadd qword [0x35]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x50]
fsub qword [ebp - 0x50]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
call fcn.00403ad9
mov dword [ebp - 0xc], eax
fild dword [ebp - 0xc]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fild dword [0x20]
fstp qword [ebp - 0x48]
fmul qword [ebp - 0x48]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.00403ad9
mov dword [ebp - 0x14], eax
push 0x80000301
push 0
push dword [ebp - 0x14]
push 1
mov ebx, 0x1bc
call fcn.0040467f
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40411c
push ebx
call fcn.0040466d
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x3c], esp
push 0
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x404132
add eax, 8
push eax
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x40413d
add eax, 8
push eax
mov eax, 9
call fcn.00404697
cmp dword [ebp - 0x3c], esp
je 0x40415a
push 6
call fcn.00404691
add esp, 4
mov dword [ebp - 0x1c], eax
mov eax, dword [0x20]
xor ecx, ecx
push eax
lea eax, [ebp - 0x20]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x404240
fild dword [0x20]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fild dword [ebp - 0x20]
fstp qword [ebp - 0x48]
fsub qword [ebp - 0x48]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
fild dword [ebp - 0xc]
fstp qword [ebp - 0x58]
fmul qword [ebp - 0x58]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
call fcn.00403ad9
mov dword [ebp - 0x24], eax
fild dword [ebp - 0x20]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fsub qword [0x3d]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fild dword [ebp - 0xc]
fstp qword [ebp - 0x50]
fmul qword [ebp - 0x50]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
call fcn.00403ad9
mov dword [ebp - 0x28], eax
fild dword [ebp - 0x1c]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fild dword [ebp - 0x28]
fstp qword [ebp - 0x48]
fadd qword [ebp - 0x48]
fstp qword [ebp - 0x50]
fild dword [0]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
fild dword [ebp - 0x24]
fstp qword [ebp - 0x60]
fadd qword [ebp - 0x60]
fstp qword [ebp - 0x68]
mov dword [ebp - 0x6c], esp
push dword [ebp - 0xc]
fld qword [ebp - 0x68]
call fcn.00403ad9
push eax
fld qword [ebp - 0x50]
call fcn.00403ad9
push eax
mov eax, 0xa
call fcn.00404697
cmp dword [ebp - 0x6c], esp
je 0x404238
push 6
call fcn.00404691
add esp, 4
pop eax
pop ebx
pop ecx
jmp 0x40416b
add esp, 0xc
push 0
push 0
push 0
push 0x80000201
push 0
push 0x20
push 0x80000301
push 0
push dword [0x20]
push 0x80000301
push 0
push dword [0x1c]
push 0x20001
push 0
push dword [ebp - 0x2c]
push 5
mov ebx, 0x28
mov eax, 1
call fcn.00404679
add esp, 0x40
push 0x80000005
push 0
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x4042a3
mov eax, 0x45
push eax
push 0x20001
push 0
push dword [ebp - 0x2c]
push 2
mov ebx, 0x50
mov eax, 1
call fcn.00404679
add esp, 0x1c
push 0x20001
push 0
push dword [ebp - 0x2c]
push 1
mov ebx, 0x18
mov eax, 1
call fcn.00404679
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4042fd
push ebx
call fcn.0040466d
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x404314
mov eax, 0x45
push eax
push 1
mov ebx, 0x354
call fcn.0040467f
add esp, 0x10
mov dword [ebp - 0x34], eax
push 0
mov ebx, 0x308
call fcn.0040467f
add esp, 4
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
fild dword [0x24]
fstp qword [ebp - 0x4c]
fsub qword [ebp - 0x4c]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
call fcn.00403ad9
mov dword [0x28], eax
push 0
mov ebx, 0x48
mov eax, 2
call fcn.00404679
add esp, 4
mov dword [ebp - 0x38], eax
push 0x80000301
push 0
push dword [0x28]
push 1
mov ebx, 0x168
call fcn.0040467f
add esp, 0x10
mov dword [ebp - 0x3c], eax
push 0x80000301
push 0
push dword [ebp - 0x38]
push 1
mov ebx, 0x168
call fcn.0040467f
add esp, 0x10
mov dword [ebp - 0x40], eax
push 0x80000301
push 0
push dword [0x1c]
push 1
mov ebx, 0x168
call fcn.0040467f
add esp, 0x10
mov dword [ebp - 0x44], eax
push 0x80000301
push 0
push dword [0x20]
push 1
mov ebx, 0x168
call fcn.0040467f
add esp, 0x10
mov dword [ebp - 0x48], eax
push dword [ebp - 0x48]
push 0x4d
push dword [ebp - 0x44]
push 0x4f
push dword [ebp - 0x40]
push 0x5a
push dword [ebp - 0x3c]
push 0x69
mov ecx, 8
call fcn.00403ef4
add esp, 0x20
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x404443
push ebx
call fcn.0040466d
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x404453
push ebx
call fcn.0040466d
add esp, 4
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x404463
push ebx
call fcn.0040466d
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x404473
push ebx
call fcn.0040466d
add esp, 4
push 0
push dword [ebp - 0x4c]
push 0xffffffffffffffff
push 8
push 0x16018582
push 0x52010001
call fcn.0040468b
add esp, 0x18
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40449e
push ebx
call fcn.0040466d
add esp, 4
push 0xffffffffffffffff
push 2
push 0x1601865b
push 0x52010001
call fcn.00404685
add esp, 0x10
mov dword [ebp - 0x3c], eax
push 0xffffffffffffffff
push 3
push 0x1601865b
push 0x52010001
call fcn.00404685
add esp, 0x10
push 0
push 0
push 0
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push dword [ebp - 0x3c]
push 0x80000301
push 0
push 0
push 0x80000301
push 0
push 0
push 0x80000301
push 0
push dword [ebp - 0x34]
push 0x10008
push 0x1601865b
push 0x52010001
push 7
mov ebx, 0x4b8
call fcn.0040467f
add esp, 0x58
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x404538
push ebx
call fcn.0040466d
add esp, 4
mov ebx, dword [ebp - 0x2c]
push ebx
push 0x20001
push 0
push ebx
push 1
mov ebx, 4
mov eax, 1
call fcn.00404679
add esp, 0x10
call fcn.0040466d
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x404570
push ebx
call fcn.0040466d
add esp, 4
mov esp, ebp
pop ebp
ret