Function at 0x40abeb
Capabilities:
Parse pe header

Disassembly:
push ebp
push ebx
mov edx, 0xb
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x40abf2
call fcn.00411f30
push edx
call fcn.00411e80
pop edx
push eax
mov eax, str.VmlydHVhbEFsbG9j
push eax
call fcn.0040a5c4
lea eax, [0x419444]
push eax
call fcn.00411ff0
push edx
call fcn.00411e80
pop edx
push eax
mov eax, str.VmlydHVhbFByb3RlY3Q
push eax
call fcn.0040a5c4
lea eax, [0x41943c]
push eax
call fcn.00411ff0
push edx
call fcn.00411e80
pop edx
push eax
mov eax, str.VmlydHVhbEZyZWU
push eax
call fcn.0040a5c4
lea eax, [0x419448]
push eax
call fcn.00411ff0
mov eax, str.kernel32.dll
push eax
push 0x41
call fcn.0040f8b3
mov ebx, dword [esp + 0x38]
and ebx, ebx
jne 0x40ac7e
jmp 0x40aece
mov eax, dword [esp + 0x38]
mov dword [esp], eax
mov ebp, dword [esp]
movsx ebx, word [ebp]
cmp ebx, 0x5a4d
je 0x40ac99
jmp 0x40aece
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp]
add ebx, dword [ebp + 0x3c]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 4]
mov ebx, dword [ebp]
cmp ebx, 0x4550
je 0x40acbb
jmp 0x40aece
mov ebp, dword [esp + 4]
movsx ebx, word [ebp + 0x16]
and ebx, 0x2000
and ebx, ebx
jne 0x40acd2
jmp 0x40aece
mov ebp, dword [esp + 4]
movsx ebx, word [ebp + 0x18]
cmp ebx, 0x10b
je 0x40ace7
jmp 0x40aece
mov ebp, dword [esp + 4]
mov eax, dword [ebp + 0x34]
mov dword [esp + 0xc], eax
mov ebp, dword [esp + 4]
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x18], eax
mov ebp, dword [esp + 4]
mov eax, dword [ebp + 0x54]
mov dword [esp + 0x1c], eax
push 4
push 0x2000
push dword [esp + 0x20]
push dword [esp + 0x18]
push dword [0x419444]
push 0x41
call fcn.0040f9ce
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x10]
and ebx, ebx
jne 0x40ad6f
mov dword [esp + 0x24], 1
mov ebp, dword [esp + 4]
mov ebx, dword [ebp + 0xa4]
and ebx, ebx
je 0x40ad5d
mov ebp, dword [esp + 4]
movsx ebx, word [ebp + 0x16]
and ebx, 1
and ebx, ebx
jne 0x40ad5d
jmp 0x40ad64
mov eax, 1
jmp 0x40ad66
xor eax, eax
and eax, eax
je 0x40ad6f
jmp 0x40aece
cmp dword [esp + 0x24], 0
je 0x40adaa
push 4
push 0x2000
push dword [esp + 0x20]
push 0
push dword [0x419444]
push 0x41
call fcn.0040f9ce
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x10]
and ebx, ebx
jne 0x40adaa
jmp 0x40aece
push 4
push 0x1000
push dword [esp + 0x20]
push dword [esp + 0x1c]
push dword [0x419444]
push 0x41
call fcn.0040f9ce
mov dword [esp + 0x10], eax
push dword [esp + 0x1c]
push dword [esp + 0x14]
push dword [esp + 0x40]
call fcn.00411cd0
push dword [esp + 0x38]
push dword [esp + 0x14]
call fcn.0040a668
push dword [esp + 0x10]
call fcn.0040b443
mov ebx, eax
and ebx, ebx
jne 0x40ae02
jmp 0x40aece
cmp dword [esp + 0x24], 0
je 0x40ae33
push dword [esp + 0x10]
call fcn.0040afda
mov dword [esp + 0x20], eax
mov ebx, dword [esp + 0x38]
add ebx, dword [esp + 0x20]
mov dword [esp + 8], ebx
push dword [esp + 0xc]
push dword [esp + 0xc]
push dword [esp + 0x18]
call fcn.0040a808
push dword [esp + 0x10]
call fcn.0040b2ad
mov ebx, eax
and ebx, ebx
jne 0x40ae47
jmp 0x40aece
mov ebp, dword [esp + 4]
cmp dword [ebp + 0x28], 0
je 0x40aec8
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 4]
add ebx, dword [ebp + 0x28]
mov dword [esp + 0x28], ebx
push dword [esp + 0x28]
lea ebp, [0x419440]
push ebp
push edx
call fcn.00411e80
pop edx
push eax
push edx
call fcn.00411e80
pop edx
push eax
mov eax, dword [esp + 0x20]
cdq
push edx
push eax
call fcn.0040d490
pop eax
pop ebp
push eax
push dword [esp]
call fcn.0040c190
call fcn.0040c172
add dword [esp], edx
push dword [ebp]
call fcn.0040ef5b
mov ebp, eax
pop eax
mov dword [ebp], eax
push 0
push 1
push dword [esp + 0x18]
call dword [esp + 0x34]
mov dword [esp + 0x14], eax
mov ebx, dword [esp + 0x14]
and ebx, ebx
jne 0x40aec8
jmp 0x40aece
mov eax, dword [esp + 0x10]
jmp 0x40af02
cmp dword [esp + 0x10], 0
je 0x40aefc
push 0x8000
push 0
push dword [esp + 0x18]
push dword [0x419448]
push 0x41
call fcn.0040f9a9
push dword [esp + 0x10]
call fcn.0040af0a
xor eax, eax
jmp 0x40af02
add esp, 0x2c
pop ebx
pop ebp
ret 4