Function at 0x549398
Capabilities:
Enumerate pe sections

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x1c
mov ebx, ecx
mov edi, dword [esp + 0x30]
movzx ebp, byte [edi]
test ebp, ebp
je 0x549474
movzx edx, byte [edi + 2]
mov eax, dword [ebx + 0x14]
mov dword [esp], eax
test dl, 4
je 0x5493cc
movsx eax, word [ebx + 0x28]
add eax, dword [esp]
mov dword [esp + 0xc], eax
jmp 0x5493d0
mov dword [esp + 0xc], eax
movzx edx, byte [edi + 3]
mov eax, dword [ebx + 0x1c]
add dword [esp], eax
test dl, 4
je 0x5493eb
movsx eax, word [ebx + 0x2a]
mov edx, dword [esp]
sub edx, eax
mov dword [esp], edx
mov eax, dword [ebx + 0x18]
add eax, dword [ebx + 0x20]
mov dword [esp + 0x10], eax
test ebp, 4
je 0x54940b
movsx eax, word [ebx + 0x24]
mov edx, dword [esp + 0x10]
sub edx, eax
mov dword [esp + 0x10], edx
movzx eax, byte [edi + 4]
mov dword [esp + 8], eax
push dword [ebx + 0x10]
mov ecx, edi
call fcn.0054ca9c
mov dword [esp + 0x14], eax
mov esi, ebp
and esi, 2
xor eax, eax
mov dword [esp + 4], eax
test esi, esi
mov edx, eax
setne dl
mov dword [esp + 4], edx
and ebp, 8
xor eax, eax
mov dword [esp + 0x18], eax
test ebp, ebp
setne al
mov dword [esp + 0x18], eax
mov ebp, dword [esp + 0x14]
push ebp
mov eax, dword [esp + 0xc]
push eax
push 0
mov eax, dword [esp + 0x24]
push eax
mov eax, edx
push eax
mov edx, dword [esp + 0x24]
push edx
mov eax, dword [esp + 0x18]
push eax
push edx
mov eax, dword [esp + 0x2c]
push eax
mov ecx, ebx
call fcn.005cdfc0
movzx ebp, byte [edi + 1]
test ebp, ebp
je 0x54953b
movzx edx, byte [edi + 2]
mov eax, dword [ebx + 0x14]
mov dword [esp], eax
test dl, 4
je 0x54949c
movsx eax, word [ebx + 0x28]
add eax, dword [esp]
mov dword [esp + 0xc], eax
jmp 0x5494a0
mov dword [esp + 0xc], eax
movzx edx, byte [edi + 3]
mov eax, dword [ebx + 0x1c]
add dword [esp], eax
test dl, 4
je 0x5494bb
movsx eax, word [ebx + 0x2a]
mov edx, dword [esp]
sub edx, eax
mov dword [esp], edx
mov eax, dword [ebx + 0x18]
mov dword [esp + 0x10], eax
test ebp, 4
je 0x5494d2
movsx eax, word [ebx + 0x26]
add dword [esp + 0x10], eax
movzx eax, byte [edi + 5]
mov dword [esp + 8], eax
push dword [ebx + 0x10]
mov ecx, edi
call fcn.0054ca9c
mov dword [esp + 0x14], eax
mov esi, ebp
and esi, 2
xor eax, eax
mov dword [esp + 0x18], eax
test esi, esi
mov edx, eax
setne dl
mov dword [esp + 0x18], edx
and ebp, 8
xor eax, eax
mov dword [esp + 4], eax
test ebp, ebp
setne al
mov dword [esp + 4], eax
mov ebp, dword [esp + 0x14]
push ebp
mov eax, dword [esp + 0xc]
push eax
push 1
mov eax, dword [esp + 0x10]
push eax
mov eax, edx
push eax
mov edx, dword [esp + 0x24]
push edx
mov eax, dword [esp + 0x18]
push eax
push edx
mov eax, dword [esp + 0x2c]
push eax
mov ecx, ebx
call fcn.005cdfc0
movzx ebp, byte [edi + 3]
test ebp, ebp
je 0x5495e6
mov eax, dword [ebx + 0x14]
add eax, dword [ebx + 0x1c]
mov dword [esp + 0x14], eax
test ebp, 4
je 0x549567
movsx eax, word [ebx + 0x2a]
mov edx, dword [esp + 0x14]
sub edx, eax
mov dword [esp + 0x14], edx
movzx ecx, byte [edi]
mov eax, dword [ebx + 0x18]
mov dword [esp + 8], eax
mov edx, dword [ebx + 0x20]
add edx, eax
mov dword [esp + 0x10], edx
test cl, 4
je 0x549589
movsx eax, word [ebx + 0x24]
sub edx, eax
mov dword [esp + 0x10], edx
movzx eax, byte [edi + 1]
test al, 4
je 0x549599
movsx eax, word [ebx + 0x26]
add dword [esp + 8], eax
movzx eax, byte [edi + 7]
mov dword [esp + 0xc], eax
push dword [ebx + 0x10]
mov ecx, edi
mov dword [esp + 0x1c], ebp
call fcn.0054ca9c
mov esi, ebp
and esi, 2
xor edx, edx
test esi, esi
setne dl
and ebp, 8
xor ecx, ecx
test ebp, ebp
setne cl
push eax
mov eax, dword [esp + 0x10]
push eax
push 0
push ecx
push edx
mov ebp, dword [esp + 0x1c]
push ebp
mov edx, dword [esp + 0x2c]
push edx
mov eax, dword [esp + 0x2c]
push eax
push edx
mov ecx, ebx
call fcn.005cdfc0
movzx ebp, byte [edi + 2]
test ebp, ebp
je 0x549683
mov eax, dword [ebx + 0x14]
mov dword [esp + 8], eax
test ebp, 4
je 0x549609
movsx eax, word [ebx + 0x28]
add dword [esp + 8], eax
movzx eax, byte [edi]
mov esi, dword [ebx + 0x18]
mov dword [esp + 0x10], esi
mov esi, dword [ebx + 0x20]
test al, 4
je 0x549626
add esi, dword [esp + 0x10]
movsx eax, word [ebx + 0x24]
sub esi, eax
jmp 0x54962a
add esi, dword [esp + 0x10]
movzx eax, byte [edi + 1]
test al, 4
je 0x54963a
movsx eax, word [ebx + 0x26]
add dword [esp + 0x10], eax
movzx eax, byte [edi + 6]
mov dword [esp + 0xc], eax
push dword [ebx + 0x10]
mov ecx, edi
mov dword [esp + 0x1c], esi
call fcn.0054ca9c
mov edi, ebp
and edi, 2
xor edx, edx
test edi, edi
setne dl
and ebp, 8
xor ecx, ecx
test ebp, ebp
setne cl
push eax
mov eax, dword [esp + 0x10]
push eax
push 1
push ecx
push edx
mov ebp, dword [esp + 0x24]
push ebp
mov eax, dword [esp + 0x20]
push eax
push esi
push eax
mov ecx, ebx
call fcn.005cdfc0
add esp, 0x1c
pop ebx
pop ebp
pop esi
pop edi
ret 4