Function at 0x49d9b0
Capabilities:
Parse pe header

Disassembly:
push ebx
push esi
push edi
mov edi, eax
xor eax, eax
push ebp
mov al, byte [edi]
mov esi, edx
add eax, 0xfffffff7
cmp eax, 0x75
ja case.0x49d9ce.9
mov al, byte [eax + 0x49d9d5]
jmp dword [eax*4 + 0x49da4b]
mov ebx, 1
lea eax, [edi + 1]
jmp 0x49dabf
inc ebx
inc eax
xor edx, edx
mov dl, byte [eax]
test byte [edx + 0x5da844], 1
jne 0x49dabd
mov dword [esi], 0x95
mov eax, ebx
jmp 0x49e00c
xor edx, edx
mov dl, byte [edi + 1]
cmp edx, 0x2d
jne 0x49db09
mov ebx, 2
lea edx, [edi + 2]
jmp 0x49daef
inc ebx
inc edx
xor eax, eax
mov al, byte [edx]
test eax, eax
je 0x49dafc
cmp eax, 0xa
jne 0x49daed
mov dword [esi], 0x95
mov eax, ebx
jmp 0x49e00c
mov dword [esi], 0x57
mov eax, 1
jmp 0x49e00c
mov dword [esi], 0x16
mov eax, 1
jmp 0x49e00c
mov dword [esi], 0x17
mov eax, 1
jmp 0x49e00c
mov dword [esi], 1
mov eax, 1
jmp 0x49e00c
mov dword [esi], 0x56
mov eax, 1
jmp 0x49e00c
mov dword [esi], 0x58
mov eax, 1
jmp 0x49e00c
xor edx, edx
mov dl, byte [edi + 1]
cmp edx, 0x2a
jne 0x49db79
cmp byte [edi + 2], 0
jne 0x49db89
mov dword [esi], 0x59
mov eax, 1
jmp 0x49e00c
mov ebx, 3
xor eax, eax
mov al, byte [edi + 2]
lea edx, [edi + 3]
jmp 0x49db9a
inc ebx
inc edx
cmp eax, 0x2a
jne 0x49dba8
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x2f
je 0x49dbb0
xor eax, eax
mov al, byte [edx]
test eax, eax
jne 0x49db98
test eax, eax
je 0x49dbb5
inc ebx
mov dword [esi], 0x95
mov eax, ebx
jmp 0x49e00c
mov dword [esi], 0x5a
mov eax, 1
jmp 0x49e00c
mov dword [esi], 0x4c
xor edx, edx
mov dl, byte [edi + 1]
cmp edx, 0x3d
sete al
and eax, 1
inc eax
jmp 0x49e00c
xor eax, eax
mov al, byte [edi + 1]
cmp eax, 0x3d
jne 0x49dc08
mov dword [esi], 0x4e
mov eax, 2
jmp 0x49e00c
jmp case.0x49d9ce.17
cmp eax, 0x3e
jne 0x49dc1f
mov dword [esi], 0x4b
mov eax, 2
jmp 0x49e00c
cmp eax, 0x3c
jne 0x49dc36
mov dword [esi], 0x54
mov eax, 2
jmp 0x49e00c
mov dword [esi], 0x4f
mov eax, 1
jmp 0x49e00c
xor eax, eax
mov al, byte [edi + 1]
cmp eax, 0x3d
jne 0x49dc62
mov dword [esi], 0x50
mov eax, 2
jmp 0x49e00c
cmp eax, 0x3e
jne 0x49dc79
mov dword [esi], 0x55
mov eax, 2
jmp 0x49e00c
mov dword [esi], 0x4d
mov eax, 1
jmp 0x49e00c
xor edx, edx
mov dl, byte [edi + 1]
cmp edx, 0x3d
je 0x49dca5
mov dword [esi], 0x94
mov eax, 2
jmp 0x49e00c
mov dword [esi], 0x4b
mov eax, 2
jmp 0x49e00c
xor edx, edx
mov dl, byte [edi + 1]
cmp edx, 0x7c
je 0x49dcd1
mov dword [esi], 0x53
mov eax, 1
jmp 0x49e00c
mov dword [esi], 0x5b
mov eax, 2
jmp 0x49e00c
mov dword [esi], 0x19
mov eax, 1
jmp 0x49e00c
mov dword [esi], 0x52
mov eax, 1
jmp 0x49e00c
mov dword [esi], 0x5d
mov eax, 1
jmp 0x49e00c
xor ecx, ecx
mov cl, byte [edi]
mov ebx, 1
lea edx, [edi + 1]
jmp 0x49dd33
cmp ecx, eax
jne 0x49dd31
movzx edi, byte [edx + 1]
cmp ecx, edi
jne 0x49dd3b
inc ebx
inc edx
jmp 0x49dd31
inc ebx
inc edx
xor eax, eax
mov al, byte [edx]
test eax, eax
jne 0x49dd1f
cmp eax, 0x27
jne 0x49dd50
mov dword [esi], 0x5e
lea eax, [ebx + 1]
jmp 0x49e00c
test eax, eax
je 0x49dd64
mov dword [esi], 0x1a
lea eax, [ebx + 1]
jmp 0x49e00c
mov dword [esi], 0x94
mov eax, ebx
jmp 0x49e00c
xor edx, edx
mov dl, byte [edi + 1]
test byte [edx + 0x5da844], 4
jne case.0x49d9ce.21
mov dword [esi], 0x76
mov eax, 1
jmp 0x49e00c
mov dword [esi], 0x81
xor ebx, ebx
mov eax, edi
jmp 0x49dd9d
inc ebx
inc eax
xor edx, edx
mov dl, byte [eax]
test byte [edx + 0x5da844], 4
jne 0x49dd9b
xor ecx, ecx
mov cl, byte [edi + ebx]
cmp ecx, 0x2e
jne 0x49ddcf
inc ebx
lea eax, [edi + ebx]
jmp 0x49ddbc
inc ebx
inc eax
xor edx, edx
mov dl, byte [eax]
test byte [edx + 0x5da844], 4
jne 0x49ddba
mov dword [esi], 0x82
xor eax, eax
mov al, byte [edi + ebx]
cmp eax, 0x65
je 0x49ddde
cmp eax, 0x45
jne 0x49de29
xor edx, edx
mov dl, byte [edi + ebx + 1]
test byte [edx + 0x5da844], 4
jne 0x49de0c
xor eax, eax
mov al, byte [edi + ebx + 1]
cmp eax, 0x2b
je 0x49ddfd
cmp eax, 0x2d
jne 0x49de29
xor edx, edx
mov dl, byte [edi + ebx + 2]
test byte [edx + 0x5da844], 4
je 0x49de29
add ebx, 2
lea eax, [edi + ebx]
jmp 0x49de16
inc ebx
inc eax
xor edx, edx
mov dl, byte [eax]
test byte [edx + 0x5da844], 4
jne 0x49de14
mov dword [esi], 0x82
lea eax, [edi + ebx]
jmp 0x49de36
mov dword [esi], 0x94
inc ebx
inc eax
xor edx, edx
mov dl, byte [eax]
test byte [edx + 0x5da844], 0x46
jne 0x49de2e
mov eax, ebx
jmp 0x49e00c
mov ebx, 1
xor eax, eax
mov al, byte [edi]
lea edx, [edi + 1]
jmp 0x49de5a
inc ebx
inc edx
cmp eax, 0x5d
je 0x49de67
xor eax, eax
mov al, byte [edx]
test eax, eax
jne 0x49de58
cmp eax, 0x5d
jne 0x49de73
mov edx, 0x1a
jmp 0x49de78
mov edx, 0x94
mov dword [esi], edx
mov eax, ebx
jmp 0x49e00c
mov dword [esi], 0x85
mov ebx, 1
lea eax, [edi + 1]
jmp 0x49de93
inc ebx
inc eax
xor edx, edx
mov dl, byte [eax]
test byte [edx + 0x5da844], 4
jne 0x49de91
mov eax, ebx
jmp 0x49e00c
mov ebx, 1
lea eax, [edi + 1]
jmp 0x49deb3
inc ebx
inc eax
xor edx, edx
mov dl, byte [eax]
test byte [edx + 0x5da844], 4
jne 0x49deb1
cmp ebx, 1
jle case.0x49d9ce.15
mov dword [esi], 0x84
mov eax, ebx
jmp 0x49e00c
xor ebp, ebp
mov dword [esi], 0x85
mov ebx, 1
lea edx, [edi + 1]
jmp 0x49df42
xor ecx, ecx
mov cl, al
test byte [ecx + 0x5da844], 0x46
je 0x49def4
inc ebp
jmp 0x49df40
cmp eax, 0x28
jne 0x49df2b
test ebp, ebp
jle 0x49df2b
inc ebx
inc edx
xor eax, eax
mov al, byte [edx]
test eax, eax
je 0x49df19
xor ecx, ecx
mov cl, al
test byte [ecx + 0x5da844], 1
jne 0x49df19
cmp eax, 0x29
jne 0x49defd
cmp eax, 0x29
jne 0x49df21
inc ebx
jmp 0x49df4a
mov dword [esi], 0x94
jmp 0x49df4a
cmp eax, 0x3a
jne 0x49df4a
xor eax, eax
mov al, byte [edx + 1]
cmp eax, 0x3a
jne 0x49df4a
inc ebx
inc edx
jmp 0x49df40
inc ebx
inc edx
xor eax, eax
mov al, byte [edx]
test eax, eax
jne 0x49dee4
test ebp, ebp
jne 0x49df54
mov dword [esi], 0x94
mov eax, ebx
jmp 0x49e00c
xor edx, edx
mov dl, byte [edi + 1]
cmp edx, 0x27
jne case.0x49d9ce.9
mov dword [esi], 0x83
mov ebx, 2
lea eax, [edi + 2]
jmp 0x49df77
inc ebx
inc eax
xor edx, edx
mov dl, byte [eax]
test byte [edx + 0x5da844], 8
jne 0x49df75
xor ecx, ecx
mov cl, byte [edi + ebx]
cmp ecx, 0x27
jne 0x49dfa1
mov ecx, ebx
and ecx, 0x80000001
jns 0x49df9d
dec ecx
or ecx, 0xfffffffe
inc ecx
test ecx, ecx
je 0x49dfbf
mov dword [esi], 0x94
lea eax, [edi + ebx]
jmp 0x49dfae
inc ebx
inc eax
mov dl, byte [eax]
test dl, dl
je 0x49dfbf
and edx, 0xff
cmp edx, 0x27
jne 0x49dfac
cmp byte [edi + ebx], 0
je 0x49dfc6
inc ebx
mov eax, ebx
jmp 0x49e00c
xor ecx, ecx
mov cl, byte [edi]
test byte [ecx + 0x5da844], 0x46
jne 0x49dfd9
jmp 0x49e001
mov ebx, 1
lea eax, [edi + 1]
jmp 0x49dfe5
inc ebx
inc eax
xor edx, edx
mov dl, byte [eax]
test byte [edx + 0x5da844], 0x46
jne 0x49dfe3
mov edx, ebx
mov eax, edi
call fcn.0049d90c
mov dword [esi], eax
mov eax, ebx
jmp 0x49e00c
mov dword [esi], 0x94
mov eax, 1
pop ebp
pop edi
pop esi
pop ebx
ret