Function at 0x40ee30
Capabilities:
Encode data using base64
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x1a8
push ebx
push ebp
mov ebp, dword [esp + 0x1b8]
push esi
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1b8]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x1c0]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x1c4]
push edi
lea esi, [esp + 0x20]
mov dword [esp + 0x20], 0
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edx
lea ebx, [ebx]
xor eax, eax
mov dword [esi + 0x5c], eax
mov dword [esi + 0x60], eax
jmp 0x40ee90
mov eax, dword [ebp + 0x48]
mov ecx, dword [ebp + 4]
mov dword [esp + 0x10], eax
mov eax, dword [ebp]
lea edx, [eax + 1]
mov dword [ebp], edx
cmp eax, ecx
jb 0x40eecf
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x40eebd
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f993
mov edi, 0xfffffff8
jmp 0x41a818
mov edx, dword [esi + 0x18]
cmp edx, dword [ebp + 8]
jb 0x40eeff
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x40eeed
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9a3
mov edi, 0xffffffeb
jmp 0x41a818
cmp dword [ebp + 0x98], 2
jne 0x40ef29
mov edx, dword [esi + 4]
mov dword [esi + 0x124], edx
mov ecx, dword [esi + 0x14]
lea eax, [esi + 0x120]
mov dword [eax], ecx
mov dword [esi + 0x14], eax
mov dword [ebp + 0x98], 0
mov edx, dword [esi + 8]
movzx eax, byte [edx]
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], ebx
mov dword [esi + 0x94], eax
cmp eax, 0x9b
ja case.0x40ef53.98
movzx ecx, byte [eax + 0x41fbec]
jmp dword [ecx*4 + 0x41faa4]
mov edx, dword [esi + 8]
mov ebp, dword [esp + 0x1c0]
add edx, 2
mov dword [ebp + 0xb0], edx
push 0x12c
mov dword [ebp + 0xac], edi
call dword [0x46f52c]
add esp, 4
cmp eax, edi
jne 0x41f61f
lea ecx, [esp + 0x20]
mov eax, esi
cmp eax, ecx
mov esi, dword [esi]
je 0x40ef9f
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9b3
mov edi, 0xfffffffa
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x40efc7
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
push 0x12c
call dword [0x46f52c]
add esp, 4
cmp eax, edi
jne 0x41f669
lea ecx, [esp + 0x20]
mov eax, esi
cmp eax, ecx
mov esi, dword [esi]
je 0x40f002
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9b3
mov edi, 0xfffffffa
jmp 0x41a811
push 0x12c
call dword [0x46f52c]
add esp, 4
cmp eax, edi
jne 0x41f678
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x40eff4
mov eax, dword [esi + 8]
mov ebp, dword [esp + 0x1c0]
add eax, 2
mov dword [ebp + 0xb0], eax
push 0x12c
mov dword [ebp + 0xac], edi
call dword [0x46f52c]
add esp, 4
cmp eax, edi
je 0x40ef89
mov dword [esi + 0x128], 0x38
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
jmp 0x41f62f
push 0x12c
call dword [0x46f52c]
add esp, 4
cmp eax, edi
jne 0x41f687
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x40eff4
mov ebp, dword [esp + 0x1c0]
cmp dword [ebp + 0x6c], edi
je 0x40f0c4
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x43c038]
movzx ecx, byte [eax + 1]
add edx, eax
add ecx, edx
mov dword [esi + 8], ecx
jmp 0x40ef29
push 0x12c
call dword [0x46f52c]
add esp, 4
cmp eax, edi
jne 0x41f696
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x40ef91
push 0x12c
call dword [0x46f52c]
add esp, 4
cmp eax, edi
je 0x40efec
mov dword [esi + 0x128], 0x36
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 8]
movzx edx, byte [ecx]
movzx edx, byte [edx + 0x43c038]
add edx, ecx
jmp 0x4190cd
mov edx, dword [esi + 8]
mov ebp, dword [esp + 0x1c0]
add edx, 2
mov dword [ebp + 0xb0], edx
push 0x12c
mov dword [ebp + 0xac], edi
call dword [0x46f52c]
add esp, 4
cmp eax, edi
je 0x40ef89
mov dword [esi + 0x128], 0x3a
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
jmp 0x41f62f
mov edx, dword [esi + 8]
mov ebp, dword [esp + 0x1c0]
mov dword [esi + 0x30], edx
mov eax, dword [esi + 4]
mov dword [esi + 0x34], eax
mov ecx, dword [ebp + 0xac]
mov dword [esi + 0x24], ecx
jmp 0x41c3f4
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 3]
movzx edx, byte [ecx + 4]
mov ebp, dword [esp + 0x1c0]
shl eax, 8
or eax, edx
mov dword [esi + 0x8c], eax
add eax, eax
mov dword [esi + 0x90], eax
cmp eax, dword [ebp + 0x14]
jge 0x41aa1f
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
mov dword [esi + 0x9c], edx
mov eax, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4 + 4]
mov dword [esi + 0xa0], edx
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
mov dword [esi + 0xa4], edx
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x98], eax
mov ecx, dword [ebp + 0xac]
mov dword [esi + 0x24], ecx
mov edx, dword [esi + 4]
mov eax, dword [ebp + 0x10]
sub edx, dword [ebp + 0x74]
sub eax, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov dword [ecx + eax*4], edx
cmp dword [esi + 0x94], 0x82
jl 0x40f228
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 1
mov edx, dword [esi + 4]
mov dword [eax + 4], edx
jmp 0x41f7de
mov dword [esi + 0x4c], edi
jmp 0x40fd92
mov eax, dword [esi + 8]
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
mov ebp, dword [esp + 0x1c0]
shl edx, 8
or edx, eax
mov dword [esi + 0x70], edx
mov ecx, dword [esi + 8]
cmp byte [ecx + 3], 0x70
jne 0x40f3b7
mov ecx, dword [0x470a3c]
cmp ecx, edi
je 0x40f3ad
mov dword [esp + 0x150], 2
mov edx, dword [esi + 8]
movzx eax, byte [edx + 4]
mov dword [esp + 0x154], eax
mov edx, dword [ebp + 0xc]
mov dword [esp + 0x158], edx
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x15c], eax
mov edx, dword [ebp + 0x78]
sub edx, dword [ebp + 0x74]
mov dword [esp + 0x160], edx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x164], eax
mov edx, dword [esi + 4]
sub edx, dword [ebp + 0x74]
mov dword [esp + 0x168], edx
mov eax, dword [esi + 8]
movzx edx, byte [eax + 5]
movzx eax, byte [eax + 6]
shl edx, 8
or edx, eax
mov dword [esp + 0x178], edx
mov eax, dword [esi + 8]
movzx edx, byte [eax + 7]
movzx eax, byte [eax + 8]
shl edx, 8
or edx, eax
mov dword [esp + 0x17c], edx
mov eax, dword [esi + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x16c], eax
mov edx, dword [ebp + 0x90]
mov dword [esp + 0x170], edx
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x174], eax
mov edx, dword [ebp + 0xb0]
lea eax, [esp + 0x150]
push eax
mov dword [esp + 0x184], edx
call ecx
mov edi, eax
add esp, 4
test edi, edi
jle 0x40f380
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x40f371
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
jns 0x40f3ad
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x40f398
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
jne 0x41a818
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a8
ret
movzx eax, byte [0x43c0a8]
add dword [esi + 8], eax
mov eax, dword [esi + 8]
movzx edx, byte [eax + 3]
cmp edx, 0x89
je 0x40f662
cmp edx, 0x8a
je 0x40f662
cmp edx, 0x87
je 0x40f467
cmp edx, 0x88
je 0x40f467
cmp edx, 0x8b
jne 0x40f40f
mov dword [esi + 0x50], ebx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add ecx, eax
mov dword [esi + 8], ecx
jmp 0x41ab2d
push 0x12c
mov dword [ebp + 0x98], 1
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 3
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
add edx, 3
mov dword [eax + 8], edx
mov ecx, dword [esi + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [esi + 0x10]
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], ebx
mov ecx, dword [esi + 0x18]
inc ecx
mov dword [eax + 0x18], ecx
mov dword [eax], esi
mov esi, eax
jmp 0x40ee80
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
lea eax, [ecx + ecx]
mov dword [esi + 0x90], eax
cmp eax, dword [esi + 0x10]
jge 0x40f491
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + eax*4], ebx
jl 0x40f491
mov eax, 1
jmp 0x40f493
xor eax, eax
mov dword [esi + 0x50], eax
test eax, eax
jne 0x40f62f
cmp edx, 0x88
jne 0x40f62f
mov eax, dword [esp + 0x1c0]
mov ecx, dword [esi + 0x90]
mov ebp, dword [eax + 0x28]
mov eax, dword [eax + 0x20]
xor edx, edx
sar ecx, 1
mov dword [esp + 0x18], edx
test eax, eax
jle 0x40f4f4
lea esp, [esp]
movzx edi, byte [ebp]
movzx ebx, byte [ebp + 1]
shl edi, 8
or edi, ebx
cmp edi, ecx
je 0x40f4f0
mov edi, dword [esp + 0x1c0]
add ebp, dword [edi + 0x24]
inc edx
cmp edx, eax
jl 0x40f4d0
mov dword [esp + 0x18], edx
cmp edx, eax
jge 0x40f62f
mov edx, dword [esp + 0x1c0]
mov edi, ebp
cmp ebp, dword [edx + 0x28]
jbe 0x40f58e
mov edi, edi
mov eax, dword [esp + 0x1c0]
sub edi, dword [eax + 0x24]
lea eax, [ebp + 2]
lea ecx, [edi + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40f540
test dl, dl
je 0x40f53c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40f540
add eax, 2
add ecx, 2
test dl, dl
jne 0x40f520
xor eax, eax
jmp 0x40f545
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40f58e
movzx eax, byte [edi]
movzx ecx, byte [edi + 1]
shl eax, 8
or eax, ecx
add eax, eax
mov dword [esi + 0x90], eax
cmp eax, dword [esi + 0x10]
jge 0x40f579
mov edx, dword [esp + 0x1c0]
mov ecx, dword [edx + 0xc]
cmp dword [ecx + eax*4], 0
jl 0x40f579
mov eax, 1
jmp 0x40f57b
xor eax, eax
mov dword [esi + 0x50], eax
test eax, eax
jne 0x40f58e
mov edx, dword [esp + 0x1c0]
cmp edi, dword [edx + 0x28]
ja 0x40f510
cmp dword [esi + 0x50], 0
jne 0x40f635
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c0]
inc ebx
mov edi, ebp
cmp ebx, dword [eax + 0x20]
jge 0x40f62f
nop
mov ecx, dword [esp + 0x1c0]
add edi, dword [ecx + 0x24]
lea eax, [ebp + 2]
lea ecx, [edi + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40f5e0
test dl, dl
je 0x40f5dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40f5e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x40f5c0
xor eax, eax
jmp 0x40f5e5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40f62f
movzx eax, byte [edi]
movzx edx, byte [edi + 1]
shl eax, 8
or eax, edx
add eax, eax
mov dword [esi + 0x90], eax
cmp eax, dword [esi + 0x10]
jge 0x40f619
mov ecx, dword [esp + 0x1c0]
mov edx, dword [ecx + 0xc]
cmp dword [edx + eax*4], 0
jl 0x40f619
mov eax, 1
jmp 0x40f61b
xor eax, eax
mov dword [esi + 0x50], eax
test eax, eax
jne 0x40f62f
mov eax, dword [esp + 0x1c0]
inc ebx
cmp ebx, dword [eax + 0x20]
jl 0x40f5b0
cmp dword [esi + 0x50], 0
je 0x40f646
mov ebp, dword [esp + 0x1c0]
mov eax, 3
jmp 0x41ab2a
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 1]
movzx ecx, byte [ecx + 2]
mov ebp, dword [esp + 0x1c0]
shl eax, 8
or eax, ecx
jmp 0x41ab2a
cmp dword [ebp + 0xa4], ebx
jne 0x40f687
mov dword [esi + 0x50], ebx
mov eax, dword [esi + 8]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add edx, eax
mov dword [esi + 8], edx
jmp 0x41ab2d
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x40f6ab
mov eax, dword [ebp + 0xa4]
cmp ecx, dword [eax + 4]
je 0x40f6ab
xor eax, eax
jmp 0x40f6b0
mov eax, 1
mov dword [esi + 0x50], eax
test eax, eax
jne 0x40f820
cmp edx, 0x8a
jne 0x40f820
mov eax, dword [esp + 0x1c0]
mov ebp, dword [eax + 0x28]
mov eax, dword [eax + 0x20]
xor edx, edx
mov dword [esp + 0x18], edx
test eax, eax
jle 0x40f704
mov edi, edi
movzx ebx, byte [ebp]
movzx edi, byte [ebp + 1]
shl ebx, 8
or edi, ebx
cmp edi, ecx
je 0x40f700
mov edi, dword [esp + 0x1c0]
add ebp, dword [edi + 0x24]
inc edx
cmp edx, eax
jl 0x40f6e0
mov dword [esp + 0x18], edx
cmp edx, eax
jge 0x40f820
mov ecx, dword [esp + 0x1c0]
mov edi, ebp
cmp ebp, dword [ecx + 0x28]
jbe 0x40f78f
mov edi, edi
mov edx, dword [esp + 0x1c0]
sub edi, dword [edx + 0x24]
lea eax, [ebp + 2]
lea ecx, [edi + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40f750
test dl, dl
je 0x40f74c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40f750
add eax, 2
add ecx, 2
test dl, dl
jne 0x40f730
xor eax, eax
jmp 0x40f755
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40f78f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
mov edx, dword [esp + 0x1c0]
shl ecx, 8
or eax, ecx
mov ecx, dword [edx + 0xa4]
xor edx, edx
cmp eax, dword [ecx + 4]
sete dl
mov eax, edx
mov dword [esi + 0x50], eax
test eax, eax
jne 0x40f78f
mov eax, dword [esp + 0x1c0]
cmp edi, dword [eax + 0x28]
ja 0x40f720
cmp dword [esi + 0x50], 0
jne 0x40f82a
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c0]
inc ebx
mov edi, ebp
cmp ebx, dword [ecx + 0x20]
jge 0x40f820
mov edx, dword [esp + 0x1c0]
add edi, dword [edx + 0x24]
lea eax, [ebp + 2]
lea ecx, [edi + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40f7e0
test dl, dl
je 0x40f7dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40f7e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x40f7c0
xor eax, eax
jmp 0x40f7e5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40f820
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
mov edx, dword [esp + 0x1c0]
shl ecx, 8
or eax, ecx
mov ecx, dword [edx + 0xa4]
xor edx, edx
cmp eax, dword [ecx + 4]
sete dl
mov eax, edx
mov dword [esi + 0x50], eax
test eax, eax
jne 0x40f820
mov eax, dword [esp + 0x1c0]
inc ebx
cmp ebx, dword [eax + 0x20]
jl 0x40f7b0
cmp dword [esi + 0x50], 0
je 0x40f646
mov ebp, dword [esp + 0x1c0]
mov eax, 3
jmp 0x41ab2a
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 1]
movzx edx, byte [ecx + 2]
shl eax, 8
or eax, edx
mov edx, dword [esp + 0x1c0]
mov dword [esi + 0x8c], eax
add eax, eax
mov dword [esi + 0x90], eax
mov ecx, dword [esi + 0x8c]
mov dword [edx + 0x90], ecx
mov ecx, dword [esi + 0x90]
cmp ecx, dword [edx + 0x14]
jl 0x40f887
mov dword [edx + 0x3c], 1
add dword [esi + 8], 3
jmp 0x40ef29
mov edi, dword [edx + 0x10]
mov eax, dword [edx + 0xc]
sub edi, dword [esi + 0x8c]
mov edi, dword [eax + edi*4]
mov dword [eax + ecx*4], edi
mov eax, dword [esi + 4]
sub eax, dword [edx + 0x74]
mov ecx, dword [esi + 0x90]
mov edx, dword [edx + 0xc]
mov dword [edx + ecx*4 + 4], eax
mov eax, dword [esi + 0x90]
cmp dword [esi + 0x10], eax
jg 0x40f8bd
add eax, 2
mov dword [esi + 0x10], eax
add dword [esi + 8], 3
jmp 0x40ef29
mov ecx, dword [esi + 0xc]
cmp dword [esi + 4], ecx
jne 0x40f920
cmp eax, 0x99
je 0x40f920
mov ebp, dword [esp + 0x1c0]
cmp dword [ebp + 0xa4], edi
jne 0x40f927
cmp dword [ebp + 0x58], edi
jne 0x40f8fb
cmp dword [ebp + 0x5c], edi
je 0x40f927
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x40f927
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x40f911
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
mov edx, dword [esi + 4]
mov dword [ebp + 0x80], edx
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x8c], eax
mov ecx, dword [esi + 0xc]
mov dword [ebp + 0x7c], ecx
mov edi, dword [esi + 0x94]
neg edi
sbb edi, edi
and edi, 0xfffffc18
inc edi
jmp 0x40f382
mov ebp, dword [esp + 0x1c0]
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x24], eax
mov eax, 1
cmp dword [ebp + 0x98], eax
jne 0x40f980
mov dword [esi + 0x50], eax
mov dword [ebp + 0x98], edi
jmp 0x41abe0
mov dword [esi + 0x50], edi
jmp 0x41abe0
mov ebp, dword [esp + 0x1c0]
mov ecx, dword [ebp + 0xac]
mov eax, 1
mov dword [esi + 0x24], ecx
cmp dword [ebp + 0x98], eax
jne 0x40f9b3
mov dword [esi + 0x50], eax
mov dword [ebp + 0x98], edi
jmp 0x41ad05
mov dword [esi + 0x50], edi
jmp 0x41ad05
mov eax, dword [esi + 8]
mov ebp, dword [esp + 0x1c0]
cmp dword [esp + 0x10], edi
je 0x40fa53
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
jle 0x40fa12
or edi, 0xffffffff
add dword [esi + 4], edi
mov eax, dword [esi + 4]
mov edx, eax
dec ecx
cmp edx, dword [ebp + 0x74]
jb 0x40fa2e
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x40fa0e
lea esp, [esp]
dec eax
mov dword [esi + 4], eax
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
je 0x40fa00
test ecx, ecx
jg 0x40f9e1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jae 0x40fa25
mov ecx, eax
mov dword [ebp + 0x84], ecx
add dword [esi + 8], 3
jmp 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x40fa44
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
sub dword [esi + 4], edx
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x74]
jae 0x40fa12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x40fa81
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, dword [0x470a3c]
cmp ecx, edi
je 0x40fb9b
mov ebp, dword [esp + 0x1c0]
mov dword [esp + 0x184], 2
mov edx, dword [esi + 8]
movzx eax, byte [edx + 1]
mov dword [esp + 0x188], eax
mov edx, dword [ebp + 0xc]
mov dword [esp + 0x18c], edx
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x190], eax
mov edx, dword [ebp + 0x78]
sub edx, dword [ebp + 0x74]
mov dword [esp + 0x194], edx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x198], eax
mov edx, dword [esi + 4]
sub edx, dword [ebp + 0x74]
mov dword [esp + 0x19c], edx
mov eax, dword [esi + 8]
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl edx, 8
or edx, eax
mov dword [esp + 0x1ac], edx
mov eax, dword [esi + 8]
movzx edx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl edx, 8
or edx, eax
mov dword [esp + 0x1b0], edx
mov eax, dword [esi + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x1a0], eax
mov edx, dword [ebp + 0x90]
mov dword [esp + 0x1a4], edx
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x1a8], eax
mov edx, dword [ebp + 0xb0]
lea eax, [esp + 0x184]
push eax
mov dword [esp + 0x1b8], edx
call ecx
mov edi, eax
add esp, 4
test edi, edi
jle 0x40fb95
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x40fb86
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
js 0x40f382
add dword [esi + 8], 6
jmp 0x40ef29
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
mov ebp, dword [esp + 0x1c0]
mov eax, dword [ebp + 0x70]
shl ecx, 8
or ecx, edx
add eax, ecx
mov ecx, eax
mov dword [esi + 0x1c], eax
cmp ecx, dword [ebp + 0x70]
jne 0x40fbce
xor ecx, ecx
jmp 0x40fbdb
movzx ecx, byte [eax + 3]
movzx edx, byte [eax + 4]
shl ecx, 8
or ecx, edx
mov eax, dword [ebp + 0xa4]
cmp eax, edi
je 0x40fbf8
cmp ecx, dword [eax + 4]
jne 0x40fbf2
mov edx, dword [esi + 4]
cmp edx, dword [eax + 0x10]
je 0x40fc2c
mov eax, dword [eax]
cmp eax, edi
jne 0x40fbe5
mov dword [esi + 0x3c], ecx
mov edx, dword [esi + 4]
mov dword [esi + 0x48], edx
mov ecx, dword [ebp + 0xa4]
lea eax, [esi + 0x38]
mov dword [eax], ecx
mov dword [ebp + 0xa4], eax
add dword [esi + 8], 3
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x44], eax
cmp eax, 0x1e
jg 0x40fc54
lea edx, [esi + 0xa8]
mov dword [esi + 0x40], edx
jmp 0x40fc6d
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x40fc42
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9d0
mov edi, 0xffffffe6
jmp 0x41a818
add eax, eax
add eax, eax
push eax
call dword [0x46f524]
add esp, 4
mov dword [esi + 0x40], eax
cmp eax, edi
je 0x40ef89
mov edx, dword [esi + 0x44]
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0x40]
add edx, edx
add edx, edx
push edx
push eax
push ecx
call sub.MSVCRT.dll_memcpy
mov edx, dword [esi + 0x1c]
add esp, 0xc
cmp byte [edx], 0x82
sbb eax, eax
inc eax
mov dword [esi + 0x50], eax
jmp 0x41ae35
mov eax, dword [esi + 8]
lea esp, [esp]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 8], eax
cmp byte [eax], 0x71
je 0x40fca0
jmp 0x40ef29
mov eax, dword [esi + 8]
inc eax
push 0x12c
mov dword [esi + 0x28], eax
call dword [0x46f52c]
add esp, 4
cmp eax, edi
je 0x40efec
mov dword [esi + 0x128], 0xa
mov edx, dword [esi + 4]
mov dword [eax + 4], edx
mov ecx, dword [esi + 0x28]
jmp 0x41f6be
mov eax, dword [esi + 8]
inc eax
mov dword [esi + 0x28], eax
jmp 0x40fd00
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
mov dword [esi + 0x28], eax
cmp byte [eax], 0x71
je 0x40fd00
push 0x12c
call dword [0x46f52c]
add esp, 4
cmp eax, edi
jne 0x41f6a8
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x40eff4
mov eax, dword [esi + 8]
inc eax
mov dword [esi + 0x28], eax
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 0x28], eax
cmp byte [eax], 0x71
je 0x40fd41
add eax, 3
mov dword [esi + 8], eax
jmp 0x40ef29
mov ecx, 1
add dword [esi + 8], ecx
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x94], eax
mov dword [esi + 0x4c], ecx
mov eax, dword [esi + 0x94]
cmp eax, 0x80
je 0x40fd92
cmp eax, 0x85
jne 0x40fe6c
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 3]
movzx ecx, byte [ecx + 4]
mov ebp, dword [esp + 0x1c0]
shl eax, 8
or eax, ecx
mov dword [esi + 0x8c], eax
add eax, eax
mov dword [esi + 0x90], eax
cmp eax, dword [ebp + 0x14]
jge 0x40fe67
mov dword [esi + 0x54], edi
mov edx, dword [esi + 8]
sub edx, dword [ebp + 0x70]
mov dword [esi + 0x70], edx
mov eax, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
mov dword [esi + 0x9c], edx
mov eax, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4 + 4]
mov dword [esi + 0xa0], edx
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
mov dword [esi + 0xa4], edx
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x98], eax
mov edx, dword [esi + 4]
mov eax, dword [ebp + 0x10]
sub edx, dword [ebp + 0x74]
sub eax, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov dword [ecx + eax*4], edx
cmp dword [esi + 0x94], 0x82
jl 0x40fe3d
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f7f5
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
mov ebp, dword [esp + 0x1c0]
mov dword [esi + 0x4c], edi
jmp 0x40fe73
mov ebp, dword [esp + 0x1c0]
mov dword [esi + 0x54], edi
mov ecx, dword [esi + 8]
sub ecx, dword [ebp + 0x70]
mov dword [esi + 0x70], ecx
cmp dword [esi + 0x94], 0x82
jl 0x40fe95
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f7ce
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
mov eax, dword [esi + 8]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
sub eax, edx
mov dword [esi + 0x30], eax
mov al, byte [eax]
cmp al, 0x82
jae 0x40fedc
cmp al, 0x7b
je 0x40fedc
mov dword [esi + 0x34], edi
jmp 0x40feed
mov edx, dword [esi + 0x14]
mov eax, dword [edx + 4]
mov dword [esi + 0x34], eax
mov ecx, dword [esi + 0x14]
mov edx, dword [ecx]
mov dword [esi + 0x14], edx
mov ecx, dword [esi + 0x30]
mov al, byte [ecx]
cmp al, 0x77
jb 0x40fefa
cmp al, 0x7a
jbe 0x40fefe
cmp al, 0x7c
jne 0x40ff45
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
mov dword [ebp + 0x80], eax
mov ecx, dword [esi + 0x10]
mov dword [ebp + 0x8c], ecx
mov edx, dword [esi + 0xc]
mov eax, esi
lea ecx, [esp + 0x20]
mov dword [ebp + 0x7c], edx
cmp eax, ecx
mov esi, dword [esi]
je 0x40ff33
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41fa00
mov edi, 1
jmp 0x41a818
cmp al, 0x7f
je 0x40ff59
cmp al, 0x84
je 0x40ff59
cmp al, 0x80
je 0x40ff59
cmp al, 0x85
jne 0x410033
movzx eax, byte [ecx + 3]
movzx edx, byte [ecx + 4]
mov ebp, dword [esp + 0x1c0]
shl eax, 8
or eax, edx
mov dword [esi + 0x8c], eax
add eax, eax
mov dword [esi + 0x90], eax
cmp dword [ebp + 0xa4], edi
je 0x40ffb0
mov ecx, dword [ebp + 0xa4]
mov edx, dword [ecx + 4]
cmp edx, dword [esi + 0x8c]
jne 0x40ffb0
mov eax, dword [esi + 4]
mov dword [ebp + 0x80], eax
mov ecx, dword [esi + 0xc]
mov eax, esi
lea edx, [esp + 0x20]
mov dword [ebp + 0x7c], ecx
cmp eax, edx
jmp 0x40ff25
mov eax, dword [esi + 0x8c]
mov dword [ebp + 0x90], eax
mov ecx, dword [esi + 0x90]
cmp ecx, dword [ebp + 0x14]
jl 0x40ffd3
mov dword [ebp + 0x3c], 1
jmp 0x41003a
mov edx, dword [esi + 0x10]
cmp ecx, edx
jle 0x40fff5
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea eax, [eax + ecx*4]
cmp edi, eax
jae 0x40fff5
mov ecx, eax
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x8c]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + ecx*4]
mov edx, dword [esi + 0x90]
mov dword [eax + edx*4], ecx
mov edx, dword [esi + 4]
sub edx, dword [ebp + 0x74]
mov eax, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov dword [ecx + eax*4 + 4], edx
mov eax, dword [esi + 0x90]
cmp dword [esi + 0x10], eax
jg 0x41003a
add eax, 2
mov dword [esi + 0x10], eax
jmp 0x41003a
mov ebp, dword [esp + 0x1c0]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
cmp al, 0x72
je 0x410122
mov edx, dword [esi + 4]
cmp edx, dword [esi + 0x34]
je 0x410122
cmp al, 0x75
jne 0x410090
mov eax, edx
mov dword [ebp + 0x80], eax
mov ecx, dword [esi + 0x10]
mov eax, esi
lea edx, [esp + 0x20]
mov dword [ebp + 0x8c], ecx
mov esi, dword [esi]
cmp eax, edx
je 0x41007e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9e0
mov edi, 0xfffffc1b
jmp 0x41a818
cmp al, 0x74
jne 0x4100c2
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 7
mov edx, dword [esi + 4]
mov dword [eax + 4], edx
mov ecx, dword [esi + 8]
add ecx, 3
jmp 0x4100fd
mov edx, dword [esi + 0x30]
cmp byte [edx], 0x82
jb 0x4100d4
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0xd
mov edx, dword [esi + 4]
mov dword [eax + 4], edx
mov ecx, dword [esi + 0x30]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0xc]
mov dword [eax + 0xc], edx
mov ecx, dword [esi + 0x10]
mov dword [eax + 0x10], ecx
mov edx, dword [esi + 0x14]
mov dword [eax + 0x14], edx
mov ecx, dword [esi + 0x18]
inc ecx
mov dword [eax + 0x18], ecx
mov dword [eax], esi
mov esi, eax
jmp 0x40ee80
mov edx, dword [esi + 0x30]
cmp byte [edx], 0x7b
jne 0x410158
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0xc
mov edx, dword [esi + 4]
mov dword [eax + 4], edx
mov ecx, dword [esi + 8]
add ecx, 3
jmp 0x4100fd
add ecx, 3
mov dword [esi + 8], ecx
jmp 0x40ef29
mov ebp, dword [esp + 0x1c0]
cmp dword [ebp + 0x40], edi
je 0x4101a3
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x74]
jne 0x4101a3
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41018d
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x74]
je 0x4102e5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4101c5
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
cmp dword [ebp + 0x40], edi
je 0x41020d
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x74]
jne 0x41020d
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4101fe
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov edx, dword [ebp + 0x74]
cmp eax, edx
je 0x4102e5
cmp eax, dword [ebp + 0x78]
je 0x410280
mov ecx, dword [ebp + 0x18]
cmp ecx, edi
je 0x410253
cmp eax, edx
jbe 0x410280
mov edx, dword [esp + 0x10]
push edx
mov edx, dword [ebp + 0x74]
lea eax, [ebp + 0x1c]
push eax
mov eax, dword [esi + 4]
push edx
push ecx
push eax
call fcn.004210e0
add esp, 0x14
test eax, eax
jne 0x4102e5
jmp 0x410280
mov ecx, dword [ebp + 0x1c]
add ecx, edx
cmp eax, ecx
jb 0x410280
mov ecx, dword [ebp + 0x1c]
mov eax, dword [esi + 4]
sub eax, ecx
mov dl, byte [eax]
cmp dl, byte [ebp + 0x2c]
jne 0x410280
cmp ecx, 1
je 0x4102e5
mov al, byte [eax + 1]
cmp al, byte [ebp + 0x2d]
je 0x4102e5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x410296
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
mov edx, dword [ebp + 0x94]
add edx, dword [ebp + 0x74]
cmp dword [esi + 4], edx
je 0x4102e5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4102d0
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [esi + 4]
mov dword [esi + 0xc], edx
inc dword [esi + 8]
jmp 0x40ef29
mov ecx, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp ecx, dword [ebp + 0x78]
jae 0x41037d
mov eax, dword [ebp + 0x18]
cmp eax, edi
je 0x410332
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, dword [ebp + 0x78]
lea edx, [ebp + 0x1c]
push edx
mov edx, dword [esi + 4]
push ecx
push eax
push edx
call fcn.00420f40
add esp, 0x14
test eax, eax
je 0x410358
mov ecx, 1
add dword [esi + 8], ecx
jmp 0x40ef29
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x1c]
cmp ecx, eax
ja 0x410358
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, byte [ebp + 0x2c]
jne 0x410358
mov ecx, 1
cmp dword [ebp + 0x1c], ecx
je 0x41032a
mov dl, byte [eax + 1]
cmp dl, byte [ebp + 0x2d]
je 0x41032a
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41036e
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [ebp + 0x44], edi
je 0x4103a7
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x410398
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [ebp + 0x88], edi
je 0x410325
cmp ecx, dword [ebp + 0x84]
jbe 0x410325
mov ecx, 1
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jle 0x41032a
lea ecx, [esp + 0x20]
mov eax, esi
cmp eax, ecx
mov esi, dword [esi]
je 0x4103e9
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9f0
mov edi, 0xfffffff4
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
cmp dword [ebp + 0x44], edi
je 0x41042c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41041d
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [ebp + 0x54], edi
je 0x4104ac
jmp 0x41043e
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41046b
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41045c
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [ebp + 0x88], edi
je 0x410498
cmp eax, dword [ebp + 0x84]
jbe 0x410498
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41049d
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, 1
add dword [esi + 8], eax
jmp 0x40ef29
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x410530
mov ecx, dword [ebp + 0x18]
cmp ecx, edi
lea edi, [ebp + 0x1c]
je 0x4104df
mov eax, dword [esp + 0x10]
mov edx, dword [ebp + 0x78]
push eax
mov eax, dword [esi + 4]
push edi
push edx
push ecx
push eax
call fcn.00420f40
add esp, 0x14
test eax, eax
jne 0x4104ff
jmp 0x41050b
mov ecx, dword [ebp + 0x78]
sub ecx, dword [edi]
cmp eax, ecx
ja 0x41050b
mov eax, dword [esi + 4]
mov dl, byte [eax]
cmp dl, byte [ebp + 0x2c]
jne 0x41050b
cmp dword [edi], 1
je 0x4104ff
mov al, byte [eax + 1]
cmp al, byte [ebp + 0x2d]
jne 0x41050b
mov ecx, dword [ebp + 0x78]
sub ecx, dword [edi]
mov eax, dword [esi + 4]
cmp eax, ecx
je 0x410530
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x410521
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [ebp + 0x88], ebx
je 0x410498
cmp eax, dword [ebp + 0x84]
jbe 0x410498
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41049d
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
mov esi, dword [esi]
je 0x410572
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
jmp 0x4103eb
mov ebp, dword [esp + 0x1c0]
cmp dword [esp + 0x10], edi
je 0x410828
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x74]
mov edx, 1
jne 0x41059f
mov dword [esi + 0x54], edi
jmp 0x4106cc
mov eax, dword [esi + 4]
sub eax, edx
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
jne 0x4105bc
mov edi, edi
sub eax, edx
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x4105b0
cmp eax, dword [ebp + 0x84]
jae 0x4105ca
mov dword [ebp + 0x84], eax
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x410680
test cl, 0x20
jne 0x4105ea
movzx eax, byte [eax + 1]
and ecx, 0x1f
jmp 0x410678
movzx ebx, byte [eax + 1]
and ebx, 0x3f
test cl, 0x10
jne 0x41060f
and ecx, 0xf
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 2]
shl ebx, 6
and ecx, 0x3f
or ecx, ebx
jmp 0x410680
test cl, 8
jne 0x410626
and ecx, 7
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
jmp 0x410670
test cl, 4
jne 0x410649
and ecx, 3
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 2]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
jmp 0x410670
and ecx, edx
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 2]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx ecx, byte [eax + 3]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ebx, 6
and ecx, 0x3f
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
cmp dword [ebp + 0x50], edi
je 0x4106fb
cmp ecx, 0x5f
jne 0x410693
mov dword [esi + 0x54], edx
jmp 0x4106cc
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x43d9c0]
shl eax, 7
and ecx, 0x7f
add eax, ecx
movzx ecx, word [eax*2 + 0x43fbc0]
movzx eax, byte [ecx*8 + 0x43c8e1]
mov eax, dword [eax*4 + 0x43c160]
cmp eax, edx
je 0x41070c
cmp eax, 3
je 0x41070c
xor eax, eax
mov dword [esi + 0x54], eax
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x410710
cmp dword [ebp + 0x88], edi
je 0x4106f3
cmp eax, dword [ebp + 0x84]
jbe 0x4106f3
mov dword [ebp + 0x60], edx
cmp dword [ebp + 0x88], edx
jg 0x4103d3
mov dword [esi + 0x4c], edi
jmp 0x41094c
cmp ecx, 0x100
jae 0x4106c7
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je 0x4106c7
mov eax, edx
jmp 0x4106c9
mov ecx, dword [esi + 4]
movzx eax, byte [ecx]
cmp eax, 0xc0
jb 0x4107c4
test al, 0x20
jne 0x410731
movzx ecx, byte [ecx + 1]
and eax, 0x1f
jmp 0x4107bc
movzx ebx, byte [ecx + 1]
and ebx, 0x3f
test al, 0x10
jne 0x410755
and eax, 0xf
shl eax, 6
or ebx, eax
movzx eax, byte [ecx + 2]
shl ebx, 6
and eax, 0x3f
or eax, ebx
jmp 0x4107c4
test al, 8
jne 0x41076b
and eax, 7
shl eax, 6
or ebx, eax
movzx eax, byte [ecx + 2]
movzx ecx, byte [ecx + 3]
jmp 0x4107b4
test al, 4
jne 0x41078d
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
movzx ecx, byte [ecx + 4]
jmp 0x4107b4
and eax, edx
shl eax, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
movzx ecx, byte [ecx + 5]
shl ebx, 6
and eax, 0x3f
or eax, ebx
and ecx, 0x3f
shl eax, 6
or eax, ecx
cmp dword [ebp + 0x50], edi
je 0x410811
cmp eax, 0x5f
jne 0x4107d6
mov dword [esi + 0x4c], edx
jmp 0x41094c
mov ecx, eax
shr ecx, 7
movzx ecx, byte [ecx + 0x43d9c0]
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x43fbc0]
movzx ecx, byte [eax*8 + 0x43c8e1]
mov eax, dword [ecx*4 + 0x43c160]
cmp eax, edx
je 0x410821
cmp eax, 3
je 0x410821
xor eax, eax
jmp 0x410949
cmp eax, 0x100
jae 0x41080a
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 0x10
je 0x41080a
mov eax, edx
jmp 0x410949
mov eax, dword [esi + 4]
mov ecx, 1
cmp eax, dword [ebp + 0x74]
jne 0x41083d
mov dword [esi + 0x54], edi
jmp 0x4108bb
cmp eax, dword [ebp + 0x84]
ja 0x410850
mov edx, dword [esi + 4]
sub edx, ecx
mov dword [ebp + 0x84], edx
cmp dword [ebp + 0x50], edi
je 0x4108a5
mov eax, dword [esi + 4]
movzx eax, byte [eax - 1]
cmp eax, 0x5f
jne 0x410869
mov dword [esi + 0x54], ecx
jmp 0x4108bb
mov edx, eax
shr edx, 7
movzx edx, byte [edx + 0x43d9c0]
and eax, 0x7f
shl edx, 7
add edx, eax
movzx eax, word [edx*2 + 0x43fbc0]
movzx edx, byte [eax*8 + 0x43c8e1]
mov eax, dword [edx*4 + 0x43c160]
cmp eax, ecx
je 0x4108a1
cmp eax, 3
je 0x4108a1
xor eax, eax
jmp 0x4108b8
mov eax, ecx
jmp 0x4108b8
mov edx, dword [esi + 4]
movzx edx, byte [edx - 1]
mov eax, dword [ebp + 0x38]
movzx eax, byte [edx + eax]
shr eax, 4
and eax, ecx
mov dword [esi + 0x54], eax
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x4108e9
cmp dword [ebp + 0x88], edi
je 0x4106f3
cmp eax, dword [ebp + 0x84]
jbe 0x4106f3
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jmp 0x4106ed
mov edx, dword [esi + 4]
cmp dword [ebp + 0x50], edi
je 0x41093a
movzx eax, byte [edx]
cmp eax, 0x5f
jne 0x4108fe
mov dword [esi + 0x4c], ecx
jmp 0x41094c
mov edx, eax
shr edx, 7
movzx edx, byte [edx + 0x43d9c0]
and eax, 0x7f
shl edx, 7
add edx, eax
movzx eax, word [edx*2 + 0x43fbc0]
movzx edx, byte [eax*8 + 0x43c8e1]
mov eax, dword [edx*4 + 0x43c160]
cmp eax, ecx
je 0x410936
cmp eax, 3
je 0x410936
xor eax, eax
jmp 0x410949
mov eax, ecx
jmp 0x410949
movzx edx, byte [edx]
mov eax, dword [ebp + 0x38]
movzx eax, byte [edx + eax]
shr eax, 4
and eax, ecx
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 8]
mov cl, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp cl, 5
jne 0x410967
mov edx, dword [esi + 0x4c]
xor eax, eax
cmp edx, dword [esi + 0x54]
sete al
jmp 0x410974
mov eax, dword [esi + 0x4c]
xor ecx, ecx
cmp eax, dword [esi + 0x54]
setne cl
mov eax, ecx
cmp eax, edi
je 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x410992
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
mov eax, dword [ebp + 0x18]
cmp eax, edi
je 0x4109db
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x410a2e
mov edx, dword [esp + 0x10]
push edx
mov edx, dword [ebp + 0x78]
lea ecx, [ebp + 0x1c]
push ecx
push edx
push eax
mov eax, dword [esi + 4]
push eax
call fcn.00420f40
add esp, 0x14
test eax, eax
jne 0x410a02
jmp 0x410a2e
mov ecx, dword [ebp + 0x78]
sub ecx, dword [ebp + 0x1c]
cmp dword [esi + 4], ecx
ja 0x410a2e
mov eax, dword [esi + 4]
mov dl, byte [eax]
cmp dl, byte [ebp + 0x2c]
jne 0x410a2e
mov ecx, 1
cmp dword [ebp + 0x1c], ecx
je 0x410a02
mov al, byte [eax + 1]
cmp al, byte [ebp + 0x2d]
jne 0x410a33
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x410a18
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
mov ecx, 1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x410a88
cmp dword [ebp + 0x88], edi
je 0x410a63
cmp eax, dword [ebp + 0x84]
jbe 0x410a63
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jle 0x410a63
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x410a79
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
add dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp dword [esp + 0x10], edi
je 0x410ab6
mov edx, eax
cmp edx, dword [ebp + 0x78]
jae 0x410ab6
jmp 0x410aa0
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x410ab6
add eax, ecx
mov edx, eax
mov dword [esi + 4], eax
cmp edx, dword [ebp + 0x78]
jb 0x410aa0
add dword [esi + 8], ecx
jmp 0x40ef29
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x410b16
cmp dword [ebp + 0x88], edi
je 0x410af1
cmp eax, dword [ebp + 0x84]
jbe 0x410af1
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x4103d3
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x410b07
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, 1
add dword [esi + 4], eax
add dword [esi + 8], eax
jmp 0x40ef29
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x410b7e
cmp dword [ebp + 0x88], edi
je 0x410b59
cmp eax, dword [ebp + 0x84]
jbe 0x410b59
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x4103d3
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x410b6f
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x410c79
cmp ecx, 0xc0
jb 0x410c79
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x410bb7
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x410c76
test cl, 0x10
jne 0x410bd8
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x410c76
test cl, 8
jne 0x410c05
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x410c76
test cl, 4
jne 0x410c3b
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x410c76
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x100
jae 0x4102e5
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je 0x4102e5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x410ca8
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x410d18
cmp dword [ebp + 0x88], edi
je 0x410cf3
cmp eax, dword [ebp + 0x84]
jbe 0x410cf3
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x410cf3
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x410d09
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x410e13
cmp ecx, 0xc0
jb 0x410e13
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x410d51
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x410e10
test cl, 0x10
jne 0x410d72
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x410e10
test cl, 8
jne 0x410d9f
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x410e10
test cl, 4
jne 0x410dd5
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x410e10
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0xff
ja 0x410e2c
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je 0x410e2c
inc dword [esi + 8]
jmp 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x410e42
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x410eb2
cmp dword [ebp + 0x88], edi
je 0x410e8d
cmp eax, dword [ebp + 0x84]
jbe 0x410e8d
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x410e8d
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x410ea3
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x410fad
cmp ecx, 0xc0
jb 0x410fad
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x410eeb
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x410faa
test cl, 0x10
jne 0x410f0c
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x410faa
test cl, 8
jne 0x410f39
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x410faa
test cl, 4
jne 0x410f6f
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x410faa
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x100
jae 0x4102e5
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je 0x4102e5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x410fdc
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x41104c
cmp dword [ebp + 0x88], edi
je 0x411027
cmp eax, dword [ebp + 0x84]
jbe 0x411027
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x411027
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41103d
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x411147
cmp ecx, 0xc0
jb 0x411147
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x411085
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x411144
test cl, 0x10
jne 0x4110a6
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x411144
test cl, 8
jne 0x4110d3
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x411144
test cl, 4
jne 0x411109
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x411144
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0xff
ja 0x411160
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je 0x411160
inc dword [esi + 8]
jmp 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411176
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x4111e6
cmp dword [ebp + 0x88], edi
je 0x4111c1
cmp eax, dword [ebp + 0x84]
jbe 0x4111c1
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x4111c1
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4111d7
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x4112e1
cmp ecx, 0xc0
jb 0x4112e1
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41121f
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x4112de
test cl, 0x10
jne 0x411240
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x4112de
test cl, 8
jne 0x41126d
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x4112de
test cl, 4
jne 0x4112a3
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x4112de
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x100
jae 0x4102e5
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je 0x4102e5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411310
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x411380
cmp dword [ebp + 0x88], edi
je 0x41135b
cmp eax, dword [ebp + 0x84]
jbe 0x41135b
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41135b
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411371
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x41147b
cmp ecx, 0xc0
jb 0x41147b
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x4113b9
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x411478
test cl, 0x10
jne 0x4113da
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x411478
test cl, 8
jne 0x411407
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x411478
test cl, 4
jne 0x41143d
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x411478
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0xff
ja 0x411494
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je 0x411494
inc dword [esi + 8]
jmp 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4114aa
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x41151a
cmp dword [ebp + 0x88], edi
je 0x4114f5
cmp eax, dword [ebp + 0x84]
jbe 0x4114f5
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x4114f5
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41150b
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x411615
cmp ecx, 0xc0
jb 0x411615
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x411553
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x411612
test cl, 0x10
jne 0x411574
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x411612
test cl, 8
jne 0x4115a1
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x411612
test cl, 4
jne 0x4115d7
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x411612
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0xd
ja 0x41164d
je 0x41162c
cmp ecx, 0xa
je 0x4102e5
jbe 0x411665
cmp ecx, 0xc
jmp 0x411663
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4102e5
cmp byte [eax], 0xa
jne 0x4102e5
inc eax
mov dword [esi + 4], eax
inc dword [esi + 8]
jmp 0x40ef29
cmp ecx, 0x85
je 0x41168a
cmp ecx, 0x2027
jbe 0x411665
cmp ecx, 0x2029
jbe 0x41168a
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41167b
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [ebp + 0x64], edi
je 0x4102e5
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4116a9
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x411710
cmp dword [ebp + 0x88], edi
je 0x4116eb
cmp eax, dword [ebp + 0x84]
jbe 0x4116eb
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x4103d3
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x411701
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x41180b
cmp ecx, 0xc0
jb 0x41180b
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x411749
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x411808
test cl, 0x10
jne 0x41176a
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x411808
test cl, 8
jne 0x411797
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x411808
test cl, 4
jne 0x4117cd
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x411808
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x180e
ja 0x411831
je 0x411863
cmp ecx, 0xa0
ja 0x411829
je 0x411863
cmp ecx, 9
je 0x411863
cmp ecx, 0x20
jmp 0x411859
cmp ecx, 0x1680
jmp 0x411859
cmp ecx, 0x205f
ja 0x411853
je 0x411863
cmp ecx, 0x2000
jb 0x41185b
cmp ecx, 0x200a
jbe 0x411863
cmp ecx, 0x202f
jmp 0x411859
cmp ecx, 0x3000
je 0x411863
inc dword [esi + 8]
jmp 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411879
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x4118e9
cmp dword [ebp + 0x88], edi
je 0x4118c4
cmp eax, dword [ebp + 0x84]
jbe 0x4118c4
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x4118c4
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4118da
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x4119e4
cmp ecx, 0xc0
jb 0x4119e4
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x411922
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x4119e1
test cl, 0x10
jne 0x411943
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x4119e1
test cl, 8
jne 0x411970
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x4119e1
test cl, 4
jne 0x4119a6
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x4119e1
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x180e
ja 0x411a16
je 0x4102e5
cmp ecx, 0xa0
ja 0x411a0e
je 0x4102e5
cmp ecx, 9
je 0x4102e5
cmp ecx, 0x20
jmp 0x411a46
cmp ecx, 0x1680
jmp 0x411a46
cmp ecx, 0x205f
ja 0x411a40
je 0x4102e5
cmp ecx, 0x2000
jb 0x411a4c
cmp ecx, 0x200a
jbe 0x4102e5
cmp ecx, 0x202f
jmp 0x411a46
cmp ecx, 0x3000
je 0x4102e5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411a62
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x411ad2
cmp dword [ebp + 0x88], edi
je 0x411aad
cmp eax, dword [ebp + 0x84]
jbe 0x411aad
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x411aad
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411ac3
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x411bcd
cmp ecx, 0xc0
jb 0x411bcd
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x411b0b
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x411bca
test cl, 0x10
jne 0x411b2c
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x411bca
test cl, 8
jne 0x411b59
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x411bca
test cl, 4
jne 0x411b8f
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x411bca
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x85
ja 0x411bed
je 0x411c05
cmp ecx, 0xa
jb 0x4102e5
cmp ecx, 0xd
jbe 0x411c05
inc dword [esi + 8]
jmp 0x40ef29
cmp ecx, 0x2028
jb 0x4102e5
cmp ecx, 0x2029
ja 0x4102e5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411c1b
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x411c8b
cmp dword [ebp + 0x88], edi
je 0x411c66
cmp eax, dword [ebp + 0x84]
jbe 0x411c66
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x411c66
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411c7c
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x411d86
cmp ecx, 0xc0
jb 0x411d86
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x411cc4
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x411d83
test cl, 0x10
jne 0x411ce5
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x411d83
test cl, 8
jne 0x411d12
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x411d83
test cl, 4
jne 0x411d48
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x411d83
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x85
ja 0x411dbf
je 0x411dcf
cmp ecx, 0xa
jb 0x411d9a
cmp ecx, 0xd
jbe 0x411dcf
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411db0
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp ecx, 0x2028
jb 0x411d9a
cmp ecx, 0x2029
ja 0x411d9a
inc dword [esi + 8]
jmp 0x40ef29
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x411e38
cmp dword [ebp + 0x88], edi
je 0x411e13
cmp eax, dword [ebp + 0x84]
jbe 0x411e13
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x411e13
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411e29
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x411f33
cmp ecx, 0xc0
jb 0x411f33
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x411e71
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x411f30
test cl, 0x10
jne 0x411e92
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x411f30
test cl, 8
jne 0x411ebf
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x411f30
test cl, 4
jne 0x411ef5
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x411f30
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov edi, dword [esi + 8]
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
shl edx, 7
mov eax, ecx
and eax, 0x7f
add edx, eax
movzx eax, word [edx*2 + 0x43fbc0]
movzx edx, byte [edi + 1]
lea eax, [eax*8 + 0x43c8e0]
cmp edx, 8
ja case.0x41ba84.15
jmp dword [edx*4 + 0x41fc88]
cmp dword [esi + 0x94], 0xf
jne 0x412242
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411f92
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov al, byte [eax + 1]
cmp al, 9
je 0x411fb4
cmp al, 5
je 0x411fb4
cmp al, 8
je 0x411fb4
xor eax, eax
jmp 0x411fb9
mov eax, 1
xor edx, edx
cmp dword [esi + 0x94], 0xf
sete dl
cmp eax, edx
jne 0x412242
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x411fe3
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
movzx edx, byte [eax + 1]
movzx eax, byte [edi + 2]
xor ecx, ecx
cmp eax, dword [edx*4 + 0x43c160]
setne cl
xor edx, edx
cmp dword [esi + 0x94], 0x10
sete dl
cmp ecx, edx
jne 0x412242
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x412030
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov dl, byte [edi + 2]
xor ecx, ecx
cmp dl, byte [eax + 1]
setne cl
xor edx, edx
cmp dword [esi + 0x94], 0x10
sete dl
cmp ecx, edx
jne 0x412242
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x412074
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov dl, byte [edi + 2]
xor ecx, ecx
cmp dl, byte [eax]
setne cl
xor edx, edx
cmp dword [esi + 0x94], 0x10
sete dl
cmp ecx, edx
jne 0x412242
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4120b7
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
movzx edx, byte [eax + 1]
mov eax, dword [edx*4 + 0x43c160]
cmp eax, 1
je 0x4120df
cmp eax, 3
je 0x4120df
xor eax, eax
jmp 0x4120e4
mov eax, 1
xor ecx, ecx
cmp dword [esi + 0x94], 0xf
sete cl
cmp eax, ecx
jne 0x412242
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41210e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
movzx eax, byte [eax + 1]
cmp dword [eax*4 + 0x43c160], 6
je 0x412143
cmp ecx, 9
je 0x412143
cmp ecx, 0xa
je 0x412143
cmp ecx, 0xc
je 0x412143
cmp ecx, 0xd
je 0x412143
xor eax, eax
jmp 0x412148
mov eax, 1
xor ecx, ecx
cmp dword [esi + 0x94], 0xf
sete cl
cmp eax, ecx
jne 0x412242
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x412172
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
movzx eax, byte [eax + 1]
cmp dword [eax*4 + 0x43c160], 6
je 0x4121ac
cmp ecx, 9
je 0x4121ac
cmp ecx, 0xa
je 0x4121ac
cmp ecx, 0xb
je 0x4121ac
cmp ecx, 0xc
je 0x4121ac
cmp ecx, 0xd
je 0x4121ac
xor eax, eax
jmp 0x4121b1
mov eax, 1
xor ecx, ecx
cmp dword [esi + 0x94], 0xf
sete cl
cmp eax, ecx
jne 0x412242
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4121db
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
movzx eax, byte [eax + 1]
mov eax, dword [eax*4 + 0x43c160]
cmp eax, 1
je 0x412208
cmp eax, 3
je 0x412208
cmp ecx, 0x5f
je 0x412208
xor eax, eax
jmp 0x41220d
mov eax, 1
xor ecx, ecx
cmp dword [esi + 0x94], 0xf
sete cl
cmp eax, ecx
jne 0x412242
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x412233
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
add edi, 3
mov dword [esi + 8], edi
jmp 0x40ef29
lea ecx, [esp + 0x20]
mov eax, esi
cmp eax, ecx
mov esi, dword [esi]
je 0x412263
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41fa84
mov edi, 0xfffffff2
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x4122d6
cmp dword [ebp + 0x88], edi
je 0x4122b1
cmp eax, dword [ebp + 0x84]
jbe 0x4122b1
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x4122b1
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4122c7
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x4123d1
cmp ecx, 0xc0
jb 0x4123d1
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41230f
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x4123ce
test cl, 0x10
jne 0x412330
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x4123ce
test cl, 8
jne 0x41235d
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x4123ce
test cl, 4
jne 0x412393
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x4123ce
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
and ecx, 0x7f
shl edx, 7
add edx, ecx
movzx eax, word [edx*2 + 0x43fbc0]
movzx ecx, byte [eax*8 + 0x43c8e1]
mov edi, 2
cmp dword [ecx*4 + 0x43c160], edi
jne 0x412428
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x412419
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x412575
cmp dword [esp + 0x10], 0
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
mov edx, 1
je 0x412538
cmp ecx, 0xc0
jb 0x412538
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x412471
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, edi
jmp 0x412538
test cl, 0x10
jne 0x412494
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x412538
test cl, 8
jne 0x4124c3
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x412538
test cl, 4
jne 0x4124fb
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x412538
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebx, ecx
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
and ecx, 0x7f
shl ebx, 7
add ebx, ecx
movzx ecx, word [ebx*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e1]
cmp dword [ecx*4 + 0x43c160], edi
jne 0x412575
add eax, edx
mov edx, eax
mov dword [esi + 4], eax
cmp edx, dword [ebp + 0x78]
jb 0x412434
inc dword [esi + 8]
jmp 0x40ef29
mov ebp, dword [esp + 0x1c0]
xor ebx, ebx
cmp eax, 0x6e
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
sete bl
shl ecx, 8
or ecx, edx
add ecx, ecx
mov dword [esi + 0x90], ecx
add dword [esi + 8], 3
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14c], ebx
cmp eax, dword [esi + 0x10]
jge 0x4125d3
mov ecx, dword [ebp + 0xc]
lea eax, [ecx + eax*4]
mov ecx, dword [eax]
cmp ecx, edi
jl 0x4125d3
mov edx, dword [eax + 4]
sub edx, ecx
mov dword [esi + 0x80], edx
jmp 0x4125e3
mov eax, dword [ebp + 0x4c]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x80], eax
mov eax, dword [esi + 8]
mov dl, byte [eax]
movzx ecx, dl
lea edi, [ecx - 0x62]
cmp edi, 7
ja case.default.0x4125fe
movzx edi, byte [edi + 0x41fcb4]
jmp dword [edi*4 + 0x41fcac]
add ecx, 0xffffff9e
inc eax
mov dword [esi + 8], eax
movsx edx, byte [ecx + 0x43bff4]
mov dword [esi + 0x88], edx
movsx eax, byte [ecx + 0x43bffc]
mov ebp, ecx
and ebp, 1
mov dword [esi + 0x84], eax
test eax, eax
jne 0x41267e
mov dword [esi + 0x84], 0x7fffffff
jmp 0x41267e
xor ecx, ecx
cmp dl, 0x69
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
sete cl
shl edx, 8
or edx, eax
mov dword [esi + 0x88], edx
mov ebp, ecx
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 3]
movzx ecx, byte [ecx + 4]
shl eax, 8
or eax, ecx
mov dword [esi + 0x84], eax
jne 0x41267a
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], 5
mov eax, dword [esi + 0x80]
test eax, eax
je 0x40ef29
jns 0x41269b
cmp dword [esi + 0x88], 0
je 0x40ef29
mov ebx, 1
cmp dword [esi + 0x88], ebx
jl 0x4126eb
jmp 0x4126b0
mov edx, dword [esp + 0x14c]
mov eax, dword [esi + 0x90]
mov edi, dword [esi + 4]
push edx
mov edx, dword [esi + 0x80]
push eax
mov eax, dword [esp + 0x1c8]
mov ecx, edi
call fcn.0040eb50
add esp, 8
test eax, eax
js 0x41270d
add edi, eax
inc ebx
mov dword [esi + 4], edi
cmp ebx, dword [esi + 0x88]
jle 0x4126b0
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x40ef29
test ebp, ebp
je 0x41278a
mov dword [esi + 0x7c], eax
jmp 0x41b148
mov eax, dword [esp + 0x1c0]
cmp dword [eax + 0x88], 0
je 0x412765
mov ecx, dword [esi + 4]
cmp ecx, dword [eax + 0x78]
jb 0x412765
cmp ecx, dword [eax + 0x84]
jbe 0x412765
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jle 0x412765
lea ecx, [esp + 0x20]
mov eax, esi
cmp eax, ecx
mov esi, dword [esi]
je 0x412753
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9f0
mov edi, 0xfffffff4
jmp 0x41a811
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41277b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov ebp, dword [esi + 0x88]
jmp 0x4127a0
cmp ebp, dword [esi + 0x84]
jge 0x41b190
mov ecx, dword [esp + 0x14c]
mov edx, dword [esi + 0x90]
mov edi, dword [esi + 4]
mov ebx, dword [esp + 0x1c0]
push ecx
push edx
mov edx, dword [esi + 0x80]
mov eax, ebx
mov ecx, edi
call fcn.0040eb50
add esp, 8
test eax, eax
js 0x4127e3
add edi, eax
mov dword [esi + 4], edi
inc ebp
jmp 0x4127a0
cmp dword [ebx + 0x88], 0
je 0x41b190
mov eax, dword [esi + 4]
mov ecx, ebx
cmp eax, dword [ecx + 0x78]
jb 0x41b190
mov edx, ecx
cmp eax, dword [edx + 0x84]
jbe 0x41b190
mov ecx, 1
mov eax, edx
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jle 0x41b190
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x412838
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9f0
mov edi, 0xfffffff4
mov ebp, ebx
jmp 0x41a818
mov edx, dword [esi + 0x90]
mov ecx, dword [esi + 4]
push ebx
push edx
mov edx, dword [esi + 0x80]
mov eax, ebp
call fcn.0040eb50
add esp, 8
mov dword [esi + 0x80], eax
test eax, eax
jns 0x4128c3
cmp dword [ebp + 0x88], 0
je 0x41289e
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41289e
cmp eax, dword [ebp + 0x84]
jbe 0x41289e
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4128b4
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 0x80]
add dword [esi + 4], eax
jmp 0x40ef29
mov ecx, dword [esi + 8]
mov ebp, 1
add ecx, ebp
mov dword [esi + 0x24], ecx
add dword [esi + 8], 0x21
mov eax, dword [esi + 8]
mov dl, byte [eax]
movzx ecx, dl
lea edi, [ecx - 0x62]
cmp edi, 7
ja case.default.0x4128fd
movzx edi, byte [edi + 0x41fcc4]
jmp dword [edi*4 + 0x41fcbc]
add ecx, 0xffffff9e
inc eax
mov dword [esi + 8], eax
movsx edx, byte [ecx + 0x43bff4]
mov dword [esi + 0x88], edx
movsx eax, byte [ecx + 0x43bffc]
mov ebx, ecx
and ebx, ebp
mov dword [esi + 0x84], eax
test eax, eax
jne 0x41298c
mov dword [esi + 0x84], 0x7fffffff
jmp 0x41298c
movzx ecx, byte [eax + 1]
xor ebx, ebx
cmp dl, 0x69
movzx edx, byte [eax + 2]
sete bl
shl ecx, 8
or ecx, edx
mov dword [esi + 0x88], ecx
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 3]
movzx ecx, byte [ecx + 4]
shl eax, 8
or eax, ecx
mov dword [esi + 0x84], eax
jne 0x41297a
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], 5
jmp 0x41298c
mov dword [esi + 0x84], ebp
mov dword [esi + 0x88], ebp
cmp dword [esp + 0x10], 0
mov edi, ebp
je 0x412b86
cmp dword [esi + 0x88], ebp
jl 0x412bce
mov ebp, dword [esp + 0x1c0]
lea esp, [esp]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x412b14
mov eax, edx
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp edx, 0xc0
jb 0x412aac
movzx ecx, byte [eax]
and ecx, 0x3f
test dl, 0x20
jne 0x4129ea
and edx, 0x1f
shl edx, 6
or edx, ecx
inc eax
jmp 0x412aa9
test dl, 0x10
jne 0x412a0b
and edx, 0xf
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 1]
shl edx, 6
and ecx, 0x3f
or edx, ecx
add eax, 2
jmp 0x412aa9
test dl, 8
jne 0x412a38
and edx, 7
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 1]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
add eax, 3
jmp 0x412aa9
test dl, 4
jne 0x412a6e
and edx, 3
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 1]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
add eax, 4
jmp 0x412aa9
and edx, 1
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 1]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
add eax, 5
mov dword [esi + 4], eax
cmp edx, 0xff
jbe 0x412ae2
cmp dword [esi + 0x94], 0x6a
jne 0x412b02
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x412ad3
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, edx
and ecx, 7
mov eax, 1
shl eax, cl
mov ecx, dword [esi + 0x24]
shr edx, 3
mov dl, byte [edx + ecx]
test dl, al
je 0x412b61
mov ebp, dword [esp + 0x1c0]
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4129b0
jmp 0x412bd5
cmp dword [ebp + 0x88], 0
je 0x412b3c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x412b3c
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x412b52
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x412b77
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
cmp dword [esi + 0x88], ebp
jl 0x412bce
mov edi, edi
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x412c02
mov ecx, eax
movzx eax, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esi + 0x24]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x412c58
inc edi
cmp edi, dword [esi + 0x88]
jle 0x412b90
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x40ef29
test ebx, ebx
je 0x412c7d
cmp dword [esp + 0x10], 0
jne 0x41f52b
mov dword [esi + 0x7c], eax
jmp 0x41b2e5
cmp dword [ebp + 0x88], 0
je 0x412c33
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x412c33
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x412c33
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x412c49
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x412c6e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
cmp dword [esp + 0x10], 0
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov ebp, dword [esi + 0x88]
je 0x412e14
cmp ebp, dword [esi + 0x84]
jge 0x41c871
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov edi, 1
cmp ecx, dword [eax + 0x78]
jae 0x412dcc
mov eax, ecx
movzx edx, byte [eax]
cmp edx, 0xc0
jb 0x412d93
movzx ecx, byte [eax + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x412ce5
and edx, 0x1f
shl edx, 6
mov edi, 2
jmp 0x412d91
test dl, 0x10
jne 0x412d00
and edx, 0xf
shl edx, 6
or ecx, edx
movzx edx, byte [eax + 2]
mov edi, 3
jmp 0x412d8b
test dl, 8
jne 0x412d27
and edx, 7
shl edx, 6
or ecx, edx
movzx edx, byte [eax + 2]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 3]
mov edi, 4
jmp 0x412d8b
test dl, 4
jne 0x412d57
and edx, 3
shl edx, 6
or ecx, edx
movzx edx, byte [eax + 2]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 3]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 4]
mov edi, 5
jmp 0x412d8b
and edx, edi
shl edx, 6
or ecx, edx
movzx edx, byte [eax + 2]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 3]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 4]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 5]
mov edi, 6
shl ecx, 6
and edx, 0x3f
or edx, ecx
cmp edx, 0xff
jbe 0x412da4
cmp dword [esi + 0x94], 0x6a
jmp 0x412dbb
mov ecx, edx
and ecx, 7
mov ebx, 1
shl ebx, cl
mov ecx, dword [esi + 0x24]
shr edx, 3
mov dl, byte [edx + ecx]
test dl, bl
je 0x41c871
add eax, edi
mov dword [esi + 4], eax
inc ebp
jmp 0x412c94
cmp dword [eax + 0x88], 0
je 0x41c871
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x1c0]
cmp eax, dword [ecx + 0x84]
jbe 0x41c871
mov eax, dword [esp + 0x1c0]
mov ecx, edi
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jle 0x41c871
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x412745
mov edx, dword [esp + 0x1c0]
jmp 0x412e20
cmp ebp, dword [esi + 0x84]
jge 0x41b320
mov eax, dword [esi + 4]
cmp eax, dword [edx + 0x78]
jae 0x412e5d
mov edi, eax
movzx eax, byte [edi]
mov ecx, eax
and ecx, 7
mov ebx, 1
shl ebx, cl
mov ecx, dword [esi + 0x24]
shr eax, 3
mov al, byte [eax + ecx]
test al, bl
je 0x41b320
inc edi
mov dword [esi + 4], edi
inc ebp
jmp 0x412e20
cmp dword [edx + 0x88], 0
je 0x41b320
mov ecx, dword [esi + 4]
cmp ecx, dword [edx + 0x84]
jbe 0x41b320
mov eax, 1
mov dword [edx + 0x60], eax
cmp dword [edx + 0x88], eax
jle 0x41b320
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x412745
mov eax, dword [esi + 8]
add eax, 3
mov dword [esi + 0x24], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 8], eax
mov dl, byte [eax]
movzx ecx, dl
lea edi, [ecx - 0x62]
cmp edi, 7
ja case.default.0x412ed0
movzx edi, byte [edi + 0x41fcd4]
jmp dword [edi*4 + 0x41fccc]
inc eax
add ecx, 0xffffff9e
mov dword [esi + 8], eax
movsx eax, byte [ecx + 0x43bff4]
mov dword [esi + 0x88], eax
movsx eax, byte [ecx + 0x43bffc]
mov ebx, ecx
and ebx, 1
mov dword [esi + 0x84], eax
test eax, eax
jne 0x412f68
mov dword [esi + 0x84], 0x7fffffff
jmp 0x412f68
movzx ecx, byte [eax + 1]
xor ebx, ebx
cmp dl, 0x69
movzx edx, byte [eax + 2]
sete bl
shl ecx, 8
or ecx, edx
mov dword [esi + 0x88], ecx
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 3]
movzx ecx, byte [ecx + 4]
shl eax, 8
or eax, ecx
mov dword [esi + 0x84], eax
jne 0x412f51
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], 5
jmp 0x412f68
mov eax, 1
mov dword [esi + 0x84], eax
mov dword [esi + 0x88], eax
mov ebp, dword [esp + 0x1c0]
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x4130ae
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x413137
mov eax, edx
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x413087
cmp ecx, 0xc0
jb 0x413087
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x412fc5
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x413084
test cl, 0x10
jne 0x412fe6
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x413084
test cl, 8
jne 0x413013
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x413084
test cl, 4
jne 0x413049
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x413084
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, dword [esp + 0x10]
mov edx, dword [esi + 0x24]
push eax
push edx
push ecx
call fcn.00421690
add esp, 0xc
test eax, eax
je 0x413184
inc edi
cmp edi, dword [esi + 0x88]
jle 0x412f80
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
je 0x40ef29
test ebx, ebx
jne 0x41f539
mov eax, dword [esi + 4]
mov ebx, dword [esp + 0x10]
mov dword [esi + 0x2c], eax
mov ebp, dword [esi + 0x88]
mov eax, dword [esp + 0x1c0]
cmp ebp, dword [esi + 0x84]
jge 0x41c574
mov ecx, dword [esi + 4]
mov edi, 1
cmp ecx, dword [eax + 0x78]
jae 0x413264
mov eax, ecx
movzx ecx, byte [eax]
test ebx, ebx
je 0x413245
cmp ecx, 0xc0
jb 0x413245
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x4131a9
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edi, 2
jmp 0x413245
cmp dword [ebp + 0x88], 0
je 0x41315f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x41315f
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x413175
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41319a
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test cl, 0x10
jne 0x4131c2
movzx eax, byte [eax + 2]
and ecx, 0xf
shl ecx, 6
mov edi, 3
jmp 0x41323b
test cl, 8
jne 0x4131e1
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
mov edi, 4
jmp 0x413235
test cl, 4
jne 0x413209
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
mov edi, 5
jmp 0x413235
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 3]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
mov edi, 6
shl edx, 6
and ecx, 0x3f
or ecx, edx
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov edx, dword [esi + 0x24]
push ebx
push edx
push ecx
call fcn.00421690
add esp, 0xc
test eax, eax
je 0x41c574
add dword [esi + 4], edi
inc ebp
jmp 0x4130d8
cmp dword [eax + 0x88], 0
je 0x41c574
mov ecx, dword [esi + 4]
cmp ecx, dword [eax + 0x84]
jbe 0x41c574
mov dword [eax + 0x60], edi
cmp dword [eax + 0x88], edi
jle 0x41c574
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x412745
cmp dword [esp + 0x10], edi
je 0x4134a6
mov edi, 1
mov dword [esi + 0x80], edi
add dword [esi + 8], edi
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
cmp eax, 0xc0
jb 0x4133e6
mov edx, eax
test al, 0x20
jne 0x4132ee
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
and edx, 0x1f
and ecx, 0x3f
shl edx, 6
or ecx, edx
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], edi
jmp 0x4133e6
test al, 0x10
jne 0x41331f
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
and ecx, 0x3f
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], 2
jmp 0x4133e6
test al, 8
jne 0x41335c
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
and ecx, 0x3f
and edx, 7
shl edx, 6
or ecx, edx
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], 3
jmp 0x4133e6
test al, 4
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
jne 0x4133a2
and ecx, 0x3f
and edx, 3
shl edx, 6
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], 4
jmp 0x4133e6
and ecx, 0x3f
and edx, edi
shl edx, 6
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], 5
mov ebp, dword [esp + 0x1c0]
mov edx, dword [ebp + 0x78]
mov ecx, dword [esi + 4]
mov eax, dword [esi + 0x80]
mov ebx, edx
sub ebx, ecx
cmp eax, ebx
jle 0x41344a
cmp dword [ebp + 0x88], 0
je 0x413425
cmp ecx, edx
jb 0x413425
cmp ecx, dword [ebp + 0x84]
jbe 0x413425
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41343b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test eax, eax
jle 0x413476
mov edi, edi
dec eax
mov dword [esi + 0x80], eax
mov ecx, dword [esi + 8]
mov eax, dword [esi + 4]
mov dl, byte [ecx]
mov cl, byte [eax]
inc eax
mov dword [esi + 4], eax
add dword [esi + 8], edi
cmp dl, cl
jne 0x413481
mov eax, dword [esi + 0x80]
test eax, eax
jg 0x413450
dec dword [esi + 0x80]
jmp 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x413497
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
mov edx, dword [ebp + 0x78]
sub edx, eax
mov ecx, 1
cmp edx, ecx
jge 0x413502
cmp dword [ebp + 0x88], edi
je 0x4134dd
cmp eax, dword [ebp + 0x84]
jbe 0x4134dd
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jg 0x4103d3
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4134f3
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, dword [esi + 8]
mov eax, dword [esi + 4]
mov dl, byte [ecx + 1]
mov cl, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dl, cl
je 0x4138e2
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41352f
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x413596
cmp dword [ebp + 0x88], edi
je 0x413571
cmp eax, dword [ebp + 0x84]
jbe 0x413571
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x4103d3
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x413587
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [esp + 0x10], edi
je 0x4138a1
mov edx, 1
mov dword [esi + 0x80], edx
add dword [esi + 8], edx
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
cmp eax, 0xc0
jb 0x4136e4
test al, 0x20
jne 0x4135e9
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x78]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], edx
jmp 0x4136e4
mov ebx, dword [esi + 0x78]
test al, 0x10
jne 0x41361d
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
and ecx, 0x3f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], 2
jmp 0x4136e4
test al, 8
jne 0x41365a
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
and ecx, 0x3f
and ebx, 7
shl ebx, 6
or ecx, ebx
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 6
and ebx, 0x3f
or ecx, ebx
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], 3
jmp 0x4136e4
test al, 4
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
jne 0x4136a0
and ecx, 0x3f
and ebx, 3
shl ebx, 6
or ecx, ebx
movzx ebx, byte [eax + 2]
shl ecx, 6
and ebx, 0x3f
or ecx, ebx
movzx ebx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 6
and ebx, 0x3f
or ecx, ebx
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], 4
jmp 0x4136e4
and ecx, 0x3f
and ebx, edx
shl ebx, 6
or ecx, ebx
movzx ebx, byte [eax + 2]
shl ecx, 6
and ebx, 0x3f
or ecx, ebx
movzx ebx, byte [eax + 3]
shl ecx, 6
and ebx, 0x3f
or ecx, ebx
movzx ebx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 6
and ebx, 0x3f
or ecx, ebx
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0x80], 5
cmp dword [esi + 0x78], 0x80
jae 0x413731
mov ecx, dword [esi + 4]
mov eax, dword [ebp + 0x30]
movzx ecx, byte [ecx]
mov ebx, dword [esi + 0x78]
mov bl, byte [eax + ebx]
cmp bl, byte [ecx + eax]
je 0x413726
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x413717
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
add dword [esi + 8], edx
add dword [esi + 4], edx
jmp 0x40ef29
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x413839
test cl, 0x20
jne 0x413760
movzx edx, byte [eax]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc eax
jmp 0x413836
test cl, 0x10
jne 0x413787
movzx edx, byte [eax]
and ecx, 0xf
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x413836
test cl, 8
jne 0x4137ba
movzx edx, byte [eax]
and ecx, 7
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x413836
test cl, 4
jne 0x4137f6
movzx edx, byte [eax]
and ecx, 3
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x413836
and ecx, edx
movzx edx, byte [eax]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, dword [esi + 0x80]
add dword [esi + 8], eax
mov eax, dword [esi + 0x78]
cmp eax, ecx
je 0x40ef29
mov edx, eax
shr edx, 7
movzx edx, byte [edx + 0x43d9c0]
shl edx, 7
mov ebx, eax
and ebx, 0x7f
add edx, ebx
movzx edx, word [edx*2 + 0x43fbc0]
mov edx, dword [edx*8 + 0x43c8e4]
add edx, eax
cmp ecx, edx
je 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x413892
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [esi + 8]
mov ecx, dword [esi + 4]
movzx edx, byte [edx + 1]
mov eax, dword [ebp + 0x30]
movzx ebx, byte [ecx]
mov dl, byte [edx + eax]
cmp dl, byte [ebx + eax]
je 0x4138de
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4138cf
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc ecx
mov dword [esi + 4], ecx
add dword [esi + 8], 2
jmp 0x40ef29
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 1]
movzx edx, byte [ecx + 2]
shl eax, 8
or eax, edx
mov dword [esi + 0x84], eax
mov dword [esi + 0x88], eax
add dword [esi + 8], 3
mov edi, 1
jmp 0x413a10
mov edi, 1
mov dword [esp + 0x14], edi
jmp 0x413925
mov edi, 1
xor ebx, ebx
mov dword [esi + 0x88], ebx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
mov dword [esi + 0x84], ecx
mov ecx, dword [esi + 8]
mov al, byte [ecx]
cmp al, 0x28
je 0x413950
cmp al, 0x35
jne 0x413952
mov ebx, edi
add ecx, 3
mov dword [esp + 0x1c], ebx
mov dword [esi + 8], ecx
jmp 0x413a10
mov edi, 1
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], edi
mov dword [esp + 0x14], edi
jmp 0x413a10
mov edi, 1
mov dword [esi + 0x88], edi
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], edi
mov dword [esp + 0x14], edi
jmp 0x413a10
mov edi, 1
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], edi
add dword [esi + 8], edi
mov dword [esp + 0x14], edi
jmp 0x413a10
mov ecx, dword [esi + 8]
xor edx, edx
cmp eax, 0x2e
movzx eax, byte [ecx]
setge dl
inc ecx
mov dword [esi + 8], ecx
mov edi, 1
dec edx
and edx, 0xfffffff3
add edx, 0x2e
sub eax, edx
movsx ecx, byte [eax + 0x43bff4]
mov ebx, eax
mov dword [esi + 0x88], ecx
movsx eax, byte [eax + 0x43bffc]
and ebx, edi
mov dword [esp + 0x1c], ebx
mov dword [esi + 0x84], eax
test eax, eax
jne 0x413a10
mov dword [esi + 0x84], 0x7fffffff
cmp dword [esp + 0x10], 0
je 0x413eb7
mov dword [esi + 0x80], edi
mov edx, dword [esi + 8]
mov dword [esi + 0x20], edx
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
cmp eax, 0xc0
jb 0x413b36
mov ecx, dword [esi + 8]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x20
jne 0x413a5f
and eax, 0x1f
shl eax, 6
or edx, eax
mov dword [esi + 0x78], edx
add dword [esi + 0x80], edi
jmp 0x413b36
test al, 0x10
jne 0x413a86
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x78], edx
add dword [esi + 0x80], 2
jmp 0x413b36
test al, 8
jne 0x413ab9
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
movzx ecx, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or edx, ecx
mov dword [esi + 0x78], edx
add dword [esi + 0x80], 3
jmp 0x413b36
test al, 4
jne 0x413af5
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
movzx ecx, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or edx, ecx
mov dword [esi + 0x78], edx
add dword [esi + 0x80], 4
jmp 0x413b36
and eax, edi
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
movzx ecx, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or edx, ecx
mov dword [esi + 0x78], edx
add dword [esi + 0x80], 5
mov edx, dword [esi + 0x80]
add dword [esi + 8], edx
cmp dword [esi + 0x80], edi
jle 0x413ec3
cmp dword [esi + 0x94], 0x2e
jl 0x413b94
mov eax, dword [esi + 0x78]
mov ecx, eax
shr ecx, 7
movzx edx, byte [ecx + 0x43d9c0]
shl edx, 7
mov ecx, eax
and ecx, 0x7f
add edx, ecx
movzx edx, word [edx*2 + 0x43fbc0]
mov ecx, dword [edx*8 + 0x43c8e4]
add ecx, eax
cmp ecx, eax
je 0x413b94
lea eax, [esi + 0x68]
push eax
push ecx
call fcn.004212b0
add esp, 8
mov dword [esi + 0x64], eax
jmp 0x413b9b
mov dword [esi + 0x64], 0
mov dword [esp + 0x18], edi
cmp dword [esi + 0x88], edi
jl 0x413cca
jmp 0x413bb0
mov ecx, dword [esp + 0x1c0]
mov ebp, dword [ecx + 0x78]
mov edx, ebp
sub edx, dword [esi + 0x80]
cmp dword [esi + 4], edx
ja 0x413c38
mov eax, dword [esi + 0x80]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x20]
mov edi, edx
cmp eax, 4
jb 0x413bfc
mov edi, edi
mov ebx, dword [edi]
cmp ebx, dword [ecx]
jne 0x413c34
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x413be0
mov ebx, dword [esp + 0x1c]
test eax, eax
je 0x413c24
mov bl, byte [ecx]
cmp bl, byte [edi]
jne 0x413c34
cmp eax, 1
jbe 0x413c20
mov bl, byte [ecx + 1]
cmp bl, byte [edi + 1]
jne 0x413c34
cmp eax, 2
jbe 0x413c20
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x413c34
mov ebx, dword [esp + 0x1c]
mov eax, dword [esi + 0x80]
add eax, edx
mov dword [esi + 4], eax
jmp 0x413cb5
mov ebx, dword [esp + 0x1c]
mov eax, dword [esi + 0x64]
test eax, eax
jle 0x413d88
mov edx, eax
sub ebp, edx
cmp dword [esi + 4], ebp
ja 0x413d88
mov ebp, dword [esi + 4]
lea ecx, [esi + 0x68]
mov edi, ebp
cmp eax, 4
jb 0x413c7c
lea ecx, [ecx]
mov ebx, dword [edi]
cmp ebx, dword [ecx]
jne 0x413d88
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x413c60
mov ebx, dword [esp + 0x1c]
test eax, eax
je 0x413cb0
mov bl, byte [ecx]
cmp bl, byte [edi]
jne 0x413d88
cmp eax, 1
jbe 0x413cac
mov bl, byte [ecx + 1]
cmp bl, byte [edi + 1]
jne 0x413d88
cmp eax, 2
jbe 0x413cac
mov cl, byte [ecx + 2]
cmp cl, byte [edi + 2]
jne 0x413d88
mov ebx, dword [esp + 0x1c]
add ebp, edx
mov dword [esi + 4], ebp
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x88]
jle 0x413bb0
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
je 0x40ef29
test ebx, ebx
jne 0x41f547
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x88]
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x84]
jge 0x413e6a
mov ecx, dword [esp + 0x1c0]
mov ebp, dword [ecx + 0x78]
mov edx, ebp
sub edx, dword [esi + 0x80]
cmp dword [esi + 4], edx
ja 0x413dea
mov eax, dword [esi + 0x80]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x20]
mov edi, edx
cmp eax, 4
jb 0x413d48
mov edi, edi
mov ebx, dword [edi]
cmp ebx, dword [ecx]
jne 0x413dea
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x413d30
test eax, eax
je 0x413d78
mov bl, byte [ecx]
cmp bl, byte [edi]
jne 0x413dea
cmp eax, 1
jbe 0x413d78
mov bl, byte [ecx + 1]
cmp bl, byte [edi + 1]
jne 0x413dea
cmp eax, 2
jbe 0x413d78
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x413dea
mov eax, dword [esi + 0x80]
add eax, edx
mov dword [esi + 4], eax
jmp 0x413e55
mov ecx, dword [esp + 0x1c0]
cmp dword [ecx + 0x88], 0
je 0x413dc5
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0x78]
jb 0x413dc5
cmp eax, dword [ecx + 0x84]
jbe 0x413dc5
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jle 0x413dc5
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x412745
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x413ddb
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
mov eax, dword [esi + 0x64]
test eax, eax
jle 0x413e7a
mov edx, eax
sub ebp, edx
cmp dword [esi + 4], ebp
ja 0x413e7a
mov ebp, dword [esi + 4]
lea ecx, [esi + 0x68]
mov edi, ebp
cmp eax, 4
jb 0x413e28
nop
mov ebx, dword [edi]
cmp ebx, dword [ecx]
jne 0x413e7a
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x413e10
test eax, eax
je 0x413e50
mov bl, byte [ecx]
cmp bl, byte [edi]
jne 0x413e7a
cmp eax, 1
jbe 0x413e50
mov bl, byte [ecx + 1]
cmp bl, byte [edi + 1]
jne 0x413e7a
cmp eax, 2
jbe 0x413e50
mov cl, byte [ecx + 2]
cmp cl, byte [edi + 2]
jne 0x413e7a
add ebp, edx
mov dword [esi + 4], ebp
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x84]
jl 0x413d00
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41cd24
mov ecx, dword [esp + 0x1c0]
cmp dword [ecx + 0x88], 0
je 0x413e6a
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0x78]
jb 0x413e6a
cmp eax, dword [ecx + 0x84]
jbe 0x413e6a
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jle 0x413e6a
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x412745
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
mov dword [esi + 0x78], ecx
add dword [esi + 8], edi
cmp dword [esi + 0x94], 0x2e
mov ebp, dword [esp + 0x1c0]
jl 0x41402d
mov edx, dword [ebp + 0x34]
mov eax, dword [esi + 0x78]
movzx ecx, byte [edx + eax]
mov dword [esi + 0x8c], ecx
mov edx, edi
cmp dword [esi + 0x88], edi
jl 0x413f1b
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x413f3d
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x413f0d
cmp dword [esi + 0x8c], ecx
jne 0x413f8e
inc eax
add edx, edi
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x88]
jle 0x413ef1
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x40ef29
test ebx, ebx
je 0x413fb3
mov dword [esi + 0x7c], eax
jmp 0x41b450
cmp dword [ebp + 0x88], 0
je 0x413f69
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x413f69
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x413f69
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x413f7f
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x413fa4
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x41401d
jmp 0x413fd0
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x413ffa
mov eax, ecx
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x413fea
cmp dword [esi + 0x8c], ecx
jne 0x41401d
inc eax
add edx, edi
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x413fd0
jmp 0x41401d
cmp dword [ebp + 0x88], 0
je 0x41401d
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x41401d
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41b480
mov ecx, edi
cmp dword [esi + 0x88], edi
jl 0x41406f
jmp 0x414040
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x414091
mov edi, dword [esi + 0x78]
mov eax, edx
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp edi, edx
jne 0x4140d9
mov edi, 1
add ecx, edi
cmp ecx, dword [esi + 0x88]
jle 0x414040
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x40ef29
test ebx, ebx
je 0x4140fe
mov dword [esi + 0x7c], eax
jmp 0x41b5e8
cmp dword [ebp + 0x88], 0
je 0x4140b4
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4140b4
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4140ca
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4140ef
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [esi + 4]
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
jge 0x414159
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x414136
movzx edx, byte [ecx]
cmp dword [esi + 0x78], edx
jne 0x414159
inc ecx
add eax, edi
mov dword [esi + 4], ecx
cmp eax, dword [esi + 0x84]
jl 0x414116
jmp 0x414159
cmp dword [ebp + 0x88], 0
je 0x414159
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x414159
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41b642
mov eax, dword [esi + 4]
mov ebp, dword [esp + 0x1c0]
cmp eax, dword [ebp + 0x78]
jb 0x4141ce
cmp dword [ebp + 0x88], edi
je 0x4141a9
cmp eax, dword [ebp + 0x84]
jbe 0x4141a9
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x4141a9
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x4103db
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4141bf
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 8]
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esp + 0x10], edi
je 0x4142cf
cmp ecx, 0xc0
jb 0x4142cf
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41420a
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x4142cc
test cl, 0x10
jne 0x41422b
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x4142cc
test cl, 8
jne 0x414258
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x4142cc
test cl, 4
jne 0x414291
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x4142cc
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, dword [esi + 8]
movzx edx, byte [eax]
inc eax
cmp dword [esi + 0x94], 0x20
mov dword [esi + 8], eax
jne 0x41431a
cmp edx, ecx
je 0x4142f5
mov eax, dword [ebp + 0x34]
movzx edx, byte [eax + edx]
cmp edx, ecx
jne 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41430b
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp edx, ecx
jne 0x40ef29
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x414338
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 1]
movzx edx, byte [ecx + 2]
shl eax, 8
or eax, edx
mov dword [esi + 0x84], eax
mov dword [esi + 0x88], eax
add dword [esi + 8], 3
jmp 0x414486
mov dword [esi + 0x88], edi
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
mov dword [esi + 0x84], ecx
mov ecx, dword [esi + 8]
mov al, byte [ecx]
cmp al, 0x42
je 0x4143a2
cmp al, 0x4f
je 0x4143a2
xor ebx, ebx
add ecx, 3
mov dword [esi + 8], ecx
jmp 0x414486
add ecx, 3
mov ebx, 1
mov dword [esi + 8], ecx
jmp 0x414486
mov eax, 1
mov dword [esi + 0x88], edi
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], eax
mov dword [esp + 0x14], eax
jmp 0x414486
mov eax, 1
mov dword [esi + 0x88], eax
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], eax
mov dword [esp + 0x14], eax
jmp 0x414486
mov eax, 1
mov dword [esi + 0x88], edi
mov dword [esi + 0x84], eax
add dword [esi + 8], eax
mov dword [esp + 0x14], eax
jmp 0x414486
mov dword [esi + 0x88], edi
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
mov dword [esi + 0x84], ecx
add dword [esi + 8], 3
mov dword [esp + 0x14], 1
jmp 0x414486
mov ecx, dword [esi + 8]
xor edx, edx
cmp eax, 0x48
movzx eax, byte [ecx]
setl dl
inc ecx
mov dword [esi + 8], ecx
dec edx
and edx, 0xd
add edx, 0x3b
sub eax, edx
movsx ecx, byte [eax + 0x43bff4]
mov ebx, eax
mov dword [esi + 0x88], ecx
movsx eax, byte [eax + 0x43bffc]
and ebx, 1
mov dword [esi + 0x84], eax
cmp eax, edi
jne 0x414486
mov dword [esi + 0x84], 0x7fffffff
mov edx, dword [esi + 8]
movzx eax, byte [edx]
mov dword [esi + 0x78], eax
mov edi, 1
add dword [esi + 8], edi
cmp dword [esi + 0x94], 0x48
jl 0x414956
mov ebp, dword [esp + 0x1c0]
mov edx, dword [esi + 0x78]
mov ecx, dword [ebp + 0x34]
movzx eax, byte [ecx + edx]
mov edi, dword [esp + 0x10]
mov dword [esi + 0x8c], eax
mov edx, 1
test edi, edi
je 0x4146a1
cmp dword [esi + 0x88], edx
jl 0x414605
jmp 0x4144e0
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x41462f
mov eax, ecx
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x4145df
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x41451a
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x4145dc
test cl, 0x10
jne 0x41453b
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x4145dc
test cl, 8
jne 0x414568
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x4145dc
test cl, 4
jne 0x4145a1
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x4145dc
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
cmp dword [esi + 0x78], ecx
je 0x41467c
cmp dword [esi + 0x8c], ecx
je 0x41467c
inc edx
cmp edx, dword [esi + 0x88]
jle 0x4144e0
mov edi, dword [esp + 0x10]
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x40ef29
test ebx, ebx
je 0x41475d
test edi, edi
jne 0x41f555
mov dword [esi + 0x7c], eax
jmp 0x41b786
cmp dword [ebp + 0x88], 0
je 0x414657
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x414657
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41466d
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x414692
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [esi + 0x88], edx
jl 0x414605
lea ecx, [ecx]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4146e2
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x414738
cmp dword [esi + 0x8c], ecx
je 0x414738
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x88]
jle 0x4146b0
jmp 0x414605
cmp dword [ebp + 0x88], 0
je 0x414713
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x414713
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x414713
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x414729
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41474e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
test edi, edi
je 0x4148e1
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x4148d1
mov ebx, 1
mov ecx, dword [esi + 4]
mov edx, ebx
cmp ecx, dword [ebp + 0x78]
jae 0x4148ae
mov eax, ecx
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x414888
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x4147bf
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x414888
test cl, 0x10
jne 0x4147e2
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x414888
test cl, 8
jne 0x414811
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x414888
test cl, 4
jne 0x41484c
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x414888
and ecx, ebx
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
cmp dword [esi + 0x78], ecx
je 0x4148d1
cmp dword [esi + 0x8c], ecx
je 0x4148d1
add edx, eax
add edi, ebx
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x414782
jmp 0x4148d1
cmp dword [ebp + 0x88], 0
je 0x4148d1
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x4148d1
mov dword [ebp + 0x60], ebx
cmp dword [ebp + 0x88], ebx
jg 0x41055c
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41cfee
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x414915
nop
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x414925
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x414915
cmp dword [esi + 0x8c], ecx
je 0x414915
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x4148f0
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41b7dd
cmp dword [ebp + 0x88], 0
je 0x414915
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x414915
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x414915
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
cmp dword [esp + 0x10], 0
je 0x414b2f
mov edx, edi
cmp dword [esi + 0x88], edi
jl 0x414bde
mov ebp, dword [esp + 0x1c0]
jmp 0x414980
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x414ab9
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x414a98
test cl, 0x20
jne 0x4149b8
movzx edi, byte [eax]
and ecx, 0x1f
shl ecx, 6
and edi, 0x3f
or ecx, edi
inc eax
jmp 0x414a95
test cl, 0x10
jne 0x4149df
movzx edi, byte [eax]
and ecx, 0xf
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x414a95
test cl, 8
jne 0x414a12
movzx edi, byte [eax]
and ecx, 7
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x414a95
test cl, 4
jne 0x414a55
movzx edi, byte [eax]
and ecx, 3
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x414a95
and ecx, edi
movzx edi, byte [eax]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
cmp dword [esi + 0x78], ecx
je 0x414b0a
mov edi, 1
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x414980
jmp 0x414be5
cmp dword [ebp + 0x88], 0
je 0x414ae5
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x414ae5
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x414ae5
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x414afb
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x414b20
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, edi
cmp dword [esi + 0x88], edi
jl 0x414bde
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x414b6c
movzx edx, byte [eax]
mov edi, dword [esi + 0x78]
inc eax
mov dword [esi + 4], eax
cmp edi, edx
je 0x414bb9
inc ecx
cmp ecx, dword [esi + 0x88]
jle 0x414b44
jmp 0x414be5
cmp dword [ebp + 0x88], 0
je 0x414b94
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x414b94
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x414baa
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x414bcf
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x40ef29
test ebx, ebx
je 0x414c0e
cmp dword [esp + 0x10], 0
jne 0x41f563
mov dword [esi + 0x7c], eax
jmp 0x41b90a
cmp dword [esp + 0x10], 0
mov edx, dword [esi + 4]
mov dword [esi + 0x2c], edx
je 0x414d87
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x414d77
mov ebx, 1
mov eax, dword [esi + 4]
mov edx, ebx
cmp eax, dword [ebp + 0x78]
jae 0x414d54
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x414d3a
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x414c71
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x414d3a
test cl, 0x10
jne 0x414c94
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x414d3a
test cl, 8
jne 0x414cc3
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x414d3a
test cl, 4
jne 0x414cfe
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x414d3a
and ecx, ebx
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
cmp dword [esi + 0x78], ecx
je 0x414d77
add eax, edx
add edi, ebx
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x414c36
jmp 0x414d77
cmp dword [ebp + 0x88], 0
je 0x414d77
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x414d77
mov dword [ebp + 0x60], ebx
cmp dword [ebp + 0x88], ebx
jg 0x41055c
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41d29e
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
jge 0x414de3
mov edx, 1
mov edi, edi
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x414dc0
movzx edi, byte [ecx]
cmp dword [esi + 0x78], edi
je 0x414de3
inc ecx
add eax, edx
mov dword [esi + 4], ecx
cmp eax, dword [esi + 0x84]
jl 0x414da0
jmp 0x414de3
cmp dword [ebp + 0x88], 0
je 0x414de3
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x414de3
mov dword [ebp + 0x60], edx
cmp dword [ebp + 0x88], edx
jg 0x41055c
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41b946
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + 1]
movzx edx, byte [ecx + 2]
shl eax, 8
or eax, edx
mov dword [esi + 0x84], eax
mov dword [esi + 0x88], eax
add dword [esi + 8], 3
mov ebx, 1
jmp 0x414f10
mov dword [esi + 0x88], edi
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
mov dword [esi + 0x84], ecx
mov eax, dword [esi + 8]
xor ebx, ebx
cmp byte [eax], 0x5c
sete bl
add eax, 3
mov dword [esi + 8], eax
jmp 0x414f10
mov eax, 1
mov dword [esi + 0x88], edi
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], eax
mov dword [esp + 0x14], eax
jmp 0x414f10
mov eax, 1
mov dword [esi + 0x88], eax
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], eax
mov dword [esp + 0x14], eax
jmp 0x414f10
mov eax, 1
mov dword [esi + 0x88], edi
mov dword [esi + 0x84], eax
add dword [esi + 8], eax
mov dword [esp + 0x14], eax
jmp 0x414f10
mov dword [esi + 0x88], edi
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
mov dword [esi + 0x84], ecx
add dword [esi + 8], 3
mov dword [esp + 0x14], 1
jmp 0x414f10
mov ecx, dword [esi + 8]
movzx eax, byte [ecx]
inc ecx
mov dword [esi + 8], ecx
movsx ecx, byte [eax + 0x43bf9f]
lea ebx, [eax - 0x55]
mov dword [esi + 0x88], ecx
movsx eax, byte [eax + 0x43bfa7]
and ebx, 1
mov dword [esi + 0x84], eax
cmp eax, edi
jne 0x414f10
mov dword [esi + 0x84], 0x7fffffff
mov edx, dword [esi + 8]
movzx eax, byte [edx]
mov dword [esi + 0x74], eax
mov edi, 1
add dword [esi + 8], edi
mov eax, dword [esi + 0x74]
cmp eax, 0x10
je 0x414f37
cmp eax, 0xf
je 0x414f37
mov dword [esi + 0x58], 0xffffffff
jmp 0x414f5a
xor ecx, ecx
cmp eax, 0xf
sete cl
mov dword [esi + 0x60], ecx
mov edx, dword [esi + 8]
movzx eax, byte [edx]
mov dword [esi + 0x58], eax
add dword [esi + 8], edi
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
mov dword [esi + 0x5c], ecx
add dword [esi + 8], edi
mov eax, dword [esi + 0x88]
test eax, eax
jle 0x4164ee
mov ecx, dword [esi + 0x58]
test ecx, ecx
js 0x41600c
cmp ecx, 8
ja case.0x41636c.9
jmp dword [ecx*4 + 0x41fcdc]
cmp dword [esi + 0x60], 0
je 0x414fae
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x414f9f
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
nop
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x415022
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41500e
cmp ecx, 0xc0
jb 0x41500e
test cl, 0x20
jne 0x414fea
inc eax
jmp 0x41500b
test cl, 0x10
jne 0x414ff4
add eax, 2
jmp 0x41500b
test cl, 8
jne 0x414ffe
add eax, 3
jmp 0x41500b
test cl, 4
jne 0x415008
add eax, 4
jmp 0x41500b
add eax, 5
mov dword [esi + 4], eax
mov edi, 1
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x414fc0
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x41504e
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x41504e
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x41504e
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x415064
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4151e6
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x415189
cmp ecx, 0xc0
jb 0x415189
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x4150c7
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x415186
test cl, 0x10
jne 0x4150e8
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x415186
test cl, 8
jne 0x415115
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x415186
test cl, 4
jne 0x41514b
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x415186
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x43d9c0]
shl eax, 7
and ecx, 0x7f
add eax, ecx
movzx ecx, word [eax*2 + 0x43fbc0]
movzx eax, byte [ecx*8 + 0x43c8e1]
cmp eax, 9
je 0x4151c0
cmp eax, 5
je 0x4151c0
cmp eax, 8
je 0x4151c0
xor eax, eax
jmp 0x4151c5
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x41522e
mov edi, 1
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x415084
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x415209
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x415209
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41521f
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x415244
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4153bd
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x415369
cmp ecx, 0xc0
jb 0x415369
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x4152a7
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x415366
test cl, 0x10
jne 0x4152c8
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x415366
test cl, 8
jne 0x4152f5
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x415366
test cl, 4
jne 0x41532b
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x415366
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x43d9c0]
shl eax, 7
and ecx, 0x7f
add eax, ecx
movzx ecx, word [eax*2 + 0x43fbc0]
movzx eax, byte [ecx*8 + 0x43c8e1]
mov ecx, dword [eax*4 + 0x43c160]
xor eax, eax
cmp ecx, dword [esi + 0x5c]
sete al
cmp eax, dword [esi + 0x60]
je 0x41540e
mov edi, 1
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x415264
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x4153e9
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x4153e9
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x4153e9
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4153ff
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x415424
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x415599
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41554c
cmp ecx, 0xc0
jb 0x41554c
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x415487
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x415549
test cl, 0x10
jne 0x4154a8
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x415549
test cl, 8
jne 0x4154d5
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x415549
test cl, 4
jne 0x41550e
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x415549
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x43d9c0]
and ecx, 0x7f
shl eax, 7
add eax, ecx
movzx ecx, word [eax*2 + 0x43fbc0]
movzx eax, byte [ecx*8 + 0x43c8e1]
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x4155e1
mov edi, 1
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x415444
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x4155bc
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x4155bc
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4155d2
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4155f7
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
jmp 0x415620
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x415779
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41572c
cmp ecx, 0xc0
jb 0x41572c
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x415663
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x415729
test cl, 0x10
jne 0x415684
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x415729
test cl, 8
jne 0x4156b1
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x415729
test cl, 4
jne 0x4156ee
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x415729
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x43d9c0]
and ecx, 0x7f
shl eax, 7
add eax, ecx
movzx ecx, word [eax*2 + 0x43fbc0]
movzx eax, byte [ecx*8 + 0x43c8e0]
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x4157c1
mov edi, 1
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x415620
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x41579c
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x41579c
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4157b2
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4157d7
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
jmp 0x415800
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x415967
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41590c
cmp ecx, 0xc0
jb 0x41590c
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x415843
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x415909
test cl, 0x10
jne 0x415864
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x415909
test cl, 8
jne 0x415891
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x415909
test cl, 4
jne 0x4158ce
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x415909
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x43d9c0]
shl eax, 7
and ecx, 0x7f
add eax, ecx
movzx ecx, word [eax*2 + 0x43fbc0]
movzx eax, byte [ecx*8 + 0x43c8e1]
mov eax, dword [eax*4 + 0x43c160]
mov edi, 1
cmp eax, edi
je 0x415949
cmp eax, 3
je 0x415949
xor eax, eax
jmp 0x41594b
mov eax, edi
cmp eax, dword [esi + 0x60]
je 0x4159b8
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x415800
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x415993
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x415993
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x415993
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4159a9
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4159ce
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov edi, edi
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x415b6a
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x415afc
cmp ecx, 0xc0
jb 0x415afc
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x415a33
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x415af9
test cl, 0x10
jne 0x415a54
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x415af9
test cl, 8
jne 0x415a81
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x415af9
test cl, 4
jne 0x415abe
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x415af9
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x43d9c0]
shl eax, 7
mov edi, ecx
and edi, 0x7f
add eax, edi
movzx eax, word [eax*2 + 0x43fbc0]
movzx eax, byte [eax*8 + 0x43c8e1]
cmp dword [eax*4 + 0x43c160], 6
je 0x415b44
cmp ecx, 9
je 0x415b44
cmp ecx, 0xa
je 0x415b44
cmp ecx, 0xc
je 0x415b44
cmp ecx, 0xd
je 0x415b44
xor eax, eax
jmp 0x415b49
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x415bbb
mov edi, 1
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x4159f0
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x415b96
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x415b96
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x415b96
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x415bac
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x415bd1
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x415d70
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x415cfd
cmp ecx, 0xc0
jb 0x415cfd
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x415c34
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x415cfa
test cl, 0x10
jne 0x415c55
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x415cfa
test cl, 8
jne 0x415c82
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x415cfa
test cl, 4
jne 0x415cbf
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x415cfa
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x43d9c0]
shl eax, 7
mov edi, ecx
and edi, 0x7f
add eax, edi
movzx eax, word [eax*2 + 0x43fbc0]
movzx eax, byte [eax*8 + 0x43c8e1]
cmp dword [eax*4 + 0x43c160], 6
je 0x415d4a
cmp ecx, 9
je 0x415d4a
cmp ecx, 0xa
je 0x415d4a
cmp ecx, 0xb
je 0x415d4a
cmp ecx, 0xc
je 0x415d4a
cmp ecx, 0xd
je 0x415d4a
xor eax, eax
jmp 0x415d4f
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x415dc1
mov edi, 1
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x415bf1
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x415d9c
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x415d9c
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x415d9c
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x415db2
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x415dd7
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
jmp 0x415e00
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x415f6e
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x415f0c
cmp ecx, 0xc0
jb 0x415f0c
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x415e43
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x415f09
test cl, 0x10
jne 0x415e64
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x415f09
test cl, 8
jne 0x415e91
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x415f09
test cl, 4
jne 0x415ece
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x415f09
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x43d9c0]
shl eax, 7
mov edi, ecx
and edi, 0x7f
add eax, edi
movzx eax, word [eax*2 + 0x43fbc0]
movzx eax, byte [eax*8 + 0x43c8e1]
mov eax, dword [eax*4 + 0x43c160]
mov edi, 1
cmp eax, edi
je 0x415f50
cmp eax, 3
je 0x415f50
cmp ecx, 0x5f
je 0x415f50
xor eax, eax
jmp 0x415f52
mov eax, edi
cmp eax, dword [esi + 0x60]
je 0x415fbf
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x415e00
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x415f9a
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x415f9a
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x415f9a
lea edx, [esp + 0x20]
mov eax, esi
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x415fb0
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x415fd5
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
lea ecx, [esp + 0x20]
mov eax, esi
cmp eax, ecx
mov esi, dword [esi]
je 0x415ffa
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41fa84
mov edi, 0xfffffff2
jmp 0x41a811
mov ecx, dword [esi + 0x74]
cmp ecx, 0x16
jne 0x416355
mov ebp, dword [esp + 0x1c0]
cmp eax, 1
jl 0x4164f5
jmp 0x416030
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4162e3
mov eax, edx
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41613e
cmp ecx, 0xc0
jb 0x41613e
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x416075
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41613b
test cl, 0x10
jne 0x416096
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41613b
test cl, 8
jne 0x4160c3
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41613b
test cl, 4
jne 0x416100
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41613b
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
and ecx, 0x7f
shl edx, 7
add edx, ecx
movzx eax, word [edx*2 + 0x43fbc0]
movzx ecx, byte [eax*8 + 0x43c8e1]
cmp dword [ecx*4 + 0x43c160], 2
je 0x416330
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4162d1
lea esp, [esp]
cmp dword [esp + 0x10], 0
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
mov edx, 1
je 0x41628e
cmp ecx, 0xc0
jb 0x41628e
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x4161c0
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x41628e
test cl, 0x10
jne 0x4161e3
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x41628e
test cl, 8
jne 0x416212
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x41628e
test cl, 4
jne 0x416251
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x41628e
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebp, ecx
shr ebp, 7
movzx ebp, byte [ebp + 0x43d9c0]
and ecx, 0x7f
shl ebp, 7
add ebp, ecx
movzx ecx, word [ebp*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e1]
cmp dword [ecx*4 + 0x43c160], 2
mov ebp, dword [esp + 0x1c0]
jne 0x4162d1
add edx, eax
mov dword [esi + 4], edx
cmp edx, dword [ebp + 0x78]
jb 0x416180
inc edi
cmp edi, dword [esi + 0x88]
jle 0x416030
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x41630b
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x41630b
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x416321
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x416346
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
add ecx, 0xfffffffa
cmp dword [esp + 0x10], 0
je 0x4174db
cmp ecx, 0xf
ja case.0x41636c.9
jmp dword [ecx*4 + 0x41fd00]
mov edx, edi
cmp eax, edx
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x41641d
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x4163be
mov edx, dword [esp + 0x10]
push edx
mov edx, dword [ebp + 0x78]
lea ecx, [ebp + 0x1c]
push ecx
push edx
push eax
mov eax, dword [esi + 4]
push eax
call fcn.00420f40
add esp, 0x14
test eax, eax
jne 0x416465
lea edx, [eax + 1]
jmp 0x4163e7
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x1c]
cmp ecx, eax
ja 0x4163e7
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, byte [ebp + 0x2c]
jne 0x4163e7
cmp dword [ebp + 0x1c], edx
je 0x416465
mov al, byte [eax + 1]
cmp al, byte [ebp + 0x2d]
je 0x416465
add dword [esi + 4], edx
mov eax, dword [esi + 4]
mov ecx, eax
cmp ecx, dword [ebp + 0x78]
jae 0x41640a
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
jne 0x41640a
add eax, edx
mov ecx, eax
mov dword [esi + 4], eax
cmp ecx, dword [ebp + 0x78]
jb 0x4163f4
add edi, edx
cmp edi, dword [esi + 0x88]
jle 0x416384
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x416440
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x416440
mov dword [ebp + 0x60], edx
cmp dword [ebp + 0x88], edx
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x416456
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41647b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, edi
cmp eax, 1
jl 0x4164ee
mov edx, dword [esp + 0x1c0]
mov ecx, dword [esi + 4]
mov edi, dword [edx + 0x78]
cmp ecx, edi
jae 0x41652a
inc dword [esi + 4]
mov eax, dword [esi + 4]
mov edi, dword [edx + 0x78]
mov ecx, eax
cmp ecx, edi
jae 0x4164e5
lea esp, [esp]
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x4164de
mov edx, dword [esp + 0x1c0]
inc eax
mov dword [esi + 4], eax
mov edi, dword [edx + 0x78]
mov ecx, eax
cmp ecx, edi
jb 0x4164c0
mov edx, dword [esp + 0x1c0]
inc ebp
cmp ebp, dword [esi + 0x88]
jle 0x4164a2
mov ebp, dword [esp + 0x1c0]
mov ecx, dword [esi + 0x88]
cmp ecx, dword [esi + 0x84]
je 0x40ef29
test ebx, ebx
je 0x417f09
mov eax, dword [esi + 0x58]
test eax, eax
js 0x417eec
cmp eax, 8
ja case.0x41ba84.15
jmp dword [eax*4 + 0x41fd40]
cmp dword [edx + 0x88], 0
je 0x416552
mov eax, dword [esi + 4]
cmp eax, dword [edx + 0x84]
jbe 0x416552
mov eax, 1
mov dword [edx + 0x60], eax
cmp dword [edx + 0x88], eax
jg 0x41273d
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x416568
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 0x88]
mov ecx, dword [ebp + 0x78]
sub ecx, eax
cmp dword [esi + 4], ecx
jbe 0x41764a
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4165a8
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
jmp 0x4165d0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x416726
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x4166cd
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x416608
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x4166ca
test cl, 0x10
jne 0x416629
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x4166ca
test cl, 8
jne 0x416656
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x4166ca
test cl, 4
jne 0x41668f
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x4166ca
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0xd
ja 0x4166f3
je 0x4166de
cmp ecx, 0xa
je 0x416714
add ecx, 0xfffffff5
jmp 0x416701
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x416714
mov eax, ecx
cmp byte [eax], 0xa
jne 0x416714
inc eax
mov dword [esi + 4], eax
jmp 0x416714
cmp ecx, 0x85
je 0x41670a
add ecx, 0xffffdfd8
cmp ecx, 1
ja 0x416773
cmp dword [ebp + 0x64], 0
jne 0x416798
inc edx
cmp edx, dword [esi + 0x88]
jle 0x4165d0
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x41674e
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x41674e
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x416764
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x416789
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4167ae
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov edi, edi
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x416947
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x4168cd
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x416808
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x4168ca
test cl, 0x10
jne 0x416829
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x4168ca
test cl, 8
jne 0x416856
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x4168ca
test cl, 4
jne 0x41688f
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x4168ca
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x180e
ja 0x4168ff
je 0x41699d
cmp ecx, 0xa0
ja 0x4168f7
je 0x41699d
cmp ecx, 9
je 0x41699d
cmp ecx, 0x20
jmp 0x41692f
cmp ecx, 0x1680
jmp 0x41692f
cmp ecx, 0x205f
ja 0x416929
je 0x41699d
cmp ecx, 0x2000
jb 0x416935
cmp ecx, 0x200a
jbe 0x41699d
cmp ecx, 0x202f
jmp 0x41692f
cmp ecx, 0x3000
je 0x41699d
inc edx
cmp edx, dword [esi + 0x88]
jle 0x4167d0
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x416978
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x416978
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x416978
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41698e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4169b3
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x416b42
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x416ad0
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x416a0b
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x416acd
test cl, 0x10
jne 0x416a2c
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x416acd
test cl, 8
jne 0x416a59
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x416acd
test cl, 4
jne 0x416a92
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x416acd
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x180e
ja 0x416afe
je 0x416b30
cmp ecx, 0xa0
ja 0x416af6
je 0x416b30
cmp ecx, 9
je 0x416b30
cmp ecx, 0x20
jmp 0x416b2a
cmp ecx, 0x1680
jmp 0x416b2a
cmp ecx, 0x205f
ja 0x416b24
je 0x416b30
cmp ecx, 0x2000
jb 0x416b98
cmp ecx, 0x200a
jbe 0x416b30
cmp ecx, 0x202f
jmp 0x416b2a
cmp ecx, 0x3000
jne 0x416b98
inc edx
cmp edx, dword [esi + 0x88]
jle 0x4169d3
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x416b73
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x416b73
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x416b73
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x416b89
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x416bae
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov edi, edi
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x416d0b
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x416ccd
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x416c08
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x416cca
test cl, 0x10
jne 0x416c29
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x416cca
test cl, 8
jne 0x416c56
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x416cca
test cl, 4
jne 0x416c8f
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x416cca
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x85
ja 0x416ce5
je 0x416d61
cmp ecx, 0xa
jb 0x416cf9
cmp ecx, 0xd
jmp 0x416cf3
cmp ecx, 0x2028
jb 0x416cf9
cmp ecx, 0x2029
jbe 0x416d61
inc edx
cmp edx, dword [esi + 0x88]
jle 0x416bd0
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x416d3c
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x416d3c
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x416d3c
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x416d52
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x416d77
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
jmp 0x416da0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x416ed0
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x416e9d
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x416dd8
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x416e9a
test cl, 0x10
jne 0x416df9
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x416e9a
test cl, 8
jne 0x416e26
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x416e9a
test cl, 4
jne 0x416e5f
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x416e9a
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x85
ja 0x416eaf
je 0x416ebe
add ecx, 0xfffffff6
cmp ecx, 3
jmp 0x416eb8
add ecx, 0xffffdfd8
cmp ecx, 1
ja 0x416f26
inc edx
cmp edx, dword [esi + 0x88]
jle 0x416da0
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x416f01
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x416f01
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x416f01
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x416f17
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x416f3c
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x417084
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x41705d
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x416f98
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x41705a
test cl, 0x10
jne 0x416fb9
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x41705a
test cl, 8
jne 0x416fe6
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x41705a
test cl, 4
jne 0x41701f
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x41705a
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0x80
jae 0x417072
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne 0x4170da
inc edx
cmp edx, dword [esi + 0x88]
jle 0x416f60
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x4170b5
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x4170b5
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x4170b5
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4170cb
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4170f0
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x417146
mov ecx, eax
mov al, byte [ecx]
cmp al, 0x80
jae 0x41719c
mov edi, dword [ebp + 0x38]
movzx eax, al
test byte [eax + edi], 4
je 0x41719c
inc ecx
inc edx
mov dword [esi + 4], ecx
cmp edx, dword [esi + 0x88]
jle 0x417110
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417177
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x417177
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x417177
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41718d
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4171b2
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, edi
cmp eax, 1
jl 0x4164ee
mov edx, dword [esp + 0x1c0]
mov ecx, dword [esi + 4]
mov edi, dword [edx + 0x78]
lea esp, [esp]
cmp ecx, edi
jae 0x417243
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, 0x80
jae 0x417202
mov edi, dword [edx + 0x38]
movzx ecx, cl
test byte [ecx + edi], 1
jne 0x417290
inc eax
mov dword [esi + 4], eax
mov edi, dword [edx + 0x78]
mov ecx, eax
cmp ecx, edi
jae 0x417235
nop
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x41722e
mov edx, dword [esp + 0x1c0]
inc eax
mov dword [esi + 4], eax
mov edi, dword [edx + 0x78]
mov ecx, eax
cmp ecx, edi
jb 0x417210
mov edx, dword [esp + 0x1c0]
inc ebp
cmp ebp, dword [esi + 0x88]
jle 0x4171e0
jmp 0x4164ee
cmp dword [edx + 0x88], 0
je 0x41726b
mov eax, dword [esi + 4]
cmp eax, dword [edx + 0x84]
jbe 0x41726b
mov eax, 1
mov dword [edx + 0x60], eax
cmp dword [edx + 0x88], eax
jg 0x41273d
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417281
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4172a6
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4172fc
mov ecx, eax
mov al, byte [ecx]
cmp al, 0x80
jae 0x417352
mov edi, dword [ebp + 0x38]
movzx eax, al
test byte [eax + edi], 1
je 0x417352
inc ecx
inc edx
mov dword [esi + 4], ecx
cmp edx, dword [esi + 0x88]
jle 0x4172c6
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x41732d
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x41732d
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41732d
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417343
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417368
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, edi
cmp eax, 1
jl 0x4164ee
mov edx, dword [esp + 0x1c0]
mov ecx, dword [esi + 4]
mov edi, dword [edx + 0x78]
nop
cmp ecx, edi
jae 0x4173f3
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, 0x80
jae 0x4173b2
mov edi, dword [edx + 0x38]
movzx ecx, cl
test byte [ecx + edi], 0x10
jne 0x417440
inc eax
mov dword [esi + 4], eax
mov edi, dword [edx + 0x78]
mov ecx, eax
cmp ecx, edi
jae 0x4173e5
nop
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x4173de
mov edx, dword [esp + 0x1c0]
inc eax
mov dword [esi + 4], eax
mov edi, dword [edx + 0x78]
mov ecx, eax
cmp ecx, edi
jb 0x4173c0
mov edx, dword [esp + 0x1c0]
inc ebp
cmp ebp, dword [esi + 0x88]
jle 0x417390
jmp 0x4164ee
cmp dword [edx + 0x88], 0
je 0x41741b
mov eax, dword [esi + 4]
cmp eax, dword [edx + 0x84]
jbe 0x41741b
mov eax, 1
mov dword [edx + 0x60], eax
cmp dword [edx + 0x88], eax
jg 0x41273d
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417431
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417456
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4174ac
mov ecx, eax
mov al, byte [ecx]
cmp al, 0x80
jae 0x415fbf
mov edi, dword [ebp + 0x38]
movzx eax, al
test byte [eax + edi], 0x10
je 0x415fbf
inc ecx
inc edx
mov dword [esi + 4], ecx
cmp edx, dword [esi + 0x88]
jle 0x417476
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x415f9a
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x415f9a
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jmp 0x415f8b
cmp ecx, 0xf
ja case.0x4174e4.9
jmp dword [ecx*4 + 0x41fd64]
mov edx, edi
cmp eax, edx
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
lea esp, [esp]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x417572
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x417537
mov ecx, dword [ebp + 0x78]
push 0
lea edx, [ebp + 0x1c]
push edx
mov edx, dword [esi + 4]
push ecx
push eax
push edx
call fcn.00420f40
add esp, 0x14
test eax, eax
jne 0x4175c3
lea edx, [eax + 1]
jmp 0x417560
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x1c]
cmp ecx, eax
ja 0x417560
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, byte [ebp + 0x2c]
jne 0x417560
cmp dword [ebp + 0x1c], edx
je 0x4175c3
mov al, byte [eax + 1]
cmp al, byte [ebp + 0x2d]
je 0x4175c3
add dword [esi + 4], edx
add edi, edx
cmp edi, dword [esi + 0x88]
jle 0x417500
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x41759e
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x41759e
mov dword [ebp + 0x60], edx
cmp dword [ebp + 0x88], edx
jle 0x41759e
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4175b4
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4175d9
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 0x88]
mov edx, dword [ebp + 0x78]
mov ecx, dword [esi + 4]
sub edx, eax
cmp ecx, edx
jbe 0x41764a
cmp dword [ebp + 0x88], 0
je 0x417625
cmp ecx, dword [ebp + 0x84]
jbe 0x417625
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41763b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
add dword [esi + 4], eax
jmp 0x4164f5
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 0x88]
mov edx, dword [ebp + 0x78]
mov ecx, dword [esi + 4]
sub edx, eax
cmp ecx, edx
jbe 0x41764a
cmp dword [ebp + 0x88], 0
je 0x41768b
cmp ecx, dword [ebp + 0x84]
jbe 0x41768b
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4176a1
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41771c
mov ecx, eax
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 4], ecx
cmp eax, 0x7b
ja case.0x4176e9.14
movzx eax, byte [eax + 0x41fdb4]
jmp dword [eax*4 + 0x41fda4]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae case.0x4176e9.10
cmp byte [ecx], 0xa
jne case.0x4176e9.10
inc ecx
mov dword [esi + 4], ecx
jmp case.0x4176e9.10
cmp dword [ebp + 0x64], 0
jne 0x41776d
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x4176c1
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417748
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x417748
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x417748
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41775e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417783
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4177a8
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x417804
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 9
je 0x417855
cmp ecx, 0x20
je 0x417855
cmp ecx, 0xa0
je 0x417855
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x4177c8
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417830
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x417830
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x417830
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417846
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41786b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
jmp 0x417890
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4178c4
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 9
je 0x4178b5
cmp ecx, 0x20
je 0x4178b5
cmp ecx, 0xa0
jne 0x417915
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x417890
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x4178f0
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x4178f0
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x4178f0
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417906
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41792b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
jmp 0x417950
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x417988
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xa
jl 0x417979
cmp ecx, 0xd
jle 0x4179d9
cmp ecx, 0x85
je 0x4179d9
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x417950
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x4179b4
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x4179b4
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x4179b4
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x4179ca
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x4179ef
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
nop
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x417a48
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xa
jl 0x417a99
cmp ecx, 0xd
jle 0x417a39
cmp ecx, 0x85
jne 0x417a99
add edx, edi
cmp edx, dword [esi + 0x88]
jle 0x417a10
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417a74
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x417a74
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x417a74
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417a8a
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417aaf
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
nop
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x417b00
movzx edx, byte [eax]
mov edi, dword [ebp + 0x38]
test byte [edx + edi], 4
jne 0x417b48
inc eax
mov edi, 1
add ecx, edi
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x88]
jle 0x417ad0
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417b23
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x417b23
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417b39
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417b5e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov edi, edi
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x417bb2
mov edi, dword [ebp + 0x38]
mov eax, edx
movzx edx, byte [eax]
test byte [edx + edi], 4
je 0x417bfa
inc eax
mov edi, 1
add ecx, edi
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x88]
jle 0x417b80
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417bd5
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x417bd5
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417beb
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417c10
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x417c62
mov edi, dword [ebp + 0x38]
mov eax, edx
movzx edx, byte [eax]
test byte [edx + edi], 1
jne 0x417caa
inc eax
mov edi, 1
add ecx, edi
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x88]
jle 0x417c30
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417c85
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x417c85
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417c9b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417cc0
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x417d12
mov edi, dword [ebp + 0x38]
mov eax, edx
movzx edx, byte [eax]
test byte [edx + edi], 1
je 0x417d5a
inc eax
mov edi, 1
add ecx, edi
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x88]
jle 0x417ce0
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417d35
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x417d35
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417d4b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417d70
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x417dc2
mov edi, dword [ebp + 0x38]
mov eax, edx
movzx edx, byte [eax]
test byte [edx + edi], 0x10
jne 0x417e0a
inc eax
mov edi, 1
add ecx, edi
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x88]
jle 0x417d90
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417de5
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x417de5
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417dfb
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417e20
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, edi
cmp eax, edi
jl 0x4164ee
mov ebp, dword [esp + 0x1c0]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x417e72
mov edi, dword [ebp + 0x38]
mov eax, edx
movzx edx, byte [eax]
test byte [edx + edi], 0x10
je 0x417eba
inc eax
mov edi, 1
add ecx, edi
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x88]
jle 0x417e40
jmp 0x4164f5
cmp dword [ebp + 0x88], 0
je 0x417e95
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x417e95
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x417eab
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x417ed0
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x415fec
cmp dword [esi + 0x74], 0x16
je 0x41f5ef
cmp dword [esp + 0x10], 0
jne 0x41f5fd
mov dword [esi + 0x7c], ecx
jmp 0x41bb10
mov edx, dword [esi + 4]
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x58]
test eax, eax
js 0x418d40
cmp eax, 8
ja case.0x41d512.15
jmp dword [eax*4 + 0x41fe30]
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x418d30
lea esp, [esp]
mov edx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov ecx, 1
cmp edx, dword [eax + 0x78]
jae 0x417fb4
cmp dword [esp + 0x10], 0
movzx eax, byte [edx]
je 0x417f97
cmp eax, 0xc0
jb 0x417f97
test al, 0x20
jne 0x417f74
mov ecx, 2
jmp 0x417f97
test al, 0x10
jne 0x417f7f
mov ecx, 3
jmp 0x417f97
test al, 8
jne 0x417f8a
mov ecx, 4
jmp 0x417f97
test al, 4
mov ecx, 0
setne cl
add ecx, 5
cmp dword [esi + 0x60], 0
jne 0x418d30
add ecx, edx
inc edi
mov dword [esi + 4], ecx
cmp edi, dword [esi + 0x84]
jl 0x417f40
jmp 0x418d30
cmp dword [eax + 0x88], 0
je 0x418d30
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x1c0]
cmp eax, dword [ecx + 0x84]
jbe 0x418d30
mov eax, dword [esp + 0x1c0]
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jle 0x418d30
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x412745
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x418d30
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov edx, 1
cmp ecx, dword [eax + 0x78]
jae 0x41818d
cmp dword [esp + 0x10], 0
mov eax, ecx
movzx ecx, byte [eax]
je 0x418131
cmp ecx, 0xc0
jb 0x418131
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x418063
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x418131
test cl, 0x10
jne 0x418086
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x418131
test cl, 8
jne 0x4180b5
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x418131
test cl, 4
jne 0x4180f4
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x418131
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebx, ecx
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
and ecx, 0x7f
shl ebx, 7
add ebx, ecx
movzx ecx, word [ebx*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e1]
cmp ecx, 9
je 0x418168
cmp ecx, 5
je 0x418168
cmp ecx, 8
je 0x418168
xor ecx, ecx
jmp 0x41816d
mov ecx, 1
cmp ecx, dword [esi + 0x60]
je 0x418d30
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x418011
jmp 0x418d30
cmp dword [eax + 0x88], 0
je 0x418d30
mov edx, dword [esi + 4]
cmp edx, dword [eax + 0x84]
jbe 0x418d30
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jle 0x418d30
jmp 0x41273d
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x418d30
jmp 0x4181e0
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov edx, 1
cmp ecx, dword [eax + 0x78]
jae 0x41818d
cmp dword [esp + 0x10], 0
mov eax, ecx
movzx ecx, byte [eax]
je 0x4182fc
cmp ecx, 0xc0
jb 0x4182fc
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x41822e
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x4182fc
test cl, 0x10
jne 0x418251
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x4182fc
test cl, 8
jne 0x418280
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x4182fc
test cl, 4
jne 0x4182bf
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x4182fc
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebx, ecx
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
and ecx, 0x7f
shl ebx, 7
add ebx, ecx
movzx ecx, word [ebx*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e1]
mov ecx, dword [ecx*4 + 0x43c160]
xor ebx, ebx
cmp ecx, dword [esi + 0x5c]
sete bl
cmp ebx, dword [esi + 0x60]
je 0x418d30
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x4181e0
jmp 0x418d30
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x418d30
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov edx, 1
cmp ecx, dword [eax + 0x78]
jae 0x41818d
cmp dword [esp + 0x10], 0
mov eax, ecx
movzx ecx, byte [eax]
je 0x418481
cmp ecx, 0xc0
jb 0x418481
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x4183b3
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x418481
test cl, 0x10
jne 0x4183d6
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x418481
test cl, 8
jne 0x418405
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x418481
test cl, 4
jne 0x418444
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x418481
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebx, ecx
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
shl ebx, 7
and ecx, 0x7f
add ebx, ecx
movzx ecx, word [ebx*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e1]
xor ebx, ebx
cmp ecx, dword [esi + 0x5c]
sete bl
cmp ebx, dword [esi + 0x60]
je 0x418d30
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x418361
jmp 0x418d30
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x418d30
nop
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov edx, 1
cmp ecx, dword [eax + 0x78]
jae 0x41818d
cmp dword [esp + 0x10], 0
mov eax, ecx
movzx ecx, byte [eax]
je 0x418604
cmp ecx, 0xc0
jb 0x418604
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x418532
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x418604
test cl, 0x10
jne 0x418555
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x418604
test cl, 8
jne 0x418588
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x418604
test cl, 4
jne 0x4185c7
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x418604
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebx, ecx
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
shl ebx, 7
and ecx, 0x7f
add ebx, ecx
movzx ecx, word [ebx*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e0]
xor ebx, ebx
cmp ecx, dword [esi + 0x5c]
sete bl
cmp ebx, dword [esi + 0x60]
je 0x418d30
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x4184e0
jmp 0x418d30
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x418d30
jmp 0x418670
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov edx, 1
cmp ecx, dword [eax + 0x78]
jae 0x41818d
cmp dword [esp + 0x10], 0
mov eax, ecx
movzx ecx, byte [eax]
je 0x418794
cmp ecx, 0xc0
jb 0x418794
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x4186c2
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x418794
test cl, 0x10
jne 0x4186e5
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x418794
test cl, 8
jne 0x418718
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x418794
test cl, 4
jne 0x418757
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x418794
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebx, ecx
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
and ecx, 0x7f
shl ebx, 7
add ebx, ecx
movzx ecx, word [ebx*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e1]
mov ecx, dword [ecx*4 + 0x43c160]
cmp ecx, 1
je 0x4187cd
cmp ecx, 3
je 0x4187cd
xor ecx, ecx
jmp 0x4187d2
mov ecx, 1
cmp ecx, dword [esi + 0x60]
je 0x418d30
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x418670
jmp 0x418d30
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x418d30
jmp 0x418810
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov edx, 1
cmp ecx, dword [eax + 0x78]
jae 0x41818d
cmp dword [esp + 0x10], 0
mov eax, ecx
movzx ecx, byte [eax]
je 0x418934
cmp ecx, 0xc0
jb 0x418934
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x418862
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x418934
test cl, 0x10
jne 0x418885
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x418934
test cl, 8
jne 0x4188b8
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x418934
test cl, 4
jne 0x4188f7
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x418934
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebx, ecx
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
shl ebx, 7
mov ebp, ecx
and ebp, 0x7f
add ebx, ebp
movzx ebx, word [ebx*2 + 0x43fbc0]
movzx ebx, byte [ebx*8 + 0x43c8e1]
cmp dword [ebx*4 + 0x43c160], 6
je 0x41897c
cmp ecx, 9
je 0x41897c
cmp ecx, 0xa
je 0x41897c
cmp ecx, 0xc
je 0x41897c
cmp ecx, 0xd
je 0x41897c
xor ecx, ecx
jmp 0x418981
mov ecx, 1
cmp ecx, dword [esi + 0x60]
je 0x418d30
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x418810
jmp 0x418d30
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x418d30
jmp 0x4189c0
mov eax, dword [esp + 0x1c0]
mov ecx, dword [esi + 4]
mov edx, 1
cmp ecx, dword [eax + 0x78]
jae 0x418b6e
cmp dword [esp + 0x10], 0
movzx eax, byte [ecx]
je 0x418afc
cmp eax, 0xc0
jb 0x418afc
test al, 0x20
jne 0x418a0e
movzx edx, byte [ecx + 1]
and eax, 0x1f
and edx, 0x3f
shl eax, 6
or eax, edx
mov edx, 2
jmp 0x418afc
test al, 0x10
jne 0x418a3b
movzx edx, byte [ecx + 1]
and eax, 0xf
and edx, 0x3f
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 3
jmp 0x418afc
test al, 8
jne 0x418a74
movzx edx, byte [ecx + 1]
and eax, 7
and edx, 0x3f
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 4
jmp 0x418afc
test al, 4
jne 0x418ab9
movzx edx, byte [ecx + 1]
and eax, 3
and edx, 0x3f
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 5
jmp 0x418afc
movzx ebx, byte [ecx + 1]
and eax, edx
movzx edx, byte [ecx + 2]
and ebx, 0x3f
shl eax, 6
or ebx, eax
movzx eax, byte [ecx + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [ecx + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 5]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and eax, 0x3f
or eax, ebx
mov edx, 6
mov ebx, eax
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
shl ebx, 7
mov ebp, eax
and ebp, 0x7f
add ebx, ebp
movzx ebx, word [ebx*2 + 0x43fbc0]
movzx ebx, byte [ebx*8 + 0x43c8e1]
cmp dword [ebx*4 + 0x43c160], 6
je 0x418b49
cmp eax, 9
je 0x418b49
cmp eax, 0xa
je 0x418b49
cmp eax, 0xb
je 0x418b49
cmp eax, 0xc
je 0x418b49
cmp eax, 0xd
je 0x418b49
xor eax, eax
jmp 0x418b4e
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x418d30
add edx, ecx
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x4189c0
jmp 0x418d30
cmp dword [eax + 0x88], 0
je 0x418d30
mov ecx, dword [esi + 4]
cmp ecx, dword [eax + 0x84]
jbe 0x418d30
mov dword [eax + 0x60], edx
cmp dword [eax + 0x88], edx
jmp 0x417fec
mov ebp, dword [esi + 0x88]
cmp ebp, dword [esi + 0x84]
jge 0x418d30
lea ebx, [ebx]
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov edx, 1
cmp ecx, dword [eax + 0x78]
jae 0x41818d
cmp dword [esp + 0x10], 0
mov eax, ecx
movzx ecx, byte [eax]
je 0x418cd4
cmp ecx, 0xc0
jb 0x418cd4
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x418c02
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x418cd4
test cl, 0x10
jne 0x418c25
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x418cd4
test cl, 8
jne 0x418c58
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x418cd4
test cl, 4
jne 0x418c97
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x418cd4
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov edi, ecx
shr edi, 7
movzx edi, byte [edi + 0x43d9c0]
shl edi, 7
mov ebx, ecx
and ebx, 0x7f
add edi, ebx
movzx edi, word [edi*2 + 0x43fbc0]
movzx edi, byte [edi*8 + 0x43c8e1]
mov edi, dword [edi*4 + 0x43c160]
cmp edi, 1
je 0x418d14
cmp edi, 3
je 0x418d14
cmp ecx, 0x5f
je 0x418d14
xor ecx, ecx
jmp 0x418d19
mov ecx, 1
cmp ecx, dword [esi + 0x60]
je 0x418d30
add edx, eax
inc ebp
mov dword [esi + 4], edx
cmp ebp, dword [esi + 0x84]
jl 0x418bb0
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41e92e
mov eax, dword [esi + 0x74]
cmp eax, 0x16
jne 0x4190f9
mov eax, dword [esi + 0x88]
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x84]
jge 0x419099
mov eax, dword [esp + 0x1c0]
mov edi, dword [esi + 4]
mov ebp, dword [eax + 0x78]
nop
mov edx, 1
cmp edi, ebp
jae 0x41906b
cmp dword [esp + 0x10], 0
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
je 0x418ea9
cmp ecx, 0xc0
jb 0x418ea9
test cl, 0x20
jne 0x418db8
movzx edx, byte [eax + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x418ea9
test cl, 0x10
jne 0x418de6
movzx edx, byte [eax + 1]
and ecx, 0xf
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x418ea9
test cl, 8
jne 0x418e20
movzx edx, byte [eax + 1]
and ecx, 7
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x418ea9
test cl, 4
jne 0x418e66
movzx edx, byte [eax + 1]
and ecx, 3
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x418ea9
movzx edi, byte [eax + 1]
and ecx, edx
movzx edx, byte [eax + 2]
and edi, 0x3f
shl ecx, 6
or edi, ecx
movzx ecx, byte [eax + 3]
shl edi, 6
and edx, 0x3f
or edi, edx
movzx edx, byte [eax + 4]
shl edi, 6
and ecx, 0x3f
or edi, ecx
movzx ecx, byte [eax + 5]
shl edi, 6
and edx, 0x3f
or edi, edx
shl edi, 6
and ecx, 0x3f
or ecx, edi
mov edx, 6
mov edi, ecx
shr edi, 7
movzx edi, byte [edi + 0x43d9c0]
and ecx, 0x7f
shl edi, 7
add edi, ecx
movzx ecx, word [edi*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e1]
cmp dword [ecx*4 + 0x43c160], 2
je 0x419099
add edx, eax
mov dword [esi + 4], edx
mov edi, edx
mov edx, dword [esp + 0x1c0]
mov ebp, dword [edx + 0x78]
cmp edi, ebp
jae 0x419051
cmp dword [esp + 0x10], 0
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
mov edx, 1
je 0x41900a
cmp ecx, 0xc0
jb 0x41900a
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x418f34
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x41900a
test cl, 0x10
jne 0x418f5b
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x41900a
test cl, 8
jne 0x418f8e
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x41900a
test cl, 4
jne 0x418fcd
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x41900a
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebx, ecx
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
and ecx, 0x7f
shl ebx, 7
add ebx, ecx
movzx ecx, word [ebx*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e1]
cmp dword [ecx*4 + 0x43c160], 2
jne 0x419051
add edx, eax
mov dword [esi + 4], edx
mov edi, edx
mov edx, dword [esp + 0x1c0]
mov ebp, dword [edx + 0x78]
cmp edi, ebp
jb 0x418ef4
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x84]
jl 0x418d70
jmp 0x419099
mov eax, dword [esp + 0x1c0]
cmp dword [eax + 0x88], 0
je 0x419099
mov ecx, dword [esi + 4]
cmp ecx, dword [eax + 0x84]
jbe 0x419099
mov dword [eax + 0x60], edx
cmp dword [eax + 0x88], edx
jg 0x417ff2
cmp dword [esp + 0x14], 0
jne 0x40ef29
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41b15e
mov dword [esi + 0x128], 0x2d
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov ebp, dword [esp + 0x1c0]
mov dword [eax + 8], edx
mov ecx, dword [esi + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [esi + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [esi + 0x14]
mov dword [eax + 0x14], ecx
mov edx, dword [esi + 0x18]
inc edx
mov dword [eax + 0x18], edx
mov dword [eax], esi
mov esi, eax
jmp 0x40ee80
add eax, 0xfffffffa
cmp dword [esp + 0x10], 0
je 0x41a264
cmp eax, 0xf
ja case.0x41d512.15
jmp dword [eax*4 + 0x41fe54]
mov eax, dword [esi + 0x84]
mov edi, dword [esi + 0x88]
cmp eax, 0x7fffffff
jge 0x419223
cmp edi, eax
jge 0x419793
jmp 0x419140
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4191ee
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x41917e
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, dword [ebp + 0x78]
lea edx, [ebp + 0x1c]
push edx
mov edx, dword [esi + 4]
push ecx
push eax
push edx
call fcn.00420f40
add esp, 0x14
test eax, eax
jne 0x419793
jmp 0x4191ac
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x1c]
cmp ecx, eax
ja 0x4191ac
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, byte [ebp + 0x2c]
jne 0x4191ac
cmp dword [ebp + 0x1c], 1
je 0x419793
mov dl, byte [eax + 1]
cmp dl, byte [ebp + 0x2d]
je 0x419793
inc dword [esi + 4]
mov eax, dword [esi + 4]
mov ecx, eax
cmp ecx, dword [ebp + 0x78]
jae 0x4191d5
lea esp, [esp]
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x4191d5
inc eax
mov ecx, eax
mov dword [esi + 4], eax
cmp ecx, dword [ebp + 0x78]
jb 0x4191c0
inc edi
cmp edi, dword [esi + 0x84]
jl 0x419140
mov ebp, dword [esp + 0x1c0]
jmp 0x419937
cmp dword [ebp + 0x88], 0
je 0x419793
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x419793
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x419793
jmp 0x41055c
cmp edi, eax
jge 0x419793
jmp 0x419230
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4191ee
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x41926a
mov edx, dword [esp + 0x10]
push edx
mov edx, dword [ebp + 0x78]
lea ecx, [ebp + 0x1c]
push ecx
push edx
push eax
mov eax, dword [esi + 4]
push eax
call fcn.00420f40
add esp, 0x14
test eax, eax
jne 0x419793
jmp 0x419294
mov edx, dword [ebp + 0x78]
sub edx, dword [ebp + 0x1c]
cmp ecx, edx
ja 0x419294
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, byte [ebp + 0x2c]
jne 0x419294
cmp dword [ebp + 0x1c], 1
je 0x419793
mov dl, byte [eax + 1]
cmp dl, byte [ebp + 0x2d]
je 0x419793
inc dword [esi + 4]
mov eax, dword [esi + 4]
mov ecx, eax
cmp ecx, dword [ebp + 0x78]
jae 0x4192b6
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x4192b6
inc eax
mov ecx, eax
mov dword [esi + 4], eax
cmp ecx, dword [ebp + 0x78]
jb 0x4192a1
inc edi
cmp edi, dword [esi + 0x84]
jl 0x419230
mov ebp, dword [esp + 0x1c0]
jmp 0x419937
mov eax, dword [esi + 0x84]
cmp eax, 0x7fffffff
jge 0x41937a
mov ebp, dword [esi + 0x88]
cmp ebp, eax
jge 0x419793
mov edx, dword [esp + 0x1c0]
mov ecx, dword [esi + 4]
mov edi, dword [edx + 0x78]
jmp 0x419300
cmp ecx, edi
jae 0x41933e
inc dword [esi + 4]
mov eax, dword [esi + 4]
mov edi, dword [edx + 0x78]
mov ecx, eax
cmp ecx, edi
jae 0x41932e
mov bl, byte [eax]
and bl, 0xc0
cmp bl, 0x80
jne 0x41932e
inc eax
mov dword [esi + 4], eax
mov edi, dword [edx + 0x78]
mov ecx, eax
cmp ecx, edi
jb 0x419317
inc ebp
cmp ebp, dword [esi + 0x84]
jl 0x419300
mov ebp, edx
jmp 0x419937
cmp dword [edx + 0x88], 0
je 0x419793
mov edx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
cmp edx, dword [eax + 0x84]
jbe 0x419793
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jle 0x419793
jmp 0x41273d
mov edx, dword [ebp + 0x78]
mov dword [esi + 4], edx
cmp dword [ebp + 0x88], 0
je 0x419793
mov eax, edx
cmp eax, dword [ebp + 0x84]
jbe 0x419793
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x419793
jmp 0x41055c
mov eax, dword [esi + 0x84]
mov edx, dword [ebp + 0x78]
sub eax, dword [esi + 0x88]
sub edx, dword [esi + 4]
cmp eax, edx
jbe 0x419410
mov eax, dword [ebp + 0x78]
mov dword [esi + 4], eax
cmp dword [ebp + 0x88], 0
je 0x419793
mov ecx, eax
cmp ecx, dword [ebp + 0x84]
jbe 0x419793
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x419793
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
add dword [esi + 4], eax
jmp 0x419937
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x419793
mov ebx, 1
nop
mov eax, dword [esi + 4]
mov edx, ebx
cmp eax, dword [ebp + 0x78]
jae 0x4195b1
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x41953c
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x41946b
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x41953c
test cl, 0x10
jne 0x41948e
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x41953c
test cl, 8
jne 0x4194c1
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x41953c
test cl, 4
jne 0x419500
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x41953c
and ecx, ebx
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
cmp ecx, 0xd
jne 0x419560
inc eax
mov dword [esi + 4], eax
cmp eax, dword [ebp + 0x78]
jae 0x419793
cmp byte [eax], 0xa
jne 0x41959e
inc eax
mov dword [esi + 4], eax
jmp 0x41959e
cmp ecx, 0xa
je 0x419599
cmp dword [ebp + 0x64], 0
jne 0x419793
cmp ecx, 0xb
je 0x419599
cmp ecx, 0xc
je 0x419599
cmp ecx, 0x85
je 0x419599
cmp ecx, 0x2028
je 0x419599
cmp ecx, 0x2029
jne 0x419793
add edx, eax
mov dword [esi + 4], edx
add edi, ebx
cmp edi, dword [esi + 0x84]
jl 0x419430
jmp 0x419937
cmp dword [ebp + 0x88], 0
je 0x419793
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x84]
jbe 0x419793
mov dword [ebp + 0x60], ebx
cmp dword [ebp + 0x88], ebx
jle 0x419793
jmp 0x41055c
mov ebp, dword [esi + 0x88]
cmp ebp, dword [esi + 0x84]
jge 0x419793
mov ebx, 0x12
jmp 0x419600
mov ecx, dword [esi + 4]
mov eax, dword [esp + 0x1c0]
mov edx, 1
cmp ecx, dword [eax + 0x78]
jae 0x41979f
movzx eax, byte [ecx]
cmp eax, 0xc0
jb 0x419712
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x20
jne 0x419643
and eax, 0x1f
shl eax, 6
or eax, edx
mov edx, 2
jmp 0x419712
test al, 0x10
jne 0x419665
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 3
jmp 0x419712
test al, 8
jne 0x419697
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 4
jmp 0x419712
test al, 4
jne 0x4196d5
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 5
jmp 0x419712
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 6
cmp eax, 0x180e
ja 0x419747
je 0x419770
cmp eax, 0xa0
ja 0x41973d
je 0x419770
cmp eax, 9
je 0x419770
cmp eax, 0x20
jmp 0x41976a
cmp eax, 0x1680
jmp 0x41976a
cmp eax, 0x205f
ja 0x419765
je 0x419770
cmp eax, 0x2000
jb 0x41976c
cmp eax, 0x200a
jbe 0x419770
cmp eax, 0x202f
jmp 0x41976a
cmp eax, 0x3000
je 0x419770
xor edi, edi
jmp 0x419775
mov edi, 1
xor eax, eax
cmp dword [esi + 0x74], ebx
sete al
cmp edi, eax
je 0x419793
add edx, ecx
inc ebp
mov dword [esi + 4], edx
cmp ebp, dword [esi + 0x84]
jl 0x419600
mov ebp, dword [esp + 0x1c0]
jmp 0x419937
cmp dword [eax + 0x88], 0
je 0x419793
mov ecx, dword [esi + 4]
mov edx, eax
cmp ecx, dword [edx + 0x84]
jbe 0x419793
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jle 0x419793
jmp 0x41273d
mov ebp, dword [esi + 0x88]
cmp ebp, dword [esi + 0x84]
jge 0x419793
mov ebx, dword [esp + 0x1c0]
nop
mov eax, dword [esi + 4]
mov edx, 1
cmp eax, dword [ebx + 0x78]
jae 0x419959
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x4198f4
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x41981e
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x4198f4
test cl, 0x10
jne 0x419845
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x4198f4
test cl, 8
jne 0x419878
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x4198f4
test cl, 4
jne 0x4198b7
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x4198f4
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
cmp ecx, 0x85
ja 0x419947
je 0x419952
cmp ecx, 0xa
jb 0x419914
cmp ecx, 0xd
jbe 0x419952
xor edi, edi
xor ecx, ecx
cmp dword [esi + 0x74], 0x14
sete cl
cmp edi, ecx
je 0x419935
add edx, eax
inc ebp
mov dword [esi + 4], edx
cmp ebp, dword [esi + 0x84]
jl 0x4197e0
mov ebp, ebx
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41da22
add ecx, 0xffffdfd8
cmp ecx, 1
ja 0x419914
mov edi, 1
jmp 0x419916
cmp dword [ebx + 0x88], 0
je 0x419935
mov edx, dword [esi + 4]
cmp edx, dword [ebx + 0x84]
jbe 0x419935
mov dword [ebx + 0x60], 1
cmp dword [ebx + 0x88], 1
jle 0x419935
jmp 0x412822
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x419937
mov eax, dword [esi + 4]
mov edx, 1
cmp eax, dword [ebp + 0x78]
jae 0x419aef
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x419ac3
test cl, 0x20
jne 0x4199d2
movzx edx, byte [eax + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x419ac3
test cl, 0x10
jne 0x419a00
movzx edx, byte [eax + 1]
and ecx, 0xf
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x419ac3
test cl, 8
jne 0x419a3a
movzx edx, byte [eax + 1]
and ecx, 7
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x419ac3
test cl, 4
jne 0x419a80
movzx edx, byte [eax + 1]
and ecx, 3
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x419ac3
movzx ebx, byte [eax + 1]
and ecx, edx
movzx edx, byte [eax + 2]
and ebx, 0x3f
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [eax + 4]
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
movzx ecx, byte [eax + 5]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ecx, ebx
mov edx, 6
cmp ecx, 0x100
jae 0x419ad8
mov ebx, dword [ebp + 0x38]
test byte [ecx + ebx], 4
jne 0x419937
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x419990
jmp 0x419937
cmp dword [ebp + 0x88], 0
je 0x419937
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x419937
mov dword [ebp + 0x60], edx
cmp dword [ebp + 0x88], edx
jle 0x419937
jmp 0x41055c
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x419937
mov eax, dword [esi + 4]
mov edx, 1
cmp eax, dword [ebp + 0x78]
jae 0x419aef
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x419c60
test cl, 0x20
jne 0x419b6f
movzx edx, byte [eax + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x419c60
test cl, 0x10
jne 0x419b9d
movzx edx, byte [eax + 1]
and ecx, 0xf
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x419c60
test cl, 8
jne 0x419bd7
movzx edx, byte [eax + 1]
and ecx, 7
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x419c60
test cl, 4
jne 0x419c1d
movzx edx, byte [eax + 1]
and ecx, 3
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x419c60
movzx ebx, byte [eax + 1]
and ecx, edx
movzx edx, byte [eax + 2]
and ebx, 0x3f
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [eax + 4]
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
movzx ecx, byte [eax + 5]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ecx, ebx
mov edx, 6
cmp ecx, 0x100
jae 0x419937
mov ebx, dword [ebp + 0x38]
test byte [ecx + ebx], 4
je 0x419937
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x419b31
jmp 0x419937
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x419937
mov eax, dword [esi + 4]
mov edx, 1
cmp eax, dword [ebp + 0x78]
jae 0x419aef
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x419dd5
test cl, 0x20
jne 0x419ce4
movzx edx, byte [eax + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x419dd5
test cl, 0x10
jne 0x419d12
movzx edx, byte [eax + 1]
and ecx, 0xf
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x419dd5
test cl, 8
jne 0x419d4c
movzx edx, byte [eax + 1]
and ecx, 7
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x419dd5
test cl, 4
jne 0x419d92
movzx edx, byte [eax + 1]
and ecx, 3
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x419dd5
movzx ebx, byte [eax + 1]
and ecx, edx
movzx edx, byte [eax + 2]
and ebx, 0x3f
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [eax + 4]
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
movzx ecx, byte [eax + 5]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ecx, ebx
mov edx, 6
cmp ecx, 0x100
jae 0x419dea
mov ebx, dword [ebp + 0x38]
test byte [ecx + ebx], 1
jne 0x419937
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x419ca2
jmp 0x419937
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x419937
mov eax, dword [esi + 4]
mov edx, 1
cmp eax, dword [ebp + 0x78]
jae 0x419aef
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x419f46
test cl, 0x20
jne 0x419e55
movzx edx, byte [eax + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x419f46
test cl, 0x10
jne 0x419e83
movzx edx, byte [eax + 1]
and ecx, 0xf
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x419f46
test cl, 8
jne 0x419ebd
movzx edx, byte [eax + 1]
and ecx, 7
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x419f46
test cl, 4
jne 0x419f03
movzx edx, byte [eax + 1]
and ecx, 3
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x419f46
movzx ebx, byte [eax + 1]
and ecx, edx
movzx edx, byte [eax + 2]
and ebx, 0x3f
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [eax + 4]
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
movzx ecx, byte [eax + 5]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ecx, ebx
mov edx, 6
cmp ecx, 0x100
jae 0x419937
mov ebx, dword [ebp + 0x38]
test byte [ecx + ebx], 1
je 0x419937
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x419e13
jmp 0x419937
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x419937
jmp 0x419f90
mov eax, dword [esi + 4]
mov edx, 1
cmp eax, dword [ebp + 0x78]
jae 0x419aef
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x41a0c3
test cl, 0x20
jne 0x419fd2
movzx edx, byte [eax + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x41a0c3
test cl, 0x10
jne 0x41a000
movzx edx, byte [eax + 1]
and ecx, 0xf
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x41a0c3
test cl, 8
jne 0x41a03a
movzx edx, byte [eax + 1]
and ecx, 7
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x41a0c3
test cl, 4
jne 0x41a080
movzx edx, byte [eax + 1]
and ecx, 3
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x41a0c3
movzx ebx, byte [eax + 1]
and ecx, edx
movzx edx, byte [eax + 2]
and ebx, 0x3f
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [eax + 4]
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
movzx ecx, byte [eax + 5]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ecx, ebx
mov edx, 6
cmp ecx, 0x100
jae 0x41a0d8
mov ebx, dword [ebp + 0x38]
test byte [ecx + ebx], 0x10
jne 0x419937
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x419f90
jmp 0x419937
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x419937
mov eax, dword [esi + 4]
mov edx, 1
cmp eax, dword [ebp + 0x78]
jae 0x419aef
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x41a234
test cl, 0x20
jne 0x41a143
movzx edx, byte [eax + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x41a234
test cl, 0x10
jne 0x41a171
movzx edx, byte [eax + 1]
and ecx, 0xf
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x41a234
test cl, 8
jne 0x41a1ab
movzx edx, byte [eax + 1]
and ecx, 7
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x41a234
test cl, 4
jne 0x41a1f1
movzx edx, byte [eax + 1]
and ecx, 3
and edx, 0x3f
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x41a234
movzx ebx, byte [eax + 1]
and ecx, edx
movzx edx, byte [eax + 2]
and ebx, 0x3f
shl ecx, 6
or ebx, ecx
movzx ecx, byte [eax + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [eax + 4]
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
movzx ecx, byte [eax + 5]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ecx, ebx
mov edx, 6
cmp ecx, 0x100
jae 0x419937
mov ebx, dword [ebp + 0x38]
test byte [ecx + ebx], 0x10
je 0x419937
add edx, eax
inc edi
mov dword [esi + 4], edx
cmp edi, dword [esi + 0x84]
jl 0x41a101
jmp 0x419937
cmp eax, 0xf
ja case.0x41ba84.15
jmp dword [eax*4 + 0x41fe94]
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x41a7da
jmp 0x41a290
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x41a30b
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp + 0x78]
test eax, eax
je 0x41a2cb
push 0
lea ecx, [ebp + 0x1c]
push ecx
push edx
push eax
mov eax, dword [esi + 4]
push eax
call fcn.00420f40
add esp, 0x14
test eax, eax
jne 0x41a7da
jmp 0x41a2fa
sub edx, dword [ebp + 0x1c]
cmp ecx, edx
ja 0x41a2fa
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, byte [ebp + 0x2c]
jne 0x41a2fa
cmp dword [ebp + 0x1c], 1
je 0x41a7da
mov dl, byte [eax + 1]
cmp dl, byte [ebp + 0x2d]
je 0x41a7da
inc dword [esi + 4]
inc edi
cmp edi, dword [esi + 0x84]
jl 0x41a290
jmp 0x41a7da
cmp dword [ebp + 0x88], 0
je 0x41a7da
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x41a7da
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41a7da
jmp 0x41055c
mov eax, dword [esi + 0x84]
mov edx, dword [ebp + 0x78]
sub eax, dword [esi + 0x88]
sub edx, dword [esi + 4]
cmp eax, edx
jbe 0x41a39c
mov eax, dword [ebp + 0x78]
mov dword [esi + 4], eax
cmp dword [ebp + 0x88], 0
je 0x41a7da
mov ecx, eax
cmp ecx, dword [ebp + 0x84]
jbe 0x41a7da
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41a7da
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
add dword [esi + 4], eax
jmp 0x41a7da
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x41a7da
mov edi, 1
jmp 0x41a3c0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a43a
mov ecx, eax
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x41a3fb
lea eax, [ecx + 1]
mov dword [esi + 4], eax
cmp eax, dword [ebp + 0x78]
jae 0x41a7da
cmp byte [eax], 0xa
jne 0x41a42b
inc eax
mov dword [esi + 4], eax
jmp 0x41a42b
cmp eax, 0xa
je 0x41a427
cmp dword [ebp + 0x64], 0
jne 0x41a7da
cmp eax, 0xb
je 0x41a427
cmp eax, 0xc
je 0x41a427
cmp eax, 0x85
jne 0x41a7da
inc ecx
mov dword [esi + 4], ecx
add edx, edi
cmp edx, dword [esi + 0x84]
jl 0x41a3c0
jmp 0x41a7da
cmp dword [ebp + 0x88], 0
je 0x41a7da
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x41a7da
mov dword [ebp + 0x60], edi
cmp dword [ebp + 0x88], edi
jle 0x41a7da
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x41a7da
mov edi, 1
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a43a
mov ecx, eax
movzx eax, byte [ecx]
cmp eax, 9
je 0x41a7da
cmp eax, 0x20
je 0x41a7da
cmp eax, 0xa0
je 0x41a7da
inc ecx
add edx, edi
mov dword [esi + 4], ecx
cmp edx, dword [esi + 0x84]
jl 0x41a490
jmp 0x41a7da
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x41a7da
mov edi, 1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a43a
mov ecx, eax
movzx eax, byte [ecx]
cmp eax, 9
je 0x41a50a
cmp eax, 0x20
je 0x41a50a
cmp eax, 0xa0
jne 0x41a7da
inc ecx
add edx, edi
mov dword [esi + 4], ecx
cmp edx, dword [esi + 0x84]
jl 0x41a4e4
jmp 0x41a7da
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x41a7da
mov edi, 1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a43a
mov ecx, eax
movzx eax, byte [ecx]
cmp eax, 0xa
je 0x41a7da
cmp eax, 0xb
je 0x41a7da
cmp eax, 0xc
je 0x41a7da
cmp eax, 0xd
je 0x41a7da
cmp eax, 0x85
je 0x41a7da
inc ecx
add edx, edi
mov dword [esi + 4], ecx
cmp edx, dword [esi + 0x84]
jl 0x41a534
jmp 0x41a7da
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x41a7da
mov edi, 1
mov edi, edi
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a43a
mov ecx, eax
movzx eax, byte [ecx]
cmp eax, 0xa
je 0x41a5d8
cmp eax, 0xb
je 0x41a5d8
cmp eax, 0xc
je 0x41a5d8
cmp eax, 0xd
je 0x41a5d8
cmp eax, 0x85
jne 0x41a7da
inc ecx
add edx, edi
mov dword [esi + 4], ecx
cmp edx, dword [esi + 0x84]
jl 0x41a5a0
jmp 0x41a7da
mov ecx, dword [esi + 0x88]
cmp ecx, dword [esi + 0x84]
jge 0x41a7da
mov edx, 1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a631
movzx edi, byte [eax]
mov ebx, dword [ebp + 0x38]
test byte [edi + ebx], 4
jne 0x41a7da
inc eax
add ecx, edx
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x84]
jl 0x41a602
jmp 0x41a7da
cmp dword [ebp + 0x88], 0
je 0x41a7da
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x84]
jbe 0x41a7da
mov dword [ebp + 0x60], edx
cmp dword [ebp + 0x88], edx
jle 0x41a7da
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov ecx, dword [esi + 0x88]
cmp ecx, dword [esi + 0x84]
jge 0x41a7da
mov edx, 1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a631
movzx edi, byte [eax]
mov ebx, dword [ebp + 0x38]
test byte [edi + ebx], 4
je 0x41a7da
inc eax
add ecx, edx
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x84]
jl 0x41a680
jmp 0x41a7da
mov ecx, dword [esi + 0x88]
cmp ecx, dword [esi + 0x84]
jge 0x41a7da
mov edx, 1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a631
movzx edi, byte [eax]
mov ebx, dword [ebp + 0x38]
test byte [edi + ebx], dl
jne 0x41a7da
inc eax
add ecx, edx
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x84]
jl 0x41a6c2
jmp 0x41a7da
mov ecx, dword [esi + 0x88]
cmp ecx, dword [esi + 0x84]
jge 0x41a7da
mov edx, 1
jmp 0x41a710
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a631
movzx edi, byte [eax]
mov ebx, dword [ebp + 0x38]
test byte [edi + ebx], dl
je 0x41a7da
inc eax
add ecx, edx
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x84]
jl 0x41a710
jmp 0x41a7da
mov ecx, dword [esi + 0x88]
cmp ecx, dword [esi + 0x84]
jge 0x41a7da
mov edx, 1
jmp 0x41a760
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a631
movzx edi, byte [eax]
mov ebx, dword [ebp + 0x38]
test byte [edi + ebx], 0x10
jne 0x41a7da
inc eax
add ecx, edx
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x84]
jl 0x41a760
jmp 0x41a7da
mov ecx, dword [esi + 0x88]
cmp ecx, dword [esi + 0x84]
jge 0x41a7da
mov edx, 1
jmp 0x41a7b0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41a631
movzx edi, byte [eax]
mov ebx, dword [ebp + 0x38]
test byte [edi + ebx], 0x10
je 0x41a7da
inc eax
add ecx, edx
mov dword [esi + 4], eax
cmp ecx, dword [esi + 0x84]
jl 0x41a7b0
cmp dword [esp + 0x14], 0
jne 0x40ef29
jmp 0x41be21
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41a804
push eax
call dword [0x46f530]
add esp, 4
cmp esi, edi
je 0x41fa94
mov edi, 0xfffffffb
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 0x128]
dec eax
cmp eax, 0x41
ja case.default.0x41a828
jmp dword [eax*4 + 0x41fed4]
cmp edi, 0xfffffc1c
je 0x41a8b4
cmp edi, 0xfffffc20
jne 0x41a91d
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 0x28], eax
mov ecx, dword [ebp + 0x7c]
cmp ecx, eax
jae case.0x41a828.49
mov edx, dword [esi + 8]
cmp byte [edx], 0x71
je 0x41a87c
cmp byte [eax], 0x71
jne case.0x41a828.49
xor edi, edi
mov edx, dword [esi + 0x98]
mov dword [ebp + 0x90], edx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add ecx, eax
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov ecx, dword [esi + 8]
cmp byte [ecx], 0x71
je 0x40f212
mov edx, dword [esi + 0x90]
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0x9c]
mov dword [eax + edx*4], ecx
mov edx, dword [esi + 0x90]
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0xa0]
mov dword [eax + edx*4 + 4], ecx
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x8c]
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0xa4]
mov dword [eax + edx*4], ecx
lea edx, [esp + 0x20]
mov eax, esi
cmp eax, edx
mov esi, dword [esi]
je 0x41a908
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
jne 0x41a818
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a8
ret
test edi, edi
je 0x41a87e
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
cmp edi, 0xfffffc20
jne 0x41a9bb
mov eax, dword [esi + 8]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
mov dword [esi + 0x28], eax
mov edx, dword [ebp + 0x7c]
cmp edx, eax
jae case.0x41a828.50
mov ecx, dword [esi + 8]
cmp byte [ecx], 0x71
je 0x41a968
cmp byte [eax], 0x71
jne case.0x41a828.50
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add ecx, eax
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov ecx, dword [esi + 8]
cmp byte [ecx], 0x71
je 0x41aa1f
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41a9ac
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test edi, edi
je 0x41a968
cmp edi, 0xfffffc1c
jne case.0x41a828.50
mov eax, dword [esi + 8]
mov cl, byte [eax]
cmp cl, 0x7b
je 0x41aa05
cmp cl, 0x71
jne 0x41a9f6
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
cmp byte [eax], 0x71
je 0x41a9e2
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
sub eax, edx
cmp dword [ebp + 0xb4], eax
jne case.0x41a828.50
xor edi, edi
jmp case.0x41a828.50
mov ebp, dword [esp + 0x1c0]
mov eax, dword [esi + 0x94]
cmp eax, 0x82
jge 0x41aa71
cmp eax, 0x7b
je 0x41aa71
cmp dword [ebp + 0x68], 0
jne 0x41aa7b
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
cmp byte [ecx + eax], 0x71
je 0x41aa7b
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x43c038]
add edx, eax
mov dword [esi + 8], edx
jmp 0x40ee90
mov dword [ebp + 0x98], 2
mov eax, dword [ebp + 0xac]
push 0x12c
mov dword [esi + 0x24], eax
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 2
jmp 0x41f7d8
cmp edi, 1
jne 0x41ab0c
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x10]
jle 0x41aac4
mov dword [esi + 0x10], eax
mov dword [esi + 0x50], 1
mov eax, dword [esi + 8]
movzx edx, byte [eax + 4]
movzx ecx, byte [eax + 5]
shl edx, 8
or edx, ecx
lea eax, [edx + eax + 3]
mov dword [esi + 8], eax
cmp byte [eax], 0x71
jne 0x41ab2d
jmp 0x41aaf0
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
mov dword [esi + 8], eax
cmp byte [eax], 0x71
je 0x41aaf0
jmp 0x41ab2d
test edi, edi
je 0x41ab20
cmp edi, 0xfffffc20
jne case.0x41a828.50
mov dword [esi + 0x50], 0
mov eax, dword [esi + 0x70]
add dword [esi + 8], eax
cmp dword [esi + 0x50], 0
jne 0x41ab43
mov ecx, dword [esi + 8]
cmp byte [ecx], 0x71
jne 0x40f8bd
cmp dword [esi + 0x94], 0x86
jne 0x41f616
push 0x12c
mov dword [ebp + 0x98], 2
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f6ea
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
cmp edi, 1
je 0x41ac32
cmp edi, 0xfffffc19
je 0x41ac32
test edi, edi
je 0x41abb6
cmp edi, 0xfffffc20
je 0x41abb6
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov eax, dword [esi + 8]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add edx, eax
mov dword [esi + 8], edx
mov edx, dword [esi + 0x24]
mov dword [ebp + 0xac], edx
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x41ac38
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 4
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
add edx, 3
mov dword [eax + 8], edx
mov ecx, dword [esi + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [esi + 0x10]
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0
mov ecx, dword [esi + 0x18]
inc ecx
mov dword [eax + 0x18], ecx
mov dword [eax], esi
mov esi, eax
jmp 0x40ee80
mov edx, dword [ebp + 0x7c]
mov dword [esi + 0xc], edx
mov eax, dword [esi + 8]
cmp byte [eax], 0x72
jne 0x41ac6d
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41ac5e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [esi + 0x50], 0
je 0x41f4c6
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41ad59
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
cmp edi, 1
je 0x41ad72
cmp edi, 0xfffffc19
je 0x41ad72
cmp edi, 0xfffffc1e
je 0x41ad28
cmp edi, 0xfffffc1d
je 0x41ad28
cmp edi, 0xfffffc1a
je 0x41ad28
test edi, edi
je 0x41ace7
cmp edi, 0xfffffc20
je 0x41ace7
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov eax, dword [esi + 8]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
mov dword [esi + 8], eax
cmp byte [eax], 0x71
jne 0x41ad47
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f708
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
mov eax, dword [esi + 8]
jmp 0x41ad30
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 8], eax
cmp byte [eax], 0x71
je 0x41ad30
cmp dword [esi + 0x50], 0
je 0x41afe7
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
mov esi, dword [esi]
je 0x41ad6b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
jmp 0x40ff35
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41ad8c
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x40]
mov edx, dword [ebp + 0xc]
add eax, eax
add eax, eax
push eax
push ecx
push edx
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x38]
lea ecx, [esi + 0x38]
add esp, 0xc
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x41f4fb
cmp edi, 0xfffffc19
je 0x41f4fb
test edi, edi
je 0x41ae11
cmp edi, 0xfffffc20
je 0x41ae11
lea ecx, [esi + 0xa8]
cmp dword [esi + 0x40], ecx
je 0x41ae04
mov edx, dword [esi + 0x40]
push edx
call dword [0x46f528]
add esp, 4
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov dword [ebp + 0xa4], ecx
mov eax, dword [esi + 0x1c]
movzx edx, byte [eax + 1]
movzx edi, byte [eax + 2]
shl edx, 8
or edx, edi
add eax, edx
mov dword [esi + 0x1c], eax
cmp byte [eax], 0x71
jne 0x41ae86
cmp dword [esi + 0x50], 0
je 0x41ae49
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 6
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x1c]
movzx edx, byte [ecx]
movzx edx, byte [edx + 0x43c038]
add edx, ecx
mov dword [eax + 8], edx
jmp 0x41f647
mov edx, dword [ecx]
lea eax, [esi + 0xa8]
mov dword [ebp + 0xa4], edx
cmp dword [esi + 0x40], eax
je 0x41aeaa
mov ecx, dword [esi + 0x40]
push ecx
call dword [0x46f528]
add esp, 4
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41aec4
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test edi, edi
je 0x41aee8
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x30]
mov al, byte [edx]
cmp al, 0x7b
jne 0x41af26
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 8
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 0x30]
mov dword [eax + 8], edx
jmp 0x41f647
cmp al, 0x82
jb 0x41f60b
push 0x12c
mov dword [ebp + 0x98], 2
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f744
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
mov eax, esi
lea ecx, [esp + 0x20]
test edi, edi
je 0x41af70
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x30]
mov dword [ebp + 0xb4], edx
jmp 0x41af95
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x30]
mov dword [ebp + 0xb4], eax
lea ecx, [esp + 0x20]
mov eax, esi
mov esi, dword [esi]
cmp eax, ecx
je 0x41afa9
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41fa10
mov edi, 0xfffffc1c
jmp 0x41a818
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x28]
jmp 0x41afd0
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
mov dword [esi + 0x28], eax
cmp byte [eax], 0x71
je 0x41afd0
add eax, 3
mov dword [esi + 8], eax
jmp 0x40ef29
test edi, edi
je 0x4102e5
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
cmp edi, 0xfffffc1c
jne 0x41b062
mov edx, dword [ebp + 0xb4]
cmp edx, dword [esi + 0x30]
jne 0x41b066
mov edx, dword [esi + 0x30]
cmp byte [edx], 0x7b
jne 0x41f616
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 9
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
add edx, 3
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
je 0x41b022
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41b0b3
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b0a4
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [esp + 0x14c]
mov eax, dword [esi + 0x90]
mov edi, dword [esi + 4]
push edx
mov edx, dword [esi + 0x80]
push eax
mov eax, ebp
mov ecx, edi
call fcn.0040eb50
add esp, 8
test eax, eax
jns 0x41b140
cmp dword [ebp + 0x88], 0
je 0x41b117
mov eax, edi
cmp eax, dword [ebp + 0x78]
jb 0x41b117
cmp eax, dword [ebp + 0x84]
jbe 0x41b117
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jg 0x41055c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41b131
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
add edi, eax
mov dword [esi + 4], edi
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f75f
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
mov esi, dword [esi]
je 0x41b178
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
jmp 0x40f004
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x80]
sub dword [esi + 4], eax
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 0x2c]
jb 0x41b1bc
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f76e
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41b166
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b1d6
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41b225
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b216
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41b294
cmp dword [ebp + 0x88], 0
je 0x41b26b
cmp eax, dword [ebp + 0x84]
jbe 0x41b26b
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41b26b
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b285
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
mov edx, ecx
and ecx, 7
inc eax
mov ebx, 1
shl ebx, cl
mov dword [esi + 4], eax
mov eax, dword [esi + 0x24]
shr edx, 3
test byte [edx + eax], bl
jne 0x41b2e2
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b2d3
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f77d
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41b31d
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
dec dword [esi + 4]
mov edx, dword [esi + 4]
cmp edx, dword [esi + 0x2c]
jb 0x41c82c
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41b15e
mov dword [esi + 0x128], 0x13
jmp 0x4190c4
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41b391
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b382
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41b400
cmp dword [ebp + 0x88], 0
je 0x41b3d7
cmp eax, dword [ebp + 0x84]
jbe 0x41b3d7
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41b3d7
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b3f1
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x41b444
cmp dword [esi + 0x8c], ecx
je 0x41b444
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41b435
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc eax
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
mov edi, 1
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x18
jmp 0x41b608
dec dword [esi + 4]
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x41b4bd
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x19
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41b4d7
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test edi, edi
je 0x41b4fb
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41b533
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b524
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41b5a2
cmp dword [ebp + 0x88], 0
je 0x41b579
cmp eax, dword [ebp + 0x84]
jbe 0x41b579
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41b579
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b593
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [esi + 0x78]
inc eax
mov dword [esi + 4], eax
cmp ecx, edx
je 0x41b5e0
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41b5d1
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
mov edi, 1
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x1a
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
mov ecx, dword [esi + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [esi + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [esi + 0x14]
mov dword [eax + 0x14], ecx
mov edx, dword [esi + 0x18]
add edx, edi
mov dword [eax + 0x18], edx
mov dword [eax], esi
mov esi, eax
jmp 0x40ee80
dec dword [esi + 4]
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x41b67f
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x1b
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41b699
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test edi, edi
je 0x41b6bd
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41b6f5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b6e6
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41b764
cmp dword [ebp + 0x88], 0
je 0x41b73b
cmp eax, dword [ebp + 0x84]
jbe 0x41b73b
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41b73b
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b755
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x41b7a9
cmp dword [esi + 0x8c], ecx
je 0x41b7a9
inc eax
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f798
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b7c3
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test edi, edi
jne case.0x41a828.50
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x41cfa2
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x1f
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41b85a
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b84b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41b8c9
cmp dword [ebp + 0x88], 0
je 0x41b8a0
cmp eax, dword [ebp + 0x84]
jbe 0x41b8a0
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41b8a0
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b8ba
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx edx, byte [eax]
mov ecx, dword [esi + 0x78]
inc eax
mov dword [esi + 4], eax
cmp ecx, edx
jne 0x41b907
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41b8f8
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x21
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x41d253
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x23
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41b9c3
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41b9b4
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jb 0x41ba32
cmp dword [ebp + 0x88], 0
je 0x41ba09
cmp ecx, dword [ebp + 0x84]
jbe 0x41ba09
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41ba09
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41ba23
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [esi + 0x74], 0xc
jne 0x41ba69
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x41ba8b
mov edx, dword [esp + 0x10]
push edx
mov edx, dword [ebp + 0x78]
lea ecx, [ebp + 0x1c]
push ecx
push edx
push eax
mov eax, dword [esi + 4]
push eax
call fcn.00420f40
add esp, 0x14
test eax, eax
jne 0x41bab1
mov ecx, dword [esi + 4]
movzx eax, byte [ecx]
lea edx, [ecx + 1]
mov dword [esi + 4], edx
mov ecx, dword [esi + 0x74]
add ecx, 0xfffffffa
cmp ecx, 0xf
ja case.0x41ba84.15
jmp dword [ecx*4 + 0x41ffdc]
mov edx, dword [ebp + 0x78]
sub edx, dword [ebp + 0x1c]
cmp ecx, edx
ja 0x41ba69
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, byte [ebp + 0x2c]
jne 0x41ba69
cmp dword [ebp + 0x1c], 1
je 0x41bab1
mov dl, byte [eax + 1]
cmp dl, byte [ebp + 0x2d]
jne 0x41ba69
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bacb
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x41baed.14
movzx eax, byte [eax + 0x42002c]
jmp dword [eax*4 + 0x42001c]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae case.0x41ba84.12
cmp byte [edx], 0xa
jne case.0x41ba84.12
inc edx
mov dword [esi + 4], edx
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f7b3
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
cmp dword [ebp + 0x64], 0
je case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41bb53
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bb7c
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 9
je 0x41bba8
cmp eax, 0x20
je 0x41bba8
cmp eax, 0xa0
jne case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41bbc2
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 9
je case.0x41ba84.12
cmp eax, 0x20
je case.0x41ba84.12
cmp eax, 0xa0
je case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bc08
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0xa
jb case.0x41ba84.12
cmp eax, 0xd
jbe 0x41bc34
cmp eax, 0x85
jne case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41bc4e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0xa
jb 0x41bc7a
cmp eax, 0xd
jbe case.0x41ba84.12
cmp eax, 0x85
je case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bc94
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [ebp + 0x38]
test byte [eax + edx], 4
je case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bcca
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [ebp + 0x38]
test byte [eax + edx], 4
jne case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bd00
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [ebp + 0x38]
test byte [eax + edx], 1
je case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bd36
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [ebp + 0x38]
test byte [eax + edx], 1
jne case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bd6c
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [ebp + 0x38]
test byte [eax + edx], 0x10
je case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bda2
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [ebp + 0x38]
test byte [eax + edx], 0x10
jne case.0x41ba84.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bdd8
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test edi, edi
jne case.0x41a828.50
dec dword [esi + 4]
cmp dword [esi + 0x74], 0x11
mov eax, dword [esi + 4]
jne 0x41be21
mov ecx, eax
cmp ecx, dword [esi + 0x2c]
jbe 0x41be21
cmp byte [eax], 0xa
jne 0x41be21
cmp byte [eax - 1], 0xd
jne 0x41be21
dec eax
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
cmp edx, dword [esi + 0x2c]
jb 0x41e96f
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x2f
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
cmp edi, 0xfffffc1b
jne 0x41be91
mov edx, dword [ebp + 0x8c]
mov dword [esi + 0x10], edx
mov eax, dword [ebp + 0x80]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0x70]
add ecx, dword [ebp + 0x70]
mov dword [esi + 8], ecx
mov dword [esi + 0x54], 1
jmp 0x40fe7f
cmp edi, 0xfffffc20
jne 0x41bed1
mov eax, dword [esi + 8]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
mov dword [esi + 0x28], eax
mov edx, dword [ebp + 0x7c]
cmp edx, eax
jae case.0x41a828.50
mov ecx, dword [esi + 8]
cmp byte [ecx], 0x71
je 0x41bed9
cmp byte [eax], 0x71
jmp 0x41bed3
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 8], eax
cmp byte [eax], 0x71
je 0x40fe7f
cmp dword [esi + 0x54], 0
jne 0x41afe7
cmp dword [esi + 0x4c], 0
jne 0x41afe7
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41bf25
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test edi, edi
je 0x41bf79
cmp edi, 0xfffffc1d
je 0x41bf79
cmp edi, 0xfffffc1e
je 0x41bf79
cmp edi, 0xfffffc1f
je 0x41bf79
cmp edi, 0xfffffc20
je 0x41bf79
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41bf93
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41fa30
mov edi, 0xfffffc1a
jmp 0x41a818
test edi, edi
je 0x41bfd2
cmp edi, 0xfffffc1d
je 0x41bfd2
cmp edi, 0xfffffc20
je 0x41bfd2
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 4]
mov dword [ebp + 0x7c], edx
jmp 0x41c082
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov eax, esi
lea ecx, [esp + 0x20]
jmp 0x41c1d4
cmp edi, 1
je 0x41c00b
cmp edi, 0xfffffc19
jne 0x41c029
cmp dword [ebp + 0xac], 0
jne 0x41c029
mov edx, dword [esi + 8]
add edx, 2
mov dword [ebp + 0xac], edx
jmp case.0x41a828.50
cmp edi, 0xfffffc1f
jne case.0x41a828.50
mov eax, dword [esi + 8]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41c06f
test dl, dl
je 0x41c068
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41c06f
add eax, 2
add ecx, 2
test dl, dl
jne 0x41c040
xor eax, eax
jmp 0x41c074
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne case.0x41a828.50
mov eax, dword [esi + 4]
mov dword [ebp + 0x7c], eax
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41c09c
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41fa50
mov edi, 0xfffffc1e
jmp 0x41a818
cmp edi, 1
je 0x41c0c3
cmp edi, 0xfffffc19
jne case.0x41a828.51
cmp dword [ebp + 0xac], 0
jne case.0x41a828.51
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
je 0x41c0fd
cmp edi, 0xfffffc20
je 0x41c0fd
lea ecx, [esp + 0x20]
mov eax, esi
cmp eax, ecx
jmp 0x41a8f6
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41c117
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41fa20
mov edi, 0xfffffc1d
jmp 0x41a818
test edi, edi
je 0x41c156
cmp edi, 0xfffffc1d
je 0x41c156
cmp edi, 0xfffffc20
je 0x41c156
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 8]
add edx, 2
mov eax, esi
lea ecx, [esp + 0x20]
mov dword [ebp + 0x7c], edx
mov esi, dword [esi]
cmp eax, ecx
je 0x41c179
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41fa60
mov edi, 0xfffffc1f
jmp 0x41a818
cmp edi, 1
je 0x41c1a0
cmp edi, 0xfffffc19
jne 0x41c1b9
cmp dword [ebp + 0xac], 0
jne 0x41c1b9
mov edx, dword [esi + 8]
add edx, 2
mov dword [ebp + 0xac], edx
mov eax, esi
lea ecx, [esp + 0x20]
test edi, edi
je 0x41c1ce
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 8]
mov dword [ebp + 0x7c], edx
mov esi, dword [esi]
cmp eax, ecx
je 0x41c1e8
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41fa40
mov edi, 0xfffffc20
jmp 0x41a818
cmp edi, 0xfffffc1b
jne 0x41c239
mov edx, dword [ebp + 0x8c]
mov dword [esi + 0x10], edx
mov eax, dword [ebp + 0x80]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0x70]
add ecx, dword [ebp + 0x70]
mov dword [esi + 8], ecx
mov edx, dword [ebp + 0x90]
mov dword [esi + 0x98], edx
mov dword [esi + 0x54], 1
jmp 0x40fe12
cmp edi, 0xfffffc20
jne 0x41c325
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 0x28], eax
mov ecx, dword [ebp + 0x7c]
cmp ecx, eax
jae 0x41c32d
mov edx, dword [esi + 8]
cmp byte [edx], 0x71
je 0x41c27a
cmp byte [eax], 0x71
jne 0x41c32d
mov edx, dword [esi + 0x98]
mov dword [ebp + 0x90], edx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 8], eax
cmp byte [eax], 0x71
je 0x40fe12
cmp dword [esi + 0x54], 0
jne 0x41c2e8
mov eax, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov edx, dword [esi + 0x9c]
mov dword [ecx + eax*4], edx
mov eax, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov edx, dword [esi + 0xa0]
mov dword [ecx + eax*4 + 4], edx
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov edx, dword [esi + 0xa4]
mov dword [ecx + eax*4], edx
cmp dword [esi + 0x4c], 0
jne 0x40f8bd
cmp dword [esi + 0x54], 0
jne 0x40f8bd
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41c316
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test edi, edi
je 0x41c27a
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
cmp edi, 1
jne 0x41c389
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
mov cl, byte [eax]
cmp cl, 0x7c
je 0x41c440
cmp cl, 0x71
je 0x41c440
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41c37a
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp edi, 0xfffffc20
jne 0x41c42b
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 0x28], eax
mov ecx, dword [ebp + 0x7c]
cmp ecx, eax
jae 0x41c42f
mov edx, dword [esi + 8]
cmp byte [edx], 0x71
je 0x41c3ca
cmp byte [eax], 0x71
jne 0x41c42f
mov eax, dword [esi + 8]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add edx, eax
mov dword [esi + 8], edx
mov edx, dword [esi + 0x24]
mov dword [ebp + 0xac], edx
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x41c349
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f801
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
mov esi, dword [esi]
je 0x41c424
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
jmp 0x40efa1
test edi, edi
je 0x41c3ca
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 8], eax
cmp byte [eax], 0x71
je 0x41c440
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
mov ecx, dword [ebp + 0x80]
mov dword [esi + 4], ecx
mov edx, dword [esi + 8]
mov al, byte [edx]
cmp al, 0x72
je 0x40f8bd
cmp ecx, dword [esi + 0x34]
je 0x40f8bd
push 0x12c
cmp al, 0x74
jne 0x41c4aa
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f81f
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
mov dword [ebp + 0x98], 2
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x42
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 0x30]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
mov ecx, dword [esi + 0x30]
mov dword [esi + 8], ecx
jmp 0x40ee90
test edi, edi
je 0x41f616
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
test edi, edi
jne case.0x41a828.50
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0x2c]
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp ecx, edx
jne 0x41c54d
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41c53e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [esp + 0x10], 0
je 0x41c574
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x41c574
dec eax
mov dword [esi + 4], eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x41c566
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f83d
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41b166
test edi, edi
je 0x41c5ac
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41c5e4
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41c5d5
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41c653
cmp dword [ebp + 0x88], 0
je 0x41c62a
cmp eax, dword [ebp + 0x84]
jbe 0x41c62a
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41c62a
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41c644
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x41c757
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41c686
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41c754
test cl, 0x10
jne 0x41c6ab
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41c754
test cl, 8
jne 0x41c6dc
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41c754
test cl, 4
jne 0x41c719
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41c754
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp ecx, 0xff
jbe 0x41c799
cmp dword [esi + 0x94], 0x6a
jne 0x41c7dd
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41c78a
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 0x24]
mov edx, ecx
and ecx, 7
mov ebx, 1
shl ebx, cl
shr edx, 3
test byte [edx + eax], bl
jne 0x41c7dd
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41c7ce
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f84c
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41c818
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x2c]
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp edx, ecx
jne 0x41c855
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41c846
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
jne 0x41c871
dec eax
mov dword [esi + 4], eax
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
je 0x41c863
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41b15e
mov dword [esi + 0x128], 0x12
jmp 0x4190c4
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41c8d6
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41c8c7
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41c945
cmp dword [ebp + 0x88], 0
je 0x41c91c
cmp eax, dword [ebp + 0x84]
jbe 0x41c91c
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41c91c
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41c936
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
mov edx, dword [esp + 0x10]
inc eax
mov dword [esi + 4], eax
test edx, edx
je 0x41ca55
cmp ecx, 0xc0
jb 0x41ca55
movzx edi, byte [eax]
and edi, 0x3f
test cl, 0x20
jne 0x41c984
and ecx, 0x1f
shl ecx, 6
or ecx, edi
inc eax
jmp 0x41ca52
test cl, 0x10
jne 0x41c9a9
and ecx, 0xf
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 2
jmp 0x41ca52
test cl, 8
jne 0x41c9da
and ecx, 7
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 3
jmp 0x41ca52
test cl, 4
jne 0x41ca17
and ecx, 3
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 4
jmp 0x41ca52
and ecx, 1
shl ecx, 6
or ecx, edi
movzx edi, byte [eax + 1]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 2]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 3]
shl ecx, 6
and edi, 0x3f
or ecx, edi
movzx edi, byte [eax + 4]
shl ecx, 6
and edi, 0x3f
or ecx, edi
add eax, 5
mov dword [esi + 4], eax
push edx
mov edx, dword [esi + 0x24]
push edx
push ecx
call fcn.00421690
add esp, 0xc
test eax, eax
jne 0x41ca94
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41ca85
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f867
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41cacf
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41cb07
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41caf8
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov edx, dword [esp + 0x1c0]
mov ebp, dword [edx + 0x78]
mov edx, ebp
sub edx, dword [esi + 0x80]
cmp dword [esi + 4], edx
ja 0x41cba4
mov eax, dword [esi + 0x80]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x20]
mov edi, edx
cmp eax, 4
jb 0x41cb58
lea esp, [esp]
mov ebx, dword [edi]
cmp ebx, dword [ecx]
jne 0x41cba4
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x41cb40
test eax, eax
je 0x41cb94
mov bl, byte [ecx]
cmp bl, byte [edi]
jne 0x41cba4
cmp eax, 1
jbe 0x41cb94
mov bl, byte [ecx + 1]
cmp bl, byte [edi + 1]
jne 0x41cba4
cmp eax, 2
jbe 0x41cb94
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x41cba4
mov eax, dword [esi + 0x80]
add eax, edx
mov dword [esi + 4], eax
jmp 0x41cc29
mov eax, dword [esi + 0x64]
test eax, eax
jle 0x41cc4f
mov edx, eax
sub ebp, edx
cmp dword [esi + 4], ebp
ja 0x41cc4f
mov ebp, dword [esi + 4]
lea ecx, [esi + 0x68]
mov edi, ebp
cmp eax, 4
jb 0x41cbe8
lea ecx, [ecx]
mov ebx, dword [edi]
cmp ebx, dword [ecx]
jne 0x41cc4f
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x41cbd0
test eax, eax
je 0x41cc24
mov bl, byte [ecx]
cmp bl, byte [edi]
jne 0x41cc4f
cmp eax, 1
jbe 0x41cc24
mov bl, byte [ecx + 1]
cmp bl, byte [edi + 1]
jne 0x41cc4f
cmp eax, 2
jbe 0x41cc24
mov cl, byte [ecx + 2]
cmp cl, byte [edi + 2]
jne 0x41cc4f
add ebp, edx
mov dword [esi + 4], ebp
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f882
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41b166
mov ecx, dword [esp + 0x1c0]
cmp dword [ecx + 0x88], 0
je 0x41cc8f
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0x78]
jb 0x41cc8f
cmp eax, dword [ecx + 0x84]
jbe 0x41cc8f
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jg 0x41273d
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41cca9
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a811
test edi, edi
je 0x41cccd
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 4]
cmp edx, dword [esi + 0x2c]
jne 0x41cd02
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41ccf3
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
dec dword [esi + 4]
mov eax, dword [esi + 4]
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x41cd24
dec eax
mov dword [esi + 4], eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x41cd16
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f891
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41b166
test edi, edi
je 0x41cd5c
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41cd94
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41cd85
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41ce03
cmp dword [ebp + 0x88], 0
je 0x41cdda
cmp eax, dword [ebp + 0x84]
jbe 0x41cdda
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41cdda
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41cdf4
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x41cf07
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41ce36
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41cf04
test cl, 0x10
jne 0x41ce5b
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41cf04
test cl, 8
jne 0x41ce8c
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41cf04
test cl, 4
jne 0x41cec9
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41cf04
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp dword [esi + 0x78], ecx
je 0x41cf50
cmp dword [esi + 0x8c], ecx
je 0x41cf50
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x1c
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41cf6a
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test edi, edi
je 0x41cf8e
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x2c]
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp edx, ecx
jne 0x41cfcb
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41cfbc
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
jne 0x41cfee
lea esp, [esp]
dec eax
mov dword [esi + 4], eax
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
je 0x41cfe0
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x1e
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41d05f
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d050
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41d0ce
cmp dword [ebp + 0x88], 0
je 0x41d0a5
cmp eax, dword [ebp + 0x84]
jbe 0x41d0a5
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41d0a5
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d0bf
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xc0
jb 0x41d1d2
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41d101
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41d1cf
test cl, 0x10
jne 0x41d126
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41d1cf
test cl, 8
jne 0x41d157
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41d1cf
test cl, 4
jne 0x41d194
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41d1cf
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
cmp dword [esi + 0x78], ecx
jne 0x41d204
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d1f5
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f8a0
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41d23f
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x2c]
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp edx, ecx
jne 0x41d27c
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41d26d
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
jne 0x41d29e
lea ebx, [ebx]
dec eax
mov dword [esi + 4], eax
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
je 0x41d290
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x22
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41d30f
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d300
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jb 0x41d37e
cmp dword [ebp + 0x88], 0
je 0x41d355
cmp ecx, dword [ebp + 0x84]
jbe 0x41d355
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41d355
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d36f
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [esi + 0x74], 0xc
jne 0x41d3b5
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x41d3e6
mov edx, dword [esp + 0x10]
push edx
mov edx, dword [ebp + 0x78]
lea ecx, [ebp + 0x1c]
push ecx
push edx
push eax
mov eax, dword [esi + 4]
push eax
call fcn.00420f40
add esp, 0x14
test eax, eax
jne 0x41d40c
mov ecx, dword [esi + 4]
movzx eax, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
cmp eax, 0xc0
jb 0x41d503
movzx edx, byte [ecx]
and edx, 0x3f
test al, 0x20
jne 0x41d435
and eax, 0x1f
shl eax, 6
or eax, edx
inc ecx
jmp 0x41d500
mov edx, dword [ebp + 0x78]
sub edx, dword [ebp + 0x1c]
cmp ecx, edx
ja 0x41d3b5
mov eax, dword [esi + 4]
mov cl, byte [eax]
cmp cl, byte [ebp + 0x2c]
jne 0x41d3b5
cmp dword [ebp + 0x1c], 1
je 0x41d40c
mov dl, byte [eax + 1]
cmp dl, byte [ebp + 0x2d]
jne 0x41d3b5
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d426
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
test al, 0x10
jne 0x41d459
and eax, 0xf
shl eax, 6
or eax, edx
movzx edx, byte [ecx + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
add ecx, 2
jmp 0x41d500
test al, 8
jne 0x41d489
and eax, 7
shl eax, 6
or eax, edx
movzx edx, byte [ecx + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [ecx + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
add ecx, 3
jmp 0x41d500
test al, 4
jne 0x41d4c5
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [ecx + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [ecx + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [ecx + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
add ecx, 4
jmp 0x41d500
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [ecx + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [ecx + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [ecx + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [ecx + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
add ecx, 5
mov dword [esi + 4], ecx
mov ecx, dword [esi + 0x74]
add ecx, 0xfffffffa
cmp ecx, 0xf
ja case.0x41d512.15
jmp dword [ecx*4 + 0x4200a8]
cmp eax, 0xd
ja 0x41d55d
je 0x41d53f
cmp eax, 0xa
je case.0x41d512.12
jbe 0x41d57e
cmp eax, 0xc
jmp 0x41d578
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae case.0x41d512.12
cmp byte [eax], 0xa
jne case.0x41d512.12
inc eax
mov dword [esi + 4], eax
jmp case.0x41d512.12
cmp eax, 0x85
je 0x41d5a7
cmp eax, 0x2027
jbe 0x41d57e
cmp eax, 0x2029
jbe 0x41d5a7
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d598
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [ebp + 0x64], 0
je case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41d5cb
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x180e
ja 0x41d623
je 0x41d665
cmp eax, 0xa0
ja 0x41d613
je 0x41d665
cmp eax, 9
je 0x41d665
cmp eax, 0x20
je 0x41d665
jmp case.0x41d512.12
cmp eax, 0x1680
je 0x41d665
jmp case.0x41d512.12
cmp eax, 0x205f
ja 0x41d65a
je 0x41d665
cmp eax, 0x2000
jb case.0x41d512.12
cmp eax, 0x200a
jbe 0x41d665
cmp eax, 0x202f
je 0x41d665
jmp case.0x41d512.12
cmp eax, 0x3000
jne case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d67f
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x180e
ja 0x41d6cb
je case.0x41d512.12
cmp eax, 0xa0
ja 0x41d6c1
je case.0x41d512.12
cmp eax, 9
je case.0x41d512.12
cmp eax, 0x20
jmp 0x41d701
cmp eax, 0x1680
jmp 0x41d701
cmp eax, 0x205f
ja 0x41d6fc
je case.0x41d512.12
cmp eax, 0x2000
jb 0x41d707
cmp eax, 0x200a
jbe case.0x41d512.12
cmp eax, 0x202f
jmp 0x41d701
cmp eax, 0x3000
je case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41d721
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x85
ja 0x41d758
je 0x41d76e
cmp eax, 0xa
jb case.0x41d512.12
cmp eax, 0xd
jbe 0x41d76e
jmp case.0x41d512.12
cmp eax, 0x2028
jb case.0x41d512.12
cmp eax, 0x2029
ja case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d788
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x85
ja 0x41d7b9
je case.0x41d512.12
cmp eax, 0xa
jb 0x41d7cf
cmp eax, 0xd
jmp 0x41d7c9
cmp eax, 0x2028
jb 0x41d7cf
cmp eax, 0x2029
jbe case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41d7e9
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x100
jae case.0x41d512.12
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 4
je case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41d82a
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x100
jae 0x41d851
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 4
jne case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41d86b
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x100
jae case.0x41d512.12
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 1
je case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41d8ac
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x100
jae 0x41d8d3
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 1
jne case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41d8ed
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x100
jae case.0x41d512.12
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 0x10
je case.0x41d512.12
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41d92e
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp eax, 0x100
jae 0x41d97b
mov ecx, dword [ebp + 0x38]
test byte [eax + ecx], 0x10
je 0x41d97b
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f8bb
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41d995
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x412255
test edi, edi
je 0x41d9c6
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x2c]
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp edx, ecx
je 0x41e96f
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x41d9f6
dec eax
mov dword [esi + 4], eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x41d9e8
cmp dword [esi + 0x74], 0x11
jne 0x41da22
mov edx, dword [esi + 4]
cmp edx, dword [esi + 0x2c]
jbe 0x41da22
cmp byte [eax], 0xa
jne 0x41da22
cmp byte [eax - 1], 0xd
jne 0x41da22
dec dword [esi + 4]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x2e
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41da93
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41da84
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41db02
cmp dword [ebp + 0x88], 0
je 0x41dad9
cmp eax, dword [ebp + 0x84]
jbe 0x41dad9
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41dad9
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41daf3
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41db6b
cmp ecx, 0xc0
jb 0x41db6b
test cl, 0x20
jne 0x41db32
inc eax
jmp 0x41db68
test cl, 0x10
jne 0x41db43
add eax, 2
jmp 0x41db68
test cl, 8
jne 0x41db54
add eax, 3
jmp 0x41db68
test cl, 4
jne 0x41db65
add eax, 4
jmp 0x41db68
add eax, 5
mov dword [esi + 4], eax
cmp dword [esi + 0x60], 0
je 0x41db9e
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41db8f
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x24
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41dc12
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41dc03
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41dc81
cmp dword [ebp + 0x88], 0
je 0x41dc58
cmp eax, dword [ebp + 0x84]
jbe 0x41dc58
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41dc58
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41dc72
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41dd90
cmp ecx, 0xc0
jb 0x41dd90
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41dcbf
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41dd8d
test cl, 0x10
jne 0x41dce4
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41dd8d
test cl, 8
jne 0x41dd15
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41dd8d
test cl, 4
jne 0x41dd52
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41dd8d
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
shl edx, 7
and ecx, 0x7f
add edx, ecx
movzx eax, word [edx*2 + 0x43fbc0]
movzx eax, byte [eax*8 + 0x43c8e1]
cmp eax, 9
je 0x41ddd6
cmp eax, 5
je 0x41ddd6
cmp eax, 8
je 0x41ddd6
xor eax, eax
jmp 0x41dddb
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x41de0d
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41ddfe
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f8d6
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41de48
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41de80
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41de71
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41deef
cmp dword [ebp + 0x88], 0
je 0x41dec6
cmp eax, dword [ebp + 0x84]
jbe 0x41dec6
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41dec6
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41dee0
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41dffe
cmp ecx, 0xc0
jb 0x41dffe
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41df2d
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41dffb
test cl, 0x10
jne 0x41df52
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41dffb
test cl, 8
jne 0x41df83
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41dffb
test cl, 4
jne 0x41dfc0
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41dffb
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
shl edx, 7
and ecx, 0x7f
add edx, ecx
movzx eax, word [edx*2 + 0x43fbc0]
movzx ecx, byte [eax*8 + 0x43c8e1]
mov edx, dword [ecx*4 + 0x43c160]
xor eax, eax
cmp edx, dword [esi + 0x5c]
sete al
cmp eax, dword [esi + 0x60]
jne 0x41e063
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e054
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f8f1
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41e09e
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41e0d6
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e0c7
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41e145
cmp dword [ebp + 0x88], 0
je 0x41e11c
cmp eax, dword [ebp + 0x84]
jbe 0x41e11c
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41e11c
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e136
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41e254
cmp ecx, 0xc0
jb 0x41e254
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41e183
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41e251
test cl, 0x10
jne 0x41e1a8
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41e251
test cl, 8
jne 0x41e1d9
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41e251
test cl, 4
jne 0x41e216
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41e251
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
shl edx, 7
and ecx, 0x7f
add edx, ecx
movzx eax, word [edx*2 + 0x43fbc0]
movzx ecx, byte [eax*8 + 0x43c8e1]
xor edx, edx
cmp ecx, dword [esi + 0x5c]
sete dl
cmp edx, dword [esi + 0x60]
jne 0x41e2b2
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e2a3
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f90c
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41e2ed
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41e325
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e316
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41e394
cmp dword [ebp + 0x88], 0
je 0x41e36b
cmp eax, dword [ebp + 0x84]
jbe 0x41e36b
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41e36b
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e385
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41e4a3
cmp ecx, 0xc0
jb 0x41e4a3
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41e3d2
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41e4a0
test cl, 0x10
jne 0x41e3f7
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41e4a0
test cl, 8
jne 0x41e428
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41e4a0
test cl, 4
jne 0x41e465
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41e4a0
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
shl edx, 7
and ecx, 0x7f
add edx, ecx
movzx eax, word [edx*2 + 0x43fbc0]
movzx ecx, byte [eax*8 + 0x43c8e0]
xor edx, edx
cmp ecx, dword [esi + 0x5c]
sete dl
cmp edx, dword [esi + 0x60]
jne 0x41e501
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e4f2
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f927
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41e53c
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41e574
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e565
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41e5e3
cmp dword [ebp + 0x88], 0
je 0x41e5ba
cmp eax, dword [ebp + 0x84]
jbe 0x41e5ba
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41e5ba
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e5d4
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
mov edi, dword [esp + 0x10]
inc eax
mov dword [esi + 4], eax
test edi, edi
je 0x41e6f3
cmp ecx, 0xc0
jb 0x41e6f3
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41e622
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41e6f0
test cl, 0x10
jne 0x41e647
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41e6f0
test cl, 8
jne 0x41e678
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41e6f0
test cl, 4
jne 0x41e6b5
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41e6f0
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
and ecx, 0x7f
shl edx, 7
add edx, ecx
movzx eax, word [edx*2 + 0x43fbc0]
movzx ecx, byte [eax*8 + 0x43c8e1]
cmp dword [ecx*4 + 0x43c160], 2
jne 0x41e74e
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41e73f
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x41e8b7
lea ebx, [ebx]
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
mov edx, 1
test edi, edi
je 0x41e877
cmp ecx, 0xc0
jb 0x41e877
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x41e7a1
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x41e877
test cl, 0x10
jne 0x41e7c8
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x41e877
test cl, 8
jne 0x41e7fb
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x41e877
test cl, 4
jne 0x41e83a
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x41e877
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov ebx, ecx
shr ebx, 7
movzx ebx, byte [ebx + 0x43d9c0]
and ecx, 0x7f
shl ebx, 7
add ebx, ecx
movzx ecx, word [ebx*2 + 0x43fbc0]
movzx ecx, byte [ecx*8 + 0x43c8e1]
cmp dword [ecx*4 + 0x43c160], 2
jne 0x41e8b7
add edx, eax
mov dword [esi + 4], edx
cmp edx, dword [ebp + 0x78]
jb 0x41e760
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x29
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0x2c]
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp ecx, edx
je 0x41e96f
cmp dword [esp + 0x10], edi
je 0x41e92e
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
jne 0x41e92e
nop
dec eax
mov dword [esi + 4], eax
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
je 0x41e920
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41b15e
mov dword [esi + 0x128], 0x2c
jmp 0x4190c4
test edi, edi
jne case.0x41a828.50
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0x2c]
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp ecx, edx
jne 0x41e9a0
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41e989
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
cmp dword [esp + 0x10], 0
jne 0x41e9b3
movzx eax, byte [eax]
jmp 0x41ea9b
mov dl, byte [eax]
and dl, 0xc0
cmp dl, 0x80
jne 0x41e9cf
dec eax
mov dword [esi + 4], eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x41e9c1
mov ecx, dword [esi + 4]
movzx eax, byte [ecx]
cmp eax, 0xc0
jb 0x41ea9b
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x20
jne 0x41e9fc
and eax, 0x1f
shl eax, 6
or eax, edx
jmp 0x41ea9b
test al, 0x10
jne 0x41ea1d
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or eax, edx
jmp 0x41ea9b
test al, 8
jne 0x41ea3a
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
movzx ecx, byte [ecx + 3]
jmp 0x41ea8b
test al, 4
jne 0x41ea63
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
movzx ecx, byte [ecx + 4]
jmp 0x41ea8b
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
movzx ecx, byte [ecx + 5]
and eax, 0x3f
shl edx, 6
or eax, edx
and ecx, 0x3f
shl eax, 6
or eax, ecx
mov edx, eax
shr edx, 7
movzx ecx, byte [edx + 0x43d9c0]
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx edx, word [ecx*2 + 0x43fbc0]
movzx eax, byte [edx*8 + 0x43c8e1]
cmp dword [eax*4 + 0x43c160], 2
jne 0x4190a4
dec dword [esi + 4]
mov eax, dword [esi + 4]
jmp 0x41e9a0
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41eb18
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41eb09
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41eb87
cmp dword [ebp + 0x88], 0
je 0x41eb5e
cmp eax, dword [ebp + 0x84]
jbe 0x41eb5e
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41eb5e
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41eb78
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41ec96
cmp ecx, 0xc0
jb 0x41ec96
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41ebc5
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41ec93
test cl, 0x10
jne 0x41ebea
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41ec93
test cl, 8
jne 0x41ec1b
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41ec93
test cl, 4
jne 0x41ec58
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41ec93
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
and ecx, 0x7f
shl edx, 7
add edx, ecx
movzx eax, word [edx*2 + 0x43fbc0]
movzx ecx, byte [eax*8 + 0x43c8e1]
mov eax, dword [ecx*4 + 0x43c160]
cmp eax, 1
je 0x41ecda
cmp eax, 3
je 0x41ecda
xor eax, eax
jmp 0x41ecdf
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x41ed11
mov eax, esi
mov esi, dword [esi]
lea edx, [esp + 0x20]
cmp eax, edx
je 0x41ed02
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
je 0x41c40a
mov dword [esi + 0x128], 0x3b
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
test edi, edi
jne case.0x41a828.50
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x41ed85
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41ed76
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41edf4
cmp dword [ebp + 0x88], 0
je 0x41edcb
cmp eax, dword [ebp + 0x84]
jbe 0x41edcb
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41edcb
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41ede5
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41ef03
cmp ecx, 0xc0
jb 0x41ef03
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41ee32
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41ef00
test cl, 0x10
jne 0x41ee57
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41ef00
test cl, 8
jne 0x41ee88
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41ef00
test cl, 4
jne 0x41eec5
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41ef00
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
shl edx, 7
mov eax, ecx
and eax, 0x7f
add edx, eax
movzx edx, word [edx*2 + 0x43fbc0]
movzx eax, byte [edx*8 + 0x43c8e1]
cmp dword [eax*4 + 0x43c160], 6
je 0x41ef62
cmp ecx, 9
je 0x41ef62
cmp ecx, 0xa
je 0x41ef62
cmp ecx, 0xc
je 0x41ef62
cmp ecx, 0xd
je 0x41ef62
xor eax, eax
jmp 0x41ef67
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x41ef99
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41ef8a
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f942
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41efd4
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41f00c
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41effd
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41f07b
cmp dword [ebp + 0x88], 0
je 0x41f052
cmp eax, dword [ebp + 0x84]
jbe 0x41f052
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41f052
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41f06c
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41f18a
cmp ecx, 0xc0
jb 0x41f18a
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41f0b9
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41f187
test cl, 0x10
jne 0x41f0de
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41f187
test cl, 8
jne 0x41f10f
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41f187
test cl, 4
jne 0x41f14c
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41f187
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
shl edx, 7
mov eax, ecx
and eax, 0x7f
add edx, eax
movzx edx, word [edx*2 + 0x43fbc0]
movzx eax, byte [edx*8 + 0x43c8e1]
cmp dword [eax*4 + 0x43c160], 6
je 0x41f1f2
cmp ecx, 9
je 0x41f1f2
cmp ecx, 0xa
je 0x41f1f2
cmp ecx, 0xb
je 0x41f1f2
cmp ecx, 0xc
je 0x41f1f2
cmp ecx, 0xd
je 0x41f1f2
xor eax, eax
jmp 0x41f1f7
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x41f229
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41f21a
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f95d
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
test edi, edi
je 0x41f264
mov eax, esi
lea ecx, [esp + 0x20]
cmp eax, ecx
jmp 0x41a8f6
mov edx, dword [esi + 0x7c]
cmp edx, dword [esi + 0x84]
jl 0x41f29c
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41f28d
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x41f30b
cmp dword [ebp + 0x88], 0
je 0x41f2e2
cmp eax, dword [ebp + 0x84]
jbe 0x41f2e2
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle 0x41f2e2
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x410564
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41f2fc
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
inc eax
cmp dword [esp + 0x10], 0
mov dword [esi + 4], eax
je 0x41f41a
cmp ecx, 0xc0
jb 0x41f41a
movzx edx, byte [eax]
and edx, 0x3f
test cl, 0x20
jne 0x41f349
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc eax
jmp 0x41f417
test cl, 0x10
jne 0x41f36e
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 2
jmp 0x41f417
test cl, 8
jne 0x41f39f
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 3
jmp 0x41f417
test cl, 4
jne 0x41f3dc
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 4
jmp 0x41f417
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [eax + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add eax, 5
mov dword [esi + 4], eax
mov eax, ecx
shr eax, 7
movzx edx, byte [eax + 0x43d9c0]
shl edx, 7
mov eax, ecx
and eax, 0x7f
add edx, eax
movzx edx, word [edx*2 + 0x43fbc0]
movzx eax, byte [edx*8 + 0x43c8e1]
mov eax, dword [eax*4 + 0x43c160]
cmp eax, 1
je 0x41f469
cmp eax, 3
je 0x41f469
cmp ecx, 0x5f
je 0x41f469
xor eax, eax
jmp 0x41f46e
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x41f4a0
mov eax, esi
mov esi, dword [esi]
lea ecx, [esp + 0x20]
cmp eax, ecx
je 0x41f491
push eax
call dword [0x46f530]
add esp, 4
test esi, esi
je 0x41f9c3
xor edi, edi
jmp 0x41a818
inc dword [esi + 0x7c]
push 0x12c
call dword [0x46f52c]
add esp, 4
test eax, eax
jne 0x41f978
mov eax, esi
lea edx, [esp + 0x20]
cmp eax, edx
jmp 0x41c412
mov eax, dword [esi + 8]
lea esp, [esp]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [esi + 8], eax
cmp byte [eax], 0x71
je 0x41f4d0
add eax, 3
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
jmp 0x40ef29
lea ecx, [esi + 0xa8]
cmp dword [esi + 0x40], ecx
je 0x41f517
mov edx, dword [esi + 0x40]
push edx
call dword [0x46f528]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 4], eax
mov ecx, dword [ebp + 0x7c]
mov dword [esi + 0xc], ecx
jmp 0x40ef29
mov edx, dword [esi + 0x88]
mov dword [esi + 0x7c], edx
jmp 0x41c7e0
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x41ca97
mov ecx, dword [esi + 0x88]
mov dword [esi + 0x7c], ecx
jmp 0x41cc2c
mov edx, dword [esi + 0x88]
mov dword [esi + 0x7c], edx
jmp 0x41cf1f
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x41d207
mov ecx, dword [esi + 0x88]
mov dword [esi + 0x7c], ecx
jmp 0x41dba1
mov edx, dword [esi + 0x88]
mov dword [esi + 0x7c], edx
jmp 0x41de10
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x41e066
mov ecx, dword [esi + 0x88]
mov dword [esi + 0x7c], ecx
jmp 0x41e2b5
mov edx, dword [esi + 0x88]
mov dword [esi + 0x7c], edx
jmp 0x41e504
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x41ed14
mov ecx, dword [esi + 0x88]
mov dword [esi + 0x7c], ecx
jmp 0x41ef9c
mov edx, dword [esi + 0x88]
mov dword [esi + 0x7c], edx
jmp 0x41f22c
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x41f4a3
mov ecx, dword [esi + 0x88]
mov dword [esi + 0x7c], ecx
jmp 0x41e8ba
mov edx, dword [esi + 0x88]
mov dword [esi + 0x7c], edx
jmp 0x41d958
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
jmp 0x40ee90
add dword [esi + 8], 3
jmp 0x40ee90
mov dword [esi + 0x128], 0x37
mov edx, dword [esi + 4]
mov dword [eax + 4], edx
mov ecx, dword [esi + 8]
movzx edx, byte [ecx]
movzx edx, byte [edx + 0x43c038]
movzx edi, byte [ecx + 1]
add edx, ecx
add edi, edx
mov dword [eax + 8], edi
mov ecx, dword [esi + 0xc]
mov dword [eax + 0xc], ecx
mov edx, dword [esi + 0x10]
mov dword [eax + 0x10], edx
mov ecx, dword [esi + 0x14]
mov dword [eax + 0x14], ecx
mov edx, dword [esi + 0x18]
inc edx
mov dword [eax + 0x18], edx
mov dword [eax], esi
mov esi, eax
jmp 0x40ee80
mov dword [esi + 0x128], 0x34
jmp 0x40f107
mov dword [esi + 0x128], 0x33
jmp 0x40f107
mov dword [esi + 0x128], 0x35
jmp 0x40f107
mov dword [esi + 0x128], 0x39
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
jmp 0x41f62f
mov dword [esi + 0x128], 0xb
mov edx, dword [esi + 4]
mov dword [eax + 4], edx
mov ecx, dword [esi + 0x28]
add ecx, 3
mov ebp, dword [esp + 0x1c0]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0xc]
mov dword [eax + 0xc], edx
mov ecx, dword [esi + 0x10]
mov dword [eax + 0x10], ecx
mov edx, dword [esi + 0x14]
mov dword [eax + 0x14], edx
mov ecx, dword [esi + 0x18]
inc ecx
mov dword [eax + 0x18], ecx
mov dword [eax], esi
mov esi, eax
jmp 0x40ee80
mov dword [esi + 0x128], 0x31
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
add edx, 3
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 5
mov edx, dword [esi + 4]
mov dword [eax + 4], edx
mov ecx, dword [esi + 8]
add ecx, 3
mov dword [eax + 8], ecx
mov edx, dword [esi + 0xc]
mov dword [eax + 0xc], edx
mov ecx, dword [esi + 0x10]
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], 0
mov edx, dword [esi + 0x18]
inc edx
mov dword [eax + 0x18], edx
mov dword [eax], esi
mov esi, eax
jmp 0x40ee80
mov dword [esi + 0x128], 0x32
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 0x30]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0xe
jmp 0x4190c4
mov dword [esi + 0x128], 0xf
jmp 0x4190c4
mov dword [esi + 0x128], 0x11
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x1d
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x2b
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x30
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 8]
movzx edx, byte [ecx]
movzx edx, byte [edx + 0x43c038]
add edx, ecx
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x3f
jmp 0x41f7d8
mov dword [esi + 0x128], 0x40
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
add edx, 3
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x41
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
add edx, 3
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x15
jmp 0x4190c4
mov dword [esi + 0x128], 0x10
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x14
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x16
jmp 0x4190c4
mov dword [esi + 0x128], 0x17
jmp 0x4190c4
mov dword [esi + 0x128], 0x20
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x2a
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x25
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x26
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x27
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x28
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x3c
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x3d
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
mov dword [esi + 0x128], 0x3e
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov edx, dword [esi + 8]
mov dword [eax + 8], edx
jmp 0x41f647
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffe6
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc20
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1f
pop ebx
add esp, 0x1a8
ret
mov eax, dword [esi + 0x128]
push eax
push str.jump_error_in_pcre_match:_label__d_non_existent_n
call sub.MSVCRT.dll_printf
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x1a8
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x1a8
ret