Function at 0x423c41
Capabilities:
Parse pe header

Disassembly:
add byte [ebx + 0x39], dl
or eax, 0x56415b0a
inc edi
add byte [esi], ch
inc ebx
outsd dx, dword [esi]
jb 0x423cb5
pop ebp
and byte [ecx], cl
dec esi
inc esi
dec edi
and byte [edx], dh
xor byte [ecx], dh
aaa
or byte [0x4003230], ch
and byte [eax], dh
xor byte [edx], bh
add byte [esp + esi], dh
cmp dh, byte [ecx]
xor ebp, dword [esi + 0x20320037]
dec edi
push ebx
dec eax
dec ecx
and byte [eax], dl
dec ecx
inc esp
cmp dh, byte [0x20343032]
add al, 0x54
dec eax
add byte [ecx], cl
xor al, 0x35
xor al, 0x20
add dword [eax], eax
pop es
inc esi
aaa
cmp dword [esi], esi
xor byte [0x2d320043], dh
xor dword [ecx], edi
xor eax, dword [ecx + 0x2d]
xor al, 0
xor esi, dword [edi]
xor byte [0x39303838], ch
add byte [0x38463431], ch
cmp byte ss:[eax + eax*2], dh
xor al, 0x33
xor dword [eax], esi
inc ebx
cmp al, byte [eax]
sbb esi, dword [edx]
add byte [esi], ch
aaa
cmp dword [ecx], edi
cmp byte [esi], ch
popal
cmp dword [eax], eax
xor ax, 0x6433
cmp byte [ecx], bh
add byte gs:[eax], bh
cmp byte [esi], dh
xor al, 0x62
xor eax, dword [eax]
xor al, 0x32
xor dword [ebx + 0x66], esp
bound esi, qword [esi]
add byte [edx + 0x63], ah
xor ah, byte gs:[ecx + 0x37]
xor eax, 0x31320031
xor dword [edx], esi
xor dword ss:[esi], ebp
xor byte [eax], al
and byte [ebp + 0x53], cl
inc edi
cmp ah, byte [ecx + 0x42]
push ebp
add byte [ebx + 0x6b], dl
jno 0x423d4f
inc esi
xor al, byte [eax]
push esi
outsb dx, byte [esi]
jbe 0x423d7f
xor esi, dword [ebx]
insd dword es:[edi], dx
imul eax, dword [eax], 0x39
xor byte [edx + 0x57], cl
pop edx
das
push ebp
dec esi
add byte [edx + 0x4d], dh
pop eax
je 0x423d80
inc ebx
je 0x423d73
add byte [0x4b367333], dh
push 0x50006172
outsd dx, dword [esi]
js 0x423d90
dec edx
outsb dx, byte [esi]
imul eax, dword [eax], 0x77
jb 0x423d80
jne 0x423d9c
jae 0x423d91
outsb dx, byte [esi]
add byte [ebp + 0x6b], dl
jae 0x423d91
aaa
inc ebp
insb byte es:[edi], dx
add byte [di + 0x33], cl
jns 0x423d7d
cmp dword [ecx + 0x30], ebp
add byte [edi + 0x2b], dl
jp 0x423d9b
dec ebx
inc esp
popal
inc esp
add byte [0x4d4c6f4a], dh
push esi
sub edi, dword [eax]
jb 0x423dad
cmp byte [eax + 0x55], bl
push edx
bound esp, qword [edx]
cmp dword [esi + 0x39], edx
xor eax, 0x43645070
add byte [esi + 0x68], dl
dec ebx
insb byte es:[edi], dx
dec eax
dec esi
xor byte [ebp], al
aaa
inc ecx
outsd dx, dword [esi]
cmp dword [ecx + 0x68], ecx
inc esi
push 0x43006446
xor byte [ebx + 0x66], dh
add byte fs:[ebx + 0x30], al
add byte [ebx + 0x30], al
jae 0x423deb
dec esp
inc ebx
push 0x37
add byte [ecx + 0x4d], dh
das
pop edx
push edx
dec ebp
pop ecx
jp 0x423d93
dec esp
outsd dx, dword [esi]
dec esp
inc edi
pop edx
xor dword [edx + 0x4c], ecx
add byte [ebp + 0x38], al
xor byte [edi + ebp*2], dh
inc ebp
cmp byte [eax], dh
xor al, 0x6f
push esp
dec ecx
inc edx
add byte [ecx], dh
push eax
ja 0x423e0e
cmp byte [esi + 0x39], ch
jne 0x423dae
add byte [esp + esi*2 + 0x34], dh
cmp dword [bp + si + 0x4b], eax
je 0x423e24
xor al, 0x67
cmp dword [edx + 0x4b], eax
cmp dword [eax], eax
push ebx
xor eax, 0x614d6246
jp 0x423e25
add byte [esi + 0x31], al
inc ebp
push edi
xor ch, byte [edi]
push esi
dec edi
add byte [ebx + 0x47], al
pop eax
xor cl, byte [esi + 0x45]
inc ecx
push ecx
add byte [ecx + 0x79], al
jb 0x423e49
pop edx
outsb dx, byte gs:[esi]
cmp byte [eax], al
dec ebx
xor dword [eax + 0x6e], ebx
imul esi, dword gs:[esi + 0x72], 0
inc edi
ja 0x423e57
sub esi, dword [esi]
push 0x50
push eax
add byte [edx], dh
push ebp
push esp
push edi
pop ecx
insb byte es:[edi], dx
cmp dword [eax + eax + 0x78], eax
js 0x423e3f
inc ebp
push eax
dec edi
pop eax
dec esp
add byte [ebx + 0x63], al
inc ecx
xor edi, dword [ecx]
cmp byte [ebx + 0x4c], cl
add byte [esi], dh
dec esi
push ebp
das
jp 0x423e80
dec edx
add byte gs:[ecx + 0x50], cl
push ecx
push ebx
jbe 0x423e6c
jne 0x423e6b
add byte [ebp + 0x7a], ah
inc esp
dec eax
push 0x41006e59
dec ebx
ja 0x423e6b
inc esp
imul eax, dword [ebp + 4], 0x38
cmp ch, cl
aas
jo 0x423e7e
js 0x423eaa
add byte [edi + edx*2 + 0x54], dh
jno 0x423eab
jne 0x423ea2
cmp byte [eax + 0x4a703543], al
push ecx
cmp eax, 0x376ff3d
inc ebx
xor eax, 0x3d514a70
cmp eax, 0xff0376ff
jbe 0x423e29
push dword [esi - 0x23]
jbe 0x423e91
jns 0x423e99
insd dword es:[edi], dx
imul ebx, dword [edx], 0x56
insb byte es:[edi], dx
push ebx
imul esi, dword [eax], 0x4c006231
xor al, 0x37
imul ebx, dword [edx + 0x78], 0x77
dec edx
add byte [ecx + 0x71], dh
push esi
dec edi
inc esp
insb byte es:[edi], dx
imul esp, dword [eax + eax + 0x45], 0x35
inc edi
imul eax, dword [esi + 0x32], 0x5a006f73
ja 0x423ecc
imul eax, dword [edi + esi*2 + 0x7a], 0x42
jp 0x423ec2
add byte [ebx + 0x6c], al
push edi
inc ebp
inc edx
jne 0x423e93
inc esp
je 0x423f03
dec edi
jb 0x423e9c
pop edx
xor eax, 0x32486e36
pop edx
je 0x423ea5
dec ebp
dec eax
dec esp
jns 0x423efd
arpl word [ebx + 0x43], sp