Function at 0x433b20
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x1c
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x54]
mov eax, dword [edi + 0xc]
mov esi, dword [edi + 0x14]
mov ecx, eax
mov dword [esp + 0x10], esi
test esi, esi
mov dword [esp + 0x18], ecx
jne 0x433b4d
mov dword [edi + 0x14], eax
mov dword [esp + 0x10], eax
mov eax, dword [edi]
mov esi, ecx
mov dword [edi + 0x18], eax
cmp ecx, esi
jne 0x433b57
mov ecx, dword [edi + 4]
mov dword [edi + 0x1c], ecx
mov ebx, dword [esp + 0x34]
cmp ebx, 0xffffffff
je 0x433d6f
mov eax, dword [esi + 0x40]
mov ecx, dword [esi + 0x3c]
mov edx, dword [edi + 0x10]
mov ebp, dword [esi + 0x20]
add ecx, eax
mov dword [esp + 0x1c], ebp
test edx, edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], ecx
jne 0x433b85
mov dword [edi + 0x10], eax
mov eax, dword [edi + 8]
mov edx, dword [edi + 0x10]
test eax, eax
je 0x433b9c
mov dword [esp + 0x14], edx
mov dword [edi + 8], 0
jmp 0x433baa
xor eax, eax
mov ax, word [edx + 4]
add eax, edx
mov dword [esp + 0x14], eax
mov edx, eax
cmp edx, dword [esi + 0x40]
jb 0x434002
jmp 0x433bbd
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
cmp edx, ecx
ja 0x434002
mov dword [edi + 0x10], edx
je 0x433dad
mov ax, word [edx + 4]
test ax, ax
je 0x434002
lea esi, [edx + 6]
cmp esi, ecx
ja 0x434002
and eax, 0xffff
lea esi, [eax + edx]
cmp esi, ecx
ja 0x434002
mov eax, dword [edx]
cmp ebx, eax
jb 0x433da9
jne 0x433d56
xor eax, eax
xor ebx, ebx
mov al, byte [edx + 6]
mov bl, byte [edx + 7]
mov edi, eax
mov eax, dword [esp + 0x38]
add ebx, edx
mov dword [esp + 0x28], edi
test eax, eax
jne 0x433c2d
test edi, edi
jne 0x433da1
jmp 0x433cb3
mov ecx, dword [ebp + 0x58]
mov edx, dword [ebp + 0x5c]
push ecx
mov ecx, dword [esp + 0x44]
push edx
mov edx, dword [esp + 0x44]
push ecx
push edx
push eax
push edi
push ebx
call fcn.00439610
add esp, 0x1c
test eax, eax
jne 0x433caf
mov eax, dword [ebp + 0x58]
mov ecx, dword [ebp + 0x5c]
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x3c]
push ecx
push 1
push 1
push edi
push ebx
push edx
push eax
call fcn.00439670
add esp, 0x20
cmp eax, 0xffffffff
je 0x433da1
test eax, eax
jne 0x433d4a
mov ecx, dword [ebp + 0x58]
mov edx, dword [ebp + 0x5c]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
push eax
mov eax, dword [esp + 0x48]
push 1
push edi
push ebx
push eax
push ecx
call fcn.00439670
add esp, 0x20
cmp eax, 0xffffffff
je 0x433da1
test eax, eax
jne 0x433d4a
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
or eax, ecx
je 0x433e16
cmp esi, dword [esp + 0x24]
jb 0x433e16
mov ecx, dword [esp + 0x20]
lea eax, [esi + 6]
cmp eax, ecx
jae 0x433e16
xor eax, eax
mov ax, word [esi + 4]
add eax, esi
cmp eax, ecx
ja 0x433e16
mov ecx, dword [esi + 0xc]
mov eax, dword [esp + 0x48]
cmp ecx, eax
ja 0x433e16
jb 0x433d0c
mov eax, dword [esi + 8]
mov ecx, dword [esp + 0x44]
cmp eax, ecx
ja 0x433e16
mov ecx, dword [esi]
mov eax, dword [edx]
cmp ecx, eax
jne 0x433e16
xor eax, eax
mov al, byte [esi + 6]
cmp eax, edi
jne 0x433e16
mov edx, dword [ebp + 0x58]
mov ecx, dword [ebp + 0x5c]
push edx
xor edx, edx
mov dl, byte [esi + 7]
push ecx
push 0
push edi
push ebx
add edx, esi
push eax
push edx
call fcn.00439610
add esp, 0x1c
test eax, eax
je 0x433e12
mov ebx, dword [esp + 0x34]
mov edi, dword [esp + 0x54]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], esi
cmp esi, dword [eax + 0x40]
jae 0x433bb5
or esi, 0xffffffff
jmp 0x433e40
push edi
call fcn.00434020
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x44]
push edi
push ecx
mov ecx, dword [esp + 0x48]
push edx
mov edx, dword [esp + 0x48]
push eax
push ecx
push edx
push 0xffffffffffffffff
call fcn.00433970
add esp, 0x20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
mov ebx, dword [esp + 0x34]
mov edi, dword [esp + 0x54]
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
cmp eax, esi
je 0x433dbe
push eax
call fcn.00437090
add esp, 4
mov eax, dword [edi + 0x18]
mov ebp, dword [esp + 0x4c]
xor ecx, ecx
mov dword [edi], eax
mov cx, word [eax + 0x14]
mov dword [edi + 0xc], esi
mov esi, dword [esp + 0x50]
add ecx, eax
xor eax, eax
mov dword [edi + 4], ecx
mov dword [edi + 8], 1
mov dword [edi + 0x14], eax
mov dword [edi + 0x18], eax
mov dword [edi + 0x1c], eax
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
push edi
push esi
push ebp
push edx
push eax
push ecx
push ebx
call fcn.00433970
add esp, 0x1c
test eax, eax
je 0x433deb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [edx + 0x10]
cmp eax, dword [esi + 0x14]
jne 0x433e84
mov edx, dword [edx + 0x14]
mov ecx, 0x30
call fcn.00526f40
cmp ax, word [esi + 0x18]
je 0x433f3c
or esi, 0xffffffff
mov edi, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
cmp eax, ebx
je 0x433e67
test eax, eax
je 0x433e59
push eax
call fcn.00437090
add esp, 4
mov edx, dword [edi + 0x18]
mov eax, dword [edi + 0x1c]
mov dword [edi + 0xc], ebx
mov dword [edi], edx
mov dword [edi + 4], eax
cmp esi, 0xfffffffb
je 0x433e7a
add ebp, 8
push ebp
push 1
call fcn.00414320
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
cmp eax, esi
je 0x433e9d
push eax
call fcn.00437090
mov edx, dword [esp + 0x18]
add esp, 4
mov ecx, dword [edx + 0x10]
mov eax, dword [esi + 0x14]
cmp ecx, eax
jne 0x433ec6
mov eax, dword [esp + 0x54]
mov dword [esp + 0x18], esi
mov edx, dword [eax + 0x18]
mov dword [eax + 0xc], esi
mov dword [eax], edx
mov ecx, edx
xor edx, edx
mov dx, word [ecx + 0x14]
add edx, ecx
mov dword [eax + 4], edx
jmp 0x433f40
mov ecx, dword [edx + 0x14]
mov edx, dword [edx + 0x10]
lea eax, [esp + 0x18]
push eax
mov eax, dword [esp + 0x34]
push ecx
push edx
push esi
push eax
call fcn.00437230
mov esi, dword [esp + 0x68]
push eax
mov dword [esi], eax
call fcn.00438790
add esp, 0x18
test eax, eax
je 0x433f22
mov ecx, dword [esi]
push ecx
call fcn.004387a0
mov esi, eax
add esp, 4
cmp esi, 0xfffffffe
jne 0x433f06
or esi, 0xffffffff
test esi, esi
mov dword [esp + 0x18], 0
jne 0x433e3c
mov edi, dword [esp + 0x54]
or esi, 0xffffffff
jmp 0x433e40
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x18]
mov dword [esi + 0xc], edx
xor edx, edx
mov ecx, dword [eax]
mov dx, word [ecx + 0x14]
add edx, ecx
mov dword [eax + 4], edx
jmp 0x433f40
mov eax, dword [esp + 0x54]
mov ebp, dword [eax + 4]
mov eax, dword [esp + 0x54]
mov eax, dword [eax]
cmp ebp, eax
jb 0x433ffa
mov ecx, dword [eax + 0x1c]
add ecx, eax
cmp ebp, ecx
ja 0x433ffa
mov eax, dword [ebp]
cmp eax, 0xffffffff
je 0x433ffa
mov ecx, dword [ebp + 4]
test ecx, ecx
je 0x433ffa
mov ecx, dword [esp + 0x14]
mov dx, word [ecx + 0x18]
cmp dx, word [ebp + 0xe]
jne 0x433fe7
cmp dword [ecx], eax
jne 0x433ffa
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0x58]
mov edx, dword [eax + 0x5c]
push ecx
xor ecx, ecx
mov cx, word [ebp + 0xa]
push edx
xor eax, eax
push 0
mov al, byte [ebp + 9]
push edi
push ebx
add ecx, ebp
push eax
push ecx
call fcn.00439610
add esp, 0x1c
test eax, eax
je 0x433ffa
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x4c]
test eax, eax
mov dword [edx + 4], ebp
je 0x43400a
mov cl, byte [ebp + 8]
test cl, cl
jne 0x433fe7
mov ecx, dword [esp + 0x50]
mov edx, dword [ebp + 0x10]
cmp edx, ecx
jne 0x433fe7
xor esi, esi
mov edi, eax
mov si, word [ebp + 0x14]
add esi, ebp
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x43400a
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x54]
mov edx, dword [ebp + 4]
add ebp, edx
mov eax, dword [ecx]
cmp ebp, eax
jae 0x433f51
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x54]
or esi, 0xffffffff
jmp 0x433e40
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret