Function at 0x100334e
Capabilities:
Parse pe header

Disassembly:
je 0x1003350
add byte gs:[ebp], ch
add byte [eax], al
add byte [eax], al
inc eax
add byte [esi], cl
add byte [ecx], al
add byte [eax], dl
jb 0x1003362
outsd dx, dword [esi]
add byte [eax + eax + 0x75], ah
add byte [ebx], ah
je 0x100336c
push esi
add byte [ebp], ah
jb 0x1003372
jae 0x1003374
imul eax, dword [eax], 0x6e006f
add byte [eax], al
xor eax, 0x31002e00
add byte [esi], ch
add byte [edx], dh
add byte [esi], dh
add byte [eax], dh
add byte [eax], dh
add byte [esi], ch
add byte [0x31003500], dh
add byte [edx], dh
add byte [eax], al
add byte [eax + eax], al
add byte [ecx], al
add byte [esi], dl
popal
add byte [edx], dh
inc esi
add byte [ecx], ch
insb byte es:[edi], dx
add byte [ebp], ah
dec ecx
add byte [esi], ch
add byte [edi], ch
add byte [eax], al
add byte [eax], al
and al, 0
add al, 0
add byte [eax], al
push esp
add byte [edx], dh
popal
add byte [esi], ch
jae 0x10033c8
insb byte es:[edi], dx
add byte [ecx], ah
je 0x10033ce
imul eax, dword [eax], 0x6e006f
add byte [eax], al
add byte [eax], al
or dword [eax + esi*4], eax
add al, 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edx + 0x28], ch
push 0x10010d8
call fcn.01003655
xor edi, edi
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cmp word [eax], 0x5a4d
jne 0x100343b
mov ecx, dword [eax + 0x3c]
add ecx, eax
cmp dword [ecx], 0x4550
jne 0x100343b
movzx eax, word [ecx + 0x18]
cmp eax, 0x10b
je 0x1003453
cmp eax, 0x20b
je 0x1003440
mov dword [ebp - 0x1c], edi
jmp 0x1003467
cmp dword [ecx + 0x84], 0xe
jbe 0x100343b
xor eax, eax
cmp dword [ecx + 0xf8], edi
jmp 0x1003461
cmp dword [ecx + 0x74], 0xe
jbe 0x100343b
xor eax, eax
cmp dword [ecx + 0xe8], edi
setne al
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], edi
push 1
call dword [sym.imp.msvcrt.dll___set_app_type]
pop ecx
or dword [0x100204c], 0xffffffff
or dword [0x1002050], 0xffffffff
call dword [sym.imp.msvcrt.dll___p__fmode]
mov ecx, dword [0x1002048]
mov dword [eax], ecx
call dword [sym.imp.msvcrt.dll___p__commode]
mov ecx, dword [0x1002044]
mov dword [eax], ecx
mov eax, dword [sym.imp.msvcrt.dll__adjust_fdiv]
mov eax, dword [eax]
mov dword [0x1002054], eax
call fcn.0100364b
cmp dword [0x1002030], edi
jne 0x10034c2
push 0x10014e6
call dword [sym.imp.msvcrt.dll___setusermatherr]
pop ecx
call fcn.01003634
push 0x1001088
push 0x1001084
call sub.msvcrt.dll__initterm
mov eax, dword [0x1002040]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
push dword [0x100203c]
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.msvcrt.dll___wgetmainargs]
mov dword [ebp - 0x34], eax
push 0x1001080
push 0x100107c
call sub.msvcrt.dll__initterm
mov eax, dword [ebp - 0x20]
mov ecx, dword [sym.imp.msvcrt.dll___winitenv]
mov dword [ecx], eax
push dword [ebp - 0x20]
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
call fcn.0100334e
add esp, 0x30
mov esi, eax
mov dword [ebp - 0x38], esi
cmp dword [ebp - 0x1c], edi
jne 0x1003539
push esi
call dword [sym.imp.msvcrt.dll_exit]
call dword [sym.imp.msvcrt.dll__cexit]
jmp 0x100356e
or dword [ebp - 4], 0xffffffff
mov eax, esi
call fcn.01003690
ret