Function at 0x53a730
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x30
lea eax, [esp + 0x34]
push ebx
mov ebx, dword [esp + 0x38]
push ebp
push esi
push edi
push eax
push 0
push 1
push ebx
call fcn.0056a1c0
add esp, 0x10
test eax, eax
je 0x53ac3d
mov eax, dword [esp + 0x44]
cmp eax, 0x35000
jb 0x53ac1a
cmp eax, 0x37002
ja 0x53ac1a
lea ecx, [esp + 0x18]
push 0x10
push ecx
push ebx
call fcn.00569230
add esp, 0xc
cmp eax, 0x10
jne 0x53ac3d
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
push edx
push eax
push ecx
call fcn.0053a3f0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x53ac3d
mov eax, dword [esp + 0x24]
cmp eax, 1
jle 0x53a84e
dec eax
push eax
push esi
call fcn.00539f00
add esp, 8
test eax, eax
jge 0x53a84e
mov ax, word [esi + 0xe]
movsx edx, ax
dec edx
test edx, edx
jg 0x53aba4
mov eax, dword [esi + 0x58]
test eax, eax
je 0x53a7e9
push eax
call fcn.0057e100
add esp, 4
mov ax, word [esi + 0xe]
push 0xfff
push esi
mov word [esi + 0xe], ax
call fcn.0053a160
push esi
push 0x5ce4d4
call fcn.0057e8f0
mov eax, dword [esi + 0x5c]
add esp, 0x10
test eax, eax
je 0x53a828
mov ecx, dword [0x614720]
push eax
call dword [ecx + 0x10c]
add esp, 4
mov dword [esi + 0x5c], 0
lea edx, [esi + 0x20]
push edx
call fcn.00547630
dec word [esi + 0xe]
mov eax, dword [0x614720]
push esi
call dword [eax + 0x10c]
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
test dword [esi + 8], 0x1000000
jne 0x53a91d
mov eax, dword [esi + 0x14]
test eax, eax
je 0x53a91d
test byte [esp + 0x18], 8
je 0x53a88a
mov ecx, dword [esi + 0x30]
lea edi, [eax*4]
push edi
push ecx
push ebx
call fcn.00569230
add esp, 0xc
cmp eax, edi
jne 0x53a7c9
mov ecx, dword [esi + 0x1c]
test ecx, ecx
jle 0x53a8c9
mov eax, dword [esi + 0x14]
xor edi, edi
shl eax, 3
test ecx, ecx
mov dword [esp + 0x10], eax
jle 0x53a8c9
lea ebp, [esi + 0x34]
mov ecx, dword [esp + 0x10]
mov edx, dword [ebp]
push ecx
push edx
push ebx
call fcn.0056a370
add esp, 0xc
test eax, eax
je 0x53a99f
mov eax, dword [esi + 0x1c]
inc edi
add ebp, 4
cmp edi, eax
jl 0x53a8a4
mov eax, dword [esi + 0x10]
test eax, eax
mov dword [esp + 0x10], eax
je 0x53a91d
mov edi, dword [esi + 0x2c]
lea ebp, [eax*8]
push ebp
push edi
push ebx
call fcn.00569230
add esp, 0xc
cmp eax, ebp
jne 0x53a99f
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x53a91d
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 0x53a8f9
mov eax, dword [esi + 0x18]
xor ebp, ebp
cmp eax, ebp
mov dword [esp + 0x10], ebp
jle 0x53aa7a
mov edi, dword [esi + 0x5c]
lea eax, [esp + 0x28]
push 0x18
push eax
push ebx
add edi, ebp
call fcn.00569230
add esp, 0xc
cmp eax, 0x18
jne 0x53a99f
mov edx, dword [esp + 0x28]
lea ecx, [edi + 4]
mov dword [edi + 4], edx
mov eax, dword [esp + 0x2c]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x30]
mov dword [ecx + 8], edx
mov eax, dword [esp + 0x34]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x38]
test eax, eax
je 0x53aa40
mov eax, dword [esp + 0x3c]
test eax, eax
mov eax, dword [esi + 0x14]
je 0x53aa24
mov edx, dword [edi + 0x14]
lea ecx, [eax + eax*2]
shl ecx, 3
push ecx
push edx
push ebx
call fcn.0056a370
add esp, 0xc
test eax, eax
je 0x53a99f
jmp 0x53aa63
mov ax, word [esi + 0xe]
movsx ecx, ax
dec ecx
test ecx, ecx
jg 0x53aba4
mov eax, dword [esi + 0x58]
test eax, eax
je 0x53a9bf
push eax
call fcn.0057e100
add esp, 4
mov dx, word [esi + 0xe]
push 0xfff
push esi
mov word [esi + 0xe], dx
call fcn.0053a160
push esi
push 0x5ce4d4
call fcn.0057e8f0
mov eax, dword [esi + 0x5c]
add esp, 0x10
test eax, eax
je 0x53a9fd
push eax
mov eax, dword [0x614720]
call dword [eax + 0x10c]
add esp, 4
mov dword [esi + 0x5c], 0
lea ecx, [esi + 0x20]
push ecx
call fcn.00547630
dec word [esi + 0xe]
mov edx, dword [0x614720]
push esi
call dword [edx + 0x10c]
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov ecx, dword [edi + 0x14]
lea eax, [eax + eax*2]
shl eax, 2
push eax
push ecx
push ebx
call fcn.0056a370
add esp, 0xc
test eax, eax
je 0x53a99f
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x53aa63
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.0056a370
add esp, 0xc
test eax, eax
je 0x53aabf
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x18]
inc eax
add ebp, 0x1c
cmp eax, ecx
mov dword [esp + 0x10], eax
jl 0x53a92e
lea edx, [esp + 0x44]
push edx
push 0
push 8
push ebx
call fcn.0056a1c0
add esp, 0x10
test eax, eax
je 0x53ac3d
mov eax, dword [esp + 0x44]
cmp eax, 0x35000
jb 0x53abbd
cmp eax, 0x37002
ja 0x53abbd
lea edi, [esi + 0x20]
push edi
push ebx
call fcn.005477b0
add esp, 8
test eax, eax
jne 0x53aaf6
mov ax, word [esi + 0xe]
movsx ecx, ax
dec ecx
test ecx, ecx
jg 0x53aba4
mov eax, dword [esi + 0x58]
test eax, eax
je 0x53aadf
push eax
call fcn.0057e100
add esp, 4
dec word [esi + 0xe]
push esi
call fcn.0053ac50
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push esi
push ebx
push 0x5ce4d4
call fcn.0057ea00
add esp, 0xc
test eax, eax
jne 0x53ab15
mov ax, word [esi + 0xe]
movsx edx, ax
dec edx
test edx, edx
jmp 0x53aac9
push esi
call fcn.0053a190
add esp, 4
test eax, eax
jne 0x53abb3
mov ax, word [esi + 0xe]
movsx ecx, ax
dec ecx
test ecx, ecx
jg 0x53aba4
mov eax, dword [esi + 0x58]
test eax, eax
je 0x53ab42
push eax
call fcn.0057e100
add esp, 4
mov dx, word [esi + 0xe]
push 0xfff
push esi
mov word [esi + 0xe], dx
call fcn.0053a160
push esi
push 0x5ce4d4
call fcn.0057e8f0
mov eax, dword [esi + 0x5c]
add esp, 0x10
test eax, eax
je 0x53ab80
push eax
mov eax, dword [0x614720]
call dword [eax + 0x10c]
add esp, 4
mov dword [esi + 0x5c], 0
push edi
call fcn.00547630
dec word [esi + 0xe]
mov ecx, dword [0x614720]
push esi
call dword [ecx + 0x10c]
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
dec eax
pop edi
mov word [esi + 0xe], ax
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x30
ret
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov ax, word [esi + 0xe]
movsx edx, ax
dec edx
test edx, edx
jg 0x53abe8
mov eax, dword [esi + 0x58]
test eax, eax
je 0x53abd9
push eax
call fcn.0057e100
add esp, 4
dec word [esi + 0xe]
push esi
call fcn.0053ac50
add esp, 4
jmp 0x53abed
dec eax
mov word [esi + 0xe], ax
push 0x80000004
mov dword [esp + 0x14], 2
call fcn.0052e800
mov dword [esp + 0x18], eax
lea eax, [esp + 0x14]
push eax
call fcn.0057cd50
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
push 0x80000004
mov dword [esp + 0x14], 2
call fcn.0052e800
lea ecx, [esp + 0x14]
mov dword [esp + 0x18], eax
push ecx
call fcn.0057cd50
add esp, 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x30
ret