Function at 0x41b580
Capabilities:
Encode data using base64
Parse pe header

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x44
mov eax, dword [esp + 0x58]
mov eax, dword [eax + 0x20]
mov edi, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x5c]
imul eax, dword [eax], 0x1e35a7bd
shr eax, 0x11
movzx eax, word [edi + eax*2]
test eax, eax
je 0x41c79c
mov edi, dword [esp + 0x58]
mov ebp, dword [esp + 0x68]
mov dword [esp + 0x10], 0
mov edi, dword [edi]
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x58]
mov edx, dword [edi + 0x24]
lea eax, [edx + eax*4]
mov dword [esp + 0x18], eax
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 0x20]
movzx eax, byte [edi]
movzx ebx, byte [edi + 1]
movzx edi, word [edi + 2]
mov edx, eax
mov byte [esp + 0x1c], al
and edx, 0x1f
test bl, bl
mov dword [esp + 4], edi
movzx eax, dl
movzx ecx, byte [esi + eax]
mov byte [esp + 0xc], al
mov dword [esp], eax
mov dword [esp + 8], ecx
jne 0x41ba25
mov ecx, eax
imul ecx, edi
add ecx, dword [esi + eax*4 + 0x20]
mov edi, dword [esp + 0x5c]
add ecx, dword [esi + 0xa4]
cmp eax, dword [esp + 0x64]
mov esi, eax
cmova esi, dword [esp + 0x64]
mov eax, dword [esp + 0x5c]
add edi, esi
lea esi, [edi - 4]
cmp dword [esp + 0x5c], esi
ja 0x41c241
mov eax, dword [eax]
cmp dword [ecx], eax
mov ebx, 0
mov eax, dword [esp + 0x5c]
je 0x41b657
jmp 0x41b661
mov edx, dword [ecx + ebx]
cmp dword [eax], edx
jne 0x41b661
add eax, 4
add ebx, 4
cmp eax, esi
jbe 0x41b650
cmp eax, edi
jae 0x41b696
movzx edx, byte [eax]
cmp byte [ecx + ebx], dl
jne 0x41b696
mov esi, ebx
sub esi, eax
sub eax, ebx
add esi, edi
movzx edi, byte [esp + 0xc]
jmp 0x41b689
movzx edx, byte [eax + ebx]
cmp byte [ecx + ebx], dl
jne 0x41b690
add ebx, 1
cmp ebx, esi
jne 0x41b680
mov eax, edi
mov byte [esp + 0xc], al
cmp dword [esp], ebx
je 0x41baa2
mov edx, dword [esp]
lea esi, [edx - 1]
cmp esi, ebx
ja 0x41b6f0
movzx ecx, byte [esp + 8]
mov eax, 0xc
shl esi, 2
lea edi, [ebp + esi]
mov dword [esp + 0x10], 1
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edi]
shl eax, 5
add eax, edx
cmp eax, ecx
cmova eax, ecx
mov dword [edi], eax
lea eax, [edx + 2]
cmp dword [esp + 0x64], eax
jbe 0x41b6f0
mov eax, dword [esp + 0x5c]
cmp byte [eax + edx - 1], 0x69
je 0x41c024
nop
cmp byte [esp + 0xc], 9
mov esi, dword [esp + 0x60]
jbe 0x41b70a
mov eax, dword [esp]
lea esi, [eax - 9]
cmp esi, dword [esp + 0x60]
cmovb esi, dword [esp + 0x60]
mov edi, dword [esp]
mov eax, edi
sub eax, 2
cmp eax, ebx
cmova eax, ebx
cmp esi, eax
mov dword [esp + 0xc], eax
ja 0x41b798
mov eax, dword [esp + 0x58]
sub edi, esi
mov dword [esp + 0x24], ebx
mov edx, dword [eax + 0x14]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x10], eax
lea eax, [edi + edi*2]
mov dword [esp + 0x14], edx
shl edi, 2
add eax, eax
mov ebx, eax
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, ebx
shrd eax, edx, cl
shr edx, cl
test cl, 0x20
je 0x41b757
mov eax, edx
movzx ecx, byte [esp + 8]
and eax, 0x3f
lea edx, [eax + edi]
mov eax, dword [esp + 4]
shl edx, cl
add eax, edx
mov edx, dword [ebp + esi*4]
shl eax, 5
add eax, dword [esp]
cmp eax, edx
cmova eax, edx
sub ebx, 6
sub edi, 4
mov dword [ebp + esi*4], eax
add esi, 1
cmp esi, dword [esp + 0xc]
jbe 0x41b741
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x10], 1
mov esi, dword [esp]
cmp esi, ebx
mov eax, esi
ja 0x41b870
add eax, 6
cmp dword [esp + 0x64], eax
jbe 0x41b870
add esi, dword [esp + 0x5c]
movzx eax, byte [esi]
cmp al, 0x20
je 0x41c070
cmp al, 0x22
je 0x41c17b
cmp al, 0x2e
je 0x41c248
cmp al, 0x2c
je 0x41c637
cmp al, 0xa
je 0x41c694
cmp al, 0x5d
je 0x41c500
cmp al, 0x27
je 0x41c8fc
cmp al, 0x3a
je 0x41cb69
cmp al, 0x28
je 0x41ccce
cmp al, 0x3d
je 0x41cd15
cmp al, 0x61
je 0x41cac9
cmp al, 0x65
je 0x41ce43
cmp al, 0x66
je 0x41cfb0
cmp al, 0x69
je 0x41d050
cmp al, 0x6c
je 0x41d000
cmp al, 0x6f
jne 0x41b870
cmp byte [esi + 1], 0x75
jne 0x41b870
cmp byte [esi + 2], 0x73
jne 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x6a
lea edx, [ebp + edi*4 + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
lea esi, [esi]
add dword [esp + 0x18], 4
cmp byte [esp + 0x1c], 0
jns 0x41b5d1
cmp dword [esp + 0x64], 4
jbe 0x41ba19
mov eax, dword [esp + 0x5c]
movzx eax, byte [eax]
cmp al, 0x20
mov byte [esp + 0x1c], al
je 0x41bc9c
cmp al, 0x2e
je 0x41bc9c
cmp dword [esp + 0x64], 5
je 0x41ba19
mov eax, dword [esp + 0x5c]
movzx eax, byte [eax + 1]
cmp al, 0x20
je 0x41c611
mov edi, dword [esp + 0x5c]
cmp byte [edi], 0xc2
jne 0x41b9f1
cmp al, 0xa0
jne 0x41b9f1
mov eax, dword [esp + 0x5c]
mov edi, dword [esp + 0x28]
imul eax, dword [eax + 2], 0x1e35a7bd
shr eax, 0x11
movzx eax, word [edi + eax*2]
test eax, eax
je 0x41b9f1
mov edi, dword [esp + 0x58]
mov edi, dword [edi]
mov dword [esp + 8], edi
mov edi, dword [esp + 0x58]
mov edx, dword [edi + 0x24]
lea edi, [edx + eax*4]
mov eax, dword [esp + 0x64]
sub eax, 2
mov dword [esp + 0xc], eax
movzx eax, byte [edi]
cmp byte [edi + 1], 0
mov byte [esp], al
jne 0x41b9e4
mov esi, eax
and esi, 0x1f
cmp esi, dword [esp + 0xc]
ja 0x41b9e4
movzx eax, word [edi + 2]
mov ebx, dword [esp + 0x5c]
lea edx, [ebx + 2]
mov ecx, eax
mov dword [esp + 0x18], eax
mov eax, dword [esp + 8]
imul ecx, esi
add ecx, dword [eax + esi*4 + 0x20]
add ecx, dword [eax + 0xa4]
lea eax, [edx + esi]
lea ebp, [eax - 4]
mov dword [esp + 4], eax
cmp edx, ebp
ja 0x41cee0
mov eax, dword [ebx + 2]
cmp dword [ecx], eax
mov eax, 0
je 0x41b97b
jmp 0x41b985
mov ebx, dword [ecx + eax]
cmp dword [edx], ebx
jne 0x41b985
add edx, 4
add eax, 4
cmp edx, ebp
jbe 0x41b974
cmp dword [esp + 4], edx
jbe 0x41b9b0
movzx ebx, byte [edx]
cmp byte [ecx + eax], bl
jne 0x41b9b0
mov ebp, eax
sub ebp, edx
sub edx, eax
add ebp, dword [esp + 4]
jmp 0x41b9a9
movzx ebx, byte [edx + eax]
cmp byte [ecx + eax], bl
jne 0x41b9b0
add eax, 1
cmp eax, ebp
jne 0x41b9a0
cmp esi, eax
jne 0x41b9e4
mov eax, dword [esp + 8]
movzx ecx, byte [eax + esi]
mov eax, dword [esp + 0x5c]
movzx edx, byte [eax]
cmp dl, 0xc2
je 0x41c7c1
lea eax, [esi + 2]
cmp dword [esp + 0x64], eax
jbe 0x41b9e4
mov eax, dword [esp + 0x5c]
cmp byte [eax + esi + 2], 0x20
je 0x41cca7
add edi, 4
cmp byte [esp], 0
jns 0x41b913
cmp dword [esp + 0x64], 8
jbe 0x41ba19
mov eax, dword [esp + 0x5c]
movzx eax, byte [eax]
cmp al, 0x20
je 0x41c5e0
cmp al, 0x2e
jne 0x41ba19
mov eax, dword [esp + 0x5c]
cmp byte [eax + 1], 0x63
je 0x41c36d
mov eax, dword [esp + 0x10]
add esp, 0x44
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp]
cmp eax, dword [esp + 0x64]
ja 0x41b870
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 4]
mov edi, eax
imul esi, eax
add esi, dword [ecx + eax*4 + 0x20]
add esi, dword [ecx + 0xa4]
cmp bl, 0xa
je 0x41bbf0
xor eax, eax
test edi, edi
je 0x41bad4
mov dword [esp + 0x68], ebp
mov edi, dword [esp + 0x5c]
mov ebp, dword [esp]
jmp 0x41ba78
xor edx, 0x20
cmp dl, byte [edi + eax]
jne 0x41c00b
add eax, 1
cmp ebp, eax
je 0x41bad0
movzx edx, byte [esi + eax]
lea ecx, [edx - 0x61]
cmp cl, 0x19
jbe 0x41ba65
cmp dl, byte [edi + eax]
je 0x41ba71
add dword [esp + 0x18], 4
cmp byte [esp + 0x1c], 0
mov ebp, dword [esp + 0x68]
jns 0x41b5d1
jmp 0x41b880
mov edi, dword [esp]
mov eax, dword [esp + 4]
mov dword [esp + 0x10], 1
lea ecx, [ebp + edi*4]
shl eax, 5
add eax, edi
mov esi, dword [ecx]
cmp eax, esi
cmova eax, esi
mov dword [ecx], eax
jmp 0x41b69f
mov ebp, dword [esp + 0x68]
mov eax, 0x2c
mov edi, dword [esp]
movzx ecx, byte [esp + 8]
lea esi, [edi*4]
shl eax, cl
add eax, dword [esp + 4]
lea edx, [ebp + esi]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
lea eax, [edi + 1]
cmp dword [esp + 0x64], eax
jbe 0x41bbd0
mov edi, dword [esp]
add edi, dword [esp + 0x5c]
movzx eax, byte [edi]
cmp al, 0x20
je 0x41c130
cmp al, 0x22
je 0x41c1d8
cmp al, 0x2e
je 0x41c304
cmp al, 0x2c
je 0x41bb95
cmp al, 0x27
je 0x41c751
cmp al, 0x28
je 0x41c564
cmp al, 0x3d
jne 0x41bbd0
movzx eax, byte [edi + 1]
cmp al, 0x22
je 0x41ca50
cmp al, 0x27
jne 0x41bbd0
xor eax, eax
movzx ecx, byte [esp + 8]
cmp bl, 0xa
setne al
lea edx, [ebp + esi + 8]
mov dword [esp + 0x10], 1
lea eax, [eax*8 + 0x6c]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp bl, 0xa
je 0x41cbf0
movzx ecx, byte [esp + 8]
mov eax, 0x70
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x20
je 0x41c96c
nop
lea esi, [esi]
add dword [esp + 0x18], 4
cmp byte [esp + 0x1c], 0
mov dword [esp + 0x10], 1
jns 0x41b5d1
jmp 0x41b880
movzx eax, byte [esi]
lea edx, [eax - 0x61]
cmp dl, 0x19
ja 0x41b870
mov edi, dword [esp + 0x5c]
xor eax, 0x20
cmp al, byte [edi]
jne 0x41b870
mov eax, dword [esp]
lea edi, [eax - 1]
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x5c]
add eax, edi
lea edx, [edi + 1]
lea ecx, [eax - 4]
mov edi, eax
cmp edx, ecx
ja 0x41cf30
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + 1]
cmp dword [esi + 1], eax
mov eax, 0
jne 0x41bc5c
mov byte [esp + 0xc], bl
jmp 0x41bc4d
mov ebx, dword [esi + eax + 1]
cmp dword [edx], ebx
jne 0x41bc57
add edx, 4
add eax, 4
cmp edx, ecx
jbe 0x41bc45
movzx ebx, byte [esp + 0xc]
cmp edx, edi
jae 0x41bc88
movzx ecx, byte [esi + eax + 1]
cmp byte [edx], cl
jne 0x41bc88
mov ecx, eax
sub ecx, edx
sub edx, eax
add ecx, edi
mov edi, ebx
jmp 0x41bc7f
movzx ebx, byte [edx + eax]
cmp byte [esi + eax + 1], bl
jne 0x41bc86
add eax, 1
cmp eax, ecx
jne 0x41bc75
mov ebx, edi
cmp dword [esp + 0x24], eax
jne 0x41b870
mov eax, 9
jmp 0x41bad9
mov eax, dword [esp + 0x5c]
mov edi, dword [esp + 0x28]
imul eax, dword [eax + 1], 0x1e35a7bd
shr eax, 0x11
movzx eax, word [edi + eax*2]
test eax, eax
je 0x41b8a6
movzx ebx, byte [esp + 0x1c]
mov edi, dword [esp + 0x58]
mov ecx, 6
mov edx, 0x20
mov edi, dword [edi]
cmp bl, 0x20
cmove edx, ecx
mov ecx, 0x59
mov dword [esp + 0x24], edx
mov edx, 0x43
mov dword [esp + 0x18], edi
cmove edx, ecx
mov edi, dword [esp + 0x58]
mov ecx, 2
mov dword [esp + 0x30], edx
mov edx, 0x4d
cmove edx, ecx
mov dword [esp + 0x2c], edx
mov edx, dword [edi + 0x24]
lea esi, [edx + eax*4]
mov eax, dword [esp + 0x64]
sub eax, 1
mov dword [esp + 0x20], eax
movzx eax, byte [esi]
movzx edi, byte [esi + 1]
mov ebx, eax
mov byte [esp + 4], al
and ebx, 0x1f
mov edx, ebx
mov dword [esp], ebx
mov ebx, dword [esp + 0x18]
movzx eax, byte [ebx + edx]
mov dword [esp + 0xc], eax
movzx eax, word [esi + 2]
mov ecx, eax
mov dword [esp + 8], eax
mov eax, edi
test al, al
jne 0x41bed3
mov edi, edx
mov edx, dword [esp + 0x20]
cmp edi, edx
ja 0x41bec0
mov eax, dword [esp + 0x5c]
imul ecx, edi
add ecx, dword [ebx + edi*4 + 0x20]
add ecx, dword [ebx + 0xa4]
lea edx, [eax + 1]
lea ebp, [edx + edi]
lea edi, [ebp - 4]
cmp edx, edi
ja 0x41cc2a
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + 1]
cmp dword [ecx], eax
mov eax, 0
je 0x41bd97
jmp 0x41bda1
mov ebx, dword [ecx + eax]
cmp dword [edx], ebx
jne 0x41bda1
add edx, 4
add eax, 4
cmp edx, edi
jbe 0x41bd90
cmp ebp, edx
jbe 0x41bdd3
movzx ebx, byte [edx]
cmp byte [ecx + eax], bl
jne 0x41bdd3
mov edi, eax
sub edi, edx
sub edx, eax
add edi, ebp
mov ebp, dword [esp]
jmp 0x41bdc9
movzx ebx, byte [edx + eax]
cmp byte [ecx + eax], bl
jne 0x41bdd0
add eax, 1
cmp eax, edi
jne 0x41bdc0
mov dword [esp], ebp
mov ebx, dword [esp]
cmp ebx, eax
jne 0x41bec0
movzx ecx, byte [esp + 0xc]
mov eax, dword [esp + 0x24]
lea edi, [ebx + 1]
mov edx, dword [esp + 0x68]
lea ebp, [edi*4]
shl eax, cl
add eax, dword [esp + 8]
add edx, ebp
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
mov eax, ebx
add eax, 2
cmp dword [esp + 0x64], eax
jbe 0x41bff0
add edi, dword [esp + 0x5c]
movzx eax, byte [edi]
cmp al, 0x20
je 0x41c7a9
cmp al, 0x28
je 0x41be87
cmp byte [esp + 0x1c], 0x20
jne 0x41bff0
cmp al, 0x2c
je 0x41ca86
cmp al, 0x2e
je 0x41ce00
cmp al, 0x3d
jne 0x41bff0
movzx eax, byte [edi + 1]
cmp al, 0x22
je 0x41d25f
cmp al, 0x27
jne 0x41bff0
mov eax, dword [esp + 0x68]
lea edx, [eax + ebp + 8]
mov eax, 0x62
movzx ecx, byte [esp + 0xc]
mov ebx, dword [esp]
shl eax, cl
add eax, dword [esp + 8]
shl eax, 5
jmp 0x41bfe5
mov eax, dword [esp + 0x68]
movzx ecx, byte [esp + 0xc]
mov edx, dword [esp + 0x30]
lea eax, [eax + ebp + 4]
shl edx, cl
add edx, dword [esp + 8]
mov ebx, dword [esp]
shl edx, 5
add ebx, edx
mov edx, dword [eax]
cmp ebx, edx
cmova ebx, edx
mov dword [eax], ebx
mov dword [esp + 0x10], 1
mov esi, esi
lea edi, [edi]
add esi, 4
cmp byte [esp + 4], 0
jns 0x41bd14
jmp 0x41b8a6
cmp byte [esp + 0x1c], 0x20
jne 0x41bec0
mov ebx, dword [esp]
mov eax, dword [esp + 0x20]
cmp ebx, eax
ja 0x41bec0
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 8]
imul ebp, ebx
add ebp, dword [eax + ebx*4 + 0x20]
add ebp, dword [eax + 0xa4]
mov eax, edi
cmp al, 0xa
je 0x41c7ef
xor eax, eax
test ebx, ebx
je 0x41bf53
mov dword [esp + 0x34], esi
mov ebx, dword [esp]
mov esi, dword [esp + 0x5c]
jmp 0x41bf30
xor edx, 0x20
cmp dl, byte [esi + eax + 1]
jne 0x41bf43
add eax, 1
cmp ebx, eax
je 0x41bf4c
movzx edx, byte [ebp + eax]
lea ecx, [edx - 0x61]
cmp cl, 0x19
jbe 0x41bf20
cmp dl, byte [esi + eax + 1]
je 0x41bf29
mov esi, dword [esp + 0x34]
jmp 0x41bec0
mov esi, dword [esp + 0x34]
mov dword [esp], ebx
mov eax, dword [esp]
lea ebp, [eax + 1]
mov eax, 0x55
movzx ecx, byte [esp + 0xc]
mov ebx, dword [esp + 0x68]
lea edx, [ebx + ebp*4]
mov ebx, dword [esp]
shl eax, cl
add eax, dword [esp + 8]
mov ecx, dword [edx]
shl eax, 5
add eax, ebx
cmp eax, ecx
cmova eax, ecx
lea ecx, [ebx + 2]
cmp dword [esp + 0x64], ecx
mov dword [edx], eax
jbe 0x41bff0
mov edx, dword [esp + 0x5c]
add edx, ebp
movzx eax, byte [edx]
cmp al, 0x20
je 0x41ccf8
cmp al, 0x2c
je 0x41cd53
cmp al, 0x2e
je 0x41cb10
cmp al, 0x3d
jne 0x41bff0
movzx eax, byte [edx + 1]
cmp al, 0x22
je 0x41d249
cmp al, 0x27
jne 0x41bff0
mov eax, edi
cmp al, 0xa
sete al
movzx eax, al
add eax, 0x77
mov edi, dword [esp + 0x68]
mov ebx, dword [esp]
lea edx, [edi + ebx*4 + 0xc]
movzx ecx, byte [esp + 0xc]
shl eax, cl
add eax, dword [esp + 8]
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
add esi, 4
cmp byte [esp + 4], 0
mov dword [esp + 0x10], 1
jns 0x41bd14
jmp 0x41b8a6
add dword [esp + 0x18], 4
cmp byte [esp + 0x1c], 0
mov ebp, dword [esp + 0x68]
jns 0x41b5d1
jmp 0x41b880
cmp byte [eax + edx], 0x6e
jne 0x41b6f0
cmp byte [eax + edx + 1], 0x67
jne 0x41b6f0
cmp byte [eax + edx + 2], 0x20
jne 0x41b6f0
movzx ecx, byte [esp + 8]
mov eax, 0x31
lea esi, [ebp + esi + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [esi]
shl eax, 5
add eax, edx
cmp eax, ecx
cmova eax, ecx
mov dword [esi], eax
jmp 0x41b6f0
mov edi, dword [esp]
movzx ecx, byte [esp + 8]
mov eax, 1
lea ebx, [edi*4 + 4]
shl eax, cl
add eax, dword [esp + 4]
lea edx, [ebp + ebx]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
movzx eax, byte [esi + 1]
cmp al, 0x61
je 0x41c6f1
cmp al, 0x62
je 0x41c59f
cmp al, 0x69
je 0x41c926
cmp al, 0x66
je 0x41cb93
cmp al, 0x6f
je 0x41cc31
cmp al, 0x6e
je 0x41cdb0
cmp al, 0x74
je 0x41ca03
cmp al, 0x77
jne 0x41b870
cmp byte [esi + 2], 0x69
jne 0x41b870
cmp byte [esi + 3], 0x74
jne 0x41b870
cmp byte [esi + 4], 0x68
jne 0x41b870
cmp byte [esi + 5], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x23
lea edx, [ebp + ebx + 0x14]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx ecx, byte [esp + 8]
cmp bl, 0xa
mov edx, 4
mov eax, 0x44
mov dword [esp + 0x10], 1
cmove eax, edx
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
add dword [esp + 0x18], 4
cmp byte [esp + 0x1c], 0
mov dword [edx], eax
jns 0x41b5d1
jmp 0x41b880
mov edi, dword [esp]
movzx ecx, byte [esp + 8]
mov eax, 0x13
lea ebx, [edi*4 + 4]
shl eax, cl
add eax, dword [esp + 4]
lea edx, [ebp + ebx]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [esi + 1], 0x3e
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x15
lea edx, [ebp + ebx + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp bl, 0xa
je 0x41c52a
movzx ecx, byte [esp + 8]
mov eax, 0x57
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x3e
jne 0x41bbd0
add esi, 8
mov eax, 0x61
movzx ecx, byte [esp + 8]
lea edx, [ebp + esi]
mov dword [esp + 0x10], 1
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
xor ebx, ebx
jmp 0x41b661
mov edi, dword [esp]
movzx ecx, byte [esp + 8]
mov eax, 0x14
lea ebx, [edi*4 + 4]
shl eax, cl
add eax, dword [esp + 4]
lea edx, [ebp + ebx]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [esi + 1], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x1f
lea edx, [ebp + ebx + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [esi + 2], 0x54
jne 0x41b870
cmp byte [esi + 3], 0x68
jne 0x41b870
movzx eax, byte [esi + 4]
cmp al, 0x65
je 0x41d2b9
cmp al, 0x69
jne 0x41b870
cmp byte [esi + 5], 0x73
jne 0x41b870
cmp byte [esi + 6], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x4b
lea edx, [ebp + ebx + 0x18]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp bl, 0xa
je 0x41c8c2
movzx ecx, byte [esp + 8]
mov eax, 0x65
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x20
jne 0x41bbd0
add esi, 8
mov eax, 0x72
movzx ecx, byte [esp + 8]
lea edx, [ebp + esi]
mov dword [esp + 0x10], 1
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp byte [eax + 2], 0x6f
jne 0x41ba19
cmp byte [eax + 3], 0x6d
jne 0x41ba19
cmp byte [eax + 4], 0x2f
jne 0x41ba19
mov eax, dword [esp + 0x5c]
mov edi, dword [esp + 0x28]
imul eax, dword [eax + 5], 0x1e35a7bd
shr eax, 0x11
movzx eax, word [edi + eax*2]
test eax, eax
je 0x41ba19
mov edi, dword [esp + 0x58]
mov edi, dword [edi]
mov dword [esp + 8], edi
mov edi, dword [esp + 0x58]
mov edx, dword [edi + 0x24]
lea eax, [edx + eax*4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x64]
sub eax, 5
mov dword [esp + 0x1c], eax
mov edi, dword [esp + 4]
movzx eax, byte [edi]
cmp byte [edi + 1], 0
mov byte [esp + 0xc], al
jne 0x41c4e4
mov esi, dword [esp + 0x1c]
mov ebx, eax
and ebx, 0x1f
mov dword [esp], ebx
cmp ebx, esi
ja 0x41c4e4
mov eax, dword [esp + 0x5c]
movzx esi, word [edi + 2]
mov ecx, ebx
mov edi, dword [esp + 8]
lea edx, [eax + 5]
mov eax, ebx
add eax, 8
imul ecx, esi
add ecx, dword [edi + eax*4]
mov dword [esp + 0x18], eax
add ecx, dword [edi + 0xa4]
lea edi, [edx + ebx]
lea ebp, [edi - 4]
cmp edx, ebp
ja 0x41d242
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + 5]
cmp dword [ecx], eax
mov eax, 0
je 0x41c447
jmp 0x41c451
mov ebx, dword [ecx + eax]
cmp dword [edx], ebx
jne 0x41c451
add edx, 4
add eax, 4
cmp edx, ebp
jbe 0x41c440
cmp edi, edx
jbe 0x41c483
movzx ebx, byte [ecx + eax]
cmp byte [edx], bl
jne 0x41c483
mov ebp, eax
sub ebp, edx
sub edx, eax
add edi, ebp
mov ebp, dword [esp]
jmp 0x41c479
movzx ebx, byte [edx + eax]
cmp byte [ecx + eax], bl
jne 0x41c480
add eax, 1
cmp edi, eax
jne 0x41c470
mov dword [esp], ebp
mov ebx, dword [esp]
cmp ebx, eax
jne 0x41c4e4
mov eax, dword [esp + 0x5c]
mov edi, 0x48
lea edx, [ebx + 5]
mov ebp, dword [esp + 0x68]
cmp byte [eax], 0x20
mov eax, 0x29
cmovne eax, edi
mov edi, dword [esp + 8]
movzx ecx, byte [edi + ebx]
lea edi, [edx*4]
add ebp, edi
shl eax, cl
add eax, esi
shl eax, 5
add eax, ebx
cmp eax, dword [ebp]
cmova eax, dword [ebp]
cmp dword [esp + 0x64], edx
mov dword [ebp], eax
jbe 0x41c4dc
mov eax, dword [esp + 0x5c]
cmp byte [eax], 0x20
je 0x41d123
mov dword [esp + 0x10], 1
add dword [esp + 4], 4
cmp byte [esp + 0xc], 0
jns 0x41c3cc
jmp 0x41ba19
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x18
lea edx, [ebp + edi*4 + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x42
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x3e
jne 0x41bbd0
add esi, 8
mov eax, 0x45
jmp 0x41c216
movzx ecx, byte [esp + 8]
cmp bl, 0xa
mov eax, 0x71
mov edi, 0x4e
lea edx, [ebp + esi + 4]
mov dword [esp + 0x10], 1
cmove eax, edi
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp byte [esi + 2], 0x79
jne 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x26
lea edx, [ebp + ebx + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
mov eax, dword [esp + 0x5c]
cmp byte [eax + 1], 0x74
jne 0x41ba19
cmp byte [eax + 2], 0x68
jne 0x41ba19
cmp byte [eax + 3], 0x65
jne 0x41ba19
cmp byte [eax + 4], 0x20
jne 0x41ba19
jmp 0x41c38b
mov eax, dword [esp + 0x5c]
movzx eax, byte [eax]
cmp al, 0x65
sete cl
cmp al, 0x73
sete dl
or cl, dl
jne 0x41b8d6
cmp al, 0x2c
jne 0x41b9f1
jmp 0x41b8d6
mov edi, dword [esp]
movzx ecx, byte [esp + 8]
mov eax, 0x4c
lea ebx, [edi*4 + 4]
shl eax, cl
add eax, dword [esp + 4]
lea edx, [ebp + ebx]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [esi + 1], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0xe
lea edx, [ebp + ebx + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
mov edi, dword [esp]
movzx ecx, byte [esp + 8]
mov eax, 0x16
lea ebx, [edi*4 + 4]
shl eax, cl
add eax, dword [esp + 4]
lea edx, [ebp + ebx]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [esi + 1], 9
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x32
lea edx, [ebp + ebx + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx eax, byte [esi + 2]
cmp al, 0x20
je 0x41cc80
cmp al, 0x73
je 0x41cd7e
cmp al, 0x74
je 0x41c99f
cmp al, 0x6e
jne 0x41b870
cmp byte [esi + 3], 0x64
jne 0x41b870
cmp byte [esi + 4], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0xa
lea edx, [ebp + ebx + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx ecx, byte [esp + 8]
cmp bl, 0xa
mov edx, 0x5e
mov eax, 0x4a
lea ebx, [ebp + esi + 4]
mov dword [esp + 0x10], 1
cmovne eax, edx
mov edx, dword [ebx]
shl eax, cl
add eax, dword [esp + 4]
shl eax, 5
add eax, dword [esp]
cmp eax, edx
cmova eax, edx
add dword [esp + 0x18], 4
cmp byte [esp + 0x1c], 0
mov dword [ebx], eax
jns 0x41b5d1
jmp 0x41b880
mov dword [esp + 0x10], 0
jmp 0x41b880
movzx ecx, byte [esp + 0xc]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x2c]
lea eax, [eax + ebp + 4]
shl edx, cl
jmp 0x41be9a
mov eax, dword [esp + 0x68]
lea edx, [eax + esi*4 + 8]
mov eax, 0x66
shl eax, cl
add eax, dword [esp + 0x18]
shl eax, 5
add esi, eax
mov eax, dword [edx]
cmp esi, eax
cmova esi, eax
mov dword [edx], esi
mov dword [esp + 0x10], 1
jmp 0x41b9e4
movzx eax, byte [ebp]
lea edx, [eax - 0x61]
cmp dl, 0x19
ja 0x41bec0
mov ebx, dword [esp + 0x5c]
xor eax, 0x20
cmp al, byte [ebx + 1]
jne 0x41bec0
mov ebx, dword [esp]
mov eax, ebx
sub eax, 1
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x5c]
lea ecx, [eax + 2]
mov eax, ebx
add eax, 1
mov dword [esp + 0x3c], eax
add eax, dword [esp + 0x5c]
mov dword [esp + 0x34], eax
sub eax, 4
cmp ecx, eax
ja 0x41d11c
mov ebx, dword [esp + 0x5c]
xor edx, edx
mov ebx, dword [ebx + 2]
cmp dword [ebp + 1], ebx
jne 0x41c86a
mov ebx, dword [esp]
mov dword [esp], eax
jmp 0x41c85c
mov eax, dword [ebp + edx + 1]
cmp dword [ecx], eax
jne 0x41c867
add ecx, 4
add edx, 4
cmp ecx, dword [esp]
jbe 0x41c854
mov dword [esp], ebx
cmp dword [esp + 0x34], ecx
jbe 0x41d328
movzx eax, byte [ebp + edx + 1]
cmp byte [ecx], al
mov eax, edx
jne 0x41c8aa
mov ebx, dword [esp + 0x34]
sub eax, ecx
sub ecx, edx
add ebx, eax
mov eax, edx
mov dword [esp + 0x34], ebx
mov ebx, dword [esp]
jmp 0x41c89e
movzx edx, byte [ecx + eax]
cmp byte [ebp + eax + 1], dl
jne 0x41c8a7
add eax, 1
cmp eax, dword [esp + 0x34]
jne 0x41c894
mov dword [esp], ebx
cmp dword [esp + 0x38], eax
jne 0x41bec0
mov ebp, dword [esp + 0x3c]
mov eax, 0x1e
jmp 0x41bf5e
movzx ecx, byte [esp + 8]
mov eax, 0x4f
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x20
jne 0x41bbd0
add esi, 8
mov eax, 0x58
jmp 0x41c342
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x24
lea edx, [ebp + edi*4 + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx eax, byte [esi + 2]
cmp al, 0x6e
je 0x41c9d1
cmp al, 0x73
jne 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x2f
lea edx, [ebp + ebx + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
add esi, 8
mov eax, 0x6b
movzx ecx, byte [esp + 8]
lea edx, [ebp + esi]
mov dword [esp + 0x10], 1
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x3c
lea edx, [ebp + ebx + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x10
lea edx, [ebp + ebx + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx eax, byte [esi + 2]
cmp al, 0x68
je 0x41d0a2
cmp al, 0x6f
jne 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x11
lea edx, [ebp + ebx + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx ecx, byte [esp + 8]
xor eax, eax
cmp bl, 0xa
setne al
lea edx, [ebp + esi + 8]
mov dword [esp + 0x10], 1
add eax, 0x68
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
mov eax, dword [esp + 0x68]
movzx ecx, byte [esp + 0xc]
lea edx, [eax + ebp + 4]
mov eax, 0x67
shl eax, cl
add eax, dword [esp + 8]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x20
jne 0x41bff0
mov eax, dword [esp + 0x68]
lea edx, [eax + ebp + 8]
mov eax, 0x21
jmp 0x41be71
cmp byte [esi + 1], 0x6c
jne 0x41b870
cmp byte [esi + 2], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x54
lea edx, [ebp + edi*4 + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
mov eax, edi
cmp al, 0xa
je 0x41cee7
mov eax, dword [esp + 0x68]
mov ebx, dword [esp]
lea edi, [eax + ecx*4]
movzx ecx, byte [esp + 0xc]
mov eax, 0x73
shl eax, cl
add eax, dword [esp + 8]
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
lea eax, [ebx + 3]
mov edi, 0x75
jne 0x41bff0
movzx ecx, byte [esp + 0xc]
mov ebx, dword [esp + 0x68]
lea eax, [ebx + eax*4]
shl edi, cl
mov edx, edi
jmp 0x41be9a
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x33
lea edx, [ebp + edi*4 + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx eax, byte [esi + 2]
cmp al, 0x6f
je 0x41cea0
cmp al, 0x72
jne 0x41b870
cmp byte [esi + 3], 0x6f
jne 0x41b870
cmp byte [esi + 4], 0x6d
jne 0x41b870
cmp byte [esi + 5], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x25
lea edx, [ebp + ebx + 0x14]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x63
lea edx, [ebp + esi + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x20
jne 0x41bbd0
add esi, 8
mov eax, 0x3a
jmp 0x41c974
xor eax, eax
jmp 0x41bda1
movzx eax, byte [esi + 2]
cmp al, 0x66
je 0x41cf37
cmp al, 0x6e
jne 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x2d
lea edx, [ebp + ebx + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x1c
lea edx, [ebp + ebx + 8]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp dl, 0x65
mov eax, 0x12
je 0x41ccc1
cmp dl, 0x73
mov eax, 7
mov edx, 0xd
cmovne eax, edx
mov ebx, dword [esp + 0x68]
lea edx, [ebx + esi*4 + 0xc]
jmp 0x41c7ce
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x39
lea edx, [ebp + edi*4 + 4]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
mov eax, edi
mov edi, dword [esp + 0x68]
mov edx, 0xf
cmp al, 0xa
mov eax, 0x53
cmove eax, edx
lea edx, [edi + ecx*4]
jmp 0x41bfd7
movzx eax, byte [esi + 1]
cmp al, 0x22
je 0x41d0f2
cmp al, 0x27
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x56
lea edx, [ebp + edi*4 + 8]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
mov eax, edi
cmp al, 0xa
je 0x41cf70
cmp byte [edx + 1], 0x20
jne 0x41bff0
mov eax, dword [esp]
lea edx, [eax + 3]
mov eax, 0x6f
mov edi, dword [esp + 0x68]
lea edx, [edi + edx*4]
jmp 0x41be71
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x2e
lea edx, [ebp + ebx + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp byte [esi + 2], 0x6f
jne 0x41b870
cmp byte [esi + 3], 0x74
jne 0x41b870
cmp byte [esi + 4], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x50
lea edx, [ebp + ebx + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
mov eax, dword [esp + 0x68]
movzx ecx, byte [esp + 0xc]
lea edx, [eax + ebp + 4]
mov eax, 0x47
shl eax, cl
add eax, dword [esp + 8]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
cmp byte [edi + 1], 0x20
jne 0x41bff0
mov eax, dword [esp + 0x68]
lea edx, [eax + ebp + 8]
mov eax, 0x34
jmp 0x41be71
movzx eax, byte [esi + 1]
cmp al, 0x64
je 0x41d20e
cmp al, 0x72
je 0x41d1da
cmp al, 0x73
jne 0x41b870
cmp byte [esi + 2], 0x74
jne 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x5f
lea edx, [ebp + edi*4 + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp byte [esi + 3], 0x72
jne 0x41b870
cmp byte [esi + 4], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x19
lea edx, [ebp + ebx + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
xor eax, eax
jmp 0x41b985
mov eax, dword [esp + 0x68]
lea edi, [eax + ecx*4]
movzx ecx, byte [esp + 0xc]
mov eax, 0x60
shl eax, cl
add eax, dword [esp + 8]
mov ecx, dword [edi]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edi], eax
cmp byte [edx + 1], 0x20
jne 0x41bff0
mov eax, dword [esp]
mov edi, 0x5b
add eax, 3
jmp 0x41cb54
xor eax, eax
jmp 0x41bc5c
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 8
lea edx, [ebp + ebx + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
mov eax, dword [esp + 0x68]
lea edi, [eax + ecx*4]
movzx ecx, byte [esp + 0xc]
mov eax, 0x6d
shl eax, cl
add eax, dword [esp + 8]
mov ecx, dword [edi]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edi], eax
cmp byte [edx + 1], 0x20
jne 0x41bff0
mov eax, dword [esp]
lea edx, [eax + 3]
mov eax, 0x41
jmp 0x41cd72
cmp byte [esi + 1], 0x75
jne 0x41b870
cmp byte [esi + 2], 0x6c
jne 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x5a
lea edx, [ebp + edi*4 + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx eax, byte [esi + 1]
cmp al, 0x65
je 0x41d271
cmp al, 0x79
jne 0x41b870
cmp byte [esi + 2], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x3d
lea edx, [ebp + edi*4 + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx eax, byte [esi + 1]
cmp al, 0x76
je 0x41d2ea
cmp al, 0x7a
jne 0x41b870
cmp byte [esi + 2], 0x65
jne 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x64
lea edx, [ebp + edi*4 + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx eax, byte [esi + 3]
cmp al, 0x65
je 0x41d32f
cmp al, 0x61
jne 0x41b870
cmp byte [esi + 4], 0x74
jne 0x41b870
cmp byte [esi + 5], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x1d
lea edx, [ebp + ebx + 0x14]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x46
lea edx, [ebp + edi*4 + 8]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
xor edx, edx
jmp 0x41c86a
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x64], eax
jbe 0x41c4dc
mov eax, dword [esp + 0x5c]
add eax, edx
cmp byte [eax], 0x20
jne 0x41c4dc
cmp byte [eax + 1], 0x6f
jne 0x41c4dc
cmp byte [eax + 2], 0x66
jne 0x41c4dc
cmp byte [eax + 3], 0x20
jne 0x41c4dc
mov ebx, dword [esp + 0x68]
mov edx, 0x3e
shl edx, cl
add edx, esi
lea ebp, [ebx + edi + 0x10]
mov ebx, dword [esp]
shl edx, 5
add edx, ebx
cmp edx, dword [ebp]
cmova edx, dword [ebp]
mov dword [ebp], edx
lea edx, [ebx + 0xc]
cmp dword [esp + 0x64], edx
jbe 0x41c4dc
cmp byte [eax + 4], 0x74
jne 0x41c4dc
cmp byte [eax + 5], 0x68
jne 0x41c4dc
cmp byte [eax + 6], 0x65
jne 0x41c4dc
cmp byte [eax + 7], 0x20
jne 0x41c4dc
mov eax, dword [esp + 0x68]
lea edx, [eax + edi + 0x20]
mov eax, 0x49
shl eax, cl
add eax, esi
shl eax, 5
add ebx, eax
mov eax, dword [edx]
cmp ebx, eax
cmova ebx, eax
mov dword [edx], ebx
jmp 0x41c4dc
cmp byte [esi + 2], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x52
lea edx, [ebp + edi*4 + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp byte [esi + 2], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x35
lea edx, [ebp + edi*4 + 0xc]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
xor eax, eax
jmp 0x41c451
mov eax, edi
cmp al, 0xa
sete al
movzx eax, al
lea eax, [eax*8 + 0x6e]
jmp 0x41bfcc
mov eax, dword [esp + 0x68]
lea edx, [eax + ebp + 8]
mov eax, 0x51
jmp 0x41be71
cmp byte [esi + 2], 0x73
jne 0x41b870
cmp byte [esi + 3], 0x73
jne 0x41b870
cmp byte [esi + 4], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x5d
lea edx, [ebp + edi*4 + 0x14]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp byte [esi + 5], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 0x2b
lea edx, [ebp + ebx + 0x14]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
cmp byte [esi + 2], 0x65
jne 0x41b870
cmp byte [esi + 3], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov edi, dword [esp]
mov eax, 0x5c
lea edx, [ebp + edi*4 + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, edi
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870
mov eax, edx
jmp 0x41c8aa
cmp byte [esi + 4], 0x20
jne 0x41b870
movzx ecx, byte [esp + 8]
mov eax, 5
lea edx, [ebp + ebx + 0x10]
shl eax, cl
add eax, dword [esp + 4]
mov ecx, dword [edx]
shl eax, 5
add eax, dword [esp]
cmp eax, ecx
cmova eax, ecx
mov dword [edx], eax
jmp 0x41b870