Function at 0x403b60
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffec
cmp dword [0x462334], 0
push ebx
push esi
push edi
jne 0x403b77
call fcn.004039a4
cmp dword [ebp + 8], 0
jne 0x403b84
xor eax, eax
jmp 0x40411c
mov edx, dword [ebp + 8]
mov dword [ebp - 8], edx
push 0x40
mov ecx, dword [ebp - 8]
push ecx
call sub.KERNEL32.DLL_IsBadReadPtr
dec eax
je 0x403ba2
mov eax, dword [ebp - 8]
cmp word [eax], 0x5a4d
je 0x403ba9
xor eax, eax
jmp 0x40411c
mov edx, dword [ebp - 8]
mov ebx, dword [edx + 0x3c]
add ebx, dword [ebp - 8]
push 0xf8
push ebx
call sub.KERNEL32.DLL_IsBadReadPtr
dec eax
je 0x403bc8
cmp dword [ebx], 0x4550
je 0x403bcf
xor eax, eax
jmp 0x40411c
cmp word [ebx + 0x14], 0xe0
jne 0x403bdf
cmp word [ebx + 0x18], 0x10b
je 0x403be9
mov eax, 4
jmp 0x40411c
cmp word [ebx + 6], 1
jae 0x403bf7
xor eax, eax
jmp 0x40411c
mov edx, dword [ebp - 8]
mov ebx, dword [edx + 0x3c]
add ebx, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov dword [ebp - 4], eax
mov edx, dword [ebx + 0x80]
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0
je 0x403c20
mov ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 8]
mov dword [ebp - 0xc], ecx
jmp 0x403c2a
mov eax, 8
jmp 0x40411c
mov edx, dword [ebp - 0xc]
cmp dword [edx + 4], 0
jne 0x403c40
mov ecx, dword [ebp - 0xc]
cmp dword [ecx + 0xc], 0
je 0x404117
mov eax, dword [ebp - 0xc]
mov ebx, dword [eax + 0xc]
add ebx, dword [ebp - 4]
xor eax, eax
mov dword [ebp - 0x10], eax
push ebx
call sub.KERNEL32.DLL_lstrlenA
mov esi, eax
mov edi, ebx
push esi
push str.Kernel32.dll
push edi
call fcn.00405850
add esp, 0xc
test eax, eax
jne 0x403c72
mov dword [ebp - 0x10], 1
push ebx
call sub.KERNEL32.DLL_lstrlenA
mov esi, eax
mov edi, ebx
push esi
push str.User32.dll
push edi
call fcn.00405850
add esp, 0xc
test eax, eax
jne 0x403ca3
mov dword [ebp - 0x10], 2
jmp 0x403ca3
mov eax, dword [ebp - 0xc]
mov edx, dword [eax + 0x10]
add edx, dword [ebp - 8]
mov dword [ebp - 0x14], edx
mov ecx, dword [ebp - 0xc]
mov ebx, dword [ecx + 0x10]
add ebx, dword [ebp - 8]
jmp 0x404101
mov edx, 0x80000000
test eax, edx
jne 0x4040f2
jmp 0x403f24
cmp dword [ebp - 0x10], 1
jne 0x4040f2
mov edx, dword [ebx]
cmp edx, dword [0x462328]
jne 0x403f40
mov ecx, dword [0x461e44]
mov dword [ebx], ecx
mov eax, dword [ebx]
cmp eax, dword [0x46232c]
jne 0x403f52
mov edx, dword [0x461e48]
mov dword [ebx], edx
mov ecx, dword [ebx]
cmp ecx, dword [0x4622d0]
jne 0x403f63
mov eax, dword [0x461e3c]
mov dword [ebx], eax
mov edx, dword [ebx]
cmp edx, dword [0x4622d4]
jne 0x403f75
mov ecx, dword [0x461e40]
mov dword [ebx], ecx
mov eax, dword [ebx]
cmp eax, dword [0x4622d8]
jne 0x403f87
mov edx, dword [0x461e50]
mov dword [ebx], edx
mov ecx, dword [ebx]
cmp ecx, dword [0x462304]
jne 0x403f98
mov eax, dword [0x461e64]
mov dword [ebx], eax
mov edx, dword [ebx]
cmp edx, dword [0x462308]
jne 0x403faa
mov ecx, dword [0x461e60]
mov dword [ebx], ecx
mov eax, dword [ebx]
cmp eax, dword [0x462320]
jne 0x403fbc
mov edx, dword [0x461e94]
mov dword [ebx], edx
mov ecx, dword [ebx]
cmp ecx, dword [0x462324]
jne 0x403fcd
mov eax, dword [0x461e98]
mov dword [ebx], eax
mov edx, dword [ebx]
cmp edx, dword [0x46231c]
jne 0x403fdf
mov ecx, dword [0x461e78]
mov dword [ebx], ecx
cmp byte [ebp + 0xc], 1
jae 0x4040f2
mov eax, dword [ebx]
cmp eax, dword [0x4622dc]
jne 0x403ffb
mov edx, dword [0x461e54]
mov dword [ebx], edx
mov ecx, dword [ebx]
cmp ecx, dword [0x4622e0]
jne 0x40400c
mov eax, dword [0x461e5c]
mov dword [ebx], eax
mov edx, dword [ebx]
cmp edx, dword [0x4622e4]
jne 0x40401e
mov ecx, dword [0x461e58]
mov dword [ebx], ecx
mov eax, dword [ebx]
cmp eax, dword [0x4622e8]
jne 0x404030
mov edx, dword [0x461e20]
mov dword [ebx], edx
mov ecx, dword [ebx]
cmp ecx, dword [0x4622ec]
jne 0x404041
mov eax, dword [0x461e38]
mov dword [ebx], eax
mov edx, dword [ebx]
cmp edx, dword [0x4622f0]
jne 0x404053
mov ecx, dword [0x461e34]
mov dword [ebx], ecx
mov eax, dword [ebx]
cmp eax, dword [0x4622f4]
jne 0x404065
mov edx, dword [0x461e24]
mov dword [ebx], edx
mov ecx, dword [ebx]
cmp ecx, dword [0x4622f8]
jne 0x404076
mov eax, dword [0x461e28]
mov dword [ebx], eax
mov edx, dword [ebx]
cmp edx, dword [0x4622fc]
jne 0x404088
mov ecx, dword [0x461e30]
mov dword [ebx], ecx
mov eax, dword [ebx]
cmp eax, dword [0x462300]
jne 0x40409a
mov edx, dword [0x461e2c]
mov dword [ebx], edx
mov ecx, dword [ebx]
cmp ecx, dword [0x46230c]
jne 0x4040ab
mov eax, dword [0x461e68]
mov dword [ebx], eax
mov edx, dword [ebx]
cmp edx, dword [0x462310]
jne 0x4040bd
mov ecx, dword [0x461e6c]
mov dword [ebx], ecx
mov eax, dword [ebx]
cmp eax, dword [0x462314]
jne 0x4040cf
mov edx, dword [0x461e70]
mov dword [ebx], edx
mov ecx, dword [ebx]
cmp ecx, dword [0x462318]
jne 0x4040e0
mov eax, dword [0x461e74]
mov dword [ebx], eax
mov edx, dword [ebx]
cmp edx, dword [0x462330]
jne 0x4040f2
mov ecx, dword [0x461e7c]
mov dword [ebx], ecx
test ebx, ebx
jne 0x4040fa
xor eax, eax
jmp 0x40411c
add ebx, 4
add dword [ebp - 0x14], 4
mov edx, dword [ebp - 0x14]
mov eax, dword [edx]
test eax, eax
jne 0x403cbd
add dword [ebp - 0xc], 0x14
jmp 0x403c2a
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret