Function at 0x4bd4e0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
movzx edi, byte [ecx]
lea eax, [edi - 9]
cmp eax, 0x75
ja case.0x4bd4fe.34
movzx eax, byte [eax + 0x4bdb30]
mov dl, 4
jmp dword [eax*4 + 0x4bdac8]
movzx esi, byte [ecx + 1]
mov edx, 1
mov eax, edx
test byte [esi + 0x53b6e8], dl
je 0x4bd52e
jmp 0x4bd520
add eax, edx
movzx esi, byte [eax + ecx]
test byte [esi + 0x53b6e8], dl
jne 0x4bd520
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x95
pop ebx
pop ebp
ret
cmp byte [ecx + 1], 0x2d
jne 0x4bd56d
movzx edx, byte [ecx + 2]
mov eax, 2
test edx, edx
je 0x4bd55f
nop
cmp edx, 0xa
je 0x4bd55f
movzx edx, byte [eax + ecx + 1]
inc eax
test edx, edx
jne 0x4bd550
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x95
pop ebx
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax], 0x57
mov eax, 1
pop ebx
pop ebp
ret
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x16
mov eax, 1
pop ebx
pop ebp
ret
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x17
mov eax, 1
pop ebx
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax], 1
mov eax, 1
pop ebx
pop ebp
ret
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x56
mov eax, 1
pop ebx
pop ebp
ret
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x58
mov eax, 1
pop ebx
pop ebp
ret
cmp byte [ecx + 1], 0x2a
jne 0x4bd619
mov dl, byte [ecx + 2]
test dl, dl
je 0x4bd619
mov eax, 3
movzx edx, dl
cmp edx, 0x2a
jne 0x4bd5ff
cmp byte [eax + ecx], 0x2f
je 0x4bd60a
movzx edx, byte [eax + ecx]
test edx, edx
je 0x4bd60b
inc eax
jmp 0x4bd5f4
inc eax
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x95
pop ebx
pop ebp
ret
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x59
mov eax, 1
pop ebx
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax], 0x5a
mov eax, 1
pop ebx
pop ebp
ret
mov edx, dword [ebp + 8]
xor eax, eax
cmp byte [ecx + 1], 0x3d
pop edi
sete al
pop esi
mov dword [edx], 0x4c
pop ebx
inc eax
pop ebp
ret
movzx eax, byte [ecx + 1]
cmp eax, 0x3d
jne 0x4bd673
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax], 0x4e
mov eax, 2
pop ebx
pop ebp
ret
cmp eax, 0x3e
jne 0x4bd68b
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x4b
mov eax, 2
pop ebx
pop ebp
ret
cmp eax, 0x3c
jne 0x4bd6a3
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x54
mov eax, 2
pop ebx
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax], 0x4f
mov eax, 1
pop ebx
pop ebp
ret
movzx eax, byte [ecx + 1]
cmp eax, 0x3d
jne 0x4bd6d2
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x50
mov eax, 2
pop ebx
pop ebp
ret
cmp eax, 0x3e
jne 0x4bd6ea
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x55
mov eax, 2
pop ebx
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax], 0x4d
mov eax, 1
pop ebx
pop ebp
ret
cmp byte [ecx + 1], 0x3d
mov eax, 2
je 0x4bd716
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x94
pop ebx
pop ebp
ret
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x4b
pop ebx
pop ebp
ret
cmp byte [ecx + 1], 0x7c
je 0x4bd73d
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax], 0x53
mov eax, 1
pop ebx
pop ebp
ret
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x5b
mov eax, 2
pop ebx
pop ebp
ret
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x19
mov eax, 1
pop ebx
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
mov dword [eax], 0x52
mov eax, 1
pop ebx
pop ebp
ret
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x5d
mov eax, 1
pop ebx
pop ebp
ret
movzx esi, byte [ecx + 1]
mov eax, 1
test esi, esi
je 0x4bd7ae
cmp esi, edi
jne 0x4bd7a4
movzx edx, byte [ecx + eax + 1]
cmp edx, edi
jne 0x4bd7ae
inc eax
movzx esi, byte [eax + ecx + 1]
inc eax
test esi, esi
jne 0x4bd796
cmp esi, 0x27
jne 0x4bd7c2
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x5e
inc eax
pop ebx
pop ebp
ret
test esi, esi
je 0x4bd708
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x1a
inc eax
pop ebx
pop ebp
ret
movzx eax, byte [ecx + 1]
test byte [eax + 0x53b6e8], dl
jne case.0x4bd4fe.24
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x76
mov eax, 1
pop ebx
pop ebp
ret
mov esi, dword [ebp + 8]
xor eax, eax
mov dword [esi], 0x81
test byte [edi + 0x53b6e8], dl
je 0x4bd81e
jmp 0x4bd810
movzx edi, byte [eax + ecx + 1]
inc eax
test byte [edi + 0x53b6e8], dl
jne 0x4bd810
cmp byte [eax + ecx], 0x2e
jne 0x4bd846
movzx edi, byte [eax + ecx + 1]
inc eax
test byte [edi + 0x53b6e8], dl
je 0x4bd840
movzx edi, byte [eax + ecx + 1]
inc eax
test byte [edi + 0x53b6e8], dl
jne 0x4bd832
mov dword [esi], 0x82
mov bl, byte [eax + ecx]
cmp bl, 0x65
je 0x4bd853
cmp bl, 0x45
jne 0x4bd8a9
mov bl, byte [eax + ecx + 1]
movzx esi, bl
test byte [esi + 0x53b6e8], dl
jne 0x4bd879
cmp bl, 0x2b
je 0x4bd86c
cmp bl, 0x2d
jne 0x4bd8a9
movzx esi, byte [eax + ecx + 2]
test byte [esi + 0x53b6e8], dl
je 0x4bd8a9
movzx esi, byte [eax + ecx + 2]
add eax, 2
test byte [esi + 0x53b6e8], dl
je 0x4bd89e
lea esp, [esp]
movzx esi, byte [eax + ecx + 1]
inc eax
test byte [esi + 0x53b6e8], dl
jne 0x4bd890
mov edx, dword [ebp + 8]
mov dword [edx], 0x82
jmp 0x4bd8ac
mov edx, dword [ebp + 8]
movzx esi, byte [eax + ecx]
mov bl, 0x46
test byte [esi + 0x53b6e8], bl
je 0x4bdac1
mov edi, edi
movzx esi, byte [eax + ecx + 1]
inc eax
mov edi, 0x94
test byte [esi + 0x53b6e8], bl
jne 0x4bd8c0
mov dword [edx], edi
pop edi
pop esi
pop ebx
pop ebp
ret
mov edx, edi
mov eax, 1
cmp edx, 0x5d
je 0x4bd8f4
movzx edx, byte [eax + ecx]
test edx, edx
je 0x4bd8f4
inc eax
cmp edx, 0x5d
jne 0x4bd8e6
mov ecx, dword [ebp + 8]
sub edx, 0x5d
neg edx
sbb edx, edx
pop edi
and edx, 0x7a
add edx, 0x1a
pop esi
mov dword [ecx], edx
pop ebx
pop ebp
ret
mov edx, dword [ebp + 8]
movzx esi, byte [ecx + 1]
mov dword [edx], 0x85
mov dl, 4
mov eax, 1
test byte [esi + 0x53b6e8], dl
je 0x4bdac1
jmp 0x4bd930
movzx esi, byte [eax + ecx + 1]
inc eax
test byte [esi + 0x53b6e8], dl
jne 0x4bd930
pop edi
pop esi
pop ebx
pop ebp
ret
movzx esi, byte [ecx + 1]
mov dl, 4
mov eax, 1
test byte [esi + 0x53b6e8], dl
je case.0x4bd4fe.13
jmp 0x4bd960
movzx esi, byte [eax + ecx + 1]
inc eax
test byte [esi + 0x53b6e8], dl
jne 0x4bd960
cmp eax, 1
jle case.0x4bd4fe.13
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], 0x84
pop ebx
pop ebp
ret
mov edx, dword [ebp + 8]
mov dword [edx], 0x85
movzx edx, byte [ecx + 1]
xor esi, esi
lea eax, [esi + 1]
test edx, edx
je 0x4bda04
mov bl, 0x46
lea esp, [esp]
movzx edi, dl
test byte [edi + 0x53b6e8], bl
je 0x4bd9ae
inc esi
jmp 0x4bd9bf
cmp edx, 0x28
je 0x4bd9cb
cmp edx, 0x3a
jne 0x4bd9fc
cmp byte [ecx + eax + 1], dl
jne 0x4bd9fc
inc eax
movzx edx, byte [eax + ecx + 1]
inc eax
test edx, edx
jne 0x4bd9a0
jmp 0x4bd9fc
test esi, esi
jle 0x4bd9fe
nop
movzx edx, byte [eax + ecx + 1]
inc eax
test edx, edx
je 0x4bd9eb
test byte [edx + 0x53b6e8], 1
jne 0x4bd9eb
cmp edx, 0x29
jne 0x4bd9d0
inc eax
jmp 0x4bd9fc
cmp edx, 0x29
jne 0x4bd9f3
inc eax
jmp 0x4bd9fc
mov ecx, dword [ebp + 8]
mov dword [ecx], 0x94
test esi, esi
jne 0x4bdac1
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x94
pop ebx
pop ebp
ret
cmp byte [ecx + 1], 0x27
jne case.0x4bd4fe.34
movzx edx, byte [ecx + 2]
mov esi, dword [ebp + 8]
mov dword [esi], 0x83
mov eax, 2
test edx, edx
je 0x4bda50
mov bl, 8
cmp edx, 0x27
je 0x4bda50
movzx edx, dl
test byte [edx + 0x53b6e8], bl
jne 0x4bda46
mov dword [esi], 0x94
movzx edx, byte [eax + ecx + 1]
inc eax
test edx, edx
jne 0x4bda30
mov ecx, eax
and ecx, 0x80000001
jns 0x4bda5f
dec ecx
or ecx, 0xfffffffe
inc ecx
jne 0x4bda65
test edx, edx
jne 0x4bda6f
mov dword [esi], 0x94
test edx, edx
je 0x4bdac1
pop edi
pop esi
inc eax
pop ebx
pop ebp
ret
mov bl, 0x46
test byte [edi + 0x53b6e8], bl
jne 0x4bda92
mov edx, dword [ebp + 8]
pop edi
pop esi
mov dword [edx], 0x94
mov eax, 1
pop ebx
pop ebp
ret
movzx eax, byte [ecx + 1]
mov edi, 1
test byte [eax + 0x53b6e8], bl
je 0x4bdab1
movzx edx, byte [edi + ecx + 1]
inc edi
test byte [edx + 0x53b6e8], bl
jne 0x4bdaa3
push ecx
call fcn.004bd400
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebx
pop ebp
ret