Function at 0x4064d8
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x16c
mov byte [esp + 0x162], 0
jmp 0x406525
movzx eax, byte [esp + 0x162]
movzx ecx, byte [esp + 0x162]
mov edx, dword [esp + 0x170]
add edx, ecx
movzx edx, byte [edx]
movsx dx, dl
mov word [esp], dx
fild word [esp]
fstp dword [esp + eax*4 + 0x10]
movzx eax, byte [esp + 0x162]
add eax, 1
mov byte [esp + 0x162], al
cmp byte [esp + 0x162], 0x3f
jbe 0x4064e8
lea eax, [esp + 0x10]
mov dword [esp + 0x164], eax
mov byte [esp + 0x163], 7
jmp 0x406877
mov eax, dword [esp + 0x164]
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x1c
fld dword [eax]
faddp st(1)
fstp dword [esp + 0x15c]
mov eax, dword [esp + 0x164]
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x1c
fld dword [eax]
fsubp st(1)
fstp dword [esp + 0x158]
mov eax, dword [esp + 0x164]
add eax, 4
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x18
fld dword [eax]
faddp st(1)
fstp dword [esp + 0x154]
mov eax, dword [esp + 0x164]
add eax, 4
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x18
fld dword [eax]
fsubp st(1)
fstp dword [esp + 0x150]
mov eax, dword [esp + 0x164]
add eax, 8
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x14
fld dword [eax]
faddp st(1)
fstp dword [esp + 0x14c]
mov eax, dword [esp + 0x164]
add eax, 8
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x14
fld dword [eax]
fsubp st(1)
fstp dword [esp + 0x148]
mov eax, dword [esp + 0x164]
add eax, 0xc
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x10
fld dword [eax]
faddp st(1)
fstp dword [esp + 0x144]
mov eax, dword [esp + 0x164]
add eax, 0xc
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x10
fld dword [eax]
fsubp st(1)
fstp dword [esp + 0x140]
fld dword [esp + 0x15c]
fadd dword [esp + 0x144]
fstp dword [esp + 0x13c]
fld dword [esp + 0x15c]
fsub dword [esp + 0x144]
fstp dword [esp + 0x138]
fld dword [esp + 0x154]
fadd dword [esp + 0x14c]
fstp dword [esp + 0x134]
fld dword [esp + 0x154]
fsub dword [esp + 0x14c]
fstp dword [esp + 0x130]
fld dword [esp + 0x13c]
fadd dword [esp + 0x134]
mov eax, dword [esp + 0x164]
fstp dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x10
fld dword [esp + 0x13c]
fsub dword [esp + 0x134]
fstp dword [eax]
fld dword [esp + 0x130]
fadd dword [esp + 0x138]
fld dword [0x41ec40]
fmulp st(1)
fstp dword [esp + 0x12c]
mov eax, dword [esp + 0x164]
add eax, 8
fld dword [esp + 0x138]
fadd dword [esp + 0x12c]
fstp dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x18
fld dword [esp + 0x138]
fsub dword [esp + 0x12c]
fstp dword [eax]
fld dword [esp + 0x140]
fadd dword [esp + 0x148]
fstp dword [esp + 0x13c]
fld dword [esp + 0x148]
fadd dword [esp + 0x150]
fstp dword [esp + 0x134]
fld dword [esp + 0x150]
fadd dword [esp + 0x158]
fstp dword [esp + 0x130]
fld dword [esp + 0x13c]
fsub dword [esp + 0x130]
fld dword [0x41ec44]
fmulp st(1)
fstp dword [esp + 0x128]
fld dword [esp + 0x13c]
fld dword [0x41ec48]
fmulp st(1)
fadd dword [esp + 0x128]
fstp dword [esp + 0x124]
fld dword [esp + 0x130]
fld dword [0x41ec4c]
fmulp st(1)
fadd dword [esp + 0x128]
fstp dword [esp + 0x120]
fld dword [esp + 0x134]
fld dword [0x41ec40]
fmulp st(1)
fstp dword [esp + 0x11c]
fld dword [esp + 0x158]
fadd dword [esp + 0x11c]
fstp dword [esp + 0x118]
fld dword [esp + 0x158]
fsub dword [esp + 0x11c]
fstp dword [esp + 0x114]
mov eax, dword [esp + 0x164]
add eax, 0x14
fld dword [esp + 0x114]
fadd dword [esp + 0x124]
fstp dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0xc
fld dword [esp + 0x114]
fsub dword [esp + 0x124]
fstp dword [eax]
mov eax, dword [esp + 0x164]
add eax, 4
fld dword [esp + 0x118]
fadd dword [esp + 0x120]
fstp dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x1c
fld dword [esp + 0x118]
fsub dword [esp + 0x120]
fstp dword [eax]
add dword [esp + 0x164], 0x20
movzx eax, byte [esp + 0x163]
sub eax, 1
mov byte [esp + 0x163], al
cmp byte [esp + 0x163], 0
jns 0x406547
lea eax, [esp + 0x10]
mov dword [esp + 0x164], eax
mov byte [esp + 0x163], 7
jmp 0x406bdf
mov eax, dword [esp + 0x164]
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0xe0
fld dword [eax]
faddp st(1)
fstp dword [esp + 0x15c]
mov eax, dword [esp + 0x164]
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0xe0
fld dword [eax]
fsubp st(1)
fstp dword [esp + 0x158]
mov eax, dword [esp + 0x164]
add eax, 0x20
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0xc0
fld dword [eax]
faddp st(1)
fstp dword [esp + 0x154]
mov eax, dword [esp + 0x164]
add eax, 0x20
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0xc0
fld dword [eax]
fsubp st(1)
fstp dword [esp + 0x150]
mov eax, dword [esp + 0x164]
add eax, 0x40
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0xa0
fld dword [eax]
faddp st(1)
fstp dword [esp + 0x14c]
mov eax, dword [esp + 0x164]
add eax, 0x40
fld dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0xa0
fld dword [eax]
fsubp st(1)
fstp dword [esp + 0x148]
mov eax, dword [esp + 0x164]
add eax, 0x60
fld dword [eax]
mov eax, dword [esp + 0x164]
sub eax, 0xffffff80
fld dword [eax]
faddp st(1)
fstp dword [esp + 0x144]
mov eax, dword [esp + 0x164]
add eax, 0x60
fld dword [eax]
mov eax, dword [esp + 0x164]
sub eax, 0xffffff80
fld dword [eax]
fsubp st(1)
fstp dword [esp + 0x140]
fld dword [esp + 0x15c]
fadd dword [esp + 0x144]
fstp dword [esp + 0x13c]
fld dword [esp + 0x15c]
fsub dword [esp + 0x144]
fstp dword [esp + 0x138]
fld dword [esp + 0x154]
fadd dword [esp + 0x14c]
fstp dword [esp + 0x134]
fld dword [esp + 0x154]
fsub dword [esp + 0x14c]
fstp dword [esp + 0x130]
fld dword [esp + 0x13c]
fadd dword [esp + 0x134]
mov eax, dword [esp + 0x164]
fstp dword [eax]
mov eax, dword [esp + 0x164]
sub eax, 0xffffff80
fld dword [esp + 0x13c]
fsub dword [esp + 0x134]
fstp dword [eax]
fld dword [esp + 0x130]
fadd dword [esp + 0x138]
fld dword [0x41ec40]
fmulp st(1)
fstp dword [esp + 0x12c]
mov eax, dword [esp + 0x164]
add eax, 0x40
fld dword [esp + 0x138]
fadd dword [esp + 0x12c]
fstp dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0xc0
fld dword [esp + 0x138]
fsub dword [esp + 0x12c]
fstp dword [eax]
fld dword [esp + 0x140]
fadd dword [esp + 0x148]
fstp dword [esp + 0x13c]
fld dword [esp + 0x148]
fadd dword [esp + 0x150]
fstp dword [esp + 0x134]
fld dword [esp + 0x150]
fadd dword [esp + 0x158]
fstp dword [esp + 0x130]
fld dword [esp + 0x13c]
fsub dword [esp + 0x130]
fld dword [0x41ec44]
fmulp st(1)
fstp dword [esp + 0x128]
fld dword [esp + 0x13c]
fld dword [0x41ec48]
fmulp st(1)
fadd dword [esp + 0x128]
fstp dword [esp + 0x124]
fld dword [esp + 0x130]
fld dword [0x41ec4c]
fmulp st(1)
fadd dword [esp + 0x128]
fstp dword [esp + 0x120]
fld dword [esp + 0x134]
fld dword [0x41ec40]
fmulp st(1)
fstp dword [esp + 0x11c]
fld dword [esp + 0x158]
fadd dword [esp + 0x11c]
fstp dword [esp + 0x118]
fld dword [esp + 0x158]
fsub dword [esp + 0x11c]
fstp dword [esp + 0x114]
mov eax, dword [esp + 0x164]
add eax, 0xa0
fld dword [esp + 0x114]
fadd dword [esp + 0x124]
fstp dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x60
fld dword [esp + 0x114]
fsub dword [esp + 0x124]
fstp dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0x20
fld dword [esp + 0x118]
fadd dword [esp + 0x120]
fstp dword [eax]
mov eax, dword [esp + 0x164]
add eax, 0xe0
fld dword [esp + 0x118]
fsub dword [esp + 0x120]
fstp dword [eax]
add dword [esp + 0x164], 4
movzx eax, byte [esp + 0x163]
sub eax, 1
mov byte [esp + 0x163], al
cmp byte [esp + 0x163], 0
jns 0x40689d
mov byte [esp + 0x162], 0
jmp 0x406c86
movzx eax, byte [esp + 0x162]
fld dword [esp + eax*4 + 0x10]
movzx eax, byte [esp + 0x162]
lea edx, [eax*4]
mov eax, dword [esp + 0x174]
add eax, edx
fld dword [eax]
fmulp st(1)
fstp dword [esp + 0x110]
movzx eax, byte [esp + 0x162]
lea edx, [eax + eax]
mov eax, dword [esp + 0x178]
add edx, eax
fld dword [esp + 0x110]
fld qword [0x41ec50]
faddp st(1)
fnstcw word [esp + 6]
movzx eax, word [esp + 6]
mov ah, 0xc
mov word [esp + 4], ax
fldcw word [esp + 4]
fistp word [esp + 2]
fldcw word [esp + 6]
movzx eax, word [esp + 2]
sub ax, 0x4000
mov word [edx], ax
movzx eax, byte [esp + 0x162]
add eax, 1
mov byte [esp + 0x162], al
cmp byte [esp + 0x162], 0x3f
jbe 0x406bfa
nop
add esp, 0x16c
ret