Function at 0x456d70
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
mov ebx, ecx
test ebx, ebx
js 0x456d89
shr ebx, 2
mov esi, dword [edx + ebx*4]
dec ebx
push esi
jns 0x456d82
mov edx, esp
mov ebx, edx
mov esi, dword [ebp + 8]
xor eax, eax
mov al, byte [ebx + 2]
mov dword [esi], eax
xor eax, eax
mov al, byte [ebx + 0x20]
mov dword [esi + 4], eax
xor eax, eax
mov al, byte [ebx + 3]
mov dword [esi + 8], eax
lea edx, [esi + 0xc]
lea eax, [ebx + 0x21]
mov ecx, 4
call fcn.00402cc8
lea edx, [esi + 0x10]
lea eax, [ebx + 0x25]
mov ecx, 4
call fcn.00402cc8
xor eax, eax
mov al, byte [ebx + 9]
mov dword [esi + 0x14], eax
mov al, byte [ebx + 0xd]
cmp al, 0xff
jne 0x456e02
cmp byte [ebx + 0xe], 0
jne 0x456e02
xor eax, eax
mov al, byte [ebx + 4]
mov edx, eax
and edx, 0xf
shr eax, 4
cmp edx, eax
jbe 0x456df8
mov ax, word [ebp - 2]
inc eax
mov word [ebp - 6], ax
jmp 0x456e1c
mov ax, word [ebp - 2]
mov word [ebp - 6], ax
jmp 0x456e1c
and eax, 0xff
add ax, 0x7d0
mov word [ebp - 2], ax
xor eax, eax
mov al, byte [ebx + 0xe]
add ax, 0x7d0
mov word [ebp - 6], ax
movzx edi, byte [ebx + 4]
and edi, 0xf
xor eax, eax
mov al, byte [ebx + 6]
shr eax, 3
mov word [ebp - 4], ax
test di, di
jbe 0x456e3a
cmp di, 0xc
jbe 0x456e3e
mov di, 1
cmp word [ebp - 4], 0
jbe 0x456e4c
cmp word [ebp - 4], 0x1f
jbe 0x456e52
mov word [ebp - 4], 1
mov cx, word [ebp - 4]
mov edx, edi
mov ax, word [ebp - 2]
call fcn.0040a420
fstp qword [esi + 0x18]
wait
xor edx, edx
mov dl, byte [ebx + 6]
and edx, 7
mov edi, edx
shl edi, 2
xor eax, eax
mov al, byte [ebx + 5]
mov edx, eax
shr edx, 6
add di, dx
and eax, 0x3f
mov word [ebp - 8], ax
cmp di, 0x17
jbe 0x456e8e
xor edi, edi
cmp word [ebp - 8], 0x3b
jbe 0x456e9b
mov word [ebp - 8], 0
push 0
xor ecx, ecx
mov dx, word [ebp - 8]
mov eax, edi
call fcn.0040a278
fstp qword [esi + 0x20]
wait
movzx edi, byte [ebx + 4]
shr edi, 4
xor eax, eax
mov al, byte [ebx + 8]
shr eax, 3
mov word [ebp - 4], ax
test di, di
jbe 0x456ecc
cmp di, 0xc
jbe 0x456ed0
mov di, 1
cmp word [ebp - 4], 0
jbe 0x456ede
cmp word [ebp - 4], 0x1f
jbe 0x456ee4
mov word [ebp - 4], 1
mov cx, word [ebp - 4]
mov edx, edi
mov ax, word [ebp - 6]
call fcn.0040a420
fstp qword [esi + 0x28]
wait
xor edx, edx
mov dl, byte [ebx + 8]
and edx, 7
mov edi, edx
shl edi, 2
xor eax, eax
mov al, byte [ebx + 7]
mov edx, eax
shr edx, 6
add di, dx
and eax, 0x3f
mov word [ebp - 8], ax
cmp di, 0x17
jbe 0x456f20
xor edi, edi
cmp word [ebp - 8], 0x3b
jbe 0x456f2d
mov word [ebp - 8], 0
push 0
xor ecx, ecx
mov dx, word [ebp - 8]
mov eax, edi
call fcn.0040a278
fstp qword [esi + 0x30]
wait
mov al, byte [ebx + 1]
cmp al, 0xa
jae 0x456f51
and eax, 0xff
mov dword [esi + 0x38], eax
jmp 0x456f56
xor eax, eax
mov dword [esi + 0x38], eax
xor eax, eax
mov al, byte [ebx + 0xb]
xor edx, edx
mov dl, byte [ebx + 0xc]
shl edx, 8
add eax, edx
shl eax, 8
xor edx, edx
mov dl, byte [ebx + 0xa]
add eax, edx
mov dword [esi + 0x3c], eax
xor eax, eax
mov al, byte [ebx + 0xf]
mov dword [esi + 0x40], eax
xor eax, eax
mov al, byte [ebx + 0x10]
xor edx, edx
mov dl, byte [ebx + 0x11]
shl edx, 8
add eax, edx
xor edx, edx
mov dl, byte [ebx + 0x12]
shl edx, 0x10
add eax, edx
mov dword [esi + 0x44], eax
xor eax, eax
mov al, byte [ebx + 0x13]
mov dword [esi + 0x48], eax
xor eax, eax
mov al, byte [ebx + 0x14]
mov dword [esi + 0x4c], eax
xor eax, eax
mov al, byte [ebx + 0x15]
mov dword [esi + 0x50], eax
xor eax, eax
mov al, byte [ebx + 0x16]
mov dword [esi + 0x54], eax
xor eax, eax
mov al, byte [ebx + 0x17]
mov dword [esi + 0x58], eax
xor eax, eax
mov al, byte [ebx + 0x18]
mov dword [esi + 0x5c], eax
xor eax, eax
mov al, byte [ebx + 0x19]
xor edx, edx
mov dl, byte [ebx + 0x1a]
shl edx, 8
add eax, edx
xor edx, edx
mov dl, byte [ebx + 0x1b]
shl edx, 0x10
add eax, edx
mov dword [esi + 0x60], eax
xor eax, eax
mov al, byte [ebx + 0x1c]
mov dword [esi + 0x64], eax
xor eax, eax
mov al, byte [ebx + 0x1d]
mov dword [esi + 0x68], eax
lea eax, [esi + 0x6c]
mov dl, byte [ebx + 0x1e]
call fcn.00404ab4
lea eax, [esi + 0x70]
mov dl, byte [ebx + 0x1f]
call fcn.00404ab4
mov edi, dword [ebp - 0x14]
mov esi, dword [ebp - 0x10]
mov ebx, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret 4