Function at 0x65268a50
Capabilities:
Parse pe header

Disassembly:
sub esp, 0x30
movzx edx, word [esp + 0x3c]
push ebx
push ebp
mov ebp, dword [esp + 0x48]
mov al, byte [ebp]
push esi
mov esi, dword [esp + 0x44]
xor ebx, ebx
add edx, esi
test al, al
push edi
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], ebx
mov ecx, ebp
mov edi, 1
je 0x65268aa4
cmp al, 0x41
je 0x65268aa0
cmp al, 0x61
je 0x65268aa0
cmp al, 0x50
je 0x65268aa0
cmp al, 0x70
je 0x65268aa0
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x65268a86
jmp 0x65268aa4
mov dword [esp + 0x2c], edi
mov ecx, esi
mov esi, dword [esp + 0x44]
mov byte [esp + 0x13], 0x20
mov dword [esp + 0x14], ecx
mov al, byte [ebp]
test al, al
je 0x65268f3b
movsx eax, al
cmp eax, 0x61
jl 0x65268ace
cmp eax, 0x7a
jg 0x65268ace
add eax, 0xffffffe0
cmp al, 0x46
jne 0x65268add
inc ebp
mov dword [esp + 0x20], edi
mov dword [esp + 0x50], ebp
jmp 0x65268ab3
cmp al, 0x45
jne 0x65268aec
inc ebp
mov dword [esp + 0x20], ebx
mov dword [esp + 0x50], ebp
jmp 0x65268ab3
cmp al, 0x4d
je 0x65268b3d
cmp al, 0x44
je 0x65268b3d
cmp al, 0x59
je 0x65268b3d
cmp al, 0x4a
je 0x65268b3d
cmp al, 0x41
je 0x65268b3d
cmp al, 0x48
je 0x65268b3d
cmp al, 0x4e
je 0x65268b3d
cmp al, 0x53
je 0x65268b3d
cmp al, 0x49
je 0x65268b3d
cmp al, 0x55
je 0x65268b3d
cmp al, 0x50
jne 0x65268b25
cmp byte [esi + 7], 0xc
jae 0x65268b3d
inc ebp
mov dword [esp + 0x50], ebp
jmp 0x65268ab3
cmp ecx, edx
mov byte [esp + 0x13], al
jae 0x65268b32
mov al, byte [ebp]
mov byte [ecx], al
inc ecx
inc ebp
mov dword [esp + 0x50], ebp
jmp 0x65268aaf
mov bl, byte [ebp]
cmp bl, 0x61
jl 0x65268b52
cmp bl, 0x7a
mov dword [esp + 0x28], 0xffffffff
jle 0x65268b56
mov dword [esp + 0x28], edi
mov edi, 1
mov dword [esp + 0x24], edi
movsx edx, al
mov cl, byte [edi + ebp]
movsx eax, cl
cmp eax, 0x61
jl 0x65268b75
cmp eax, 0x7a
jg 0x65268b75
add eax, 0xffffffe0
cmp eax, edx
jne 0x65268b88
cmp cl, bl
je 0x65268b85
mov dword [esp + 0x28], 0
inc edi
jmp 0x65268b62
cmp edi, 1
mov dword [esp + 0x24], edi
mov dword [esp + 0x18], edi
jle 0x65268b9f
cmp bl, byte [ebp + 1]
mov byte [esp + 0x4c], 0
jne 0x65268ba4
mov byte [esp + 0x4c], 0x30
lea eax, [edx - 0x41]
xor ebp, ebp
cmp eax, 0x18
ja case.0x65268bb9.66
movzx ecx, byte [eax + 0x65268f7c]
jmp dword [ecx*4 + 0x65268f4c]
cmp byte [esp + 0x13], 0x3a
jne 0x65268bd0
movzx ebp, byte [esi + 8]
jmp case.0x65268bb9.66
cmp edi, 2
jle 0x65268c9e
mov al, byte [esi + 2]
cmp al, 0xc
jae 0x65268d33
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x65268c81
cmp edi, 4
movzx edx, al
mov esi, dword [edx*4 + 0x652ea464]
jne 0x65268c2a
cmp al, 6
je 0x65268c2a
cmp al, 8
je 0x65268c2a
mov eax, esi
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x65268c10
sub eax, edx
cmp eax, 4
jbe 0x65268c2a
mov dword [esp + 0x18], 3
mov byte [esp + 0x4c], cl
test esi, esi
je case.0x65268bb9.66
xor edi, edi
mov byte [esp + 0x4c], 0
mov eax, esi
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x65268c40
mov ebp, dword [esp + 0x24]
sub eax, edx
cmp eax, ebp
jle 0x65268e91
test edi, edi
je 0x65268e91
lea eax, [ebp - 1]
test eax, eax
jl 0x65268f17
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
inc eax
cmp ecx, edx
jae 0x65268c78
mov byte [ecx], 0x2a
inc ecx
dec eax
jne 0x65268c71
jmp 0x65268f13
cmp edi, 3
jne 0x65268c92
movzx eax, al
mov esi, dword [eax*4 + 0x652fb308]
jmp 0x65268c2a
movzx ecx, al
mov esi, dword [ecx*4 + 0x652fb2d4]
jmp 0x65268c2a
movzx ebp, byte [esi + 2]
inc ebp
jmp case.0x65268bb9.66
cmp edi, 1
jne 0x65268cb7
movzx ebp, byte [esi + 3]
inc ebp
jmp case.0x65268bb9.66
cmp edi, 2
jne 0x65268cc5
movzx ebp, byte [esi + 6]
jmp case.0x65268bb9.66
mov al, byte [esi + 3]
cmp al, 7
jae 0x65268d33
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x65268ce3
movzx edx, al
mov esi, dword [edx*4 + 0x652ea444]
jmp 0x65268c2a
movzx ecx, al
shl ecx, 2
cmp edi, 3
mov esi, dword [ecx + 0x652fb33c]
je 0x65268d1c
mov eax, esi
lea edi, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x65268d00
mov edx, dword [esp + 0x24]
sub eax, edi
cmp edx, eax
je 0x65268d1c
mov esi, dword [ecx + 0x652fb35c]
jmp 0x65268c2a
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x65268d21
sub eax, edx
mov dword [esp + 0x18], eax
jmp 0x65268c2a
mov esi, 0x6529af50
jmp 0x65268c32
movzx ebp, word [esi + 4]
inc ebp
jmp case.0x65268bb9.66
cmp edi, 2
jle 0x65268d4e
movzx ebp, word [esi]
jmp case.0x65268bb9.66
movzx eax, word [esi]
cdq
mov ecx, 0x64
idiv ecx
mov ebp, edx
push 0xa
lea eax, [esp + 0x38]
push eax
push ebp
call fcn.6527d614
add esp, 0xc
lea esi, [esp + 0x34]
mov edi, 1
jmp 0x65268c39
mov eax, dword [esp + 0x2c]
test eax, eax
movzx ebp, byte [esi + 7]
je case.0x65268bb9.66
cmp ebp, 0xc
jle 0x65268d8f
sub ebp, 0xc
jmp case.0x65268bb9.66
test ebp, ebp
jne case.0x65268bb9.66
mov ebp, 0xc
jmp case.0x65268bb9.66
mov ecx, dword [esi + 0xc]
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
jmp 0x65268d59
mov ebp, dword [esi + 0xc]
jmp case.0x65268bb9.66
cmp byte [esi + 7], 0xc
jae 0x65268dcb
mov esi, 0x6529af4c
jmp 0x65268c32
cmp byte [esi + 7], 0xc
jb case.0x65268bb9.66
mov esi, 0x6529af48
jmp 0x65268c32
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x65268dee
movzx ebp, byte [esi + 9]
mov dword [esp + 0x30], 1
jmp case.0x65268bb9.66
cmp edi, 6
mov ecx, dword [esi + 0xc]
jle 0x65268e01
mov edi, 6
mov dword [esp + 0x18], edi
jmp 0x65268e26
jge 0x65268e26
mov esi, 6
sub esi, edi
lea ebx, [ebx]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
dec esi
mov ecx, edx
jne 0x65268e10
mov al, byte [esp + 0x4c]
test al, al
jne 0x65268e6b
test ecx, ecx
jle 0x65268e6d
mov eax, ecx
cdq
mov esi, 0xa
idiv esi
test edx, edx
jne 0x65268e66
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ecx, edx
mov eax, ecx
cdq
mov esi, 0xa
idiv esi
dec edi
test edx, edx
je 0x65268e40
mov dword [esp + 0x18], edi
mov byte [esp + 0x4c], 0x30
test ecx, ecx
je case.0x65268bb9.66
push 0xa
lea edx, [esp + 0x38]
push edx
push ecx
call fcn.6527d63e
add esp, 0xc
lea esi, [esp + 0x34]
mov edi, 1
jmp 0x65268c39
mov ecx, dword [esp + 0x18]
cmp eax, ecx
jle 0x65268ed8
mov eax, ecx
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
test eax, eax
mov ecx, edi
jle 0x65268f13
mov edx, dword [esp + 0x28]
sub esi, edi
mov edi, eax
cmp ecx, ebx
jae 0x65268f0f
test dx, dx
mov al, byte [ecx + esi]
je 0x65268f0d
cmp al, 0x80
jae 0x65268f0d
test dx, dx
movzx eax, al
jle 0x65268f00
cmp eax, 0x61
jl 0x65268f0d
cmp eax, 0x7a
jg 0x65268f0d
add eax, 0xffffffe0
jmp 0x65268f0d
mov dl, byte [esp + 0x4c]
test dl, dl
je 0x65268e9b
sub ecx, eax
dec ecx
js 0x65268e9b
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
inc ecx
mov edi, edi
cmp edi, ebx
jae 0x65268efa
mov dl, byte [esp + 0x4c]
mov byte [edi], dl
inc edi
dec ecx
jne 0x65268ef0
jmp 0x65268ea3
cmp eax, 0x41
jl 0x65268f0d
cmp eax, 0x5a
jg 0x65268f0d
add eax, 0x20
mov byte [ecx], al
inc ecx
dec edi
jne 0x65268eb1
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x44]
mov ecx, dword [esp + 0x14]
add eax, ebp
mov dword [esp + 0x50], eax
mov ebp, eax
mov edi, 1
xor ebx, ebx
jmp 0x65268ab3
pop edi
pop esi
mov eax, ecx
mov ecx, dword [esp + 0x40]
pop ebp
sub eax, ecx
pop ebx
add esp, 0x30
ret