Function at 0x59073050
Capabilities:
Enumerate pe sections

Disassembly:
mov edx, dword [esp + 4]
push ebx
push ebp
push esi
mov eax, dword [edx]
push edi
cmp eax, 1
jne 0x590732a9
mov ax, word [edx + 8]
cmp ax, 5
jae 0x59073075
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
ret
mov ecx, dword [esp + 0x1c]
add eax, 0xfffffffb
mov bx, word [ecx + 3]
lea esi, [ecx + 3]
cmp ax, bx
mov word [edx + 8], ax
jae 0x59073094
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
ret
add esi, 3
test bx, bx
jne 0x590730a6
pop edi
pop esi
pop ebp
mov eax, 0xfffffffe
pop ebx
ret
mov al, byte [esi]
add ebx, 0xffff
test al, al
je 0x59073252
mov ecx, dword [0x59195edc]
xor eax, eax
test ecx, ecx
jbe 0x5907312a
mov edi, dword [0x59195ed8]
mov bp, word [edx + 4]
cmp bp, word [edi]
jne 0x590730e3
mov bp, word [edx + 6]
cmp bp, word [edi + 2]
jne 0x590730e3
mov ebp, dword [edx + 0xc]
cmp ebp, dword [edi + 4]
je 0x590730f0
inc eax
add edi, 0x214
cmp eax, ecx
jb 0x590730c8
jmp 0x5907312a
mov edx, dword [esp + 0x18]
lea ebp, [edi + 8]
push 0x103
add edx, 0xc
push ebp
push edx
call fcn.5907b55d
mov eax, dword [esp + 0x24]
push 0x103
add eax, 0x214
push ebp
push eax
call fcn.5907b55d
add esp, 0x18
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [edi + 0x210], eax
mov ecx, dword [esp + 0x18]
lea eax, [ecx + 0xc]
push eax
call fcn.5907c6fd
movzx ax, al
mov edi, 0x103
mov dword [esp + 0x20], eax
sub edi, eax
mov eax, dword [esp + 0x24]
add esp, 4
test eax, eax
je 0x590731e7
mov ebp, ebx
and ebp, 0xffff
push ebp
push esi
call fcn.590732e0
add esp, 8
cmp ax, di
mov dword [esp + 0x14], eax
jbe 0x59073172
mov eax, edi
mov edx, dword [esp + 0x18]
and eax, 0xffff
push eax
push esi
lea eax, [edx + 0xc]
push eax
call fcn.5907ef41
mov eax, dword [esp + 0x20]
add esp, 0xc
mov ecx, eax
and ecx, 0xffff
lea ecx, [ecx + ecx + 4]
add esi, ecx
cmp ebp, ecx
jae 0x590731a9
pop edi
pop esi
pop ebp
mov eax, 0xfffffffe
pop ebx
ret
shl al, 1
sub bl, al
sub bl, 4
and ebx, 0xff
push ebx
push esi
call fcn.590732e0
add esp, 8
cmp ax, di
ja 0x590731c7
mov edi, eax
mov edx, dword [esp + 0x18]
and edi, 0xffff
push edi
add edx, 0x214
push esi
push edx
call fcn.5907ef41
add esp, 0xc
jmp 0x5907329b
mov eax, ebx
and eax, 0xffff
push eax
push esi
mov dword [esp + 0x28], eax
call fcn.590732b0
add esp, 8
cmp ax, di
mov dword [esp + 0x14], eax
jbe 0x59073207
mov eax, edi
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebp, edi
and ecx, 0xffff
and ebp, 0xffff
mov dword [esp + 0x1c], ecx
lea ecx, [edx + ecx*2 + 0xc]
push ebp
and eax, 0xffff
push ecx
push eax
push esi
push 1
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov eax, ecx
and eax, 0xffff
lea esi, [esi + eax + 3]
add eax, 3
cmp edx, eax
jge 0x5907325c
pop edi
pop esi
pop ebp
mov eax, 0xfffffffe
pop ebx
ret
sub bl, cl
sub bl, 3
and ebx, 0xff
push ebx
push esi
call fcn.590732b0
add esp, 8
cmp ax, di
ja 0x59073278
mov edi, eax
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
push ebp
and edi, 0xffff
lea ecx, [edx + eax*2 + 0x214]
push ecx
push edi
push esi
push 1
push 0
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov edx, dword [esp + 0x18]
mov dword [edx + 0x41c], 9
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
ret