Function at 0x468110
Capabilities:
Parse pe header

Disassembly:
mov ecx, dword [esp + 4]
xor eax, eax
push ebx
push esi
mov al, byte [ecx]
push edi
mov edi, eax
lea esi, [edi - 9]
cmp esi, 0x75
ja case.0x468133.34
mov dl, 4
xor eax, eax
mov al, byte [esi + 0x468784]
jmp dword [eax*4 + 0x46871c]
xor edx, edx
mov eax, 1
mov dl, byte [ecx + 1]
test byte [edx + 0x4edd10], al
je 0x46815b
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
test byte [edx + 0x4edd10], 1
jne 0x46814c
mov ecx, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [ecx], 0x95
ret
cmp byte [ecx + 1], 0x2d
jne 0x46819a
xor edx, edx
mov eax, 2
mov dl, byte [ecx + 2]
test edx, edx
je 0x46818c
cmp edx, 0xa
je 0x46818c
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
jne 0x46817d
mov edx, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [edx], 0x95
ret
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 0x57
mov eax, 1
ret
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 1
mov dword [ecx], 0x16
pop ebx
ret
mov edx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 1
mov dword [edx], 0x17
pop ebx
ret
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 1
mov eax, 1
ret
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 1
mov dword [ecx], 0x56
pop ebx
ret
mov edx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 1
mov dword [edx], 0x58
pop ebx
ret
cmp byte [ecx + 1], 0x2a
jne 0x46824a
mov dl, byte [ecx + 2]
test dl, dl
je 0x46824a
mov eax, 3
and edx, 0xff
cmp edx, 0x2a
jne 0x46822f
cmp byte [eax + ecx], 0x2f
je 0x46823b
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
je 0x46823c
inc eax
jmp 0x468224
inc eax
mov ecx, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [ecx], 0x95
ret
mov edx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 1
mov dword [edx], 0x59
pop ebx
ret
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 0x5a
mov eax, 1
ret
mov edx, dword [esp + 0x14]
xor eax, eax
pop edi
pop esi
mov dword [edx], 0x4c
mov dl, byte [ecx + 1]
cmp dl, 0x3d
pop ebx
sete al
inc eax
ret
xor eax, eax
mov al, byte [ecx + 1]
cmp eax, 0x3d
jne 0x4682a7
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 0x4e
mov eax, 2
ret
cmp eax, 0x3e
jne 0x4682bf
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 2
mov dword [ecx], 0x4b
pop ebx
ret
cmp eax, 0x3c
jne 0x4682d7
mov edx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 2
mov dword [edx], 0x54
pop ebx
ret
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 0x4f
mov eax, 1
ret
xor eax, eax
mov al, byte [ecx + 1]
cmp eax, 0x3d
jne 0x468307
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 2
mov dword [ecx], 0x50
pop ebx
ret
cmp eax, 0x3e
jne 0x46831f
mov edx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 2
mov dword [edx], 0x55
pop ebx
ret
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 0x4d
mov eax, 1
ret
cmp byte [ecx + 1], 0x3d
je 0x46834b
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 2
mov dword [ecx], 0x94
pop ebx
ret
mov edx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 2
mov dword [edx], 0x4b
pop ebx
ret
cmp byte [ecx + 1], 0x7c
je 0x468377
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 0x53
mov eax, 1
ret
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 2
mov dword [ecx], 0x5b
pop ebx
ret
mov edx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 1
mov dword [edx], 0x19
pop ebx
ret
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 0x52
mov eax, 1
ret
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 1
mov dword [ecx], 0x5d
pop ebx
ret
xor edx, edx
mov eax, 1
mov dl, byte [ecx + 1]
mov esi, edx
test esi, esi
je 0x4683ee
cmp esi, edi
jne 0x4683e2
xor edx, edx
mov dl, byte [ecx + eax + 1]
cmp edx, edi
jne 0x4683ee
inc eax
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
mov esi, edx
test esi, esi
jne 0x4683d3
cmp esi, 0x27
jne 0x468402
mov ecx, dword [esp + 0x14]
pop edi
pop esi
inc eax
mov dword [ecx], 0x5e
pop ebx
ret
test esi, esi
je 0x468415
mov edx, dword [esp + 0x14]
pop edi
pop esi
inc eax
mov dword [edx], 0x1a
pop ebx
ret
mov ecx, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [ecx], 0x94
ret
xor eax, eax
mov al, byte [ecx + 1]
test byte [eax + 0x4edd10], dl
jne case.0x468133.24
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 1
mov dword [ecx], 0x76
pop ebx
ret
mov esi, dword [esp + 0x14]
xor ebx, ebx
xor eax, eax
mov dword [esi], 0x81
mov bl, byte [ecx]
test byte [ebx + 0x4edd10], dl
je 0x468469
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4edd10], dl
jne 0x46845b
cmp byte [eax + ecx], 0x2e
jne 0x468491
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4edd10], dl
je 0x46848b
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4edd10], dl
jne 0x46847d
mov dword [esi], 0x82
mov bl, byte [eax + ecx]
cmp bl, 0x65
je 0x46849e
cmp bl, 0x45
jne 0x4684f4
mov bl, byte [eax + ecx + 1]
mov byte [esp + 0x14], bl
and ebx, 0xff
test byte [ebx + 0x4edd10], dl
jne 0x4684d0
mov bl, byte [esp + 0x14]
cmp bl, 0x2b
je 0x4684c2
cmp bl, 0x2d
jne 0x4684f4
xor ebx, ebx
mov bl, byte [eax + ecx + 2]
test byte [ebx + 0x4edd10], dl
je 0x4684f4
add eax, 2
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4edd10], dl
je 0x4684ee
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4edd10], dl
jne 0x4684e0
mov dword [esi], 0x82
xor edx, edx
mov bl, 0x46
mov dl, byte [eax + ecx]
test byte [edx + 0x4edd10], bl
je 0x468718
inc eax
xor edx, edx
mov dword [esi], 0x94
mov dl, byte [eax + ecx]
test byte [edx + 0x4edd10], bl
jne 0x468507
pop edi
pop esi
pop ebx
ret
mov edx, edi
mov eax, 1
cmp edx, 0x5d
je 0x46853a
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
je 0x46853a
inc eax
cmp edx, 0x5d
jne 0x46852b
mov ecx, dword [esp + 0x14]
sub edx, 0x5d
neg edx
sbb edx, edx
pop edi
and edx, 0x7a
pop esi
add edx, 0x1a
pop ebx
mov dword [ecx], edx
ret
mov edx, dword [esp + 0x14]
xor eax, eax
mov esi, 1
mov dword [edx], 0x85
mov al, byte [ecx + 1]
mov dl, 4
test byte [eax + 0x4edd10], dl
je 0x468716
inc esi
xor eax, eax
mov al, byte [esi + ecx]
test byte [eax + 0x4edd10], dl
jne 0x468573
mov eax, esi
pop edi
pop esi
pop ebx
ret
xor edx, edx
mov esi, 1
mov dl, byte [ecx + 1]
mov eax, edx
mov dl, 4
test byte [eax + 0x4edd10], dl
je case.0x468133.13
inc esi
xor eax, eax
mov al, byte [esi + ecx]
test byte [eax + 0x4edd10], dl
jne 0x46859d
cmp esi, 1
jle case.0x468133.13
mov ecx, dword [esp + 0x14]
mov eax, esi
pop edi
pop esi
mov dword [ecx], 0x84
pop ebx
ret
mov edi, dword [esp + 0x14]
xor edx, edx
xor esi, esi
mov eax, 1
mov dword [edi], 0x85
mov dl, byte [ecx + 1]
test edx, edx
je 0x46864c
push ebp
mov bl, 0x46
mov ebp, edx
and ebp, 0xff
test byte [ebp + 0x4edd10], bl
je 0x4685f0
inc esi
jmp 0x468602
cmp edx, 0x28
je 0x46860e
cmp edx, 0x3a
jne 0x468643
cmp byte [ecx + eax + 1], 0x3a
jne 0x468643
inc eax
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
je 0x468643
jmp 0x4685dd
test esi, esi
jle 0x468643
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
je 0x468635
mov ebx, edx
and ebx, 0xff
test byte [ebx + 0x4edd10], 1
jne 0x468635
cmp edx, 0x29
jne 0x468612
inc eax
jmp 0x468643
cmp edx, 0x29
jne 0x46863d
inc eax
jmp 0x468643
mov dword [edi], 0x94
test esi, esi
pop ebp
jne 0x468718
mov dword [edi], 0x94
pop edi
pop esi
pop ebx
ret
cmp byte [ecx + 1], 0x27
jne case.0x468133.34
mov esi, dword [esp + 0x14]
xor edx, edx
mov eax, 2
mov dword [esi], 0x83
mov dl, byte [ecx + 2]
mov edi, edx
mov dl, 8
test byte [edi + 0x4edd10], dl
je 0x46868a
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4edd10], dl
jne 0x46867c
cmp byte [eax + ecx], 0x27
jne 0x4686a1
mov edx, eax
and edx, 0x80000001
jns 0x46869f
dec edx
or edx, 0xfffffffe
inc edx
je 0x4686bc
mov dword [esi], 0x94
mov dl, byte [eax + ecx]
test dl, dl
je 0x4686bc
cmp dl, 0x27
je 0x4686bc
mov dl, byte [eax + ecx + 1]
inc eax
test dl, dl
jne 0x4686ae
cmp byte [eax + ecx], 0
je 0x468718
pop edi
pop esi
inc eax
pop ebx
ret
mov al, byte [edi + 0x4edd10]
mov bl, 0x46
test bl, al
jne 0x4686e6
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 0x94
mov eax, 1
ret
xor edx, edx
mov esi, 1
mov dl, byte [ecx + 1]
test byte [edx + 0x4edd10], bl
je 0x468706
inc esi
xor eax, eax
mov al, byte [esi + ecx]
test byte [eax + 0x4edd10], bl
jne 0x4686f8
push esi
push ecx
call fcn.00468800
mov ecx, dword [esp + 0x1c]
add esp, 8
mov dword [ecx], eax
mov eax, esi
pop edi
pop esi
pop ebx
ret