Function at 0x468970
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.0x468993.34
mov dl, 4
xor eax, eax
mov al, byte [esi + 0x468fe4]
jmp dword [eax*4 + 0x468f7c]
xor edx, edx
mov eax, 1
mov dl, byte [ecx + 1]
test byte [edx + 0x4eed10], al
je 0x4689bb
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
test byte [edx + 0x4eed10], 1
jne 0x4689ac
mov ecx, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [ecx], 0x95
ret
cmp byte [ecx + 1], 0x2d
jne 0x4689fa
xor edx, edx
mov eax, 2
mov dl, byte [ecx + 2]
test edx, edx
je 0x4689ec
cmp edx, 0xa
je 0x4689ec
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
jne 0x4689dd
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 0x468aaa
mov dl, byte [ecx + 2]
test dl, dl
je 0x468aaa
mov eax, 3
and edx, 0xff
cmp edx, 0x2a
jne 0x468a8f
cmp byte [eax + ecx], 0x2f
je 0x468a9b
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
je 0x468a9c
inc eax
jmp 0x468a84
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 0x468b07
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov dword [eax], 0x4e
mov eax, 2
ret
cmp eax, 0x3e
jne 0x468b1f
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 2
mov dword [ecx], 0x4b
pop ebx
ret
cmp eax, 0x3c
jne 0x468b37
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 0x468b67
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov eax, 2
mov dword [ecx], 0x50
pop ebx
ret
cmp eax, 0x3e
jne 0x468b7f
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 0x468bab
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 0x468bd7
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 0x468c4e
cmp esi, edi
jne 0x468c42
xor edx, edx
mov dl, byte [ecx + eax + 1]
cmp edx, edi
jne 0x468c4e
inc eax
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
mov esi, edx
test esi, esi
jne 0x468c33
cmp esi, 0x27
jne 0x468c62
mov ecx, dword [esp + 0x14]
pop edi
pop esi
inc eax
mov dword [ecx], 0x5e
pop ebx
ret
test esi, esi
je 0x468c75
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 + 0x4eed10], dl
jne case.0x468993.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 + 0x4eed10], dl
je 0x468cc9
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4eed10], dl
jne 0x468cbb
cmp byte [eax + ecx], 0x2e
jne 0x468cf1
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4eed10], dl
je 0x468ceb
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4eed10], dl
jne 0x468cdd
mov dword [esi], 0x82
mov bl, byte [eax + ecx]
cmp bl, 0x65
je 0x468cfe
cmp bl, 0x45
jne 0x468d54
mov bl, byte [eax + ecx + 1]
mov byte [esp + 0x14], bl
and ebx, 0xff
test byte [ebx + 0x4eed10], dl
jne 0x468d30
mov bl, byte [esp + 0x14]
cmp bl, 0x2b
je 0x468d22
cmp bl, 0x2d
jne 0x468d54
xor ebx, ebx
mov bl, byte [eax + ecx + 2]
test byte [ebx + 0x4eed10], dl
je 0x468d54
add eax, 2
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4eed10], dl
je 0x468d4e
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4eed10], dl
jne 0x468d40
mov dword [esi], 0x82
xor edx, edx
mov bl, 0x46
mov dl, byte [eax + ecx]
test byte [edx + 0x4eed10], bl
je 0x468f78
inc eax
xor edx, edx
mov dword [esi], 0x94
mov dl, byte [eax + ecx]
test byte [edx + 0x4eed10], bl
jne 0x468d67
pop edi
pop esi
pop ebx
ret
mov edx, edi
mov eax, 1
cmp edx, 0x5d
je 0x468d9a
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
je 0x468d9a
inc eax
cmp edx, 0x5d
jne 0x468d8b
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 + 0x4eed10], dl
je 0x468f76
inc esi
xor eax, eax
mov al, byte [esi + ecx]
test byte [eax + 0x4eed10], dl
jne 0x468dd3
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 + 0x4eed10], dl
je case.0x468993.13
inc esi
xor eax, eax
mov al, byte [esi + ecx]
test byte [eax + 0x4eed10], dl
jne 0x468dfd
cmp esi, 1
jle case.0x468993.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 0x468eac
push ebp
mov bl, 0x46
mov ebp, edx
and ebp, 0xff
test byte [ebp + 0x4eed10], bl
je 0x468e50
inc esi
jmp 0x468e62
cmp edx, 0x28
je 0x468e6e
cmp edx, 0x3a
jne 0x468ea3
cmp byte [ecx + eax + 1], 0x3a
jne 0x468ea3
inc eax
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
je 0x468ea3
jmp 0x468e3d
test esi, esi
jle 0x468ea3
inc eax
xor edx, edx
mov dl, byte [eax + ecx]
test edx, edx
je 0x468e95
mov ebx, edx
and ebx, 0xff
test byte [ebx + 0x4eed10], 1
jne 0x468e95
cmp edx, 0x29
jne 0x468e72
inc eax
jmp 0x468ea3
cmp edx, 0x29
jne 0x468e9d
inc eax
jmp 0x468ea3
mov dword [edi], 0x94
test esi, esi
pop ebp
jne 0x468f78
mov dword [edi], 0x94
pop edi
pop esi
pop ebx
ret
cmp byte [ecx + 1], 0x27
jne case.0x468993.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 + 0x4eed10], dl
je 0x468eea
inc eax
xor ebx, ebx
mov bl, byte [eax + ecx]
test byte [ebx + 0x4eed10], dl
jne 0x468edc
cmp byte [eax + ecx], 0x27
jne 0x468f01
mov edx, eax
and edx, 0x80000001
jns 0x468eff
dec edx
or edx, 0xfffffffe
inc edx
je 0x468f1c
mov dword [esi], 0x94
mov dl, byte [eax + ecx]
test dl, dl
je 0x468f1c
cmp dl, 0x27
je 0x468f1c
mov dl, byte [eax + ecx + 1]
inc eax
test dl, dl
jne 0x468f0e
cmp byte [eax + ecx], 0
je 0x468f78
pop edi
pop esi
inc eax
pop ebx
ret
mov al, byte [edi + 0x4eed10]
mov bl, 0x46
test bl, al
jne 0x468f46
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 + 0x4eed10], bl
je 0x468f66
inc esi
xor eax, eax
mov al, byte [esi + ecx]
test byte [eax + 0x4eed10], bl
jne 0x468f58
push esi
push ecx
call fcn.00469060
mov ecx, dword [esp + 0x1c]
add esp, 8
mov dword [ecx], eax
mov eax, esi
pop edi
pop esi
pop ebx
ret