Function at 0x48fc00
Capabilities:
Parse pe header

Disassembly:
push ebx
push esi
mov esi, ecx
push edi
mov edi, edx
movzx ebx, byte [esi]
lea eax, [ebx - 9]
cmp eax, 0x75
ja case.0x48fc1d.11
movzx eax, byte [eax + 0x4901c8]
jmp dword [eax*4 + 0x490160]
movzx eax, byte [esi + 1]
mov edx, 1
test byte [eax + 0x4f3a90], dl
je 0x48fc4f
jmp 0x48fc40
movzx ecx, byte [edx + esi + 1]
inc edx
test byte [ecx + 0x4f3a90], 1
jne 0x48fc40
mov dword [edi], 0x95
mov eax, edx
pop edi
pop esi
pop ebx
ret
cmp byte [esi + 1], 0x2d
jne 0x48fc8b
movzx eax, byte [esi + 2]
mov ecx, 2
test eax, eax
je 0x48fc7f
mov edi, edi
cmp eax, 0xa
je 0x48fc7f
movzx eax, byte [ecx + esi + 1]
inc ecx
test eax, eax
jne 0x48fc70
mov dword [edi], 0x95
mov eax, ecx
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x57
mov eax, 1
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x16
mov eax, 1
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x17
mov eax, 1
pop edi
pop esi
pop ebx
ret
mov dword [edi], 1
mov eax, 1
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x56
mov eax, 1
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x58
mov eax, 1
pop edi
pop esi
pop ebx
ret
cmp byte [esi + 1], 0x2a
jne 0x48fd21
mov cl, byte [esi + 2]
test cl, cl
je 0x48fd21
mov eax, 3
movzx ecx, cl
lea ebx, [ebx]
cmp ecx, 0x2a
jne 0x48fd0b
cmp byte [eax + esi], 0x2f
je 0x48fd16
movzx ecx, byte [eax + esi]
test ecx, ecx
je 0x48fd17
inc eax
jmp 0x48fd00
inc eax
mov dword [edi], 0x95
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x59
mov eax, 1
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x5a
mov eax, 1
pop edi
pop esi
pop ebx
ret
xor eax, eax
mov dword [edi], 0x4c
cmp byte [esi + 1], 0x3d
pop edi
sete al
pop esi
inc eax
pop ebx
ret
movzx eax, byte [esi + 1]
cmp eax, 0x3d
jne 0x48fd6b
mov dword [edi], 0x4e
mov eax, 2
pop edi
pop esi
pop ebx
ret
cmp eax, 0x3e
jne 0x48fd7f
mov dword [edi], 0x4b
mov eax, 2
pop edi
pop esi
pop ebx
ret
cmp eax, 0x3c
jne 0x48fd93
mov dword [edi], 0x54
mov eax, 2
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x4f
mov eax, 1
pop edi
pop esi
pop ebx
ret
movzx eax, byte [esi + 1]
cmp eax, 0x3d
jne 0x48fdba
mov dword [edi], 0x50
mov eax, 2
pop edi
pop esi
pop ebx
ret
cmp eax, 0x3e
jne 0x48fdce
mov dword [edi], 0x55
mov eax, 2
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x4d
mov eax, 1
pop edi
pop esi
pop ebx
ret
cmp byte [esi + 1], 0x3d
mov eax, 2
je 0x48fdf2
mov dword [edi], 0x94
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x4b
pop edi
pop esi
pop ebx
ret
cmp byte [esi + 1], 0x7c
je 0x48fe11
mov dword [edi], 0x53
mov eax, 1
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x5b
mov eax, 2
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x19
mov eax, 1
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x52
mov eax, 1
pop edi
pop esi
pop ebx
ret
mov dword [edi], 0x5d
mov eax, 1
pop edi
pop esi
pop ebx
ret
movzx edx, byte [esi + 1]
mov ecx, 1
test edx, edx
je 0x48fe78
lea ebx, [ebx]
cmp edx, ebx
jne 0x48fe6e
movzx eax, byte [esi + ecx + 1]
cmp eax, ebx
jne 0x48fe78
inc ecx
movzx edx, byte [ecx + esi + 1]
inc ecx
test edx, edx
jne 0x48fe60
cmp edx, 0x27
jne 0x48fe8a
mov dword [edi], 0x5e
lea eax, [ecx + 1]
pop edi
pop esi
pop ebx
ret
test edx, edx
je 0x4900a0
mov dword [edi], 0x1a
lea eax, [ecx + 1]
pop edi
pop esi
pop ebx
ret
movzx eax, byte [esi + 1]
test byte [eax + 0x4f3a90], 4
jne case.0x48fc1d.48
mov dword [edi], 0x76
mov eax, 1
pop edi
pop esi
pop ebx
ret
xor edx, edx
mov dword [edi], 0x81
test byte [ebx + 0x4f3a90], 4
je 0x48fedf
lea esp, [esp]
movzx eax, byte [edx + esi + 1]
inc edx
test byte [eax + 0x4f3a90], 4
jne 0x48fed0
cmp byte [edx + esi], 0x2e
jne 0x48ff15
movzx eax, byte [edx + esi + 1]
inc edx
test byte [eax + 0x4f3a90], 4
je 0x48ff0f
jmp 0x48ff00
movzx eax, byte [edx + esi + 1]
inc edx
test byte [eax + 0x4f3a90], 4
jne 0x48ff00
mov dword [edi], 0x82
mov al, byte [edx + esi]
cmp al, 0x65
je 0x48ff20
cmp al, 0x45
jne 0x48ff75
mov cl, byte [edx + esi + 1]
movzx eax, cl
test byte [eax + 0x4f3a90], 4
jne 0x48ff48
cmp cl, 0x2b
je 0x48ff3a
cmp cl, 0x2d
jne 0x48ff75
movzx eax, byte [edx + esi + 2]
test byte [eax + 0x4f3a90], 4
je 0x48ff75
movzx eax, byte [edx + esi + 2]
add edx, 2
test byte [eax + 0x4f3a90], 4
je 0x48ff6f
lea esp, [esp]
movzx eax, byte [edx + esi + 1]
inc edx
test byte [eax + 0x4f3a90], 4
jne 0x48ff60
mov dword [edi], 0x82
movzx eax, byte [edx + esi]
test byte [eax + 0x4f3a90], 0x46
je 0x48ff97
movzx ecx, byte [edx + esi + 1]
inc edx
mov dword [edi], 0x94
test byte [ecx + 0x4f3a90], 0x46
jne 0x48ff82
pop edi
pop esi
mov eax, edx
pop ebx
ret
mov eax, 1
cmp ebx, 0x5d
je 0x48ffb5
movzx ebx, byte [eax + esi]
test ebx, ebx
je 0x48ffb5
inc eax
cmp ebx, 0x5d
jne 0x48ffa7
cmp ebx, 0x5d
mov ecx, 0x94
mov edx, 0x1a
cmove ecx, edx
mov dword [edi], ecx
pop edi
pop esi
pop ebx
ret
movzx eax, byte [esi + 1]
mov edx, 1
mov dword [edi], 0x85
test byte [eax + 0x4f3a90], 4
je 0x48ff97
movzx ecx, byte [edx + esi + 1]
inc edx
test byte [ecx + 0x4f3a90], 4
jne 0x48ffe3
pop edi
pop esi
mov eax, edx
pop ebx
ret
movzx eax, byte [esi + 1]
mov edx, 1
test byte [eax + 0x4f3a90], 4
je case.0x48fc1d.36
lea ebx, [ebx]
movzx ecx, byte [edx + esi + 1]
inc edx
test byte [ecx + 0x4f3a90], 4
jne 0x490010
cmp edx, 1
jle case.0x48fc1d.36
mov dword [edi], 0x84
mov eax, edx
pop edi
pop esi
pop ebx
ret
movzx edx, byte [esi + 1]
xor ebx, ebx
mov dword [edi], 0x85
lea ecx, [ebx + 1]
test edx, edx
je 0x4900a0
movzx eax, dl
test byte [eax + 0x4f3a90], 0x46
je 0x490052
inc ebx
jmp 0x490063
cmp edx, 0x28
je 0x49006f
cmp edx, 0x3a
jne 0x49009c
cmp byte [esi + ecx + 1], dl
jne 0x49009c
inc ecx
movzx edx, byte [ecx + esi + 1]
inc ecx
test edx, edx
jne 0x490043
jmp 0x49009c
test ebx, ebx
jle 0x49009e
movzx edx, byte [ecx + esi + 1]
inc ecx
test edx, edx
je 0x49008e
test byte [edx + 0x4f3a90], 1
jne 0x49008e
cmp edx, 0x29
jne 0x490073
inc ecx
jmp 0x49009c
cmp edx, 0x29
jne 0x490096
inc ecx
jmp 0x49009c
mov dword [edi], 0x94
test ebx, ebx
jne 0x4900a6
mov dword [edi], 0x94
pop edi
pop esi
mov eax, ecx
pop ebx
ret
cmp byte [esi + 1], 0x27
jne case.0x48fc1d.11
movzx ecx, byte [esi + 2]
mov edx, 2
mov dword [edi], 0x83
test ecx, ecx
je 0x4900e6
cmp ecx, 0x27
je 0x4900e6
movzx eax, cl
test byte [eax + 0x4f3a90], 8
jne 0x4900dc
mov dword [edi], 0x94
movzx ecx, byte [edx + esi + 1]
inc edx
test ecx, ecx
jne 0x4900c5
mov eax, edx
and eax, 0x80000001
jns 0x4900f4
dec eax
or eax, 0xfffffffe
inc eax
jne 0x4900fa
test ecx, ecx
jne 0x490104
mov dword [edi], 0x94
test ecx, ecx
je 0x490105
inc edx
pop edi
pop esi
mov eax, edx
pop ebx
ret
test byte [ebx + 0x4f3a90], 0x46
jne 0x490123
mov dword [edi], 0x94
mov eax, 1
pop edi
pop esi
pop ebx
ret
movzx eax, byte [esi + 1]
mov ebx, 1
test byte [eax + 0x4f3a90], 0x46
je 0x49014f
jmp 0x490140
movzx ecx, byte [ebx + esi + 1]
inc ebx
test byte [ecx + 0x4f3a90], 0x46
jne 0x490140
mov edx, ebx
mov ecx, esi
call fcn.0048fb20
mov dword [edi], eax
mov eax, ebx
pop edi
pop esi
pop ebx
ret