Function at 0x41eec4
Capabilities:
Parse pe header

Disassembly:
add byte gs:[eax], bh
add byte gs:[eax], al
add byte [eax + eax], dl
add byte [eax], al
popal
add byte [eax + eax + 0x74], dh
add byte [edx], dh
imul eax, dword [eax], 0x2e0062
add byte gs:[eax], bh
add byte gs:[eax], al
add byte [eax], al
add byte [eax + eax], dl
add byte [eax], al
arpl word [eax], ax
push 0x64006b00
add byte [ebx], dh
imul eax, dword [eax], 0x2e
add byte [ebp], ah
js 0x41edca
add byte gs:[eax], al
add byte [eax], al
add byte [esi], dl
add byte [eax], al
add byte [ebx], ah
outsd dx, dword [esi]
add byte [ebp], ch
jo 0x41eddc
popal
add byte [ebx], ah
je 0x41ede2
add byte cs:[ebp], ah
js 0x41ede8
add byte gs:[eax], al
add byte [eax], dl
add byte [eax], al
add byte [esi], ah
imul eax, dword [eax], 0x64006e
add byte cs:[ebp], ah
js 0x41edfe
add byte gs:[eax], al
add byte [eax], al
add byte [eax], dl
add byte [eax], al
add byte [eax], ch
add byte gs:[eax + eax + 0x70], ch
add byte [esi], ch
add byte [ebp], ah
js 0x41ee16
add byte gs:[eax], al
add byte [eax], al
add byte [eax + eax], dl
add byte [eax], al
ja 0x41ee22
imul eax, dword [eax], 0x76006e
add byte gs:[edx], dh
add byte cs:[ebp], ah
js 0x41ee32
add byte gs:[eax], al
add byte [eax], al
add byte [eax], bl
add byte [eax], al
add byte [edx], dh
add byte gs:[edi], ah
jae 0x41ee44
jbe 0x41ee46
jb 0x41ee48
xor eax, dword [eax]
xor al, byte [eax]
add byte cs:[ebp], ah
js 0x41ee52
add byte gs:[eax], al
add byte [eax], al
add byte [esi], dl
add byte [eax], al
add byte [edx], dh
add byte gs:[eax], dh
insb byte es:[edi], dx
add byte [ecx], ah
arpl word [eax], ax
add byte gs:[esi], ch
add byte [ebp], ah
js 0x41ee70
add byte gs:[eax], al
add byte [esi], dl
add byte [eax], al
add byte [eax + eax + 0x6c], ah
add byte [eax + eax + 0x68], ch
add byte [edi], ch
jae 0x41ee84
je 0x41ee86
add byte cs:[ebp], ah
js 0x41ee8c
add byte gs:[eax], al
add byte [edx], dl
add byte [eax], al
add byte [esi], ch
je 0x41ee98
jbe 0x41ee9a
add byte fs:[ebp], ch
add byte cs:[ebp], ah
js 0x41eea4
add byte gs:[eax], al
add byte [esi], dl
add byte [eax], al
add byte [eax + eax + 0x63], dh
add byte [eax], dh
jae 0x41eeb4
jbe 0x41eeb6
arpl word [eax], ax
jae 0x41eeba
add byte cs:[ebp], ah
js 0x41eec0
add byte gs:[eax], al
add byte [ebp - 0x75], dl
push ebp
mov ebp, esp
add esp, 0xfffffff0
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 8], ecx
mov word [ebp - 2], dx
xor eax, eax
push ebp
push 0x524473
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp + 8]
call fcn.00404cd0
xor ebx, ebx
mov eax, ebx
and eax, 0x80000001
jns 0x41eeff
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x41ef18
lea eax, [ebp - 0x10]
mov edx, dword [0x53e2a4]
mov edx, dword [edx]
mov edx, dword [edx + 0xc]
call fcn.00404d30
jmp 0x41ef2b
lea eax, [ebp - 0x10]
mov edx, dword [0x53e2a4]
mov edx, dword [edx]
mov edx, dword [edx + 0x10]
call fcn.00404d30
lea eax, [ebp - 0x10]
mov edx, ebx
sar edx, 1
jns 0x41ef37
adc edx, 0
mov edx, dword [edx*4 + 0x53d10c]
call fcn.00404f20
push 0
push 0x80
push 3
push 0
push 1
push 0x80000000
mov eax, dword [ebp - 0x10]
call fcn.00404f04
push eax
call fcn.00406b1c
mov esi, eax
cmp esi, 0xffffffff
je 0x41f045
mov eax, 0x40
call fcn.00403268
mov edi, eax
push 0
lea eax, [ebp - 0xc]
push eax
push 0x40
push edi
push esi
call fcn.00406d7c
test eax, eax
je 0x41f038
mov eax, edi
cmp word [eax], 0x5a4d
jne 0x41f038
push 0
push 0
mov eax, dword [eax + 0x3c]
push eax
push esi
call fcn.00406ddc
mov eax, edi
call fcn.00403288
mov eax, 0x18
call fcn.00403268
mov edi, eax
push 0
lea eax, [ebp - 0xc]
push eax
push 0x18
push edi
push esi
call fcn.00406d7c
test eax, eax
je 0x41f038
mov eax, edi
cmp dword [eax], 0x4550
jne 0x41f038
add eax, 4
mov dx, word [eax]
cmp dx, 0x14c
jb 0x41f038
cmp dx, 0x150
ja 0x41f038
mov eax, edi
call fcn.00403288
mov eax, 0xe0
call fcn.00403268
mov edi, eax
push 0
lea eax, [ebp - 0xc]
push eax
push 0xe0
push edi
push esi
call fcn.00406d7c
test eax, eax
je 0x41f038
mov eax, edi
mov dx, word [eax + 0x44]
cmp dx, word [ebp - 2]
jne 0x41f038
mov eax, dword [eax + 0x10]
mov edx, dword [ebp - 8]
mov dword [edx], eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x10]
call fcn.00404d0c
mov eax, edi
call fcn.00403288
push esi
call fcn.00406ad4
mov eax, dword [ebp + 8]
mov eax, dword [eax]
xor edx, edx
call fcn.0040502c
jne 0x41f05d
inc ebx
cmp ebx, 0x19
jne 0x41eef1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x52447a
lea eax, [ebp - 0x10]
call fcn.00404cd0
ret