Function at 0xfd7c02
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov eax, dword [esp + 0x70]
mov ebp, dword [esp + 0x7c]
mov byte [esp + 0x20], 0
imul eax, dword [eax], 0x1e35a7bd
shr eax, 0x11
mov eax, dword [eax*4 + 0x69a3ac20]
test eax, eax
je 0xfd7d49
mov edx, eax
shr edx, 8
and eax, 0xff
je 0xfd7d49
add eax, edx
lea edi, [edx*4 + 0x69a1bcc0]
lea eax, [eax*4 + 0x69a1bcc0]
mov dword [esp + 0x10], edi
mov dword [esp + 0x24], eax
lea esi, [esi]
mov edi, dword [esp + 0x10]
movzx ebx, byte [edi]
movzx esi, byte [edi + 1]
mov eax, dword [edi]
mov ecx, dword [ebx*4 + 0x69a5ac20]
mov dword [esp + 0x1c], ecx
movzx ecx, word [edi + 2]
mov dword [esp + 0x14], ecx
mov ecx, esi
test cl, cl
je 0xfd7f92
mov edi, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 8], edi
mov edi, dword [esp + 0x70]
mov dword [esp + 4], edi
call fcn.01009852
test al, al
je 0xfd7d36
mov ecx, esi
mov edx, 9
cmp cl, 0xa
mov ecx, 0x2c
cmovne edx, ecx
lea ecx, [ebx*4]
lea edi, [ebp + ecx]
mov dword [esp + 0x18], ecx
movzx ecx, byte [esp + 0x1c]
shl edx, cl
add edx, dword [esp + 0x14]
mov ecx, dword [edi]
shl edx, 5
add edx, ebx
cmp edx, ecx
cmova edx, ecx
mov dword [edi], edx
lea edx, [ebx + 1]
cmp edx, dword [esp + 0x78]
jae 0xfd7d32
mov edi, dword [esp + 0x70]
add edi, ebx
movzx edx, byte [edi]
cmp dl, 0x20
je 0xfd82e2
cmp dl, 0x22
je 0xfd8332
cmp dl, 0x2e
je 0xfd869a
cmp dl, 0x2c
je 0xfd883a
cmp dl, 0x27
je 0xfd859a
cmp dl, 0x28
je 0xfd89ba
cmp dl, 0x3d
je 0xfd8a35
lea esi, [esi]
mov byte [esp + 0x20], al
add dword [esp + 0x10], 4
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x24]
jne 0xfd7c5a
cmp dword [esp + 0x78], 4
jbe 0xfd7f82
mov eax, dword [esp + 0x70]
movzx ecx, byte [eax]
cmp cl, 0x20
mov byte [esp + 0x1c], cl
sete dl
cmp cl, 0x2e
sete al
or dl, al
mov byte [esp + 0x2f], dl
je 0xfd7f29
mov eax, dword [esp + 0x70]
imul eax, dword [eax + 1], 0x1e35a7bd
shr eax, 0x11
mov eax, dword [eax*4 + 0x69a3ac20]
mov edx, eax
shr edx, 8
and eax, 0xff
je 0xfd7f29
cmp cl, 0x20
mov ebx, 6
mov ecx, 0x20
mov dword [esp + 0x7c], ebp
cmove ecx, ebx
mov ebx, 0x59
movzx edi, byte [esp + 0x20]
lea esi, [edx*4 + 0x69a1bcc0]
mov dword [esp + 0x34], ecx
mov ecx, 0x43
cmove ecx, ebx
mov ebx, 2
mov dword [esp + 0x3c], ecx
mov ecx, 0x4d
cmove ecx, ebx
add eax, edx
lea eax, [eax*4 + 0x69a1bcc0]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x38], ecx
sub eax, 1
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x70]
add eax, 1
mov dword [esp + 0x28], eax
lea esi, [esi]
nop
movzx ebx, byte [esi]
movzx edx, byte [esi + 1]
mov eax, dword [esi]
mov ecx, dword [ebx*4 + 0x69a5ac20]
mov dword [esp + 0x14], ecx
mov ebp, ecx
movzx ecx, word [esi + 2]
mov dword [esp + 0x10], ecx
test dl, dl
jne 0xfd81d2
mov edx, dword [esp + 0x24]
mov dword [esp], eax
mov dword [esp + 8], edx
mov edx, dword [esp + 0x28]
mov dword [esp + 4], edx
call fcn.01009852
mov byte [esp + 0x20], al
test al, al
je 0xfd7f12
mov edi, dword [esp + 0x7c]
lea edx, [ebx + 1]
mov ecx, ebp
lea eax, [edx*4]
add edi, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x34]
shl eax, cl
add eax, dword [esp + 0x10]
mov ecx, dword [edi]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edi], eax
lea eax, [ebx + 2]
cmp eax, dword [esp + 0x78]
jae 0xfd82c2
add edx, dword [esp + 0x70]
movzx eax, byte [edx]
cmp al, 0x20
je 0xfd8822
cmp al, 0x28
je 0xfd8510
cmp byte [esp + 0x1c], 0x20
jne 0xfd82c2
cmp al, 0x2c
je 0xfd8ad2
cmp al, 0x2e
je 0xfd8ec2
cmp al, 0x3d
jne 0xfd82c2
movzx eax, byte [edx + 1]
cmp al, 0x22
je 0xfd925f
cmp al, 0x27
jne 0xfd82c2
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x30]
lea edx, [eax + edi + 8]
mov eax, 0x62
movzx ecx, byte [esp + 0x14]
movzx edi, byte [esp + 0x20]
shl eax, cl
add eax, dword [esp + 0x10]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
lea esi, [esi]
add esi, 4
cmp esi, dword [esp + 0x18]
jne 0xfd7e0a
mov eax, edi
mov ebp, dword [esp + 0x7c]
mov byte [esp + 0x20], al
cmp dword [esp + 0x78], 5
je 0xfd7f82
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0x70]
movzx eax, byte [eax + 1]
movzx edx, byte [ebx]
cmp al, 0x20
je 0xfd83d2
cmp al, 0xa0
jne 0xfd7f54
cmp dl, 0xc2
je 0xfd83eb
cmp dword [esp + 0x78], 8
jbe 0xfd7f82
mov eax, dword [esp + 0x70]
movzx eax, byte [eax]
cmp al, 0x20
je 0xfd8722
cmp al, 0x2e
jne 0xfd7f82
mov eax, dword [esp + 0x70]
cmp byte [eax + 1], 0x63
jne 0xfd7f82
cmp byte [eax + 2], 0x6f
je 0xfd8bce
movzx eax, byte [esp + 0x20]
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
mov ecx, dword [esp + 0x14]
mov esi, ebx
mov eax, dword [esp + 0x70]
imul ecx, ebx
add ecx, dword [ebx*4 + 0x69a5aca0]
add ecx, dword [0x69ab68fc]
cmp ebx, dword [esp + 0x78]
cmova esi, dword [esp + 0x78]
xor edx, edx
add esi, dword [esp + 0x70]
lea edi, [esi - 4]
cmp dword [esp + 0x70], edi
ja 0xfd7fe7
mov dword [esp + 0x18], ebx
jmp 0xfd7fdc
add eax, 4
add edx, 4
cmp eax, edi
ja 0xfd7fe3
mov ebx, dword [ecx + edx]
cmp dword [eax], ebx
je 0xfd7fd2
mov ebx, dword [esp + 0x18]
cmp esi, eax
jbe 0xfd800c
add esi, edx
mov edi, ebx
sub esi, eax
sub eax, edx
jmp 0xfd8001
add edx, 1
cmp esi, edx
je 0xfd800a
movzx ebx, byte [eax + edx]
cmp byte [ecx + edx], bl
je 0xfd7ffa
mov ebx, edi
cmp ebx, edx
jne 0xfd802b
mov eax, dword [esp + 0x14]
lea ecx, [ebp + ebx*4]
mov byte [esp + 0x20], 1
mov esi, dword [ecx]
shl eax, 5
add eax, ebx
cmp eax, esi
cmova eax, esi
mov dword [ecx], eax
lea eax, [ebx - 1]
cmp eax, edx
ja 0xfd8072
movzx ecx, byte [esp + 0x1c]
lea esi, [ebp + eax*4]
mov eax, 0xc
mov byte [esp + 0x20], 1
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, dword [esi]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [esi], eax
lea eax, [ebx + 2]
cmp eax, dword [esp + 0x78]
jae 0xfd8072
mov eax, dword [esp + 0x70]
cmp byte [eax + ebx - 1], 0x69
je 0xfd8550
nop
mov esi, dword [esp + 0x74]
cmp ebx, 9
jbe 0xfd8087
lea esi, [ebx - 9]
cmp esi, dword [esp + 0x74]
cmovb esi, dword [esp + 0x74]
lea eax, [ebx - 2]
cmp eax, edx
cmova eax, edx
mov dword [esp + 0x18], eax
cmp esi, eax
ja 0xfd80df
mov eax, ebx
mov dword [esp + 0x20], edx
mov ecx, dword [esp + 0x1c]
sub eax, esi
mov edx, dword [esp + 0x14]
lea edi, [eax*4 + 0x69a1bc80]
lea esi, [esi]
mov eax, dword [edi]
shl eax, cl
add eax, edx
shl eax, 5
add eax, ebx
cmp eax, dword [ebp + esi*4]
cmova eax, dword [ebp + esi*4]
sub edi, 4
mov dword [ebp + esi*4], eax
add esi, 1
cmp esi, dword [esp + 0x18]
jbe 0xfd80b2
mov edx, dword [esp + 0x20]
mov byte [esp + 0x20], 1
cmp ebx, edx
ja 0xfd7d36
lea eax, [ebx + 6]
cmp eax, dword [esp + 0x78]
jae 0xfd7d36
mov edi, dword [esp + 0x70]
add edi, ebx
movzx eax, byte [edi]
cmp al, 0x20
je 0xfd875a
cmp al, 0x22
je 0xfd88c2
cmp al, 0x2e
je 0xfd85d6
cmp al, 0x2c
je 0xfd8d22
cmp al, 0xa
je 0xfd8e06
cmp al, 0x5d
je 0xfd8b80
cmp al, 0x27
je 0xfd8f0c
cmp al, 0x3a
je 0xfd9032
cmp al, 0x28
je 0xfd9112
cmp al, 0x3d
je 0xfd91e2
cmp al, 0x61
je 0xfd9275
cmp al, 0x65
je 0xfd9312
cmp al, 0x66
je 0xfd9552
cmp al, 0x69
je 0xfd94f2
cmp al, 0x6c
je 0xfd9615
cmp al, 0x6f
jne 0xfd7d36
cmp byte [edi + 1], 0x75
jne 0xfd7d36
cmp byte [edi + 2], 0x73
jne 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x6a
lea edx, [ebp + ebx*4 + 0x10]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd81c2
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
cmp byte [esp + 0x1c], 0x20
jne 0xfd7f12
mov ecx, dword [esp + 0x24]
mov dword [esp], eax
mov byte [esp + 0x20], dl
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], ecx
call fcn.01009852
mov byte [esp + 0x30], al
test al, al
je 0xfd7f12
movzx edx, byte [esp + 0x20]
mov ecx, 0x55
mov eax, 0x1e
lea edi, [ebx + 1]
mov ebp, edi
cmp dl, 0xa
cmovne eax, ecx
movzx ecx, byte [esp + 0x14]
shl edi, 2
mov dword [esp + 0x20], edi
add edi, dword [esp + 0x7c]
shl eax, cl
add eax, dword [esp + 0x10]
mov ecx, dword [edi]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edi], eax
lea eax, [ebx + 2]
cmp eax, dword [esp + 0x78]
jae 0xfd82c2
mov edi, dword [esp + 0x70]
add edi, ebp
movzx eax, byte [edi]
cmp al, 0x20
je 0xfd89f6
cmp al, 0x2c
je 0xfd8dde
cmp al, 0x2e
je 0xfd8b1c
cmp al, 0x3d
jne 0xfd82c2
movzx eax, byte [edi + 1]
cmp al, 0x22
je 0xfd917d
cmp al, 0x27
jne 0xfd82c2
cmp dl, 0xa
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x20]
sete dl
movzx edx, dl
lea eax, [eax + edi + 8]
add edx, 0x77
movzx ecx, byte [esp + 0x14]
movzx edi, byte [esp + 0x30]
shl edx, cl
add edx, dword [esp + 0x10]
shl edx, 5
add ebx, edx
mov edx, dword [eax]
cmp ebx, edx
cmova ebx, edx
mov dword [eax], ebx
jmp 0xfd7f12
movzx edi, byte [esp + 0x2f]
add esi, 4
cmp esi, dword [esp + 0x18]
jne 0xfd7e0a
jmp 0xfd7f1f
mov ecx, esi
mov edx, 4
mov esi, dword [esp + 0x18]
mov byte [esp + 0x20], al
cmp cl, 0xa
mov ecx, 0x44
cmovne edx, ecx
movzx ecx, byte [esp + 0x1c]
lea esi, [ebp + esi + 4]
shl edx, cl
add edx, dword [esp + 0x14]
shl edx, 5
add ebx, edx
mov edx, dword [esi]
cmp ebx, edx
cmova ebx, edx
add dword [esp + 0x10], 4
mov eax, dword [esp + 0x10]
mov dword [esi], ebx
cmp eax, dword [esp + 0x24]
jne 0xfd7c5a
jmp 0xfd7d49
mov ecx, esi
mov edx, 0x42
cmp cl, 0xa
mov ecx, 0x57
cmovne edx, ecx
mov ecx, dword [esp + 0x18]
lea ecx, [ebp + ecx + 4]
mov dword [esp + 0x20], ecx
movzx ecx, byte [esp + 0x1c]
shl edx, cl
mov ecx, dword [esp + 0x20]
add edx, dword [esp + 0x14]
shl edx, 5
mov ecx, dword [ecx]
add edx, ebx
cmp edx, ecx
cmova edx, ecx
mov ecx, dword [esp + 0x20]
mov dword [ecx], edx
cmp byte [edi + 1], 0x3e
jne 0xfd7d32
mov ecx, esi
mov edx, 0x45
mov esi, dword [esp + 0x18]
mov byte [esp + 0x20], al
cmp cl, 0xa
mov ecx, 0x61
cmovne edx, ecx
movzx ecx, byte [esp + 0x1c]
lea esi, [ebp + esi + 8]
shl edx, cl
add edx, dword [esp + 0x14]
shl edx, 5
add ebx, edx
mov edx, dword [esi]
cmp ebx, edx
cmova ebx, edx
add dword [esp + 0x10], 4
mov eax, dword [esp + 0x10]
mov dword [esi], ebx
cmp eax, dword [esp + 0x24]
jne 0xfd7c5a
jmp 0xfd7d49
cmp dl, 0x65
sete cl
cmp dl, 0x73
sete al
or cl, al
jne 0xfd83eb
cmp dl, 0x2c
jne 0xfd7f54
mov eax, dword [esp + 0x70]
imul eax, dword [eax + 2], 0x1e35a7bd
shr eax, 0x11
mov eax, dword [eax*4 + 0x69a3ac20]
mov edx, eax
shr edx, 8
and eax, 0xff
je 0xfd7f54
add eax, edx
mov dword [esp + 0x7c], ebp
lea edi, [edx*4 + 0x69a1bcc0]
lea eax, [eax*4 + 0x69a1bcc0]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x78]
sub eax, 2
mov dword [esp + 0x14], eax
lea esi, [esi]
cmp byte [edi + 1], 0
jne 0xfd84fa
movzx ebx, byte [edi]
cmp dword [esp + 0x14], ebx
jb 0xfd84fa
mov eax, dword [esp + 0x70]
lea edx, [eax + 2]
movzx eax, word [edi + 2]
lea esi, [edx + ebx]
mov ecx, eax
lea ebp, [esi - 4]
mov dword [esp + 0x1c], eax
xor eax, eax
imul ecx, ebx
add ecx, dword [ebx*4 + 0x69a5aca0]
add ecx, dword [0x69ab68fc]
cmp edx, ebp
ja 0xfd849f
mov dword [esp + 0x18], ebx
jmp 0xfd8494
add edx, 4
add eax, 4
cmp ebp, edx
jb 0xfd849b
mov ebx, dword [ecx + eax]
cmp dword [edx], ebx
je 0xfd848a
mov ebx, dword [esp + 0x18]
cmp esi, edx
jbe 0xfd84c4
add esi, eax
mov ebp, ebx
sub esi, edx
sub edx, eax
jmp 0xfd84b9
add eax, 1
cmp esi, eax
je 0xfd84c2
movzx ebx, byte [edx + eax]
cmp byte [ecx + eax], bl
je 0xfd84b2
mov ebx, ebp
mov ecx, dword [ebx*4 + 0x69a5ac20]
cmp ebx, eax
jne 0xfd84fa
mov eax, dword [esp + 0x70]
movzx edx, byte [eax]
lea eax, [ebx + 2]
cmp dl, 0xc2
je 0xfd8922
cmp dword [esp + 0x78], eax
jbe 0xfd84fa
mov eax, dword [esp + 0x70]
cmp byte [eax + ebx + 2], 0x20
je 0xfd8db7
lea esi, [esi]
add edi, 4
cmp edi, dword [esp + 0x10]
jne 0xfd843a
mov ebp, dword [esp + 0x7c]
jmp 0xfd7f54
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x30]
mov edx, dword [esp + 0x3c]
lea eax, [eax + edi + 4]
movzx ecx, byte [esp + 0x14]
movzx edi, byte [esp + 0x20]
shl edx, cl
add edx, dword [esp + 0x10]
shl edx, 5
add ebx, edx
mov edx, dword [eax]
cmp ebx, edx
cmova ebx, edx
add esi, 4
mov dword [eax], ebx
cmp esi, dword [esp + 0x18]
jne 0xfd7e0a
jmp 0xfd7f1f
cmp byte [eax + ebx], 0x6e
jne 0xfd8072
cmp byte [eax + ebx + 1], 0x67
jne 0xfd8072
cmp byte [eax + ebx + 2], 0x20
jne 0xfd8072
movzx ecx, byte [esp + 0x1c]
mov eax, 0x31
lea esi, [ebp + ebx*4 + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, dword [esi]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [esi], eax
jmp 0xfd8072
mov ecx, esi
mov edx, 0x4a
mov esi, dword [esp + 0x18]
mov byte [esp + 0x20], al
cmp cl, 0xa
mov ecx, 0x5e
cmovne edx, ecx
movzx ecx, byte [esp + 0x1c]
lea esi, [ebp + esi + 4]
shl edx, cl
add edx, dword [esp + 0x14]
shl edx, 5
add ebx, edx
mov edx, dword [esi]
cmp ebx, edx
cmova ebx, edx
mov dword [esi], ebx
jmp 0xfd7d36
movzx ecx, byte [esp + 0x1c]
lea esi, [ebx*4 + 4]
mov eax, 0x14
lea edx, [ebp + esi]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x1f
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 2], 0x54
jne 0xfd7d36
cmp byte [edi + 3], 0x68
jne 0xfd7d36
movzx eax, byte [edi + 4]
cmp al, 0x65
je 0xfd9444
cmp al, 0x69
jne 0xfd7d36
cmp byte [edi + 5], 0x73
jne 0xfd7d36
cmp byte [edi + 6], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x4b
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0x18]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd868e
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
mov ecx, esi
mov edx, 0x4f
cmp cl, 0xa
mov ecx, 0x65
cmovne edx, ecx
mov ecx, dword [esp + 0x18]
lea ecx, [ebp + ecx + 4]
mov dword [esp + 0x20], ecx
movzx ecx, byte [esp + 0x1c]
shl edx, cl
mov ecx, dword [esp + 0x20]
add edx, dword [esp + 0x14]
shl edx, 5
mov ecx, dword [ecx]
add edx, ebx
cmp edx, ecx
cmova edx, ecx
mov ecx, dword [esp + 0x20]
mov dword [ecx], edx
cmp byte [edi + 1], 0x20
jne 0xfd7d32
mov ecx, esi
mov edx, 0x58
mov esi, dword [esp + 0x18]
mov byte [esp + 0x20], al
cmp cl, 0xa
mov ecx, 0x72
cmovne edx, ecx
movzx ecx, byte [esp + 0x1c]
lea esi, [ebp + esi + 8]
shl edx, cl
add edx, dword [esp + 0x14]
shl edx, 5
add ebx, edx
mov edx, dword [esi]
cmp ebx, edx
cmova ebx, edx
mov dword [esi], ebx
jmp 0xfd7d36
mov eax, dword [esp + 0x70]
cmp byte [eax + 1], 0x74
jne 0xfd7f82
cmp byte [eax + 2], 0x68
jne 0xfd7f82
cmp byte [eax + 3], 0x65
jne 0xfd7f82
cmp byte [eax + 4], 0x20
jne 0xfd7f82
jmp 0xfd8be2
movzx ecx, byte [esp + 0x1c]
lea esi, [ebx*4 + 4]
mov eax, 1
lea edx, [ebp + esi]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
movzx eax, byte [edi + 1]
cmp al, 0x61
je 0xfd894c
cmp al, 0x62
je 0xfd8d7c
cmp al, 0x69
je 0xfd8a86
cmp al, 0x66
je 0xfd8e60
cmp al, 0x6f
je 0xfd8fe0
cmp al, 0x6e
je 0xfd90bb
cmp al, 0x74
je 0xfd9191
cmp al, 0x77
jne 0xfd7d36
cmp byte [edi + 2], 0x69
jne 0xfd7d36
cmp byte [edi + 3], 0x74
jne 0xfd7d36
cmp byte [edi + 4], 0x68
jne 0xfd7d36
cmp byte [edi + 5], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x23
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0x14]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd8816
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x30]
mov edx, dword [esp + 0x38]
lea eax, [eax + edi + 4]
jmp 0xfd8520
mov ecx, esi
mov edx, 0x63
cmp cl, 0xa
mov ecx, 0x70
cmovne edx, ecx
mov ecx, dword [esp + 0x18]
lea ecx, [ebp + ecx + 4]
mov dword [esp + 0x20], ecx
movzx ecx, byte [esp + 0x1c]
shl edx, cl
mov ecx, dword [esp + 0x20]
add edx, dword [esp + 0x14]
shl edx, 5
mov ecx, dword [ecx]
add edx, ebx
cmp edx, ecx
cmova edx, ecx
mov ecx, dword [esp + 0x20]
mov dword [ecx], edx
cmp byte [edi + 1], 0x20
jne 0xfd7d32
mov ecx, esi
mov edx, 0x3a
mov esi, dword [esp + 0x18]
mov byte [esp + 0x20], al
cmp cl, 0xa
mov ecx, 0x6b
cmovne edx, ecx
movzx ecx, byte [esp + 0x1c]
lea esi, [ebp + esi + 8]
shl edx, cl
add edx, dword [esp + 0x14]
shl edx, 5
add ebx, edx
mov edx, dword [esi]
cmp ebx, edx
cmova ebx, edx
mov dword [esi], ebx
jmp 0xfd7d36
movzx ecx, byte [esp + 0x1c]
lea esi, [ebx*4 + 4]
mov eax, 0x13
lea edx, [ebp + esi]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x3e
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x15
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
mov esi, dword [esp + 0x7c]
lea edx, [esi + eax*4]
mov eax, 0x66
shl eax, cl
add eax, dword [esp + 0x1c]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
mov byte [esp + 0x20], 1
jmp 0xfd84fa
movzx eax, byte [edi + 2]
cmp al, 0x20
je 0xfd8ba7
cmp al, 0x73
je 0xfd8f33
cmp al, 0x74
je 0xfd908a
cmp al, 0x6e
jne 0xfd7d36
cmp byte [edi + 3], 0x64
jne 0xfd7d36
cmp byte [edi + 4], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0xa
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0x10]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd89ab
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
mov ecx, esi
mov edx, 0x4e
mov esi, dword [esp + 0x18]
mov byte [esp + 0x20], al
cmp cl, 0xa
mov ecx, 0x71
cmovne edx, ecx
movzx ecx, byte [esp + 0x1c]
lea esi, [ebp + esi + 4]
shl edx, cl
add edx, dword [esp + 0x14]
shl edx, 5
add ebx, edx
mov edx, dword [esi]
cmp ebx, edx
cmova ebx, edx
mov dword [esi], ebx
jmp 0xfd7d36
mov edi, dword [esp + 0x7c]
mov ecx, dword [esp + 0x20]
cmp dl, 0xa
mov eax, 0xf
mov edx, 0x53
cmovne eax, edx
lea edx, [edi + ecx + 4]
movzx ecx, byte [esp + 0x14]
movzx edi, byte [esp + 0x30]
shl eax, cl
add eax, dword [esp + 0x10]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7f12
movzx edx, byte [edi + 1]
cmp dl, 0x22
je 0xfd8fa9
cmp dl, 0x27
jne 0xfd7d32
mov ecx, esi
xor edx, edx
mov esi, dword [esp + 0x18]
mov byte [esp + 0x20], al
cmp cl, 0xa
movzx ecx, byte [esp + 0x1c]
setne dl
lea esi, [ebp + esi + 8]
lea edx, [edx*8 + 0x6c]
shl edx, cl
add edx, dword [esp + 0x14]
shl edx, 5
add ebx, edx
mov edx, dword [esi]
cmp ebx, edx
cmova ebx, edx
mov dword [esi], ebx
jmp 0xfd7d36
movzx eax, byte [edi + 2]
cmp al, 0x6e
je 0xfd9059
cmp al, 0x73
jne 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x2f
lea edx, [ebp + esi + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x30]
movzx ecx, byte [esp + 0x14]
lea edi, [eax + edi + 4]
mov eax, 0x67
shl eax, cl
add eax, dword [esp + 0x10]
mov ecx, dword [edi]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edi], eax
cmp byte [edx + 1], 0x20
jne 0xfd82c2
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x30]
lea edx, [eax + edi + 8]
mov eax, 0x21
jmp 0xfd7eee
cmp dl, 0xa
mov ecx, 0x73
mov eax, 0x60
mov ebp, dword [esp + 0x20]
cmovne eax, ecx
mov ecx, dword [esp + 0x7c]
lea ecx, [ecx + ebp + 4]
mov ebp, ecx
movzx ecx, byte [esp + 0x14]
shl eax, cl
add eax, dword [esp + 0x10]
mov ecx, dword [ebp]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [ebp], eax
cmp byte [edi + 1], 0x20
jne 0xfd82c2
cmp dl, 0xa
mov eax, 0x5b
mov edx, 0x75
cmovne eax, edx
mov edi, dword [esp + 0x7c]
mov ecx, dword [esp + 0x20]
lea edx, [edi + ecx + 8]
jmp 0xfd8a12
movzx ecx, byte [esp + 0x1c]
mov eax, 0x18
lea edx, [ebp + ebx*4 + 4]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x1c
lea edx, [ebp + esi + 8]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
cmp byte [eax + 3], 0x6d
jne 0xfd7f82
cmp byte [eax + 4], 0x2f
jne 0xfd7f82
mov eax, dword [esp + 0x70]
imul eax, dword [eax + 5], 0x1e35a7bd
shr eax, 0x11
mov eax, dword [eax*4 + 0x69a3ac20]
mov edx, eax
shr edx, 8
and eax, 0xff
je 0xfd7f82
add eax, edx
lea esi, [edx*4 + 0x69a1bcc0]
lea eax, [eax*4 + 0x69a1bcc0]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x78]
sub eax, 5
mov dword [esp + 0x24], eax
cmp byte [esi + 1], 0
jne 0xfd8d10
movzx ebx, byte [esi]
cmp dword [esp + 0x24], ebx
jb 0xfd8d10
mov eax, dword [esp + 0x70]
mov ecx, dword [ebx*4 + 0x69a5aca0]
lea edx, [eax + 5]
movzx eax, word [esi + 2]
mov dword [esp + 0x14], eax
imul eax, ebx
add ecx, eax
lea eax, [edx + ebx]
add ecx, dword [0x69ab68fc]
lea edi, [eax - 4]
mov dword [esp + 0x1c], eax
xor eax, eax
cmp edi, edx
jb 0xfd8c89
mov dword [esp + 0x18], ebx
jmp 0xfd8c7e
add edx, 4
add eax, 4
cmp edi, edx
jb 0xfd8c85
mov ebx, dword [ecx + eax]
cmp dword [edx], ebx
je 0xfd8c74
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
cmp edi, edx
jbe 0xfd8cb1
add edi, eax
mov dword [esp + 0x18], ebx
sub edi, edx
sub edx, eax
jmp 0xfd8ca4
add eax, 1
cmp edi, eax
je 0xfd8cad
movzx ebx, byte [edx + eax]
cmp byte [ecx + eax], bl
je 0xfd8c9d
mov ebx, dword [esp + 0x18]
mov ecx, dword [ebx*4 + 0x69a5ac20]
mov dword [esp + 0x18], ecx
cmp ebx, eax
jne 0xfd8d10
mov eax, dword [esp + 0x70]
mov edx, 0x29
lea edi, [ebx + 5]
cmp byte [eax], 0x20
mov eax, 0x48
cmove eax, edx
lea edx, [edi*4]
mov dword [esp + 0x1c], edx
add edx, ebp
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp edi, dword [esp + 0x78]
jae 0xfd8d0b
mov eax, dword [esp + 0x70]
cmp byte [eax], 0x20
je 0xfd9372
mov byte [esp + 0x20], 1
add esi, 4
cmp dword [esp + 0x10], esi
jne 0xfd8c26
jmp 0xfd7f82
movzx ecx, byte [esp + 0x1c]
lea esi, [ebx*4 + 4]
mov eax, 0x4c
lea edx, [ebp + esi]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0xe
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
cmp byte [edi + 2], 0x79
jne 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x26
lea edx, [ebp + esi + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
mov eax, 0x12
cmp dl, 0x65
je 0xfd8dd1
cmp dl, 0x73
mov eax, 0xd
mov edx, 7
cmove eax, edx
mov esi, dword [esp + 0x7c]
lea edx, [esi + ebx*4 + 0xc]
jmp 0xfd892e
cmp dl, 0xa
je 0xfd8f64
cmp byte [edi + 1], 0x20
jne 0xfd82c2
mov eax, dword [esp + 0x20]
mov edx, 0x6f
add eax, 8
add eax, dword [esp + 0x7c]
jmp 0xfd8299
movzx ecx, byte [esp + 0x1c]
lea esi, [ebx*4 + 4]
mov eax, 0x16
lea edx, [ebp + esi]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 9
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x32
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
movzx eax, byte [edi + 2]
cmp al, 0x6f
je 0xfd9139
cmp al, 0x72
jne 0xfd7d36
cmp byte [edi + 3], 0x6f
jne 0xfd7d36
cmp byte [edi + 4], 0x6d
jne 0xfd7d36
cmp byte [edi + 5], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x25
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0x14]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd8eb9
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x30]
movzx ecx, byte [esp + 0x14]
lea edi, [eax + edi + 4]
mov eax, 0x47
shl eax, cl
add eax, dword [esp + 0x10]
mov ecx, dword [edi]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edi], eax
cmp byte [edx + 1], 0x20
jne 0xfd82c2
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x30]
lea edx, [eax + edi + 8]
mov eax, 0x34
jmp 0xfd7eee
movzx ecx, byte [esp + 0x1c]
mov eax, 0x24
lea edx, [ebp + ebx*4 + 4]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x2e
lea edx, [ebp + esi + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x20]
lea edx, [eax + ecx + 4]
movzx ecx, byte [esp + 0x14]
mov eax, 0x6d
shl eax, cl
add eax, dword [esp + 0x10]
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x20
jne 0xfd82c2
mov eax, dword [esp + 0x20]
mov edx, 0x41
add eax, 8
jmp 0xfd8dfd
mov ecx, esi
xor edx, edx
mov esi, dword [esp + 0x18]
mov byte [esp + 0x20], al
cmp cl, 0xa
movzx ecx, byte [esp + 0x1c]
setne dl
lea esi, [ebp + esi + 8]
add edx, 0x68
shl edx, cl
add edx, dword [esp + 0x14]
shl edx, 5
add ebx, edx
mov edx, dword [esi]
cmp ebx, edx
cmova ebx, edx
mov dword [esi], ebx
jmp 0xfd7d36
movzx eax, byte [edi + 2]
cmp al, 0x66
je 0xfd9226
cmp al, 0x6e
jne 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x2d
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0xc]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd9025
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x33
lea edx, [ebp + ebx*4 + 4]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x10
lea edx, [ebp + esi + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x3c
lea edx, [ebp + esi + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
cmp byte [edi + 2], 0x6f
jne 0xfd7d36
cmp byte [edi + 3], 0x74
jne 0xfd7d36
cmp byte [edi + 4], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x50
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0x10]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd9100
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x39
lea edx, [ebp + ebx*4 + 4]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0xfd7d36
cmp byte [edi + 3], 0x72
jne 0xfd7d36
cmp byte [edi + 4], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x19
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0x10]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd9174
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
xor eax, eax
cmp dl, 0xa
sete al
lea eax, [eax*8 + 0x6e]
jmp 0xfd8b6f
movzx eax, byte [edi + 2]
cmp al, 0x68
je 0xfd92b9
cmp al, 0x6f
jne 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x11
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0xc]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd91d6
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
movzx eax, byte [edi + 1]
cmp al, 0x22
je 0xfd95a2
cmp al, 0x27
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x56
lea edx, [ebp + ebx*4 + 8]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd921d
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 8
lea edx, [esp + 0x4c]
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0xc]
cmp ebx, dword [eax]
mov dword [esp + 0x4c], ebx
cmovae edx, eax
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x30]
lea edx, [eax + edi + 8]
mov eax, 0x51
jmp 0xfd7eee
cmp byte [edi + 1], 0x6c
jne 0xfd7d36
cmp byte [edi + 2], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x54
lea edx, [ebp + ebx*4 + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd92b0
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
movzx eax, byte [edi + 3]
cmp al, 0x65
je 0xfd94b8
cmp al, 0x61
jne 0xfd7d36
cmp byte [edi + 4], 0x74
jne 0xfd7d36
cmp byte [edi + 5], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x1d
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0x14]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd9308
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
movzx eax, byte [edi + 1]
cmp al, 0x64
je 0xfd947e
cmp al, 0x72
je 0xfd96ad
cmp al, 0x73
jne 0xfd7d36
cmp byte [edi + 2], 0x74
jne 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x5f
lea edx, [ebp + ebx*4 + 0x10]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd9369
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
lea eax, [ebx + 8]
cmp eax, dword [esp + 0x78]
jae 0xfd8d0b
add edi, dword [esp + 0x70]
cmp byte [edi], 0x20
mov edx, edi
jne 0xfd8d0b
cmp byte [edi + 1], 0x6f
jne 0xfd8d0b
cmp byte [edi + 2], 0x66
jne 0xfd8d0b
cmp byte [edi + 3], 0x20
jne 0xfd8d0b
movzx ecx, byte [esp + 0x18]
mov eax, 0x3e
mov edi, dword [esp + 0x1c]
shl eax, cl
add eax, dword [esp + 0x14]
lea ecx, [ebp + edi + 0x10]
shl eax, 5
mov edi, ecx
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [ecx]
jae 0xfd93d7
lea edi, [esp + 0x4c]
mov eax, dword [edi]
mov dword [ecx], eax
lea eax, [ebx + 0xc]
cmp eax, dword [esp + 0x78]
jae 0xfd8d0b
cmp byte [edx + 4], 0x74
jne 0xfd8d0b
cmp byte [edx + 5], 0x68
jne 0xfd8d0b
cmp byte [edx + 6], 0x65
jne 0xfd8d0b
cmp byte [edx + 7], 0x20
jne 0xfd8d0b
movzx ecx, byte [esp + 0x18]
mov eax, 0x49
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x4c], ebx
lea eax, [ebp + eax + 0x20]
mov edx, eax
cmp ebx, dword [eax]
jb 0xfd96e7
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd8d0b
cmp byte [edi + 5], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x2b
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0x14]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd9475
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
cmp byte [edi + 2], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x35
lea edx, [ebp + ebx*4 + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd94af
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
cmp byte [edi + 4], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 5
shl eax, cl
add eax, dword [esp + 0x14]
shl eax, 5
add ebx, eax
lea eax, [ebp + esi + 0x10]
mov dword [esp + 0x4c], ebx
mov edx, eax
cmp ebx, dword [eax]
jae 0xfd94e9
lea edx, [esp + 0x4c]
mov edx, dword [edx]
mov dword [eax], edx
jmp 0xfd7d36
movzx eax, byte [edi + 1]
cmp al, 0x76
je 0xfd95d1
cmp al, 0x7a
jne 0xfd7d36
cmp byte [edi + 2], 0x65
jne 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x64
lea edx, [ebp + ebx*4 + 0x10]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd9541
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
cmp byte [edi + 1], 0x75
jne 0xfd7d36
cmp byte [edi + 2], 0x6c
jne 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x5a
lea edx, [ebp + ebx*4 + 0x10]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd9597
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x46
lea edx, [ebp + ebx*4 + 8]
shl eax, cl
add eax, dword [esp + 0x14]
lea ecx, [esp + 0x4c]
shl eax, 5
add eax, ebx
cmp eax, dword [edx]
cmovae ecx, edx
mov dword [esp + 0x4c], eax
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
cmp byte [edi + 2], 0x65
jne 0xfd7d36
cmp byte [edi + 3], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x5c
lea edx, [ebp + ebx*4 + 0x10]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd960c
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
movzx eax, byte [edi + 1]
cmp al, 0x65
je 0xfd965f
cmp al, 0x79
jne 0xfd7d36
cmp byte [edi + 2], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x3d
lea edx, [ebp + ebx*4 + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd9656
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
cmp byte [edi + 2], 0x73
jne 0xfd7d36
cmp byte [edi + 3], 0x73
jne 0xfd7d36
cmp byte [edi + 4], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x5d
lea edx, [ebp + ebx*4 + 0x14]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd96a4
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
cmp byte [edi + 2], 0x20
jne 0xfd7d36
movzx ecx, byte [esp + 0x1c]
mov eax, 0x52
lea edx, [ebp + ebx*4 + 0xc]
shl eax, cl
add eax, dword [esp + 0x14]
mov ecx, edx
shl eax, 5
add eax, ebx
mov dword [esp + 0x4c], eax
cmp eax, dword [edx]
jae 0xfd96de
lea ecx, [esp + 0x4c]
mov eax, dword [ecx]
mov dword [edx], eax
jmp 0xfd7d36
lea edx, [esp + 0x4c]
jmp 0xfd943b