Function at 0x10104ec0
Capabilities:
Parse pe header

Disassembly:
push ebx
mov ebx, eax
movzx ecx, byte [ebx]
push ebp
mov ebp, dword [esp + 0xc]
lea eax, [ecx - 9]
push esi
push edi
cmp eax, 0x75
ja case.0x10104ee2.34
movzx eax, byte [eax + 0x101054d8]
mov dl, 4
jmp dword [eax*4 + 0x10105470]
movzx ecx, byte [ebx + 1]
mov eax, 1
test byte [ecx + 0x10140bf0], al
je 0x10104f0f
lea ebx, [ebx]
movzx edx, byte [eax + ebx + 1]
inc eax
test byte [edx + 0x10140bf0], 1
jne 0x10104f00
pop edi
pop esi
mov dword [ebp], 0x96
pop ebp
pop ebx
ret
cmp byte [ebx + 1], 0x2d
jne 0x10104f4b
movzx ecx, byte [ebx + 2]
mov eax, 2
test ecx, ecx
je 0x10104f3f
mov edi, edi
cmp ecx, 0xa
je 0x10104f3f
movzx ecx, byte [eax + ebx + 1]
inc eax
test ecx, ecx
jne 0x10104f30
pop edi
pop esi
mov dword [ebp], 0x96
pop ebp
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x58
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x16
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x17
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 1
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x57
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x59
pop ebp
mov eax, 1
pop ebx
ret
cmp byte [ebx + 1], 0x2a
jne 0x10104fe9
mov cl, byte [ebx + 2]
test cl, cl
je 0x10104fe9
mov eax, 3
movzx ecx, cl
cmp ecx, 0x2a
jne 0x10104fd1
cmp byte [eax + ebx], 0x2f
je 0x10104fdc
movzx ecx, byte [eax + ebx]
test ecx, ecx
je 0x10104fdd
inc eax
jmp 0x10104fc6
inc eax
pop edi
pop esi
mov dword [ebp], 0x96
pop ebp
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x5a
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x5b
pop ebp
mov eax, 1
pop ebx
ret
xor eax, eax
cmp byte [ebx + 1], 0x3d
pop edi
sete al
pop esi
mov dword [ebp], 0x4d
pop ebp
pop ebx
inc eax
ret
movzx eax, byte [ebx + 1]
cmp eax, 0x3d
jne 0x1010503b
pop edi
pop esi
mov dword [ebp], 0x4f
pop ebp
mov eax, 2
pop ebx
ret
cmp eax, 0x3e
jne 0x10105051
pop edi
pop esi
mov dword [ebp], 0x4c
pop ebp
mov eax, 2
pop ebx
ret
cmp eax, 0x3c
jne 0x10105067
pop edi
pop esi
mov dword [ebp], 0x55
pop ebp
mov eax, 2
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x50
pop ebp
mov eax, 1
pop ebx
ret
movzx eax, byte [ebx + 1]
cmp eax, 0x3d
jne 0x10105092
pop edi
pop esi
mov dword [ebp], 0x51
pop ebp
mov eax, 2
pop ebx
ret
cmp eax, 0x3e
jne 0x101050a8
pop edi
pop esi
mov dword [ebp], 0x56
pop ebp
mov eax, 2
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x4e
pop ebp
mov eax, 1
pop ebx
ret
cmp byte [ebx + 1], 0x3d
mov eax, 2
jne 0x1010526e
pop edi
pop esi
mov dword [ebp], 0x4c
pop ebp
pop ebx
ret
cmp byte [ebx + 1], 0x7c
je 0x101050eb
pop edi
pop esi
mov dword [ebp], 0x54
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x5c
pop ebp
mov eax, 2
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x1a
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x53
pop ebp
mov eax, 1
pop ebx
ret
pop edi
pop esi
mov dword [ebp], 0x5e
pop ebp
mov eax, 1
pop ebx
ret
movzx edx, byte [ebx + 1]
mov eax, 1
test edx, edx
je 0x10105158
lea esp, [esp]
cmp edx, ecx
jne 0x1010514e
movzx esi, byte [ebx + eax + 1]
cmp esi, ecx
jne 0x10105158
inc eax
movzx edx, byte [eax + ebx + 1]
inc eax
test edx, edx
jne 0x10105140
cmp edx, 0x27
jne 0x1010516a
pop edi
pop esi
mov dword [ebp], 0x5f
pop ebp
inc eax
pop ebx
ret
test edx, edx
je 0x1010526e
pop edi
pop esi
mov dword [ebp], 0x1b
pop ebp
inc eax
pop ebx
ret
movzx eax, byte [ebx + 1]
test byte [eax + 0x10140bf0], dl
jne case.0x10104ee2.24
pop edi
pop esi
mov dword [ebp], 0x77
pop ebp
mov eax, 1
pop ebx
ret
xor eax, eax
mov dword [ebp], 0x82
test byte [ecx + 0x10140bf0], dl
je 0x101051be
lea ecx, [ecx]
movzx ecx, byte [eax + ebx + 1]
inc eax
test byte [ecx + 0x10140bf0], dl
jne 0x101051b0
cmp byte [eax + ebx], 0x2e
jne 0x101051e7
movzx ecx, byte [eax + ebx + 1]
inc eax
test byte [ecx + 0x10140bf0], dl
je 0x101051e0
movzx ecx, byte [eax + ebx + 1]
inc eax
test byte [ecx + 0x10140bf0], dl
jne 0x101051d2
mov dword [ebp], 0x83
mov cl, byte [eax + ebx]
cmp cl, 0x65
je 0x101051f4
cmp cl, 0x45
jne 0x10105245
mov cl, byte [eax + ebx + 1]
movzx esi, cl
test byte [esi + 0x10140bf0], dl
jne 0x1010521a
cmp cl, 0x2b
je 0x1010520d
cmp cl, 0x2d
jne 0x10105245
movzx ecx, byte [eax + ebx + 2]
test byte [ecx + 0x10140bf0], dl
je 0x10105245
movzx ecx, byte [eax + ebx + 2]
add eax, 2
test byte [ecx + 0x10140bf0], dl
je 0x1010523e
lea ebx, [ebx]
movzx ecx, byte [eax + ebx + 1]
inc eax
test byte [ecx + 0x10140bf0], dl
jne 0x10105230
mov dword [ebp], 0x83
movzx ecx, byte [eax + ebx]
mov dl, 0x46
test byte [ecx + 0x10140bf0], dl
je 0x10105468
jmp 0x10105260
movzx ecx, byte [eax + ebx + 1]
inc eax
test byte [ecx + 0x10140bf0], dl
jne 0x10105260
pop edi
pop esi
mov dword [ebp], 0x95
pop ebp
pop ebx
ret
mov eax, 1
cmp ecx, 0x5d
je 0x10105292
movzx ecx, byte [eax + ebx]
test ecx, ecx
je 0x10105292
inc eax
cmp ecx, 0x5d
jne 0x10105284
sub ecx, 0x5d
neg ecx
sbb ecx, ecx
pop edi
and ecx, 0x7a
add ecx, 0x1b
pop esi
mov dword [ebp], ecx
pop ebp
pop ebx
ret
movzx ecx, byte [ebx + 1]
mov dl, 4
mov dword [ebp], 0x86
mov eax, 1
test byte [ecx + 0x10140bf0], dl
je 0x10105468
jmp 0x101052d0
movzx ecx, byte [eax + ebx + 1]
inc eax
test byte [ecx + 0x10140bf0], dl
jne 0x101052d0
pop edi
pop esi
pop ebp
pop ebx
ret
movzx ecx, byte [ebx + 1]
mov dl, 4
mov eax, 1
test byte [ecx + 0x10140bf0], dl
je case.0x10104ee2.13
jmp 0x10105300
movzx ecx, byte [eax + ebx + 1]
inc eax
test byte [ecx + 0x10140bf0], dl
jne 0x10105300
cmp eax, 1
jle case.0x10104ee2.13
pop edi
pop esi
mov dword [ebp], 0x85
pop ebp
pop ebx
ret
movzx ecx, byte [ebx + 1]
xor esi, esi
mov dword [ebp], 0x86
lea eax, [esi + 1]
test ecx, ecx
je 0x10105399
mov dl, 0x46
movzx edi, cl
test byte [edi + 0x10140bf0], dl
je 0x10105343
inc esi
jmp 0x10105354
cmp ecx, 0x28
je 0x10105360
cmp ecx, 0x3a
jne 0x10105391
cmp byte [ebx + eax + 1], cl
jne 0x10105391
inc eax
movzx ecx, byte [eax + ebx + 1]
inc eax
test ecx, ecx
jne 0x10105335
jmp 0x10105391
test esi, esi
jle 0x10105393
movzx ecx, byte [eax + ebx + 1]
inc eax
test ecx, ecx
je 0x10105382
movzx edx, cl
test byte [edx + 0x10140bf0], 1
jne 0x10105382
cmp ecx, 0x29
jne 0x10105364
inc eax
jmp 0x10105391
cmp ecx, 0x29
jne 0x1010538a
inc eax
jmp 0x10105391
mov dword [ebp], 0x95
test esi, esi
jne 0x10105468
pop edi
pop esi
mov dword [ebp], 0x95
pop ebp
pop ebx
ret
cmp byte [ebx + 1], 0x27
jne case.0x10104ee2.34
movzx edx, byte [ebx + 2]
mov cl, 8
mov dword [ebp], 0x84
mov eax, 2
test byte [edx + 0x10140bf0], cl
je 0x101053de
jmp 0x101053d0
movzx edx, byte [eax + ebx + 1]
inc eax
test byte [edx + 0x10140bf0], cl
jne 0x101053d0
mov cl, byte [eax + ebx]
cmp cl, 0x27
jne 0x101053f7
mov edx, eax
and edx, 0x80000001
jns 0x101053f5
dec edx
or edx, 0xfffffffe
inc edx
je 0x10105410
mov dword [ebp], 0x95
test cl, cl
je 0x10105410
cmp cl, 0x27
je 0x10105410
mov cl, byte [eax + ebx + 1]
inc eax
test cl, cl
jne 0x10105402
cmp byte [eax + ebx], 0
je 0x10105468
pop edi
pop esi
pop ebp
inc eax
pop ebx
ret
mov dl, 0x46
test byte [ecx + 0x10140bf0], dl
jne 0x10105437
pop edi
pop esi
mov dword [ebp], 0x95
pop ebp
mov eax, 1
pop ebx
ret
movzx eax, byte [ebx + 1]
mov edi, 1
test byte [eax + 0x10140bf0], dl
je 0x1010545e
jmp 0x10105450
movzx ecx, byte [edi + ebx + 1]
inc edi
test byte [ecx + 0x10140bf0], dl
jne 0x10105450
call fcn.10104e30
mov dword [ebp], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
ret