Function at 0x5b1920
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x3c
lea eax, [esp + 0x40]
push ebx
mov ebx, dword [esp + 0x44]
push ebp
push esi
push edi
push eax
push 0
push 1
push ebx
call fcn.0058d9b0
add esp, 0x10
test eax, eax
je 0x5b1e4a
mov eax, dword [esp + 0x50]
cmp eax, 0x34000
jb 0x5b1e27
cmp eax, 0x36003
ja 0x5b1e27
cmp eax, 0x34001
push 0x10
jae 0x5b199e
lea ecx, [esp + 0x28]
push ecx
push ebx
call fcn.00588090
add esp, 0xc
cmp eax, 0x10
jne 0x5b1e4a
lea edx, [esp + 0x18]
push 0xc
push edx
push ebx
call fcn.00588090
add esp, 0xc
cmp eax, 0xc
je 0x5b19b5
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3c
ret
lea eax, [esp + 0x28]
push eax
push ebx
call fcn.00588090
add esp, 0xc
cmp eax, 0x10
jne 0x5b1e4a
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
push ecx
push edx
push eax
call fcn.005b15e0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x5b1e4a
mov eax, dword [esp + 0x30]
cmp eax, 1
jle 0x5b19f2
dec eax
push eax
push esi
call fcn.005b10f0
add esp, 8
test eax, eax
jl 0x5b1cb2
test dword [esi + 8], 0x1000000
jne 0x5b1ac3
mov eax, dword [esi + 0x14]
test eax, eax
je 0x5b1ac3
test byte [esp + 0x24], 8
je 0x5b1a2e
lea edi, [eax*4]
mov eax, dword [esi + 0x30]
push edi
push eax
push ebx
call fcn.00588090
add esp, 0xc
cmp eax, edi
jne 0x5b1cb2
mov ecx, dword [esi + 0x1c]
test ecx, ecx
jle 0x5b1a6d
mov eax, dword [esi + 0x14]
xor edi, edi
shl eax, 3
test ecx, ecx
mov dword [esp + 0x10], eax
jle 0x5b1a6d
lea ebp, [esi + 0x34]
mov eax, dword [esp + 0x10]
mov ecx, dword [ebp]
push eax
push ecx
push ebx
call fcn.0058db60
add esp, 0xc
test eax, eax
je 0x5b1b3c
mov eax, dword [esi + 0x1c]
inc edi
add ebp, 4
cmp edi, eax
jl 0x5b1a48
mov eax, dword [esi + 0x10]
test eax, eax
mov dword [esp + 0x10], eax
je 0x5b1ac3
mov edi, dword [esi + 0x2c]
mov ecx, eax
lea ebp, [ecx*8]
push ebp
push edi
push ebx
call fcn.00588090
add esp, 0xc
cmp eax, ebp
jne 0x5b1b3c
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x5b1ac3
mov ax, word [edi]
mov dx, word [edi + 2]
mov word [edi], dx
mov dx, word [edi + 6]
mov word [edi + 2], ax
mov ax, word [edi + 4]
mov word [edi + 4], dx
mov word [edi + 6], ax
add edi, 8
dec ecx
jne 0x5b1a9f
mov eax, dword [esi + 0x18]
xor ebp, ebp
cmp eax, ebp
mov dword [esp + 0x10], ebp
jle 0x5b1c1b
mov edi, dword [esi + 0x5c]
lea eax, [esp + 0x34]
push 0x18
push eax
push ebx
add edi, ebp
call fcn.00588090
add esp, 0xc
cmp eax, 0x18
jne 0x5b1cb2
mov edx, dword [esp + 0x34]
lea ecx, [edi + 4]
mov dword [edi + 4], edx
mov eax, dword [esp + 0x38]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x3c]
mov dword [ecx + 8], edx
mov eax, dword [esp + 0x40]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x44]
test eax, eax
je 0x5b1bdd
mov eax, dword [esp + 0x48]
test eax, eax
mov eax, dword [esi + 0x14]
je 0x5b1bc1
mov edx, dword [edi + 0x14]
lea ecx, [eax + eax*2]
shl ecx, 3
push ecx
push edx
jmp 0x5b1bf3
mov ax, word [esi + 0xe]
movsx edx, ax
dec edx
test edx, edx
jg 0x5b1d77
mov eax, dword [esi + 0x58]
test eax, eax
je 0x5b1b5c
push eax
call fcn.0059b1a0
add esp, 4
mov ax, word [esi + 0xe]
push 0xfff
push esi
mov word [esi + 0xe], ax
call fcn.005b1350
push esi
push 0x654464
call fcn.005a3b30
mov eax, dword [esi + 0x5c]
add esp, 0x10
test eax, eax
je 0x5b1b9b
mov ecx, dword [0x66885c]
push eax
call dword [ecx + 0x138]
add esp, 4
mov dword [esi + 0x5c], 0
lea edx, [esi + 0x20]
push edx
call fcn.005bef90
dec word [esi + 0xe]
mov eax, dword [0x66885c]
push esi
call dword [eax + 0x138]
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
mov ecx, dword [edi + 0x14]
lea eax, [eax + eax*2]
shl eax, 2
push eax
push ecx
push ebx
call fcn.0058db60
add esp, 0xc
test eax, eax
je 0x5b1cb2
mov eax, dword [esp + 0x48]
test eax, eax
je 0x5b1c04
mov eax, dword [esi + 0x14]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x18]
shl edx, 2
push edx
push eax
push ebx
call fcn.0058db60
add esp, 0xc
test eax, eax
je 0x5b1cb2
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x18]
inc eax
add ebp, 0x1c
cmp eax, ecx
mov dword [esp + 0x10], eax
jl 0x5b1ad4
lea eax, [esp + 0x50]
push eax
push 0
push 8
push ebx
call fcn.0058d9b0
add esp, 0x10
test eax, eax
je 0x5b1e4a
mov eax, dword [esp + 0x50]
cmp eax, 0x34000
jb 0x5b1d90
cmp eax, 0x36003
ja 0x5b1d90
cmp eax, 0x34001
jae 0x5b1c63
lea ecx, [esp + 0x18]
push ecx
call fcn.005b0a90
add esp, 4
lea edx, [esi + 0x20]
push edx
push ebx
call fcn.005bf110
add esp, 8
test eax, eax
je 0x5b1d44
cmp dword [esp + 0x50], 0x34001
jae 0x5b1c8c
push 0
call fcn.005b0a90
add esp, 4
push esi
push ebx
push 0x654464
call fcn.005a2f20
add esp, 0xc
test eax, eax
jne 0x5b1d37
mov ax, word [esi + 0xe]
movsx edx, ax
dec edx
test edx, edx
jmp 0x5b1d4e
mov ax, word [esi + 0xe]
movsx ecx, ax
dec ecx
test ecx, ecx
jg 0x5b1d77
mov eax, dword [esi + 0x58]
test eax, eax
je 0x5b1cd2
push eax
call fcn.0059b1a0
add esp, 4
mov dx, word [esi + 0xe]
push 0xfff
push esi
mov word [esi + 0xe], dx
call fcn.005b1350
push esi
push 0x654464
call fcn.005a3b30
mov eax, dword [esi + 0x5c]
add esp, 0x10
test eax, eax
je 0x5b1d10
push eax
mov eax, dword [0x66885c]
call dword [eax + 0x138]
add esp, 4
mov dword [esi + 0x5c], 0
lea ecx, [esi + 0x20]
push ecx
call fcn.005bef90
dec word [esi + 0xe]
mov edx, dword [0x66885c]
push esi
call dword [edx + 0x138]
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
push esi
call fcn.005b1380
add esp, 4
test eax, eax
jne 0x5b1d86
mov ax, word [esi + 0xe]
movsx ecx, ax
dec ecx
test ecx, ecx
jg 0x5b1d77
mov eax, dword [esi + 0x58]
test eax, eax
je 0x5b1d60
push eax
call fcn.0059b1a0
add esp, 4
dec word [esi + 0xe]
push esi
call fcn.005b1e60
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
dec eax
pop edi
mov word [esi + 0xe], ax
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3c
ret
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
mov ax, word [esi + 0xe]
movsx edx, ax
dec edx
test edx, edx
jg 0x5b1e09
mov eax, dword [esi + 0x58]
test eax, eax
je 0x5b1dac
push eax
call fcn.0059b1a0
add esp, 4
mov ax, word [esi + 0xe]
push 0xfff
push esi
mov word [esi + 0xe], ax
call fcn.005b1350
push esi
push 0x654464
call fcn.005a3b30
mov eax, dword [esi + 0x5c]
add esp, 0x10
test eax, eax
je 0x5b1deb
mov ecx, dword [0x66885c]
push eax
call dword [ecx + 0x138]
add esp, 4
mov dword [esi + 0x5c], 0
lea edx, [esi + 0x20]
push edx
call fcn.005bef90
dec word [esi + 0xe]
mov eax, dword [0x66885c]
push esi
call dword [eax + 0x138]
add esp, 8
jmp 0x5b1e0e
dec eax
mov word [esi + 0xe], ax
push 0x80000004
mov dword [esp + 0x14], 2
call fcn.0059cf00
lea ecx, [esp + 0x14]
push ecx
jmp 0x5b1e3e
push 0x80000004
mov dword [esp + 0x14], 2
call fcn.0059cf00
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0x1c], eax
call fcn.0059ce50
add esp, 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3c
ret