Function at 0x402460
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0xc
lea eax, [esp]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x1c]
push edi
push 0xc
mov ebp, dword [esi + 0x18]
mov ebx, dword [esi + 0x1c]
push ebp
push eax
call fcn.00402190
mov al, byte [esp + 0x27]
add esp, 0xc
test al, 0x20
je 0x402496
pop edi
pop esi
pop ebp
mov eax, 6
pop ebx
add esp, 0xc
ret
test al, 1
je 0x4024f5
mov byte [ebp + 0xb], 0
mov dword [esi + 0x1c], 0
mov edi, 1
push edi
lea ecx, [esp + 0x14]
push ebx
push ecx
push ebp
call fcn.004020c0
push esi
call fcn.00402b50
add esp, 0x14
test eax, eax
jne 0x4024cb
inc edi
cmp di, 0x64
jb 0x4024aa
cmp di, 0x64
jne 0x4024de
pop edi
pop esi
pop ebp
mov eax, 7
pop ebx
add esp, 0xc
ret
cmp eax, 4
jne 0x4026a9
mov dl, byte [esp + 0x1b]
mov byte [ebp + 0xb], dl
mov al, byte [esp + 0x1b]
mov dword [esi + 0x1c], ebx
test al, 2
je 0x40252f
xor eax, eax
cmp word [ebx], ax
je 0x402510
inc eax
mov ecx, eax
and ecx, 0xffff
cmp word [ebx + ecx*2], 0
jne 0x402500
and eax, 0xffff
add eax, 0x19
mov ecx, eax
mov eax, 0x4ec4ec4f
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebx, edx
jmp 0x402534
mov ebx, 1
push 0
push esi
call fcn.004026f0
xor ebp, ebp
add esp, 8
cmp eax, ebp
jne 0x4026a9
mov ecx, dword [esi + 0x10]
mov edx, dword [esi]
push ecx
push edx
mov dword [esp + 0x28], ebp
call fcn.00401e40
mov edi, eax
add esp, 8
test edi, edi
jne 0x4026a7
mov eax, dword [esi + 0x14]
mov al, byte [eax]
cmp al, 0xe5
je 0x402577
test al, al
je 0x402577
xor ebp, ebp
jmp 0x40258b
test bp, bp
jne 0x402585
mov cx, word [esi + 6]
mov word [esp + 0x20], cx
inc ebp
cmp bp, bx
je 0x4025bd
push 1
push esi
call fcn.004027f0
mov edi, eax
add esp, 8
test edi, edi
jne 0x4026a7
mov edx, dword [esi + 0x10]
mov eax, dword [esi]
push edx
push eax
call fcn.00401e40
mov edi, eax
add esp, 8
test edi, edi
je 0x402566
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
test edi, edi
jne 0x4026a7
cmp bx, 1
jbe 0x402665
mov ecx, dword [esp + 0x20]
push ecx
push esi
call fcn.004026f0
mov edi, eax
add esp, 8
test edi, edi
jne 0x4026a7
mov edx, dword [esi + 0x18]
push edx
call fcn.00402b30
mov ecx, dword [esi]
mov byte [esp + 0x24], al
mov eax, dword [esi + 0x10]
add ebx, 0xffff
push eax
push ecx
call fcn.00401e40
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x4026a7
mov ebp, dword [esp + 0x20]
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0x1c]
push ebp
push ebx
push edx
push eax
call fcn.00402aa0
mov ecx, dword [esi]
push 0
push esi
mov byte [ecx + 4], 1
call fcn.004027f0
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x4026a7
add ebx, 0xffff
test bx, bx
je 0x402665
mov edx, dword [esi + 0x10]
mov eax, dword [esi]
push edx
push eax
call fcn.00401e40
mov edi, eax
add esp, 8
test edi, edi
je 0x402617
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [esi + 0x10]
mov edx, dword [esi]
push ecx
push edx
call fcn.00401e40
mov edi, eax
add esp, 8
test edi, edi
jne 0x4026a7
mov ebx, dword [esi + 0x14]
push 0x20
push eax
push ebx
call fcn.004026c0
mov eax, dword [esi + 0x18]
push 0xb
push eax
push ebx
call fcn.00402190
mov ecx, dword [esi + 0x18]
add esp, 0x18
mov dl, byte [ecx + 0xb]
and dl, 0x18
mov byte [ebx + 0xc], dl
mov eax, dword [esi]
mov byte [eax + 4], 1
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret