Function at 0x42df20
Capabilities:
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x68
push ebx
push ebp
mov ebp, dword [esp + 0x84]
push esi
push edi
mov esi, dword [ebp + 0xb8]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x80]
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x88]
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0x90]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x94]
mov dword [esi + 0x1c], eax
lea ecx, [ecx]
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
mov edi, edi
mov edx, dword [ebp]
mov ecx, dword [ebp + 4]
mov edi, dword [ebp + 0x4c]
mov dword [esp + 0x8c], edi
lea eax, [edx + 1]
mov dword [ebp], eax
cmp edx, ecx
jb 0x42dfae
mov esi, dword [esi]
test esi, esi
je 0x43bc51
mov edi, 0xfffffff8
jmp 0x437859
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x42dfca
mov esi, dword [esi]
test esi, esi
je 0x43bc5e
mov edi, 0xffffffeb
jmp 0x437859
cmp dword [ebp + 0x98], 2
jne 0x42e001
mov eax, dword [esi + 8]
lea ecx, [esi + 0x128]
mov dword [esi + 0x12c], eax
mov eax, dword [esi + 0x18]
mov dword [ecx], eax
mov dword [esi + 0x18], ecx
mov dword [ebp + 0x98], 0
jmp 0x42e001
add dword [esi + 0xc], 3
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
xor ebx, ebx
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], ebx
movzx edx, byte [eax]
mov dword [esi + 0x9c], edx
cmp edx, 0xa1
ja case.0x42e034.98
movzx eax, byte [edx + 0x43be6c]
jmp dword [eax*4 + 0x43bd20]
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x43b4b5
push 0x134
call dword [0x627fb4]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43b4af
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov edx, dword [esi + 4]
test edx, edx
jne 0x43b505
push 0x134
call dword [0x627fb4]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43b4ff
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov edx, dword [esi + 4]
test edx, edx
jne 0x43b523
push 0x134
call dword [0x627fb4]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43b51d
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x43b541
push 0x134
call dword [0x627fb4]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43b53b
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov edx, dword [esi + 4]
test edx, edx
jne 0x43b556
push 0x134
call dword [0x627fb4]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43b550
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
inc dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp + 0x2c]
ja 0x42e18e
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x49efc0]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 0xc], edx
jmp 0x42e001
mov edi, dword [esi + 4]
test edi, edi
jne 0x43b574
push 0x134
call dword [0x627fb4]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43b56e
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov edx, dword [esi + 4]
test edx, edx
jne 0x43b589
push 0x134
call dword [0x627fb4]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43b583
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x43b5a7
push 0x134
call dword [0x627fb4]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43b5a1
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov eax, dword [esi + 0xc]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x38], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
jmp 0x438d98
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [ebp + 0x14]
jge case.0x42e034.129
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa8], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xac], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 0x10]
sub edx, dword [ebp + 0x74]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov dword [eax + ecx*4], edx
jmp 0x4378fb
mov dword [esi + 0x54], ebx
jmp 0x42ea9f
mov dword [esi + 0x54], ebx
jmp 0x42eac3
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0xc], 3
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x76
jne 0x42e408
mov edi, dword [0x62c360]
test edi, edi
je 0x42e3f4
mov dword [esp + 0x10], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x10]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x28], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x38], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x3c], ecx
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x2c], eax
movzx eax, word [ebp + 0x90]
mov dword [esp + 0x30], eax
test eax, eax
jne 0x42e3ae
mov dword [esp + 0x30], 0xffffffff
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x10]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x42e3e3
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437859
jns 0x42e3f4
mov esi, dword [esi]
test esi, esi
je 0x437d3c
jmp 0x437859
movzx eax, byte [0x49f036]
add dword [esi + 0xc], eax
movzx eax, byte [0x49f036]
sub dword [esi + 0x78], eax
mov dword [esi + 0x58], ebx
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx]
mov dword [esp + 0x88], edx
lea eax, [edx - 0x8d]
cmp eax, 0x10
ja case.0x42e42e.146
movzx eax, byte [eax + 0x43bf28]
jmp dword [eax*4 + 0x43bf10]
mov edi, dword [ebp + 0xa4]
test edi, edi
je case.0x42e42e.145
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x42e467
cmp edx, dword [edi + 4]
je 0x42e467
xor eax, eax
mov dword [esi + 0x58], eax
jmp 0x437b93
mov eax, 1
mov dword [esi + 0x58], eax
jmp 0x437b93
cmp dword [ebp + 0xa4], ebx
je case.0x42e42e.145
movzx ebx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
movzx edi, byte [ecx + 1]
shl ebx, 8
shl edi, 8
or ebx, eax
movzx eax, byte [ecx + 2]
or edi, eax
imul edi, dword [ebp + 0x24]
add edi, dword [ebp + 0x30]
test ebx, ebx
jle case.0x42e42e.145
lea esp, [esp]
movzx eax, byte [edi]
xor ecx, ecx
movzx edx, byte [edi + 1]
dec ebx
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
cmp edx, dword [eax + 4]
sete cl
mov dword [esi + 0x58], ecx
test ecx, ecx
jne 0x437b93
add edi, dword [ebp + 0x24]
test ebx, ebx
jg 0x42e4b0
jmp 0x437b93
mov eax, dword [esi + 0xc]
movzx ecx, byte [ecx + 1]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x42e514
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x42e514
mov eax, 1
mov dword [esi + 0x58], eax
jmp case.0x42e42e.145
xor eax, eax
mov dword [esi + 0x58], eax
jmp case.0x42e42e.145
movzx edi, byte [ecx + 3]
movzx eax, byte [ecx + 4]
movzx edx, byte [ecx + 1]
shl edi, 8
shl edx, 8
or edi, eax
movzx eax, byte [ecx + 2]
or edx, eax
imul edx, dword [ebp + 0x24]
add edx, dword [ebp + 0x30]
test edi, edi
jle 0x437b93
movzx eax, byte [edx]
dec edi
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x42e569
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jge 0x42e578
mov dword [esi + 0x58], ebx
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x42e547
jmp 0x437b93
mov dword [esi + 0x58], 1
jmp 0x437b93
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b5bc
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b5b6
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0x90]
and eax, 0xffff0000
or eax, dword [esi + 0x94]
mov dword [ebp + 0x90], eax
mov edx, dword [esi + 0x98]
cmp edx, dword [ebp + 0x14]
jl 0x42e614
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x42dff6
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 8]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 0x14]
cmp ecx, edx
jl 0x42dff6
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x42e663
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x98]
add eax, 2
mov dword [esi + 0x14], eax
jmp 0x42dff6
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
cmp edi, ecx
jne 0x42e6b6
cmp edx, 0x9f
je 0x42e6b6
cmp dword [ebp + 0xa4], ebx
jne 0x42e6b6
cmp dword [ebp + 0x5c], ebx
jne 0x42e6a5
cmp dword [ebp + 0x60], ebx
je 0x42e6b6
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x42e6b6
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437859
mov dword [ebp + 0x80], edi
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov edi, dword [esi + 0x9c]
mov esi, dword [esi]
neg edi
sbb edi, edi
and edi, 0xfffffc18
inc edi
test esi, esi
je 0x437d3c
jmp 0x437859
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x42e70f
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x437c8d
mov dword [esi + 0x58], ebx
jmp 0x437c8d
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x42e73b
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x437ddb
mov dword [esi + 0x58], ebx
jmp 0x437ddb
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
test edx, edx
je 0x42e7a2
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x42e788
dec dword [esi + 8]
dec edx
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x74]
jb case.0x434f86.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42e784
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x42e778
test edx, edx
jg 0x42e760
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x42dff6
mov dword [ebp + 0x84], eax
jmp 0x42dff6
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0xc]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
sub dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jae 0x42e788
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437860
mov edi, dword [0x62c360]
test edi, edi
je 0x42e8ac
mov dword [esp + 0x44], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x54], eax
mov eax, dword [esi + 0x10]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x58], eax
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x5c], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x6c], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x70], ecx
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x60], eax
movzx eax, word [ebp + 0x90]
mov dword [esp + 0x64], eax
test eax, eax
jne 0x42e866
mov dword [esp + 0x64], 0xffffffff
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x74], eax
lea eax, [esp + 0x44]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x42e89b
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437859
jns 0x42e8ac
mov esi, dword [esi]
test esi, esi
je 0x437d3c
jmp 0x437859
add dword [esi + 0xc], 6
jmp 0x42dffa
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp + 0x70]
add eax, ecx
mov dword [esi + 0x20], eax
cmp eax, dword [ebp + 0x70]
jne 0x42e8d6
xor edx, edx
jmp 0x42e8e3
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl edx, 8
or edx, eax
mov ecx, dword [ebp + 0xa4]
test ecx, ecx
je 0x42e903
lea ecx, [ecx]
cmp edx, dword [ecx + 4]
jne 0x42e8fd
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x42e964
mov ecx, dword [ecx]
test ecx, ecx
jne 0x42e8f0
mov dword [esi + 0x40], edx
lea ecx, [esi + 0x3c]
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x50], eax
mov eax, dword [ebp + 0xa4]
mov dword [ecx], eax
mov dword [ebp + 0xa4], ecx
add dword [esi + 0xc], 3
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x48], eax
cmp eax, 0x1e
jg 0x42e978
lea eax, [esi + 0xb0]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [ebp + 0xc]
push dword [esi + 0x44]
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x20]
add esp, 0xc
cmp byte [eax], 0x88
sbb eax, eax
inc eax
mov dword [esi + 0x58], eax
jmp 0x437ec4
mov esi, dword [esi]
test esi, esi
je 0x43bc82
mov edi, 0xffffffe6
jmp 0x437859
shl eax, 2
push eax
call dword [0x627fac]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
jne 0x42e93e
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x42e9a1
jmp 0x42e001
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b5f7
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b5f1
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov edx, dword [esi + 0xc]
inc edx
mov dword [esi + 0x2c], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x42ea00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b615
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b60f
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov edx, dword [esi + 0xc]
inc edx
mov dword [esi + 0x2c], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x42ea53
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x42e001
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x9c], eax
mov dword [esi + 0x54], 1
mov eax, dword [esi + 0x9c]
cmp eax, 0x86
je 0x42ea9f
cmp eax, 0x8b
jne 0x42eac3
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
cmp eax, dword [ebp + 0x14]
jl 0x42eae0
mov dword [esi + 0x5c], ebx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x78], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
jmp 0x4389ad
mov dword [esi + 0x5c], ebx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x78], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa8], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xac], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov edx, dword [esi + 8]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4], edx
cmp dword [esi + 0x9c], 0x88
jb 0x42eb5d
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x43b9a7
push 0x134
call dword [0x627fb4]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43b99d
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov edx, dword [esi + 0xc]
mov eax, edx
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov dword [esi + 0x34], edx
mov al, byte [edx]
cmp al, 0x88
jae 0x42ebb8
cmp al, 0x81
je 0x42ebb8
mov dword [esi + 0x38], ebx
jmp 0x42ebc9
mov eax, dword [esi + 0x18]
mov eax, dword [eax + 4]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov dword [esi + 0x18], eax
mov edx, dword [esi + 0x34]
mov al, byte [edx]
cmp al, 0x7d
jb 0x42ebd6
cmp al, 0x80
jbe 0x42ebda
cmp al, 0x82
jne 0x42ec06
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x43bcb6
mov edi, 1
jmp 0x437859
cmp al, 0x85
je 0x42ec1a
cmp al, 0x8a
je 0x42ec1a
cmp al, 0x86
je 0x42ec1a
cmp al, 0x8b
jne 0x42ece1
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0xa4]
test eax, eax
je 0x42ec56
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x42ec56
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
jmp 0x42ebec
mov eax, dword [ebp + 0x90]
and eax, 0xffff0000
or eax, dword [esi + 0x94]
mov dword [ebp + 0x90], eax
mov ecx, dword [esi + 0x98]
cmp ecx, dword [ebp + 0x14]
jl 0x42ec85
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x42ece1
mov edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x42eca5
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x42eca5
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x94]
mov edx, dword [ebp + 0xc]
mov ecx, dword [esi + 0x98]
mov eax, dword [edx + eax*4]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0x98]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov eax, dword [esi + 0x98]
cmp dword [esi + 0x14], eax
jg 0x42ece1
add eax, 2
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
cmp cl, 0x7b
jne 0x42ed17
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov esi, dword [esi]
test esi, esi
je 0x43bc8f
mov edi, 0xfffffc1a
jmp 0x437859
cmp cl, 0x78
je 0x42ed90
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x42ed90
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x42ed5e
test ecx, ecx
jne 0x43b636
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b630
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test ecx, ecx
jne 0x43b657
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b651
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x437ff7
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b675
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b66f
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
cmp dword [ebp + 0x44], ebx
je case.0x42e034.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne case.0x42e034.1
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437859
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je 0x42eeb8
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437859
cmp dword [ebp + 0x44], ebx
je 0x42ee2a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x42ee2a
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437859
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x42f874
cmp ecx, dword [ebp + 0x78]
je 0x42ee90
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x42ee68
cmp ecx, edx
jbe 0x42ee90
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043dee0
add esp, 0x14
test eax, eax
jne 0x42f874
jmp 0x42ee90
mov edi, dword [ebp + 0x1c]
lea eax, [edi + edx]
cmp ecx, eax
jb 0x42ee90
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x42ee90
cmp edi, 1
je 0x42f874
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x42f874
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437859
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
jmp 0x42edf5
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x42e001
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x42ef7a
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x42eef5
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0043dd90
add esp, 0x14
test eax, eax
jne 0x42f874
jmp 0x42ef19
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x42ef19
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x42ef19
cmp edx, 1
je 0x42f874
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x42f874
cmp dword [ebp + 0x88], ebx
je case.0x434f86.14
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb case.0x434f86.14
cmp dword [ebp + 0x18], ebx
jne case.0x434f86.14
cmp dword [edi], 2
jne case.0x434f86.14
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.0x434f86.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x434f86.14
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edi, 0xfffffff4
jmp 0x437859
cmp dword [ebp + 0x48], ebx
jne 0x42edfb
cmp dword [ebp + 0x88], ebx
je 0x42f874
cmp ecx, dword [ebp + 0x84]
jbe 0x42f874
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42f874
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edi, 0xfffffff4
jmp 0x437859
cmp dword [ebp + 0x48], ebx
jne 0x42edfb
cmp dword [ebp + 0x58], ebx
je case.0x42e034.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42edfb
cmp dword [ebp + 0x88], ebx
je 0x42eeb8
cmp eax, dword [ebp + 0x84]
jbe 0x42eeb8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42eeb8
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edi, 0xfffffff4
jmp 0x437859
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x42f085
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x42f04d
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0043dd90
add esp, 0x14
test eax, eax
jne 0x42f075
jmp 0x42ef19
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x42ef19
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x42ef19
cmp edx, 1
je 0x42f075
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x42ef19
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 8]
cmp ecx, eax
jne 0x42ef19
cmp dword [ebp + 0x88], ebx
je 0x42f874
cmp ecx, dword [ebp + 0x84]
jbe 0x42f874
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42f874
jmp 0x42ef66
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x42f387
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x42f0d5
mov dword [esi + 0x5c], ebx
jmp 0x42f20e
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x42f0ea
nop
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x42f0e0
cmp edx, dword [ebp + 0x84]
jae 0x42f0f8
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x42f1ac
test bl, 0x20
jne 0x42f120
movzx eax, byte [edx + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
jmp 0x42f1ac
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42f13a
and ebx, 0xf
shl ebx, 6
or ecx, ebx
jmp 0x42f1a2
and eax, 0x3f
test bl, 8
jne 0x42f155
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x42f1a2
test bl, 4
jne 0x42f179
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x42f1a2
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp dword [ebp + 0x54], 0
je 0x42f247
cmp ebx, 0x5f
jne 0x42f1c4
mov dword [esi + 0x5c], 1
jmp 0x42f20e
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x42f1e6
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x42f258
cmp eax, 3
je 0x42f258
xor eax, eax
mov dword [esi + 0x5c], eax
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x42f25f
cmp dword [ebp + 0x88], 0
je 0x42f23b
cmp edx, dword [ebp + 0x84]
jbe 0x42f23b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
mov dword [esi + 0x54], 0
jmp 0x42f4c5
cmp ebx, 0x100
jae 0x42f209
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x42f209
mov eax, 1
jmp 0x42f20b
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x42f309
test bl, 0x20
jne 0x42f27f
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x42f301
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42f299
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x42f301
and eax, 0x3f
test bl, 8
jne 0x42f2b4
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x42f301
test bl, 4
jne 0x42f2d8
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
jmp 0x42f301
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp dword [ebp + 0x54], 0
je 0x42f36c
cmp ebx, 0x5f
jne 0x42f320
mov dword [esi + 0x54], 1
jmp 0x42f4c5
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x42f342
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x42f37d
cmp eax, 3
je 0x42f37d
xor eax, eax
jmp 0x42f4c2
cmp ebx, 0x100
jae 0x42f365
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x42f365
mov eax, 1
jmp 0x42f4c2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x42f397
mov dword [esi + 0x5c], ebx
jmp 0x42f432
cmp eax, dword [ebp + 0x84]
ja 0x42f3a6
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
cmp dword [ebp + 0x54], ebx
je 0x42f41e
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x42f3c0
mov dword [esi + 0x5c], 1
jmp 0x42f432
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ecx, 0x8000007f
jns 0x42f3e2
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x42f410
cmp eax, 3
je 0x42f410
mov edx, dword [esp + 0x8c]
xor eax, eax
jmp 0x42f42f
mov edx, dword [esp + 0x8c]
mov eax, 1
jmp 0x42f42f
movzx eax, byte [eax - 1]
mov ecx, dword [ebp + 0x40]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42f473
cmp dword [ebp + 0x88], ebx
je 0x42f46e
cmp eax, dword [ebp + 0x84]
jbe 0x42f46e
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42f46e
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edi, 0xfffffff4
jmp 0x437860
mov dword [esi + 0x54], ebx
jmp 0x42f4c5
cmp dword [ebp + 0x54], ebx
je 0x42f4b2
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x42f489
mov dword [esi + 0x54], 1
jmp 0x42f4c5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ecx, 0x8000007f
jns 0x42f4ab
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
jmp 0x42f344
movzx eax, byte [eax]
mov ecx, dword [ebp + 0x40]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0xc]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x54]
cmp cl, 5
jne 0x42f4e0
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x42f4e8
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x42e001
jmp 0x42edfb
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x42f52d
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x42f558
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.0043dd90
add esp, 0x14
test eax, eax
jne 0x42edfb
jmp 0x42f558
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x42f558
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x42f558
cmp edx, 1
je 0x42edfb
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x42edfb
cmp dword [ebp + 0x88], ebx
je case.0x42e034.13
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
dec eax
cmp ecx, eax
jne case.0x42e034.13
cmp dword [ebp + 0x18], ebx
jne case.0x42e034.13
cmp dword [ebp + 0x1c], 2
jne case.0x42e034.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne case.0x42e034.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42f5b6
cmp dword [ebp + 0x88], ebx
je case.0x434f86.14
cmp eax, dword [ebp + 0x84]
jbe case.0x434f86.14
jmp 0x42ef52
mov edi, dword [esp + 0x8c]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x42eeb8
cmp eax, dword [ebp + 0x78]
jae 0x42eeb8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42eeb8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jb 0x42f5d2
inc dword [esi + 0xc]
jmp 0x42e001
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42f599
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x42e001
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x42f62d
cmp dword [ebp + 0x88], ebx
je case.0x434f86.14
cmp edi, dword [ebp + 0x84]
jbe case.0x434f86.14
jmp 0x42ef52
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x42f729
cmp ebx, 0xc0
jb 0x42f729
test bl, 0x20
jne 0x42f66a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42f726
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42f694
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42f729
mov edx, dword [esi + 8]
test bl, 8
jne 0x42f6ba
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42f71d
test bl, 4
jne 0x42f6e9
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42f71d
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x42f874
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x42f874
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437860
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x42f85b
cmp ebx, 0xc0
jb 0x42f85b
test bl, 0x20
jne 0x42f79c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42f858
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42f7c6
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42f85b
mov edx, dword [esi + 8]
test bl, 8
jne 0x42f7ec
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42f84f
test bl, 4
jne 0x42f81b
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42f84f
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x42e7bd
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x42e7bd
inc dword [esi + 0xc]
jmp 0x42dffa
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x42f984
cmp ebx, 0xc0
jb 0x42f984
test bl, 0x20
jne 0x42f8c5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42f981
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42f8ef
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42f984
mov edx, dword [esi + 8]
test bl, 8
jne 0x42f915
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42f978
test bl, 4
jne 0x42f944
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42f978
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x42f874
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
jmp 0x42f73c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x42faa4
cmp ebx, 0xc0
jb 0x42faa4
test bl, 0x20
jne 0x42f9e5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42faa1
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42fa0f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42faa4
mov edx, dword [esi + 8]
test bl, 8
jne 0x42fa35
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42fa98
test bl, 4
jne 0x42fa64
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42fa98
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x42e7bd
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
je 0x42e7bd
inc dword [esi + 0xc]
jmp 0x42dffa
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x42fbcd
cmp ebx, 0xc0
jb 0x42fbcd
test bl, 0x20
jne 0x42fb0e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42fbca
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42fb38
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42fbcd
mov edx, dword [esi + 8]
test bl, 8
jne 0x42fb5e
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42fbc1
test bl, 4
jne 0x42fb8d
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42fbc1
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x42f874
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
jmp 0x42f73c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x42fced
cmp ebx, 0xc0
jb 0x42fced
test bl, 0x20
jne 0x42fc2e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42fcea
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42fc58
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42fced
mov edx, dword [esi + 8]
test bl, 8
jne 0x42fc7e
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42fce1
test bl, 4
jne 0x42fcad
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42fce1
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x42e7bd
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x42e7bd
inc dword [esi + 0xc]
jmp 0x42dffa
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x42fe16
cmp ebx, 0xc0
jb 0x42fe16
test bl, 0x20
jne 0x42fd57
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42fe13
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42fd81
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42fe16
mov edx, dword [esi + 8]
test bl, 8
jne 0x42fda7
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42fe0a
test bl, 4
jne 0x42fdd6
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42fe0a
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xd
ja 0x42fe8f
je 0x42fe31
cmp ebx, 0xa
je 0x42f874
jbe 0x42f742
cmp ebx, 0xc
jmp 0x42fea9
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42fe7a
cmp dword [ebp + 0x88], 0
je 0x42f874
cmp eax, dword [ebp + 0x84]
jbe 0x42f874
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42f874
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edi, 0xfffffff4
jmp 0x437860
cmp byte [eax], 0xa
jne 0x42f874
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x42dffa
cmp ebx, 0x85
je 0x42feaf
cmp ebx, 0x2027
jbe 0x42f742
cmp ebx, 0x2029
ja 0x42f742
cmp dword [ebp + 0x68], 0
jmp 0x42f73c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x42ffc0
cmp ebx, 0xc0
jb 0x42ffc0
test bl, 0x20
jne 0x42ff01
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42ffbd
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42ff2b
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42ffc0
mov edx, dword [esi + 8]
test bl, 8
jne 0x42ff51
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x42ffb4
test bl, 4
jne 0x42ff80
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x42ffb4
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x42fff8
je 0x42e7bd
cmp ebx, 0xa0
ja 0x42ffed
je 0x42e7bd
cmp ebx, 9
je 0x42e7bd
cmp ebx, 0x20
jmp 0x42f86e
cmp ebx, 0x1680
jmp 0x42f86e
cmp ebx, 0x205f
ja 0x430029
je 0x42e7bd
cmp ebx, 0x2000
jb 0x42f874
cmp ebx, 0x200a
jbe 0x42e7bd
cmp ebx, 0x202f
jmp 0x42f86e
cmp ebx, 0x3000
je 0x42e7bd
inc dword [esi + 0xc]
jmp 0x42dffa
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x430145
cmp ebx, 0xc0
jb 0x430145
test bl, 0x20
jne 0x430086
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x430142
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4300b0
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x430145
mov edx, dword [esi + 8]
test bl, 8
jne 0x4300d6
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x430139
test bl, 4
jne 0x430105
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x430139
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x43017d
je 0x42f874
cmp ebx, 0xa0
ja 0x430172
je 0x42f874
cmp ebx, 9
je 0x42f874
cmp ebx, 0x20
jmp 0x42f73c
cmp ebx, 0x1680
jmp 0x42f73c
cmp ebx, 0x205f
ja 0x4301ae
je 0x42f874
cmp ebx, 0x2000
jb 0x42f742
cmp ebx, 0x200a
jbe 0x42f874
cmp ebx, 0x202f
jmp 0x42f73c
cmp ebx, 0x3000
jmp 0x42f73c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x4302c1
cmp ebx, 0xc0
jb 0x4302c1
test bl, 0x20
jne 0x430202
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4302be
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43022c
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4302c1
mov edx, dword [esi + 8]
test bl, 8
jne 0x430252
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4302b5
test bl, 4
jne 0x430281
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4302b5
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x85
ja 0x4302e9
je 0x42f742
cmp ebx, 0xa
jb 0x42f874
cmp ebx, 0xd
jbe 0x42f742
inc dword [esi + 0xc]
jmp 0x42dffa
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x42f874
jmp 0x42f742
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x430405
cmp ebx, 0xc0
jb 0x430405
test bl, 0x20
jne 0x430346
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x430402
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x430370
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x430405
mov edx, dword [esi + 8]
test bl, 8
jne 0x430396
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4303f9
test bl, 4
jne 0x4303c5
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4303f9
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x85
ja 0x43042a
je 0x42f874
cmp ebx, 0xa
jb 0x42e7bd
cmp ebx, 0xd
jbe 0x42f874
jmp 0x42e7bd
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x42e7bd
inc dword [esi + 0xc]
jmp 0x42dffa
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x43053d
cmp ebx, 0xc0
jb 0x43053d
test bl, 0x20
jne 0x430489
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43053a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4304b1
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43053d
mov edx, dword [esi + 8]
test bl, 8
jne 0x4304d7
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x43053a
test bl, 4
jne 0x430506
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x43053a
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4a0948]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x430560
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
movzx edx, word [ecx*2 + 0x4a2b48]
cmp eax, 0xa
ja case.default.0x43057a
jmp dword [eax*4 + 0x43bf3c]
cmp dword [esi + 0x9c], 0xf
jne 0x42dff6
jmp 0x42edfb
mov al, byte [edx*8 + 0x49f2c9]
cmp al, 9
je 0x4305aa
cmp al, 5
je 0x4305aa
cmp al, 8
je 0x4305aa
xor ecx, ecx
jmp 0x4305af
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x42dff6
jmp 0x42edfb
movzx ecx, byte [edx*8 + 0x49f2c9]
xor edx, edx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x49f0d8]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x42dff6
jmp 0x42edfb
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x49f2c9]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x42dff6
jmp 0x42edfb
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x49f2c8]
jmp 0x43060b
movzx eax, byte [edx*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x4305aa
cmp eax, 3
je 0x4305aa
xor ecx, ecx
jmp 0x4305af
cmp ebx, 0x180e
ja 0x4306a3
je case.0x43057a.0
cmp ebx, 0x85
ja 0x43068f
je case.0x43057a.0
cmp ebx, 9
jb case.0x4306c3.8203
cmp ebx, 0xd
jbe case.0x43057a.0
cmp ebx, 0x20
jmp 0x4306dc
cmp ebx, 0xa0
je case.0x43057a.0
cmp ebx, 0x1680
jmp 0x4306dc
cmp ebx, 0x202f
ja 0x4306ca
je case.0x43057a.0
add ebx, 0xffffe000
cmp ebx, 0x29
ja case.0x4306c3.8203
movzx eax, byte [ebx + 0x43bf70]
jmp dword [eax*4 + 0x43bf68]
cmp ebx, 0x205f
je case.0x43057a.0
cmp ebx, 0x3000
je case.0x43057a.0
movzx eax, byte [edx*8 + 0x49f2c9]
xor ecx, ecx
cmp dword [eax*4 + 0x49f0d8], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x430617
movzx eax, byte [edx*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x4305aa
cmp eax, 3
je 0x4305aa
cmp ebx, 0x5f
je 0x4305aa
xor ecx, ecx
jmp 0x4305af
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
mov ecx, dword [eax*4 + 0x49f188]
lea eax, [eax*4 + 0x49f188]
cmp ebx, ecx
jb 0x43075d
nop
lea eax, [eax + 4]
cmp ebx, ecx
je 0x43076f
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x430750
cmp dword [esi + 0x9c], 0x10
jne 0x42dff6
jmp 0x42edfb
cmp dword [esi + 0x9c], 0x10
je 0x42dff6
jmp 0x42edfb
cmp ebx, 0x24
je 0x4305aa
cmp ebx, 0x40
je 0x4305aa
cmp ebx, 0x60
je 0x4305aa
cmp ebx, 0xa0
jb 0x4307b0
cmp ebx, 0xd7ff
jbe 0x4305aa
cmp ebx, 0xe000
jae 0x4305aa
xor ecx, ecx
jmp 0x4305af
mov esi, dword [esi]
test esi, esi
je case.default.0x437874
mov edi, 0xfffffff2
jmp 0x437859
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
movzx ebx, byte [edi]
inc edi
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test ecx, ecx
je 0x4308e2
cmp ebx, 0xc0
jb 0x4308e2
test bl, 0x20
jne 0x430820
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4308df
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43084f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, dword [esp + 0x8c]
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x4308e2
mov edx, dword [esi + 8]
test bl, 8
jne 0x430875
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x4308d8
test bl, 4
jne 0x4308a4
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x4308d8
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x430904
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2ca]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x430a96
lea esp, [esp]
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x430a2e
cmp ebx, 0xc0
jb 0x430a2e
test bl, 0x20
jne 0x430965
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x430a26
test bl, 0x10
jne 0x43098a
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x430a26
test bl, 8
jne 0x4309b8
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x430a26
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4309f2
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x430a26
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x430a50
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx ecx, byte [eax*8 + 0x49f2ca]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x49f150], eax
je 0x430a96
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x430930
cmp dword [ebp + 0x88], 0
je 0x42f874
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42f874
cmp eax, dword [ebp + 0x84]
jbe 0x42f874
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42f874
jmp 0x42ef66
mov ecx, dword [esi + 0xc]
xor eax, eax
cmp edx, 0x74
sete al
movzx ebx, byte [ecx + 3]
movzx edx, byte [ecx + 2]
mov dword [esp + 0x7c], eax
movzx eax, byte [ecx + 4]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 1]
shl eax, 8
or edx, eax
lea eax, [ecx + 5]
imul edx, dword [ebp + 0x24]
add edx, dword [ebp + 0x30]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x50]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x88], eax
mov dword [esi + 0x98], 0
test ebx, ebx
jle 0x430bc4
lea esp, [esp]
movzx ecx, byte [edx]
dec ebx
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
lea edi, [ecx + ecx]
mov dword [esi + 0x98], edi
cmp edi, dword [esi + 0x14]
jge 0x430b54
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x430b5d
add edx, dword [ebp + 0x24]
test ebx, ebx
jg 0x430b30
jmp 0x430bc4
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esi + 0x88], ecx
jmp 0x430bc4
xor eax, eax
cmp edx, 0x72
sete al
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
add dword [esi + 0xc], 3
mov edx, dword [esi + 0x98]
cmp edx, dword [esi + 0x14]
jge 0x430bb4
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x430bb4
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x430bbe
mov eax, dword [ebp + 0x50]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x88], eax
mov edx, dword [esi + 0xc]
mov bl, byte [edx]
movzx ecx, bl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x430bdf
movzx eax, byte [eax + 0x43bfa4]
jmp dword [eax*4 + 0x43bf9c]
add ecx, 0xffffff9e
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x80], ebx
movsx eax, byte [ecx + 0x49e618]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x49e624]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x430c6d
mov dword [esi + 0x8c], closesocket
jmp 0x430c6d
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x80], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x430c69
mov dword [esi + 0x8c], closesocket
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
mov edi, dword [esp + 0x8c]
test eax, eax
je 0x42e001
jns 0x430c91
cmp dword [esi + 0x90], 0
je 0x42e001
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x430ccf
mov edi, edi
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.0043c4a0
add esp, 0x14
test eax, eax
js 0x430d01
add eax, ebx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x430ca0
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x42e001
cmp dword [esp + 0x80], 0
je 0x430d2a
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x438112
cmp eax, 0xfffffffe
jne 0x430d0c
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x434f86.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x434f86.14
jmp 0x42f5a5
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
jmp 0x430d40
cmp edi, dword [esi + 0x8c]
jge 0x438161
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.0043c4a0
add esp, 0x14
test eax, eax
js 0x430d75
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x430d40
cmp eax, 0xfffffffe
jne 0x438161
cmp dword [ebp + 0x88], 0
je 0x438161
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x438161
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x438161
jmp 0x42ef66
mov ebx, dword [esp + 0x7c]
push ebx
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.0043c4a0
add esp, 0x14
mov dword [esi + 0x88], eax
test eax, eax
jns 0x430e39
cmp eax, 0xfffffffe
jne 0x430de5
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x43873d.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x43873d.14
cmp eax, dword [ebp + 0x84]
jbe case.0x43873d.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x43873d.14
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff4
jmp 0x437864
add dword [esi + 8], eax
jmp 0x42dffa
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x28], eax
add dword [esi + 0xc], 0x21
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
movzx edi, cl
lea eax, [edi - 0x62]
cmp eax, 0xb
ja case.default.0x430e67
movzx eax, byte [eax + 0x43bfb4]
jmp dword [eax*4 + 0x43bfac]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x430e8a
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x84], ebx
jmp 0x430e95
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x49e618]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x49e624]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x430f2c
mov dword [esi + 0x8c], closesocket
jmp 0x430f2c
xor ebx, ebx
cmp cl, 0x69
sete bl
xor eax, eax
cmp cl, 0x6d
mov dword [esp + 0x84], ebx
movzx ecx, byte [edx + 1]
sete al
shl ecx, 8
mov dword [esp + 0x80], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x430f12
mov dword [esi + 0x8c], closesocket
add dword [esi + 0xc], 5
jmp 0x430f2c
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x43108c
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x4310e1
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ebx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x43103c
test bl, 0x20
jne 0x430f8a
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x431039
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x430fb1
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x431037
test bl, 8
jne 0x430fd4
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x431037
test bl, 4
jne 0x431003
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x431037
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
jbe 0x43104d
cmp dword [esi + 0x9c], 0x6e
jmp 0x431062
mov eax, dword [esi + 0x28]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x430f50
jmp 0x4310d3
cmp dword [ebp + 0x88], 0
je case.0x434f86.14
mov eax, dword [esi + 8]
jmp 0x42f5a5
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x4310da
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x431077
movzx edi, byte [eax]
mov edx, 1
inc eax
mov ecx, edi
mov dword [esi + 8], eax
and ecx, 7
mov eax, dword [esi + 0x28]
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4310a0
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42dffa
test ebx, ebx
je 0x43110a
test edx, edx
jne 0x43b377
mov dword [esi + 0x84], eax
jmp 0x4381fb
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
test edx, edx
je 0x4312c2
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4312af
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x431287
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x431236
test bl, 0x20
jne 0x43117b
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x431236
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4311a3
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x43122c
and eax, 0x3f
test bl, 8
jne 0x4311c9
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x43122c
test bl, 4
jne 0x4311f8
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x43122c
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp ebx, 0xff
jbe 0x431247
cmp dword [esi + 0x9c], 0x6e
jmp 0x43125c
mov eax, dword [esi + 0x28]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je 0x4312af
mov eax, dword [esp + 0x84]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x431131
jmp 0x4312af
cmp dword [ebp + 0x88], 0
je 0x4312af
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4312af
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
je 0x4391bc
jmp 0x42dffa
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x43133a
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x431312
movzx edi, byte [ebx]
mov edx, 1
mov eax, dword [esi + 0x28]
mov ecx, edi
and ecx, 7
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je 0x43133a
lea eax, [ebx + 1]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x4312d1
jmp 0x43133a
cmp dword [ebp + 0x88], 0
je 0x43133a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x43133a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
je 0x43823b
jmp 0x42dffa
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0xc]
mov eax, edx
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov cl, byte [edx]
movzx edi, cl
lea eax, [edi - 0x62]
cmp eax, 0xb
ja case.default.0x431385
movzx eax, byte [eax + 0x43bfc8]
jmp dword [eax*4 + 0x43bfc0]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x4313a8
mov eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
jmp 0x4313b3
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x49e618]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x49e624]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x43144a
mov dword [esi + 0x8c], closesocket
jmp 0x43144a
xor eax, eax
cmp cl, 0x69
sete al
mov dword [esp + 0x84], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [edx + 1]
sete al
shl ecx, 8
mov dword [esp + 0x80], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x431430
mov dword [esi + 0x8c], closesocket
add dword [esi + 0xc], 5
jmp 0x43144a
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x431585
jmp 0x431460
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x43155a
cmp edx, 0xc0
jb 0x43155a
test dl, 0x20
jne 0x4314a8
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x431557
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4314cf
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x431555
test dl, 8
jne 0x4314f2
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x431555
test dl, 4
jne 0x431521
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x431555
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
mov edi, dword [esp + 0x8c]
push edi
push dword [esi + 0x28]
push edx
call fcn.0043d720
add esp, 0xc
test eax, eax
je case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x431460
jmp 0x43158c
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42e001
cmp dword [esp + 0x84], 0
jne 0x43b388
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x43171d
jmp 0x4315d0
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4316f3
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x4316bb
cmp edx, 0xc0
jb 0x4316bb
test dl, 0x20
jne 0x43161c
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov ebx, 2
jmp 0x4316bb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x43163b
and edx, 0xf
mov ebx, 3
shl edx, 6
or ecx, edx
jmp 0x4316b1
and eax, 0x3f
test dl, 8
jne 0x43165b
and edx, 7
mov ebx, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x4316b1
test dl, 4
jne 0x431684
and edx, 3
mov ebx, 5
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x4316b1
and edx, ebx
mov ebx, 6
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov edx, ecx
mov edi, dword [esp + 0x8c]
push edi
push dword [esi + 0x28]
push edx
call fcn.0043d720
add esp, 0xc
test eax, eax
je 0x43171d
mov eax, dword [esp + 0x84]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x4315d0
jmp 0x43171d
cmp dword [ebp + 0x88], 0
je 0x431716
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x431716
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jg 0x42ef66
mov edi, dword [esp + 0x8c]
cmp dword [esp + 0x80], 0
jne 0x42e001
jmp 0x438fd1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x431909
mov dword [esi + 0x88], 1
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
cmp eax, 0xc0
jb 0x431890
test al, 0x20
jne 0x431790
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x80]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0x88]
jmp 0x431890
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x4317ca
mov eax, dword [esi + 0x80]
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 + 0x80], edx
add dword [esi + 0x88], 2
jmp 0x431890
test al, 8
jne 0x431806
mov eax, dword [esi + 0x80]
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 edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x431890
test al, 4
mov eax, dword [esi + 0x80]
jne 0x43184b
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 edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x431890
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 edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov edi, dword [ebp + 0x78]
mov eax, edi
mov edx, dword [esi + 8]
sub eax, edx
mov ecx, dword [esi + 0x88]
cmp ecx, eax
jle 0x4318c9
cmp dword [ebp + 0x88], ebx
je case.0x434f86.14
cmp edx, edi
jb case.0x434f86.14
cmp edx, dword [ebp + 0x84]
jbe case.0x434f86.14
jmp 0x42ef52
test ecx, ecx
jle 0x4318fe
lea ecx, [ecx]
lea eax, [ecx - 1]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov bl, byte [eax]
mov dl, byte [ecx]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc dword [esi + 0xc]
cmp bl, dl
jne case.0x434f86.14
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x4318d0
dec dword [esi + 0x88]
jmp 0x42dffa
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x431956
cmp dword [ebp + 0x88], ebx
je 0x42e7bd
cmp edi, dword [ebp + 0x84]
jbe 0x42e7bd
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42e7bd
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edi, 0xfffffff4
jmp 0x437860
mov eax, dword [esi + 0xc]
mov cl, byte [edi]
mov dl, byte [eax + 1]
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp dl, cl
je 0x431c6b
jmp 0x42edfb
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x42f610
cmp dword [esp + 0x8c], ebx
je 0x431c4c
mov dword [esi + 0x88], 1
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
cmp eax, 0xc0
jb 0x431adb
test al, 0x20
jne 0x4319db
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x80]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0x88]
jmp 0x431adb
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x431a15
mov eax, dword [esi + 0x80]
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 + 0x80], edx
add dword [esi + 0x88], 2
jmp 0x431adb
test al, 8
jne 0x431a51
mov eax, dword [esi + 0x80]
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 edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x431adb
test al, 4
mov eax, dword [esi + 0x80]
jne 0x431a96
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 edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x431adb
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 edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov edi, dword [esi + 0x80]
mov eax, dword [esi + 8]
cmp edi, 0x80
jae 0x431b09
mov edx, dword [ebp + 0x38]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
jne 0x42edfb
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x42dffa
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x431beb
test bl, 0x20
jne 0x431b39
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x431be8
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x431b60
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x431be6
test bl, 8
jne 0x431b83
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x431be6
test bl, 4
jne 0x431bb2
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x431be6
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
mov edi, dword [esi + 0x80]
cmp edi, ebx
je 0x42dffa
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4a0948]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x431c25
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4a2b48]
mov eax, dword [eax*8 + 0x49f2cc]
add eax, edi
mov edi, dword [esp + 0x8c]
cmp ebx, eax
je 0x42e001
jmp 0x42edfb
mov eax, dword [esi + 0xc]
mov edx, dword [ebp + 0x38]
movzx ecx, byte [edi]
movzx eax, byte [eax + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne 0x42edfb
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x42dffa
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x431d9d
mov dword [esp + 0x80], 1
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0xc]
mov al, byte [ecx]
cmp al, 0x28
je 0x431cd4
mov dword [esp + 0x84], ebx
cmp al, 0x35
jne 0x431cdf
mov dword [esp + 0x84], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x431d9d
mov dword [esi + 0x90], ebx
mov edi, 1
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x431da4
mov edi, 1
mov dword [esi + 0x90], edi
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x431da4
mov edi, 1
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], edi
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x431da4
mov ecx, dword [esi + 0xc]
cmp edx, 0x2e
sbb eax, eax
and eax, 0xfffffff3
movzx edx, byte [ecx]
add eax, 0x2e
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 0xc], eax
mov eax, edx
and eax, 1
mov dword [esp + 0x84], eax
movsx eax, byte [edx + 0x49e618]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x49e624]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x431d9d
mov dword [esi + 0x8c], closesocket
mov edi, dword [esp + 0x80]
cmp dword [esp + 0x8c], ebx
je 0x432218
mov dword [esi + 0x88], 1
mov eax, dword [esi + 0xc]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0xc]
movzx ebx, byte [eax]
mov dword [esi + 0x80], ebx
cmp ebx, 0xc0
jb 0x431eeb
mov eax, dword [esi + 0xc]
test bl, 0x20
jne 0x431e01
movzx eax, byte [eax + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x431eeb
test bl, 0x10
jne 0x431e36
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 0xc]
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
shl ecx, 6
movzx eax, byte [eax + 2]
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x431eeb
mov ecx, dword [esi + 0xc]
movzx edx, byte [eax + 1]
and edx, 0x3f
movzx eax, byte [ecx + 2]
and eax, 0x3f
test bl, 8
jne 0x431e74
and ebx, 7
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x431eeb
test bl, 4
jne 0x431ead
and ebx, 3
shl ebx, 6
or edx, ebx
shl edx, 6
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
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x431eeb
and ebx, 1
shl ebx, 6
or edx, ebx
shl edx, 6
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 edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
cmp dword [esi + 0x88], 1
jle 0x432227
cmp dword [esi + 0x9c], 0x2e
jb 0x431f5c
mov edi, dword [esi + 0x80]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4a0948]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x431f33
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4a2b48]
mov ecx, dword [eax*8 + 0x49f2cc]
add ecx, edi
cmp ecx, edi
je 0x431f5c
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.0043d6c0
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x431f63
mov dword [esi + 0x6c], 0
cmp dword [esi + 0x90], 1
mov dword [esp + 0x94], 1
jl 0x432096
jmp 0x431f80
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x88]
sub eax, ebx
mov edi, dword [esi + 8]
mov dword [esp + 0x90], ecx
cmp edi, eax
ja 0x432004
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x431fb8
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x431fc1
add ecx, 4
add edx, 4
sub edi, 4
jae 0x431fa7
cmp edi, 0xfffffffc
je 0x432078
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x431ffa
cmp edi, 0xfffffffd
je 0x432078
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x431ffa
cmp edi, 0xfffffffe
je 0x432078
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x431ffa
cmp edi, 0xffffffff
je 0x432078
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x432078
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x430d0c
sub ecx, ebx
cmp edi, ecx
ja 0x430d0c
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x432036
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x43203b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x432025
cmp edi, 0xfffffffc
je 0x432078
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x430d0c
cmp edi, 0xfffffffd
je 0x432078
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x430d0c
cmp edi, 0xfffffffe
je 0x432078
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x430d0c
cmp edi, 0xffffffff
je 0x432078
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x430d0c
mov edx, dword [esp + 0x94]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x94], edx
cmp edx, dword [esi + 0x90]
jle 0x431f80
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x42e001
cmp dword [esp + 0x84], 0
jne 0x43b399
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x432205
lea esp, [esp]
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x88]
sub eax, ebx
mov edi, dword [esi + 8]
mov dword [esp + 0x84], ecx
cmp edi, eax
ja 0x43215c
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x432118
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x432121
add ecx, 4
add edx, 4
sub edi, 4
jae 0x432107
cmp edi, 0xfffffffc
je 0x4321b8
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x432152
cmp edi, 0xfffffffd
je 0x4321b8
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x432152
cmp edi, 0xfffffffe
je 0x4321b8
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x432152
cmp edi, 0xffffffff
je 0x4321b8
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x4321b8
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x4321d8
sub ecx, ebx
cmp edi, ecx
ja 0x4321d8
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x432186
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x43218b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x432175
cmp edi, 0xfffffffc
je 0x4321b8
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4321d8
cmp edi, 0xfffffffd
je 0x4321b8
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4321d8
cmp edi, 0xfffffffe
je 0x4321b8
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4321d8
cmp edi, 0xffffffff
je 0x4321b8
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4321d8
mov edx, dword [esp + 0x90]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x90], edx
cmp edx, dword [esi + 0x8c]
jl 0x4320e0
jmp 0x432205
cmp dword [ebp + 0x88], 0
je 0x432205
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x432205
cmp eax, dword [ebp + 0x84]
jbe 0x432205
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
je 0x43937c
jmp 0x42dffa
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
cmp dword [esi + 0x9c], 0x2e
jb 0x43231f
mov ecx, dword [ebp + 0x3c]
mov edx, 1
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
cmp dword [esi + 0x90], edx
jl 0x432284
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x431077
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x432277
cmp dword [esi + 0x94], ecx
jne case.0x434f86.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x432254
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42dffa
cmp dword [esp + 0x84], 0
je 0x4322ab
mov dword [esi + 0x84], eax
jmp 0x4382db
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x432312
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4322ea
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4322db
cmp dword [esi + 0x94], ecx
jne 0x432312
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4322c0
jmp 0x432312
cmp dword [ebp + 0x88], 0
je 0x432312
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x432312
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
test edi, edi
je 0x43831b
jmp 0x42dffa
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x43235a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x432330
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x42e001
cmp dword [esp + 0x84], 0
je 0x432388
mov dword [esi + 0x84], eax
jmp 0x4383a8
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4323ec
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4323c4
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x4323ec
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4323a0
jmp 0x4323ec
cmp dword [ebp + 0x88], 0
je 0x4323ec
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4323ec
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
je 0x4383e8
jmp 0x42e001
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x432424
cmp dword [ebp + 0x88], ebx
je case.0x434f86.14
cmp ecx, dword [ebp + 0x84]
jbe case.0x434f86.14
jmp 0x42ef52
test edi, edi
je 0x43269c
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 0xc], edx
cmp ebx, 0xc0
jb 0x432525
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x432462
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x432522
test bl, 0x10
jne 0x432483
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x432522
test bl, 8
jne 0x4324ae
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [edx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add dword [esi + 0xc], 3
jmp 0x432525
mov ecx, dword [esi + 0xc]
test bl, 4
jne 0x4324e7
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 4]
jmp 0x432522
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 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]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esp + 0x80], edx
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x432618
test dl, 0x20
jne 0x43255f
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43260e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x432586
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x43260c
test dl, 8
jne 0x4325a9
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x43260c
test dl, 4
jne 0x4325d8
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x43260c
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esp + 0x80], edx
mov dword [esi + 8], eax
cmp dword [esi + 0x9c], 0x1f
jne 0x432635
mov edi, dword [esp + 0x8c]
cmp ebx, edx
jne 0x42e001
jmp 0x42edfb
cmp ebx, 0x7f
jbe 0x432672
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4a0948]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x43265d
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4a2b48]
mov ecx, dword [eax*8 + 0x49f2cc]
add ecx, ebx
jmp 0x432679
mov eax, dword [ebp + 0x3c]
movzx ecx, byte [eax + ebx]
mov eax, dword [esp + 0x80]
cmp ebx, eax
je 0x42edfb
mov edi, dword [esp + 0x8c]
cmp ecx, eax
jne 0x42e001
jmp 0x42edfb
mov eax, dword [esi + 0xc]
movzx edi, byte [ecx]
movzx edx, byte [eax + 1]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp edx, edi
je case.0x434f86.14
cmp dword [esi + 0x9c], 0x20
jne 0x431c6b
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x434f86.14
add dword [esi + 0xc], 2
jmp 0x42dffa
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x432836
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0xc]
mov al, byte [ecx]
cmp al, 0x42
je 0x43273b
cmp al, 0x4f
je 0x43273b
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x432836
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x432836
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x432836
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x432836
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x432836
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x80], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add dword [esi + 0xc], 3
jmp 0x432836
mov ecx, dword [esi + 0xc]
cmp edx, 0x48
sbb eax, eax
and eax, 0xfffffff3
movzx edx, byte [ecx]
add eax, 0x48
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 0xc], eax
mov ebx, edx
and ebx, 1
mov dword [esp + 0x84], ebx
movsx eax, byte [edx + 0x49e618]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x49e624]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x432836
mov dword [esi + 0x8c], closesocket
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x8c]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
mov edi, dword [esi + 0xc]
test edx, edx
je 0x432991
mov eax, dword [esi + 0x80]
cmp eax, 0xc0
jb 0x432991
test al, 0x20
jne 0x432888
movzx ecx, byte [edi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0xc]
jmp 0x432991
test al, 0x10
jne 0x4328bb
mov eax, dword [esi + 0x80]
movzx ecx, byte [edi]
and eax, 0xf
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 2
jmp 0x432991
test al, 8
jne 0x4328fd
mov eax, dword [esi + 0x80]
movzx ecx, byte [edi]
and eax, 7
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [esi + 0xc]
shl ecx, 6
movzx eax, byte [eax + 2]
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 3
jmp 0x432991
movzx edx, byte [edi]
mov ecx, dword [esi + 0xc]
and edx, 0x3f
test al, 4
mov eax, dword [esi + 0x80]
jne 0x432948
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
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
mov dword [esi + 0x80], edx
add dword [esi + 0xc], 4
jmp 0x43298a
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
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
mov dword [esi + 0x80], edx
add dword [esi + 0xc], 5
mov edx, dword [esp + 0x8c]
cmp dword [esi + 0x9c], 0x48
jb 0x432db5
test edx, edx
je 0x4329ec
mov edi, dword [esi + 0x80]
cmp edi, 0x7f
jbe 0x4329ec
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4a0948]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x4329d0
dec eax
or eax, 0xffffff80
inc eax
mov edx, dword [esp + 0x8c]
add ecx, eax
movzx eax, word [ecx*2 + 0x4a2b48]
mov eax, dword [eax*8 + 0x49f2cc]
add eax, edi
jmp 0x4329f9
mov ecx, dword [ebp + 0x3c]
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
test edx, edx
je 0x432b40
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x432b8b
jmp 0x432a20
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ecx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x432b19
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x432a5a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x432b16
test cl, 0x10
jne 0x432a7b
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x432b16
test cl, 8
jne 0x432aa5
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x432b16
test cl, 4
jne 0x432adb
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x432b16
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ecx
je case.0x434f86.14
cmp dword [esi + 0x94], ecx
je case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x432a20
jmp 0x432b84
mov edx, 1
cmp dword [esi + 0x90], edx
jl 0x432b84
lea ecx, [ecx]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x431077
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x434f86.14
cmp dword [esi + 0x94], ecx
je case.0x434f86.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x432b50
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42dffa
test ebx, ebx
je 0x432bb4
test edx, edx
jne 0x43b3aa
mov dword [esi + 0x84], eax
jmp 0x43847f
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x432d3d
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x432d2a
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x432d02
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x432cde
test dl, 0x20
jne 0x432c12
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x432cde
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x432c3c
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x432cdc
test dl, 8
jne 0x432c68
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x432cdc
test dl, 4
jne 0x432ca0
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 5
jmp 0x432cdc
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp dword [esi + 0x80], edx
je 0x432d2a
cmp dword [esi + 0x94], edx
je 0x432d2a
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x432bd4
jmp 0x432d2a
cmp dword [ebp + 0x88], 0
je 0x432d2a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x432d2a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
je 0x43955c
jmp 0x42dffa
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x432da2
jmp 0x432d50
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x432d7a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x432da2
cmp dword [esi + 0x94], ecx
je 0x432da2
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x432d50
jmp 0x432da2
cmp dword [ebp + 0x88], 0
je 0x432da2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x432da2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
je 0x4384bf
jmp 0x42dffa
test edx, edx
je 0x432ed7
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x432f15
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x432ebc
test dl, 0x20
jne 0x432e0a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x432eb9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x432e31
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x432eb7
test dl, 8
jne 0x432e54
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x432eb7
test dl, 4
jne 0x432e83
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x432eb7
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
je case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x432dd0
jmp 0x432f0e
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x432f15
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x432ee4
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42dffa
cmp dword [esp + 0x84], 0
je 0x432f44
test edx, edx
jne 0x43b3bf
mov dword [esi + 0x84], eax
jmp 0x43854c
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x4330c8
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4330b5
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x43308d
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x433071
test dl, 0x20
jne 0x432fa2
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x433071
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x432fcc
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x43306f
test dl, 8
jne 0x432ffb
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x43306f
test dl, 4
jne 0x433033
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 5
jmp 0x43306f
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp dword [esi + 0x80], edx
je 0x4330b5
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x432f64
jmp 0x4330b5
cmp dword [ebp + 0x88], 0
je 0x4330b5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4330b5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
je 0x439720
jmp 0x42dffa
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x433122
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4330fa
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x433122
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4330d6
jmp 0x433122
cmp dword [ebp + 0x88], 0
je 0x433122
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x433122
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
je 0x43858c
jmp 0x42dffa
mov eax, dword [esi + 0xc]
mov dword [esp + 0x84], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x433274
mov dword [esi + 0x90], ebx
xor edx, edx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x5c
sete dl
add eax, 3
mov dword [esp + 0x84], edx
mov dword [esi + 0xc], eax
jmp 0x433274
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x433274
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x433274
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x433274
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x80], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add dword [esi + 0xc], 3
jmp 0x433274
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 0xc], eax
movsx eax, byte [ecx + 0x49e5c3]
lea edx, [ecx - 0x55]
mov dword [esi + 0x90], eax
and edx, 1
movsx eax, byte [ecx + 0x49e5cf]
mov dword [esp + 0x84], edx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x433274
mov dword [esi + 0x8c], closesocket
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x7c], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x7c]
cmp ecx, 0x10
je 0x433296
cmp ecx, 0xf
je 0x433296
mov dword [esi + 0x60], 0xffffffff
jmp 0x4332b9
xor eax, eax
cmp ecx, 0xf
sete al
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x60], eax
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x64], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x90]
test ecx, ecx
jle 0x43525b
mov eax, dword [esi + 0x60]
test eax, eax
js 0x434068
cmp eax, 0xa
ja case.default.0x43057a
jmp dword [eax*4 + 0x43bfd4]
cmp dword [esi + 0x68], ebx
jne 0x42edfb
mov edx, 1
cmp ecx, edx
jl 0x43525b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x43333f
cmp ecx, 0xc0
jb 0x43333f
test cl, 0x20
jne 0x43331b
inc eax
jmp 0x43333c
test cl, 0x10
jne 0x433325
add eax, 2
jmp 0x43333c
test cl, 8
jne 0x43332f
add eax, 3
jmp 0x43333c
test cl, 4
jne 0x433339
add eax, 4
jmp 0x43333c
add eax, 5
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4332f8
jmp 0x43525b
cmp dword [ebp + 0x88], ebx
je case.0x434f86.14
mov eax, dword [esi + 8]
jmp 0x42f5a5
mov edi, 1
cmp ecx, edi
jl 0x43525b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x43346a
cmp ebx, 0xc0
jb 0x43346a
test bl, 0x20
jne 0x4333b8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x433467
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4333df
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x433465
test bl, 8
jne 0x433402
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x433465
test bl, 4
jne 0x433431
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x433465
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43348c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
cmp eax, 9
je 0x4334b1
cmp eax, 5
je 0x4334b1
cmp eax, 8
je 0x4334b1
xor eax, eax
jmp 0x4334b6
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x433370
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x43525b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4335d8
cmp ebx, 0xc0
jb 0x4335d8
test bl, 0x20
jne 0x433528
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4335d5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43354f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4335d5
test bl, 8
jne 0x433572
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x4335d5
test bl, 4
jne 0x4335a1
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x4335d5
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x4335fa
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4334e0
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x43525b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x43373b
cmp ebx, 0xc0
jb 0x43373b
test bl, 0x20
jne 0x43368b
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x433738
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4336b2
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x433738
test bl, 8
jne 0x4336d5
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x433738
test bl, 4
jne 0x433704
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x433738
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43375d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x433643
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x43525b
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x433898
cmp ebx, 0xc0
jb 0x433898
test bl, 0x20
jne 0x4337e8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x433895
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43380f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x433895
test bl, 8
jne 0x433832
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x433895
test bl, 4
jne 0x433861
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x433895
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x4338ba
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4337a0
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x43525b
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4339fa
cmp ebx, 0xc0
jb 0x4339fa
test bl, 0x20
jne 0x433948
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4339f7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43396f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4339f5
test bl, 8
jne 0x433992
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4339f5
test bl, 4
jne 0x4339c1
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4339f5
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x433a1c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x433a43
cmp eax, 3
je 0x433a43
xor eax, eax
jmp 0x433a48
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x433900
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x43525b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x433b6a
cmp ebx, 0xc0
jb 0x433b6a
test bl, 0x20
jne 0x433ab8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x433b67
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x433adf
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x433b65
test bl, 8
jne 0x433b02
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x433b65
test bl, 4
jne 0x433b31
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x433b65
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x433bad
je case.0x433bc9.8192
cmp ebx, 0x85
ja 0x433b99
je case.0x433bc9.8192
cmp ebx, 9
jb case.0x433bc9.8203
cmp ebx, 0xd
jbe case.0x433bc9.8192
cmp ebx, 0x20
jmp 0x433bde
cmp ebx, 0xa0
je case.0x433bc9.8192
cmp ebx, 0x1680
jmp 0x433bde
cmp ebx, 0x202f
ja 0x433bd0
je case.0x433bc9.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x433bc9.8203
movzx eax, byte [eax + 0x43c008]
jmp dword [eax*4 + 0x43c000]
cmp ebx, 0x205f
je case.0x433bc9.8192
cmp ebx, 0x3000
je case.0x433bc9.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x433c02
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
cmp dword [eax*4 + 0x49f0d8], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x434f86.14
jmp 0x433c36
cmp dword [esi + 0x68], 0
jne case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x433a70
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x43525b
jmp 0x433c60
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x433d58
cmp ebx, 0xc0
jb 0x433d58
test bl, 0x20
jne 0x433ca8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x433d55
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x433ccf
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x433d55
test bl, 8
jne 0x433cf2
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x433d55
test bl, 4
jne 0x433d21
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x433d55
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4a0948]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x433d7b
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x433da7
cmp eax, 3
je 0x433da7
cmp ebx, 0x5f
je 0x433da7
xor eax, eax
jmp 0x433dac
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x434f86.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x433c60
jmp 0x43525b
mov ebx, 1
cmp ecx, ebx
jl 0x43525b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x433ecc
cmp edx, 0xc0
jb 0x433ecc
test dl, 0x20
jne 0x433e1c
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x433ec9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x433e43
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x433ec9
test dl, 8
jne 0x433e66
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x433ec9
test dl, 4
jne 0x433e95
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x433ec9
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x49f188]
lea eax, [eax*4 + 0x49f188]
cmp edx, ecx
jb 0x433eee
lea eax, [eax + 4]
cmp edx, ecx
je 0x433f0a
mov ecx, dword [eax]
cmp edx, ecx
jae 0x433ee1
cmp dword [esi + 0x68], 0
je case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x433dd4
jmp 0x43525b
cmp dword [esi + 0x68], 0
jne case.0x434f86.14
jmp 0x433ef8
mov ebx, 1
cmp ecx, ebx
jl 0x43525b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x43401d
cmp edx, 0xc0
jb 0x43401d
test dl, 0x20
jne 0x433f6b
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43401a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x433f92
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x434018
test dl, 8
jne 0x433fb5
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x434018
test dl, 4
jne 0x433fe4
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x434018
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x24
je 0x434048
cmp edx, 0x40
je 0x434048
cmp edx, 0x60
je 0x434048
cmp edx, 0xa0
jb 0x43403c
cmp edx, 0xd7ff
jbe 0x434048
cmp edx, 0xe000
jae 0x434048
xor eax, eax
jmp 0x43404d
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x433f23
jmp 0x43525b
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x434393
mov edi, 1
mov dword [esp + 0x94], edi
cmp ecx, edi
jl 0x43525b
jmp 0x434090
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x431077
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x434190
cmp ebx, 0xc0
jb 0x434190
test bl, 0x20
jne 0x4340d9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x43418d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x434100
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x434186
test bl, 8
jne 0x434123
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x434186
test bl, 4
jne 0x434152
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x434186
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x4341b2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2ca]
mov dword [esp + 0x90], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43434d
jmp 0x4341e0
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x4342de
cmp ebx, 0xc0
jb 0x4342de
test bl, 0x20
jne 0x434215
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4342d6
test bl, 0x10
jne 0x43423a
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x4342d6
test bl, 8
jne 0x434268
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x4342d6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4342a2
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x4342d6
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x434300
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x90]
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx ecx, byte [eax*8 + 0x49f2ca]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x49f150], eax
je 0x434346
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x4341e0
mov edi, dword [esp + 0x94]
cmp dword [ebp + 0x88], 0
je 0x43437a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x43437a
cmp eax, dword [ebp + 0x84]
jbe 0x43437a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
inc edi
mov dword [esp + 0x94], edi
cmp edi, dword [esi + 0x90]
jle 0x434090
jmp 0x43525b
mov edx, dword [esp + 0x8c]
add eax, 0xfffffffa
test edx, edx
je 0x434e5f
cmp eax, 0xf
ja case.0x4373a7.9
jmp dword [eax*4 + 0x43c034]
mov ebx, 1
cmp ecx, ebx
jl 0x435262
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x431077
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4343f7
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0043dd90
add esp, 0x14
test eax, eax
jne case.0x434f86.14
jmp 0x43441b
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x43441b
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x43441b
cmp edx, 1
je case.0x434f86.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x434f86.14
cmp dword [ebp + 0x88], 0
je 0x434456
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x434456
cmp dword [ebp + 0x18], 0
jne 0x434456
cmp dword [edi], 2
jne 0x434456
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x434456
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x434472
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x434472
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x434461
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4343c2
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x43334d
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4344c8
lea ebx, [ebx]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4344c8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x4344b0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x434494
jmp 0x43525b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja 0x42edfb
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x43525b
mov ebx, 1
cmp ecx, ebx
jl 0x435262
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4345ec
test dl, 0x20
jne 0x43453a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4345e9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x434561
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4345e7
test dl, 8
jne 0x434584
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x4345e7
test dl, 4
jne 0x4345b3
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x4345e7
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0xd
ja 0x434610
je 0x4345fd
cmp edx, 0xa
je 0x434631
lea eax, [edx - 0xb]
jmp 0x43461e
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x434631
cmp byte [eax], 0xa
jne 0x434631
inc eax
mov dword [esi + 8], eax
jmp 0x434631
cmp edx, 0x85
je 0x434627
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x434f86.14
cmp dword [ebp + 0x68], 0
jne case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x434500
jmp 0x43525b
mov ebx, 1
cmp ecx, ebx
jl 0x435262
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x43473c
test dl, 0x20
jne 0x43468a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x434739
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4346b1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x434737
test dl, 8
jne 0x4346d4
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x434737
test dl, 4
jne 0x434703
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x434737
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x180e
ja 0x43476e
je case.0x434f86.14
cmp edx, 0xa0
ja 0x434766
je case.0x434f86.14
cmp edx, 9
je case.0x434f86.14
cmp edx, 0x20
jmp 0x43479e
cmp edx, 0x1680
jmp 0x43479e
cmp edx, 0x205f
ja 0x434798
je case.0x434f86.14
cmp edx, 0x2000
jb 0x4347a4
cmp edx, 0x200a
jbe case.0x434f86.14
cmp edx, 0x202f
jmp 0x43479e
cmp edx, 0x3000
je case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x434650
jmp 0x43525b
mov ebx, 1
cmp ecx, ebx
jl 0x435262
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4348af
test dl, 0x20
jne 0x4347fd
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4348ac
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x434824
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4348aa
test dl, 8
jne 0x434847
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x4348aa
test dl, 4
jne 0x434876
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x4348aa
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x180e
ja 0x4348d5
je 0x434907
cmp edx, 0xa0
ja 0x4348cd
je 0x434907
cmp edx, 9
je 0x434907
cmp edx, 0x20
jmp 0x434901
cmp edx, 0x1680
jmp 0x434901
cmp edx, 0x205f
ja 0x4348fb
je 0x434907
cmp edx, 0x2000
jb case.0x434f86.14
cmp edx, 0x200a
jbe 0x434907
cmp edx, 0x202f
jmp 0x434901
cmp edx, 0x3000
jne case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4347c3
jmp 0x43525b
mov ebx, 1
cmp ecx, ebx
jl 0x435262
jmp 0x434930
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x434a1c
test dl, 0x20
jne 0x43496a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x434a19
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x434991
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x434a17
test dl, 8
jne 0x4349b4
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x434a17
test dl, 4
jne 0x4349e3
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x434a17
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x85
ja 0x434a34
je case.0x434f86.14
cmp edx, 0xa
jb 0x434a48
cmp edx, 0xd
jmp 0x434a42
cmp edx, 0x2028
jb 0x434a48
cmp edx, 0x2029
jbe case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x434930
jmp 0x43525b
mov ebx, 1
cmp ecx, ebx
jl 0x435262
jmp 0x434a70
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x434b5c
test dl, 0x20
jne 0x434aaa
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x434b59
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x434ad1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x434b57
test dl, 8
jne 0x434af4
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x434b57
test dl, 4
jne 0x434b23
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x434b57
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x85
ja 0x434b6e
je 0x434b7d
lea eax, [edx - 0xa]
cmp eax, 3
jmp 0x434b77
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x434a70
jmp 0x43525b
mov ebx, 1
cmp ecx, ebx
jl 0x435262
lea esp, [esp]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x431077
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x434c8c
test dl, 0x20
jne 0x434bda
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x434c89
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x434c01
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x434c87
test dl, 8
jne 0x434c24
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x434c87
test dl, 4
jne 0x434c53
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x434c87
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x80
jae 0x434ca1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x434f86.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x434ba0
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x43334d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x434f86.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x434f86.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x434cc0
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x43334d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x434d33
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x434f86.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x434d58
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x434d58
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x434d40
inc edi
cmp edi, dword [esi + 0x90]
jle 0x434d10
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x43334d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x434f86.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x434f86.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x434d73
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x43334d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x434de3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x434f86.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x434e08
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x434e08
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x434df0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x434dc0
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x43334d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x434f86.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x434f86.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x434e23
jmp 0x43525b
cmp eax, 0xf
ja case.0x4373a7.9
jmp dword [eax*4 + 0x43c074]
mov ebx, 1
cmp ecx, ebx
jl 0x435262
lea esp, [esp]
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x431077
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x434eb0
push 0
push edi
push eax
push edx
push ecx
call fcn.0043dd90
add esp, 0x14
test eax, eax
jne case.0x434f86.14
jmp 0x434ed4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x434ed4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x434ed4
cmp edx, 1
je case.0x434f86.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x434f86.14
cmp dword [ebp + 0x88], 0
je 0x434f0f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x434f0f
cmp dword [ebp + 0x18], 0
jne 0x434f0f
cmp dword [edi], 2
jne 0x434f0f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x434f0f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x434e80
jmp 0x43525b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x4344e6
cmp dword [ebp + 0x88], ebx
je case.0x434f86.14
cmp edx, dword [ebp + 0x84]
jbe case.0x434f86.14
jmp 0x42ef52
mov edx, 1
cmp ecx, edx
jl 0x43525b
mov edi, edi
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x43334d
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x434f86.14
movzx eax, byte [eax + 0x43c0c4]
jmp dword [eax*4 + 0x43c0b4]
cmp ecx, dword [ebp + 0x78]
jae case.0x434f86.10
cmp byte [ecx], 0xa
jne case.0x434f86.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x434f86.10
cmp dword [ebp + 0x68], ebx
jne case.0x434f86.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x434f60
jmp 0x43525b
mov edx, 1
cmp ecx, edx
jl 0x43525b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x434f86.14
cmp ecx, 0x20
je case.0x434f86.14
cmp ecx, 0xa0
je case.0x434f86.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x434fc3
jmp 0x43525b
mov edx, 1
cmp ecx, edx
jl 0x43525b
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x435039
cmp ecx, 0x20
je 0x435039
cmp ecx, 0xa0
jne case.0x434f86.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x435010
jmp 0x43525b
mov edx, 1
cmp ecx, edx
jl 0x43525b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl 0x435081
cmp ecx, 0xd
jle case.0x434f86.14
cmp ecx, 0x85
je case.0x434f86.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x435054
jmp 0x43525b
mov edx, 1
cmp ecx, edx
jl 0x43525b
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl case.0x434f86.14
cmp ecx, 0xd
jle 0x4350cd
cmp ecx, 0x85
jne case.0x434f86.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4350a0
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
jmp 0x4350f0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x434f86.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4350f0
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x434f86.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x435130
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x434f86.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x435170
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x434f86.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4351b0
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
jmp 0x4351f0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x434f86.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4351f0
jmp 0x43525b
mov edi, 1
cmp ecx, edi
jl 0x435262
jmp 0x435230
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43334d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x434f86.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x435230
mov edx, dword [esp + 0x8c]
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
je 0x42dffa
cmp dword [esp + 0x84], 0
je 0x4352c2
mov eax, dword [esi + 0x60]
test eax, eax
js 0x4352a5
cmp eax, 0xa
ja case.0x4373a7.9
jmp dword [eax*4 + 0x43c140]
mov esi, dword [esi]
test esi, esi
je case.default.0x437874
mov edi, 0xfffffff2
jmp 0x437860
cmp dword [esi + 0x7c], 0x16
je 0x43b493
test edx, edx
jne 0x43b47e
mov dword [esi + 0x84], ecx
jmp 0x4386f5
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x4362fb
cmp eax, 0xa
ja case.0x4373a7.9
jmp dword [eax*4 + 0x43c16c]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4362e8
mov ebx, dword [esp + 0x8c]
jmp 0x435300
mov edx, dword [esi + 8]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x43536b
movzx ecx, byte [edx]
test ebx, ebx
je 0x43534e
cmp ecx, 0xc0
jb 0x43534e
test cl, 0x20
jne 0x435328
mov eax, 2
jmp 0x43534e
test cl, 0x10
jne 0x435334
mov eax, 3
jmp 0x43534e
test cl, 8
jne 0x435340
mov eax, 4
jmp 0x43534e
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x4362e8
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x435300
jmp 0x4362e8
cmp dword [ebp + 0x88], 0
je 0x4362e8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4362e8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4362e8
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edi, 0xfffffff4
mov edx, ebx
jmp 0x437860
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4362e8
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x43552e
movzx ebx, byte [edi]
test edx, edx
je 0x4354ac
cmp ebx, 0xc0
jb 0x4354ac
test bl, 0x20
jne 0x43540e
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x4354a4
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x43542d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x4354a4
and eax, 0x3f
test bl, 8
jne 0x43544d
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x4354a4
test bl, 4
jne 0x435476
and ebx, 3
shl ebx, 6
or ebx, ecx
mov ecx, 5
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x4354a4
and ebx, 1
shl ebx, 6
or ebx, ecx
mov ecx, 6
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x4354ce
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
cmp eax, 9
je 0x4354f3
cmp eax, 5
je 0x4354f3
cmp eax, 8
je 0x4354f3
xor eax, eax
jmp 0x4354f8
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4362e8
mov edx, dword [esp + 0x8c]
lea eax, [ecx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x4353d0
jmp 0x4362e8
cmp dword [ebp + 0x88], 0
je 0x4362e8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4362e8
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x4362e8
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edi, 0xfffffff4
jmp 0x437860
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4362e8
jmp 0x435590
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x435712
movzx ebx, byte [edi]
test edx, edx
je 0x435693
cmp ebx, 0xc0
jb 0x435693
test bl, 0x20
jne 0x4355da
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x43568b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x435602
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x43568b
and eax, 0x3f
test bl, 8
jne 0x435628
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x43568b
test bl, 4
jne 0x435657
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x43568b
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x4356b5
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4362e8
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x435590
jmp 0x4362e8
cmp dword [ebp + 0x88], 0
je 0x4362e8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4362e8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x435553
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4362e8
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x435712
movzx ebx, byte [edi]
test edx, edx
je 0x43585f
cmp ebx, 0xc0
jb 0x43585f
test bl, 0x20
jne 0x4357a6
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x435857
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4357ce
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x435857
and eax, 0x3f
test bl, 8
jne 0x4357f4
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x435857
test bl, 4
jne 0x435823
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x435857
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x435881
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4362e8
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x435760
jmp 0x4362e8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4362e8
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x435712
movzx ebx, byte [edi]
test edx, edx
je 0x4359f3
cmp ebx, 0xc0
jb 0x4359f3
test bl, 0x20
jne 0x43593a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x4359eb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x435962
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x4359eb
and eax, 0x3f
test bl, 8
jne 0x435988
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x4359eb
test bl, 4
jne 0x4359b7
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x4359eb
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x435a15
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4362e8
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x4358f0
jmp 0x4362e8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4362e8
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x43552e
movzx ebx, byte [edi]
test edx, edx
je 0x435b63
cmp ebx, 0xc0
jb 0x435b63
test bl, 0x20
jne 0x435ac2
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x435b5b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x435ae4
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x435b5b
and eax, 0x3f
test bl, 8
jne 0x435b04
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x435b5b
test bl, 4
jne 0x435b2d
and ebx, 3
shl ebx, 6
or ebx, ecx
mov ecx, 5
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x435b5b
and ebx, 1
shl ebx, 6
or ebx, ecx
mov ecx, 6
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x435b85
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x435bac
cmp eax, 3
je 0x435bac
xor eax, eax
jmp 0x435bb1
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4362e8
mov edx, dword [esp + 0x8c]
lea eax, [ecx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x435a84
jmp 0x4362e8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4362e8
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x435712
movzx ebx, byte [edi]
test edx, edx
je 0x435d0d
cmp ebx, 0xc0
jb 0x435d0d
test bl, 0x20
jne 0x435c52
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x435d0d
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x435c7a
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x435d03
and eax, 0x3f
test bl, 8
jne 0x435ca0
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x435d03
test bl, 4
jne 0x435ccf
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x435d03
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp ebx, 0x180e
ja 0x435d50
je case.0x435d70.8192
cmp ebx, 0x85
ja 0x435d3c
je case.0x435d70.8192
cmp ebx, 9
jb case.0x435d70.8203
cmp ebx, 0xd
jbe case.0x435d70.8192
cmp ebx, 0x20
jmp 0x435d85
cmp ebx, 0xa0
je case.0x435d70.8192
cmp ebx, 0x1680
jmp 0x435d85
cmp ebx, 0x202f
ja 0x435d77
je case.0x435d70.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x435d70.8203
movzx eax, byte [eax + 0x43c1a0]
jmp dword [eax*4 + 0x43c198]
cmp ebx, 0x205f
je case.0x435d70.8192
cmp ebx, 0x3000
je case.0x435d70.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x435da9
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
cmp dword [eax*4 + 0x49f0d8], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4362e8
mov edx, dword [esp + 0x8c]
jmp 0x435de4
cmp dword [esi + 0x68], 0
jne 0x4362e8
mov eax, dword [esp + 0x84]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x435c00
jmp 0x4362e8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4362e8
lea esp, [esp]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x435712
movzx ebx, byte [edi]
test edx, edx
je 0x435f33
cmp ebx, 0xc0
jb 0x435f33
test bl, 0x20
jne 0x435e7a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x435f2b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x435ea2
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x435f2b
and eax, 0x3f
test bl, 8
jne 0x435ec8
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x435f2b
test bl, 4
jne 0x435ef7
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x435f2b
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4a0948]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x435f56
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x435f82
cmp eax, 3
je 0x435f82
cmp ebx, 0x5f
je 0x435f82
xor eax, eax
jmp 0x435f87
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4362e8
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x435e30
jmp 0x4362e8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4362e8
lea esp, [esp]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x43611f
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x4360c1
cmp edx, 0xc0
jb 0x4360c1
test dl, 0x20
jne 0x436024
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x4360b9
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436043
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4360b9
and eax, 0x3f
test dl, 8
jne 0x436063
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4360b9
test dl, 4
jne 0x43608c
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x4360b9
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x49f188]
lea eax, [eax*4 + 0x49f188]
cmp edx, ecx
jb 0x4360e3
lea eax, [eax + 4]
cmp edx, ecx
je 0x436113
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4360d6
cmp dword [esi + 0x68], 0
je 0x4362e8
lea eax, [ebx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x435fe0
jmp 0x4362e8
cmp dword [esi + 0x68], 0
jne 0x4362e8
jmp 0x4360ed
cmp dword [ebp + 0x88], 0
je 0x4362e8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4362e8
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jle 0x4362e8
jmp 0x42ef66
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4362e8
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x4362c0
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x436277
cmp edx, 0xc0
jb 0x436277
test dl, 0x20
jne 0x4361ad
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x436277
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4361d7
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x436277
test dl, 8
jne 0x436203
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x436277
test dl, 4
jne 0x43623b
movzx eax, byte [edi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 5
jmp 0x436277
and edx, eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
cmp edx, 0x24
je 0x4362a2
cmp edx, 0x40
je 0x4362a2
cmp edx, 0x60
je 0x4362a2
cmp edx, 0xa0
jb 0x436296
cmp edx, 0xd7ff
jbe 0x4362a2
cmp edx, 0xe000
jae 0x4362a2
xor ecx, ecx
jmp 0x4362a7
mov ecx, 1
cmp ecx, dword [esi + 0x68]
je 0x4362e8
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x436161
jmp 0x4362e8
cmp dword [ebp + 0x88], 0
je 0x4362e8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4362e8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
je 0x43a79c
jmp 0x42dffa
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x436697
mov edi, dword [esi + 0x90]
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jge 0x436648
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x436620
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x436420
cmp ebx, 0xc0
jb 0x436420
test bl, 0x20
jne 0x436369
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x43641d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x436390
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x436416
test bl, 8
jne 0x4363b3
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x436416
test bl, 4
jne 0x4363e2
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x436416
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x436442
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2ca]
mov dword [esp + 0x84], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4365dd
jmp 0x436470
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x43656e
cmp ebx, 0xc0
jb 0x43656e
test bl, 0x20
jne 0x4364a5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x436566
test bl, 0x10
jne 0x4364ca
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x436566
test bl, 8
jne 0x4364f8
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x436566
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x436532
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x436566
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x436590
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x84]
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx ecx, byte [eax*8 + 0x49f2ca]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x49f150], eax
je 0x4365d6
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x436470
mov edi, dword [esp + 0x90]
cmp dword [ebp + 0x88], 0
je 0x43660a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x43660a
cmp eax, dword [ebp + 0x84]
jbe 0x43660a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
inc edi
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jl 0x436320
jmp 0x436648
cmp dword [ebp + 0x88], 0
je 0x436648
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x436648
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
cmp dword [esp + 0x80], 0
jne 0x42dffa
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bbc5
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bbbb
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
add eax, 0xfffffffa
test edx, edx
je 0x43739e
cmp eax, 0xf
ja case.0x4373a7.9
jmp dword [eax*4 + 0x43c1cc]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x436786
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4366f9
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0043dd90
add esp, 0x14
test eax, eax
jne 0x43738b
jmp 0x43671d
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x43671d
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x43671d
cmp edx, 1
je 0x43738b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x43738b
cmp dword [ebp + 0x88], 0
je 0x436758
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x436758
cmp dword [ebp + 0x18], 0
jne 0x436758
cmp dword [edi], 2
jne 0x436758
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x436758
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x436774
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x436774
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x436763
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x4366c4
jmp 0x43738b
cmp dword [ebp + 0x88], 0
je 0x43738b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x43738b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x43738b
jmp 0x42ef66
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x436818
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x43738b
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x436786
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x43680a
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43680a
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x4367f2
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x4367e0
jmp 0x43738b
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x43738b
cmp eax, dword [ebp + 0x84]
jbe 0x43738b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x43738b
jmp 0x435559
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x8c]
mov edi, dword [esi + 8]
sub eax, edi
sub ecx, dword [esi + 0x90]
cmp ecx, eax
jbe 0x43689f
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x43738b
cmp edx, dword [ebp + 0x84]
jbe 0x43738b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x43738b
jmp 0x42ef66
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x43738b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
lea esp, [esp]
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x436786
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4369ca
test dl, 0x20
jne 0x4368fe
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x4369ca
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x436928
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x4369c8
test dl, 8
jne 0x436954
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x4369c8
test dl, 4
jne 0x43698c
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 5
jmp 0x4369c8
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp edx, 0xd
jne 0x4369e6
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x43738b
cmp byte [eax], 0xa
jne 0x436a20
inc eax
jmp 0x436a1d
cmp edx, 0xa
je 0x436a1b
cmp dword [ebp + 0x68], 0
jne 0x43738b
cmp edx, 0xb
je 0x436a1b
cmp edx, 0xc
je 0x436a1b
cmp edx, 0x85
je 0x436a1b
cmp edx, 0x2028
je 0x436a1b
cmp edx, 0x2029
jne 0x43738b
add eax, edi
mov dword [esi + 8], eax
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x4368c0
jmp 0x43738b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436b9a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x436b18
test dl, 0x20
jne 0x436a7a
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x436b10
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436a99
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x436b10
and eax, 0x3f
test dl, 8
jne 0x436ab9
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x436b10
test dl, 4
jne 0x436ae2
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x436b10
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x180e
ja 0x436b3e
je 0x436b6c
cmp edx, 0xa0
ja 0x436b36
je 0x436b6c
cmp edx, 9
je 0x436b6c
cmp edx, 0x20
jmp 0x436b66
cmp edx, 0x1680
jmp 0x436b66
cmp edx, 0x205f
ja 0x436b60
je 0x436b6c
cmp edx, 0x2000
jb 0x436b68
cmp edx, 0x200a
jbe 0x436b6c
cmp edx, 0x202f
jmp 0x436b66
cmp edx, 0x3000
je 0x436b6c
xor edx, edx
jmp 0x436b71
mov edx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp edx, eax
je 0x43738b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x436a44
jmp 0x43738b
cmp dword [ebp + 0x88], 0
je 0x43738b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x43738b
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x43738b
jmp 0x42ef66
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
lea esp, [esp]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436b9a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x436cb0
test dl, 0x20
jne 0x436c12
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x436ca8
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436c31
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x436ca8
and eax, 0x3f
test dl, 8
jne 0x436c51
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x436ca8
test dl, 4
jne 0x436c7a
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x436ca8
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x85
ja 0x436cef
je 0x436cfa
cmp edx, 0xa
jb 0x436cc4
cmp edx, 0xd
jbe 0x436cfa
xor edx, edx
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp edx, eax
je 0x43738b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x436be0
jmp 0x43738b
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x436cc4
mov edx, 1
jmp 0x436cc6
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436b9a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x436de7
test dl, 0x20
jne 0x436d49
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x436ddf
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436d68
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x436ddf
and eax, 0x3f
test dl, 8
jne 0x436d88
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x436ddf
test dl, 4
jne 0x436db1
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x436ddf
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x436dfc
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x43738b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x436d13
jmp 0x43738b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
jmp 0x436e30
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436b9a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x436f04
test dl, 0x20
jne 0x436e66
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x436efc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436e85
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x436efc
and eax, 0x3f
test dl, 8
jne 0x436ea5
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x436efc
test dl, 4
jne 0x436ece
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x436efc
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x43738b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x43738b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x436e30
jmp 0x43738b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
jmp 0x436f50
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436b9a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x437024
test dl, 0x20
jne 0x436f86
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43701c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436fa5
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43701c
and eax, 0x3f
test dl, 8
jne 0x436fc5
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43701c
test dl, 4
jne 0x436fee
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x43701c
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x437039
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x43738b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x436f50
jmp 0x43738b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436b9a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x437137
test dl, 0x20
jne 0x437099
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43712f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4370b8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43712f
and eax, 0x3f
test dl, 8
jne 0x4370d8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43712f
test dl, 4
jne 0x437101
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x43712f
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x43738b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x43738b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x437063
jmp 0x43738b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436b9a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x437254
test dl, 0x20
jne 0x4371b6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43724c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4371d5
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43724c
and eax, 0x3f
test dl, 8
jne 0x4371f5
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43724c
test dl, 4
jne 0x43721e
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x43724c
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x437269
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x43738b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x437180
jmp 0x43738b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43738b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436b9a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x437367
test dl, 0x20
jne 0x4372c9
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43735f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4372e8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43735f
and eax, 0x3f
test dl, 8
jne 0x437308
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43735f
test dl, 4
jne 0x437331
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x43735f
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x43738b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x43738b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x437293
cmp dword [esp + 0x80], 0
je 0x439c58
jmp 0x42dffa
cmp eax, 0xf
ja case.0x4373a7.9
jmp dword [eax*4 + 0x43c20c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x437837
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x437464
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4373f0
push 0
push edi
push eax
push edx
push ecx
call fcn.0043dd90
add esp, 0x14
test eax, eax
jne 0x437837
jmp 0x437414
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x437414
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x437414
cmp edx, 1
je 0x437837
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x437837
cmp dword [ebp + 0x88], 0
je 0x43744f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x43744f
cmp dword [ebp + 0x18], 0
jne 0x43744f
cmp dword [edi], 2
jne 0x43744f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x43744f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x4373c0
jmp 0x437837
cmp dword [ebp + 0x88], 0
je 0x437837
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x437837
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x437837
jmp 0x42ef66
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x8c]
mov edi, dword [esi + 8]
sub eax, edi
sub ecx, dword [esi + 0x90]
cmp ecx, eax
jbe 0x4374e8
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x437837
cmp edx, dword [ebp + 0x84]
jbe 0x437837
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x437837
jmp 0x42ef66
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x437837
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x437837
jmp 0x437510
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x437464
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x43753b
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x437837
cmp byte [eax], 0xa
jne 0x437565
inc eax
jmp 0x437562
cmp eax, 0xa
je 0x43755f
cmp dword [ebp + 0x68], 0
jne 0x437837
cmp eax, 0xb
je 0x43755f
cmp eax, 0xc
je 0x43755f
cmp eax, 0x85
jne 0x437837
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x437510
jmp 0x437837
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x437837
jmp 0x437590
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x437464
mov al, byte [ecx]
cmp al, 9
je 0x437837
cmp al, 0x20
je 0x437837
cmp al, 0xa0
je 0x437837
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x437590
jmp 0x437837
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x437837
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x437464
mov al, byte [ecx]
cmp al, 9
je 0x4375fe
cmp al, 0x20
je 0x4375fe
cmp al, 0xa0
jne 0x437837
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4375e0
jmp 0x437837
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x437837
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x437464
mov al, byte [ecx]
cmp al, 0xa
jb 0x437646
cmp al, 0xd
jbe 0x437837
cmp al, 0x85
je 0x437837
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x437624
jmp 0x437837
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x437837
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x437464
mov al, byte [ecx]
cmp al, 0xa
jb 0x437837
cmp al, 0xd
jbe 0x437692
cmp al, 0x85
jne 0x437837
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x437670
jmp 0x437837
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x437837
jmp 0x4376c0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x437464
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne 0x437837
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4376c0
jmp 0x437837
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x437837
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x437464
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je 0x437837
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x437702
jmp 0x437837
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x437837
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x437464
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x437837
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x437744
jmp 0x437837
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x437837
jmp 0x437790
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x437464
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x437837
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x437790
jmp 0x437837
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x437837
jmp 0x4377d0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x437464
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x437837
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4377d0
jmp 0x437837
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x437837
jmp 0x437810
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x437464
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x437837
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x437810
cmp dword [esp + 0x80], 0
je 0x43889a
jmp 0x42dffa
mov esi, dword [esi]
test esi, esi
je 0x43bd11
mov edi, 0xfffffffb
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x7c]
mov eax, dword [esi + 0x130]
dec eax
cmp eax, 0x42
ja case.default.0x437874
jmp dword [eax*4 + 0x43c24c]
cmp edi, 0xfffffc1b
je 0x437946
cmp edi, 0xfffffc20
jne 0x4378c3
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x437874.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x4378bf
cmp byte [ecx], 0x77
jne case.0x437874.49
xor edi, edi
jmp 0x4378cb
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x437946
cmp dword [esi + 0x9c], 0x88
jb 0x437911
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x43b69a
push 0x134
call dword [0x627fb4]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43b690
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa8]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xac]
mov dword [ecx + edx*4], eax
mov esi, dword [esi]
test esi, esi
je 0x437d3c
mov edx, dword [esp + 0x8c]
jmp 0x437864
cmp edi, 0xfffffc20
jne 0x437a03
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x437a51
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x4379ce
cmp byte [ecx], 0x77
jne 0x437a51
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x437a67
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437864
test edi, edi
je 0x4379ce
cmp edi, 0xfffffc1b
jne 0x437a51
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x81
je 0x437a43
cmp al, 0x77
jne 0x437a34
lea esp, [esp]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x437a20
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov eax, dword [ebp + 0xb4]
sub eax, edx
neg eax
sbb eax, eax
and edi, eax
mov esi, dword [esi]
test esi, esi
je 0x437d3c
mov edx, dword [esp + 0x8c]
jmp 0x437864
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x437ab9
cmp eax, 0x81
je 0x437ab9
cmp dword [ebp + 0x6c], 0
jne 0x437ac3
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x77
je 0x437ac3
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x49efc0]
add eax, ecx
mov dword [esi + 0xc], eax
jmp 0x42df80
mov dword [ebp + 0x98], 2
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov edx, dword [esi + 4]
test edx, edx
jne 0x43b6bc
push 0x134
call dword [0x627fb4]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43b6b2
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
cmp edi, 1
jne 0x437b83
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x437b20
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x92
jne 0x437b33
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x437b69
mov edx, eax
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0xc], edx
cmp byte [eax], 0x77
je 0x437b50
mov edx, dword [esp + 0x88]
mov ecx, 3
movzx eax, byte [edx + 0x49efc0]
sub ecx, eax
add dword [esi + 0xc], ecx
jmp case.0x42e42e.145
test edi, edi
je 0x437b93
cmp edi, 0xfffffc20
jne case.0x437874.49
mov edx, dword [esp + 0x88]
cmp dword [esi + 0x58], 0
je 0x437ba9
movzx eax, byte [edx + 0x49efc0]
jmp 0x437bac
mov eax, dword [esi + 0x78]
add dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
mov eax, dword [esi + 0xc]
jne 0x437bc9
cmp byte [eax - 3], 0x77
mov edi, dword [esp + 0x8c]
jne 0x42e001
cmp dword [esi + 0x9c], 0x8c
jne 0x42df80
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b6de
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b6d4
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
cmp edi, 1
je 0x437cc2
cmp edi, 0xfffffc19
je 0x437cc2
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x437c6a
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x437874.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x437c72
cmp byte [ecx], 0x77
jmp 0x437c6c
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x437cc8
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b6f7
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b6ed
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x78
jne 0x437ce1
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437864
cmp dword [esi + 0x58], 0
je 0x43b31e
mov esi, dword [esi]
test esi, esi
je 0x43bcb6
mov edi, 1
jmp 0x437864
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jg 0x437dad
je 0x437d46
cmp edi, 0xfffffc19
je 0x4385e3
cmp edi, 0xfffffc1b
jle case.0x437874.49
cmp edi, 0xfffffc1f
jle 0x437d6e
mov esi, dword [esi]
test esi, esi
jne 0x437864
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x437d6e
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x437dc0
cmp byte [ecx], 0x77
je 0x437dc0
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x437d71
cmp dword [esi + 0x58], 0
je 0x437ff7
mov esi, dword [esi]
test esi, esi
je 0x43bcb6
mov edx, dword [esp + 0x8c]
mov edi, 1
jmp 0x437864
mov eax, edi
sub eax, 0
je 0x437dc0
dec eax
je 0x4385e3
jmp case.0x437874.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x77
jne 0x437d88
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b70d
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b703
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [esi + 0x44]
push dword [ebp + 0xc]
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x4c]
lea ebx, [esi + 0x3c]
mov dword [ebp + 0x90], eax
add esp, 0xc
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x43b34c
cmp edi, 0xfffffc19
je 0x43b34c
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x437e79
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x42edfb
push ecx
call dword [0x627fb0]
add esp, 4
jmp 0x42edfb
test edi, edi
je 0x437ea3
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x437e94
push ecx
call dword [0x627fb0]
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x437d3c
jmp 0x437859
mov dword [ebp + 0xa4], ebx
mov edx, dword [esi + 0x20]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
lea eax, [ecx + edx]
mov dword [esi + 0x20], eax
cmp byte [eax], 0x77
jne 0x437f09
cmp dword [esi + 0x58], 0
je 0x437ed4
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x43b753
push 0x134
call dword [0x627fb4]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43b749
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
jmp 0x437e59
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x34]
mov al, byte [eax]
cmp al, 0x81
jne 0x437f63
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b7a1
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b797
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x437864
cmp al, 0x88
jb 0x43b4a4
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b7c3
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b7b9
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x437864
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov esi, dword [esi]
test esi, esi
je 0x43bcc3
mov edi, 0xfffffc1b
jmp 0x437864
test edi, edi
jne case.0x437874.49
mov edx, dword [esi + 0x2c]
jmp 0x437fe0
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x437fe0
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x42dffa
test edi, edi
je 0x42f874
jmp case.0x437874.49
test edi, edi
je 0x437faf
jmp case.0x437874.49
cmp edi, 0xfffffc1b
jne 0x43802b
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x43802d
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x438e1b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b7e5
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b7db
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x437864
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4380a0
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
push ebx
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.0043c4a0
add esp, 0x14
test eax, eax
jns 0x438107
cmp eax, 0xfffffffe
jne 0x4380c9
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x439be1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x439be1
cmp eax, dword [ebp + 0x84]
jbe 0x439be1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x430e1e
jmp 0x439be1
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b80a
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b800
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffffa
jmp 0x437864
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x88]
sub dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.0x434f86.14
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b823
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b819
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4381c7
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x439cc6
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
mov edi, ecx
mov edx, dword [esi + 0x28]
and ecx, 7
shr edi, 3
mov eax, 1
shl eax, cl
test byte [edi + edx], al
je 0x439be1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b83c
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b832
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb 0x42edfb
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b855
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b84b
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4382a1
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x439cc6
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4382d1
cmp dword [esi + 0x94], ecx
je 0x4382d1
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437864
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b86e
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b864
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
dec dword [esi + 8]
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b887
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b87d
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x438381
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x439cc6
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne 0x439be1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b8a0
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b896
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
dec dword [esi + 8]
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b8b9
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b8af
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43844e
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x439cc6
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4385e3
cmp dword [esi + 0x94], ecx
je 0x4385e3
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b8d2
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b8c8
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b8eb
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b8e1
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x438525
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x439cc6
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je 0x439be1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b901
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b8f7
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b917
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b90d
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4385f4
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437864
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x43863b
cmp dword [ebp + 0x88], 0
je 0x438623
cmp ecx, dword [ebp + 0x84]
jbe 0x438623
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x430e1e
mov esi, dword [esi]
test esi, esi
je 0x43bc78
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x437864
cmp dword [esi + 0x7c], 0xc
jne 0x438662
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x438684
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043dd90
add esp, 0x14
test eax, eax
jne 0x4386a1
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x43867d.15
jmp dword [eax*4 + 0x43c358]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x438662
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x438662
cmp edi, 1
je 0x4386a1
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x438662
mov esi, dword [esi]
test esi, esi
je 0x43bc78
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x437864
cmp dword [ebp + 0x88], 0
je case.0x43867d.13
cmp edx, dword [ebp + 0x78]
jb case.0x43867d.13
cmp dword [ebp + 0x18], 0
jne case.0x43867d.13
cmp dword [ebp + 0x1c], 2
jne case.0x43867d.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x43867d.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x430e1e
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b92d
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b923
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x43873d.14
movzx eax, byte [ecx + 0x43c3a8]
jmp dword [eax*4 + 0x43c398]
cmp edx, dword [ebp + 0x78]
jae case.0x43867d.13
cmp byte [edx], 0xa
jne case.0x43867d.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x43867d.13
cmp dword [ebp + 0x68], 0
je case.0x43867d.13
jmp case.0x43873d.14
cmp ecx, 9
je case.0x43873d.14
cmp ecx, 0x20
je case.0x43873d.14
cmp ecx, 0xa0
jmp 0x43883a
cmp ecx, 9
je case.0x43867d.13
cmp ecx, 0x20
je case.0x43867d.13
cmp ecx, 0xa0
je case.0x43867d.13
jmp case.0x43873d.14
cmp ecx, 0xa
jb case.0x43867d.13
cmp ecx, 0xd
jbe case.0x43873d.14
cmp ecx, 0x85
jmp 0x43883a
cmp ecx, 0xa
jb case.0x43873d.14
cmp ecx, 0xd
jbe case.0x43867d.13
cmp ecx, 0x85
je case.0x43867d.13
jmp case.0x43873d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x43867d.13
jmp case.0x43873d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jmp 0x43883a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x43867d.13
jmp case.0x43873d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jmp 0x43883a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x43867d.13
mov esi, dword [esi]
test esi, esi
je 0x43bc78
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x437864
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x43867d.13
mov esi, dword [esi]
test esi, esi
je 0x43bc78
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x437864
mov esi, dword [esi]
test esi, esi
je case.default.0x437874
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x437864
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
cmp dword [esi + 0x7c], 0x11
mov eax, dword [esi + 8]
jne 0x43889a
cmp eax, dword [esi + 0x30]
jbe 0x43889a
cmp byte [eax], 0xa
jne 0x43889a
cmp byte [eax - 1], 0xd
jne 0x43889a
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b943
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b939
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
cmp edi, 0xfffffc1a
jne 0x438931
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x78]
add eax, dword [ebp + 0x70]
mov dword [esi + 0xc], eax
mov dword [esi + 0x5c], 1
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
cmp dword [esi + 8], eax
jne 0x438929
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x438910
jmp 0x438988
mov dword [esi + 8], eax
jmp 0x4389ad
cmp edi, 0xfffffc20
jne 0x438965
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x437874.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x43896d
cmp byte [ecx], 0x77
jmp 0x438967
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x77
je 0x4389a1
cmp dword [esi + 0x5c], 0
jne 0x437ff7
cmp dword [esi + 0x54], 0
jne 0x437ff7
jmp 0x439be1
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x4389c3
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x43b985
push 0x134
call dword [0x627fb4]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43b97b
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
mov esi, dword [esi]
test edi, edi
jne 0x437d34
test esi, esi
je 0x43bcdd
mov edi, 0xfffffc1c
jmp 0x437864
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x43bcf7
mov edi, 0xfffffc1e
jmp 0x437864
cmp edi, 1
je 0x438a43
cmp edi, 0xfffffc19
jne 0x438a5d
cmp dword [ebp + 0xac], 0
jne 0x438a5d
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp 0x437a51
cmp edi, 0xfffffc1f
jne 0x437a51
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x438a92
test dl, dl
je 0x438a8e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x438a92
add eax, 2
add ecx, 2
test dl, dl
jne 0x438a72
xor eax, eax
jmp 0x438a97
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437a51
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x43bcf7
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffc1e
jmp 0x437864
cmp edi, 1
je 0x438acd
cmp edi, 0xfffffc19
jne case.0x437874.51
cmp dword [ebp + 0xac], 0
jne case.0x437874.51
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov esi, dword [esi]
test edi, edi
jne 0x437d34
test esi, esi
je 0x43bcd0
mov edi, 0xfffffc1d
jmp 0x437864
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x43bd04
mov edi, 0xfffffc1f
jmp 0x437864
cmp edi, 1
je 0x438b30
cmp edi, 0xfffffc19
jne case.0x437874.54
cmp dword [ebp + 0xac], 0
jne case.0x437874.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x43bcea
mov edi, 0xfffffc20
jmp 0x437864
cmp edi, 0xfffffc1a
jne 0x438bd1
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x78]
add eax, dword [ebp + 0x70]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov dword [esi + 0x5c], 1
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
cmp dword [esi + 8], eax
jne 0x438bc9
mov edx, dword [esi + 0xc]
jmp 0x438bb0
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x438bb0
jmp 0x438c38
mov dword [esi + 8], eax
jmp 0x42eb32
cmp edi, 0xfffffc20
jne 0x438c05
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x437874.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x438c0d
cmp byte [ecx], 0x77
jmp 0x438c07
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x42eb32
cmp dword [esi + 0x5c], 0
jne 0x438c78
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa8]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xac]
mov dword [ecx + edx*4], eax
cmp dword [esi + 0x54], 0
jne 0x42dff6
cmp dword [esi + 0x5c], 0
jne 0x42dff6
jmp 0x439be1
cmp edi, 1
jne 0x438d34
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x438cb1
cmp al, 0x77
jne 0x439be1
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x438cb1
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov ecx, dword [ebp + 0x80]
mov dword [esi + 8], ecx
mov eax, dword [esi + 0xc]
mov al, byte [eax]
cmp al, 0x78
je 0x42dff6
cmp ecx, dword [esi + 0x38]
je 0x42dff6
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x438dcd
test ecx, ecx
jne 0x43b9ee
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b9e4
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x437864
cmp edi, 0xfffffc20
jne 0x438d68
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x437874.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x438d70
cmp byte [ecx], 0x77
jmp 0x438d6a
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x438ca0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43b9c9
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b9bf
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test ecx, ecx
jne 0x43ba13
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ba09
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x437864
test edi, edi
je 0x43b4a4
jmp case.0x437874.49
test edi, edi
jne case.0x437874.49
add dword [esi + 0xc], 3
jmp 0x42df80
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x438e49
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x438f4a
cmp ebx, 0xc0
jb 0x438f4a
test bl, 0x20
jne 0x438e8b
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x438f47
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x438eb5
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x438f4a
mov edx, dword [esi + 8]
test bl, 8
jne 0x438edb
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x438f3e
test bl, 4
jne 0x438f0a
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x438f3e
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
push edx
push dword [esi + 0x28]
push ebx
call fcn.0043d720
add esp, 0xc
test eax, eax
je 0x42edfb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ba35
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ba2b
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x439be1
cmp dword [esp + 0x8c], edi
je 0x438fd1
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x438fd1
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x438fc5
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ba4e
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ba44
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43902b
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x439120
test bl, 0x20
jne 0x439065
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43911d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43908f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x439120
mov edx, dword [esi + 8]
test bl, 8
jne 0x4390b8
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x43911b
test bl, 4
jne 0x4390e7
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x43911b
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
jbe 0x439136
cmp dword [esi + 0x9c], 0x6e
jne 0x439153
jmp 0x42edfb
mov edx, dword [esi + 0x28]
mov edi, ebx
and ebx, 7
shr edi, 3
mov eax, 1
mov ecx, ebx
shl eax, cl
test byte [edi + edx], al
je 0x42edfb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ba67
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ba5d
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x42edfb
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x4391bc
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x4391b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ba80
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ba76
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439216
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov edi, dword [esi + 0x88]
sub eax, edi
mov ebx, dword [esi + 8]
cmp ebx, eax
ja 0x439285
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x439245
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x43924a
add ecx, 4
add edx, 4
sub edi, 4
jae 0x439234
cmp edi, 0xfffffffc
je 0x439277
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x439282
cmp edi, 0xfffffffd
je 0x439277
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x439282
cmp edi, 0xfffffffe
je 0x439277
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x439282
cmp edi, 0xffffffff
je 0x439277
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x439282
mov eax, dword [esi + 0x88]
jmp 0x4392f0
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x439330
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x439330
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x4392b7
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4392bc
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4392a6
cmp edi, 0xfffffffc
je 0x4392ed
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x439330
cmp edi, 0xfffffffd
je 0x4392ed
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x439330
cmp edi, 0xfffffffe
je 0x4392ed
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x439330
cmp edi, 0xffffffff
je 0x4392ed
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x439330
mov eax, dword [esi + 0x6c]
add eax, ebx
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ba99
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ba8f
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
cmp dword [ebp + 0x88], 0
je case.0x434f86.14
cmp ebx, dword [ebp + 0x78]
jb case.0x434f86.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x434f86.14
jmp 0x42ef52
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43937c
lea ecx, [ecx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x439370
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bab2
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43baa8
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4393e2
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4394e2
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x43941c
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4394df
test dl, 0x10
jne 0x43943e
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add dword [esi + 8], 2
jmp 0x4394e2
mov ecx, dword [esi + 8]
test dl, 8
jne 0x43946e
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 3]
jmp 0x4394df
test dl, 4
jne 0x4394a4
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 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
lea eax, [ecx + 4]
jmp 0x4394df
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 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]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
je 0x4386a1
cmp dword [esi + 0x94], edx
je 0x4386a1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x439529
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x438135
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x43b94d
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43955c
mov edi, edi
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x439550
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bacb
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bac1
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4395c2
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x4396b7
test bl, 0x20
jne 0x4395fc
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4396b4
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x439626
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4396b7
mov edx, dword [esi + 8]
test bl, 8
jne 0x43964f
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4396b2
test bl, 4
jne 0x43967e
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4396b2
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ebx
je 0x42edfb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bae4
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bada
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x439720
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x439714
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bafd
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43baf3
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439786
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x4397c2
cmp dword [ebp + 0x88], 0
je 0x439be1
cmp ecx, dword [ebp + 0x84]
jbe 0x439be1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x430e1e
jmp 0x439be1
cmp dword [esi + 0x7c], 0xc
jne 0x439814
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4397ef
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043dd90
add esp, 0x14
test eax, eax
jne 0x439be1
jmp 0x439814
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x439814
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x439814
cmp edi, 1
je 0x439be1
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x439be1
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4398fc
test dl, 0x20
jne 0x439847
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4398f9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x43986e
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4398f7
test dl, 8
jne 0x439894
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x4398f7
test dl, 4
jne 0x4398c3
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x4398f7
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x43990b.15
jmp dword [eax*4 + 0x43c424]
cmp dword [ebp + 0x88], 0
je case.0x43990b.13
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x43990b.13
cmp dword [ebp + 0x18], 0
jne case.0x43990b.13
cmp dword [ebp + 0x1c], 2
jne case.0x43990b.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x43990b.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x43990b.13
jmp 0x430e1e
cmp edx, 0xd
ja 0x43998e
je 0x43997b
cmp edx, 0xa
je case.0x43990b.13
jbe 0x439be1
cmp edx, 0xc
jmp 0x4399a8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae case.0x43990b.13
cmp byte [eax], 0xa
jne case.0x43990b.13
inc eax
mov dword [esi + 8], eax
jmp case.0x43990b.13
cmp edx, 0x85
je 0x4399ae
cmp edx, 0x2027
jbe 0x439be1
cmp edx, 0x2029
ja 0x439be1
cmp dword [ebp + 0x68], 0
je case.0x43990b.13
jmp 0x439be1
cmp edx, 0x180e
ja 0x439a2d
je 0x439be1
cmp edx, 0xa0
ja 0x439a25
je 0x439be1
cmp edx, 9
je 0x439be1
cmp edx, 0x20
je 0x439be1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x439a16
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x438135
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x43b94d
cmp edx, 0x1680
jmp 0x4399e1
cmp edx, 0x205f
ja 0x439a57
je 0x439be1
cmp edx, 0x2000
jb case.0x43990b.13
cmp edx, 0x200a
jbe 0x439be1
cmp edx, 0x202f
jmp 0x4399e1
cmp edx, 0x3000
jmp 0x439bdb
cmp edx, 0x180e
ja 0x439a94
je case.0x43990b.13
cmp edx, 0xa0
ja 0x439a8c
je case.0x43990b.13
cmp edx, 9
je case.0x43990b.13
cmp edx, 0x20
jmp 0x439ac8
cmp edx, 0x1680
jmp 0x439ac8
cmp edx, 0x205f
ja 0x439ac2
je case.0x43990b.13
cmp edx, 0x2000
jb 0x439be1
cmp edx, 0x200a
jbe case.0x43990b.13
cmp edx, 0x202f
jmp 0x439ac8
cmp edx, 0x3000
je case.0x43990b.13
jmp 0x439be1
cmp edx, 0x85
ja 0x439af8
je 0x439be1
cmp edx, 0xa
jb case.0x43990b.13
cmp edx, 0xd
jbe 0x439be1
jmp case.0x43990b.13
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x43990b.13
jmp 0x439be1
cmp edx, 0x85
ja 0x439b28
je case.0x43990b.13
cmp edx, 0xa
jb 0x439be1
cmp edx, 0xd
jmp 0x439b31
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x43990b.13
jmp 0x439be1
cmp edx, 0x100
jae case.0x43990b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x43990b.13
jmp 0x439be1
cmp edx, 0x100
jae 0x439be1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jmp 0x439bdb
cmp edx, 0x100
jae case.0x43990b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x43990b.13
jmp 0x439be1
cmp edx, 0x100
jae 0x439be1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jmp 0x439bdb
cmp edx, 0x100
jae case.0x43990b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x43990b.13
mov esi, dword [esi]
test esi, esi
je 0x43bc78
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x437864
cmp edx, 0x100
jae 0x439be1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x43990b.13
mov esi, dword [esi]
test esi, esi
je 0x43bc78
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x437864
mov esi, dword [esi]
test esi, esi
je case.default.0x437874
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x437864
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x439c3c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x439c30
cmp dword [esi + 0x7c], 0x11
jne 0x439c58
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x439c58
cmp byte [eax], 0xa
jne 0x439c58
dec eax
cmp byte [eax], 0xd
jne 0x439c58
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bb16
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bb0c
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439cbe
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x439cde
cmp dword [ebp + 0x88], 0
je 0x4385e3
cmp eax, dword [ebp + 0x84]
jmp 0x43a439
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edx, edx
je 0x439d1d
cmp ecx, 0xc0
jb 0x439d1d
test cl, 0x20
jne 0x439cf9
inc eax
jmp 0x439d1a
test cl, 0x10
jne 0x439d03
add eax, 2
jmp 0x439d1a
test cl, 8
jne 0x439d0d
add eax, 3
jmp 0x439d1a
test cl, 4
jne 0x439d17
add eax, 4
jmp 0x439d1a
add eax, 5
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
je 0x439d34
mov esi, dword [esi]
test esi, esi
je 0x43bc78
xor edi, edi
jmp 0x437864
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x439d63
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x438135
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x43b94d
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439d97
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x439e91
cmp ebx, 0xc0
jb 0x439e91
test bl, 0x20
jne 0x439dd9
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x439e8e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x439e03
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x439e91
mov edx, dword [esi + 8]
test bl, 8
jne 0x439e29
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x439e8c
test bl, 4
jne 0x439e58
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x439e8c
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x439eb3
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
cmp eax, 9
je 0x439ed8
cmp eax, 5
je 0x439ed8
cmp eax, 8
je 0x439ed8
xor eax, eax
jmp 0x439edd
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x42edfb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bb2f
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bb25
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439f46
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43a03c
cmp ebx, 0xc0
jb 0x43a03c
test bl, 0x20
jne 0x439f88
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43a039
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x439fb0
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43a03c
mov edx, dword [esi + 8]
test bl, 8
jne 0x439fd6
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x43a039
test bl, 4
jne 0x43a005
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x43a039
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43a05e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x42edfb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bb48
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bb3e
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43a0e8
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43a1de
cmp ebx, 0xc0
jb 0x43a1de
test bl, 0x20
jne 0x43a12a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43a1db
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43a152
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43a1de
mov edx, dword [esi + 8]
test bl, 8
jne 0x43a178
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x43a1db
test bl, 4
jne 0x43a1a7
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x43a1db
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43a200
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x42edfb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bb61
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bb57
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43a283
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43a379
cmp ebx, 0xc0
jb 0x43a379
test bl, 0x20
jne 0x43a2c5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43a376
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43a2ed
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43a379
mov edx, dword [esi + 8]
test bl, 8
jne 0x43a313
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x43a376
test bl, 4
jne 0x43a342
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x43a376
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43a39b
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x42edfb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bb7a
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bb70
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43a41e
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x43a467
cmp dword [ebp + 0x88], 0
je 0x4385e3
cmp edi, dword [ebp + 0x84]
jbe 0x4385e3
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4385e3
mov esi, dword [esi]
test esi, esi
je 0x43bc9c
mov edi, 0xfffffff4
jmp 0x437864
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43a555
cmp ebx, 0xc0
jb 0x43a555
test bl, 0x20
jne 0x43a49d
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43a552
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43a4c7
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43a555
mov edx, dword [esi + 8]
test bl, 8
jne 0x43a4ed
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x43a550
test bl, 4
jne 0x43a51c
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x43a550
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43a577
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2ca]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43a708
lea esp, [esp]
cmp dword [esp + 0x8c], 0
mov edi, 1
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
je 0x43a6a7
cmp ebx, 0xc0
jb 0x43a6a7
test bl, 0x20
jne 0x43a5db
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x43a69f
test bl, 0x10
jne 0x43a600
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x43a69f
test bl, 8
jne 0x43a631
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x43a69f
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x43a66b
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x43a69f
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43a6c9
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx ecx, byte [eax*8 + 0x49f2ca]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x49f150], eax
je 0x43a708
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
cmp eax, dword [ebp + 0x78]
jb 0x43a5a0
cmp dword [ebp + 0x88], 0
je 0x43a735
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x43a735
cmp eax, dword [ebp + 0x84]
jbe 0x43a735
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ef66
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bb93
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bb89
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
je 0x43a79c
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43a79c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x43a790
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42df80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bbac
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bba2
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
jne 0x43a7f7
movzx ebx, byte [ecx]
jmp 0x43a8e5
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43a80c
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x43a800
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x43a8e5
test bl, 0x20
jne 0x43a82f
movzx eax, byte [eax + 1]
and ebx, 0x1f
jmp 0x43a8dd
test bl, 0x10
jne 0x43a84f
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x43a8dd
test bl, 8
jne 0x43a878
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x43a8dd
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x43a8ad
and ebx, 3
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x43a8dd
and ebx, 1
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43a907
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2ca]
mov dword [esp + 0x80], eax
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0x30]
jbe 0x42df80
dec edi
cmp dword [esp + 0x8c], 0
jne 0x43a93f
movzx ebx, byte [edi]
jmp 0x43a9fe
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x43a951
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x43a947
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x43a9fe
test bl, 0x20
jne 0x43a971
movzx eax, byte [edi + 1]
and ebx, 0x1f
jmp 0x43a9f6
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x43a98e
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x43a9f6
and eax, 0x3f
test bl, 8
jne 0x43a9a9
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x43a9f6
test bl, 4
jne 0x43a9cd
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x43a9f6
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43aa20
dec ebx
or ebx, 0xffffff80
inc ebx
mov ecx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx edx, byte [eax*8 + 0x49f2ca]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x49f150], eax
je 0x436656
mov dword [esi + 8], edi
mov dword [esp + 0x80], edx
jmp 0x43a920
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43aa81
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43ab7b
cmp ebx, 0xc0
jb 0x43ab7b
test bl, 0x20
jne 0x43aac3
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43ab78
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43aaed
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43ab7b
mov edx, dword [esi + 8]
test bl, 8
jne 0x43ab13
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x43ab76
test bl, 4
jne 0x43ab42
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x43ab76
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43ab9d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x43abc4
cmp eax, 3
je 0x43abc4
xor eax, eax
jmp 0x43abc9
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x42edfb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bbde
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bbd4
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43ac32
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43ad33
cmp ebx, 0xc0
jb 0x43ad33
test bl, 0x20
jne 0x43ac74
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43ad30
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43ac9e
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43ad33
mov edx, dword [esi + 8]
test bl, 8
jne 0x43acc4
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x43ad27
test bl, 4
jne 0x43acf3
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x43ad27
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x24
je 0x43ad5e
cmp ebx, 0x40
je 0x43ad5e
cmp ebx, 0x60
je 0x43ad5e
cmp ebx, 0xa0
jb 0x43ad52
cmp ebx, 0xd7ff
jbe 0x43ad5e
cmp ebx, 0xe000
jae 0x43ad5e
xor eax, eax
jmp 0x43ad63
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x42f742
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bbf7
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bbed
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43adcc
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43aecd
cmp ebx, 0xc0
jb 0x43aecd
test bl, 0x20
jne 0x43ae0e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43aeca
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43ae38
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43aecd
mov edx, dword [esi + 8]
test bl, 8
jne 0x43ae5e
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x43aec1
test bl, 4
jne 0x43ae8d
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x43aec1
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x43af10
je case.0x43af30.8192
cmp ebx, 0x85
ja 0x43aefc
je case.0x43af30.8192
cmp ebx, 9
jb case.0x43af30.8203
cmp ebx, 0xd
jbe case.0x43af30.8192
cmp ebx, 0x20
jmp 0x43af45
cmp ebx, 0xa0
je case.0x43af30.8192
cmp ebx, 0x1680
jmp 0x43af45
cmp ebx, 0x202f
ja 0x43af37
je case.0x43af30.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x43af30.8203
movzx eax, byte [eax + 0x43c46c]
jmp dword [eax*4 + 0x43c464]
cmp ebx, 0x205f
je case.0x43af30.8192
cmp ebx, 0x3000
je case.0x43af30.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4a0948]
shl eax, 7
and ebx, 0x8000007f
jns 0x43af69
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
cmp dword [eax*4 + 0x49f0d8], 6
sete cl
cmp ecx, dword [esi + 0x68]
jne 0x43af9c
jmp 0x42edfb
cmp dword [esi + 0x68], 0
jne 0x42f742
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bc10
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bc06
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43affc
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43b0f2
cmp ebx, 0xc0
jb 0x43b0f2
test bl, 0x20
jne 0x43b03e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43b0ef
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43b066
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43b0f2
mov edx, dword [esi + 8]
test bl, 8
jne 0x43b08c
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x43b0ef
test bl, 4
jne 0x43b0bb
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x43b0ef
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4a0948]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x43b115
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4a2b48]
movzx eax, byte [eax*8 + 0x49f2c9]
mov eax, dword [eax*4 + 0x49f0d8]
cmp eax, 1
je 0x43b141
cmp eax, 3
je 0x43b141
cmp ebx, 0x5f
je 0x43b141
xor eax, eax
jmp 0x43b146
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x42edfb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bc29
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bc1f
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
test edi, edi
jne case.0x437874.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43b1af
mov esi, dword [esi]
test esi, esi
je 0x43bc78
jmp 0x437864
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43a426
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43b2ac
cmp ebx, 0xc0
jb 0x43b2ac
test bl, 0x20
jne 0x43b1f1
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43b2a9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43b219
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43b2ac
mov edx, dword [esi + 8]
test bl, 8
jne 0x43b23f
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
jmp 0x43b2a2
test bl, 4
jne 0x43b26e
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
jmp 0x43b2a2
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x49f188]
lea eax, [eax*4 + 0x49f188]
cmp ebx, ecx
jb 0x43b2ce
lea eax, [eax + 4]
cmp ebx, ecx
je 0x43b313
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x43b2c1
cmp dword [esi + 0x68], 0
je 0x42f742
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43bc42
push 0x134
call dword [0x627fb4]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43bc38
mov esi, dword [esi]
test esi, esi
je 0x43bc6b
lea edi, [eax - 6]
jmp 0x437859
cmp dword [esi + 0x68], 0
je 0x43b2d8
jmp 0x42f742
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x43b321
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x42dffa
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x43b363
push ecx
call dword [0x627fb0]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x42dffa
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x439159
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x438f65
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4392fb
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x439500
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4396c9
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x439d3a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x439eec
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43a08e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43a229
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43a3c4
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43abd8
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43afa2
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43b155
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43b2de
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43ad72
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4399ed
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43a73b
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x42df80
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x37
mov eax, dword [esi + 8]
mov dword [edi + 8], eax
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x49efc0]
movzx eax, byte [ecx + 1]
add edx, eax
add edx, ecx
mov dword [edi + 0xc], edx
mov eax, dword [esi + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [edi + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [edi + 0x1c], eax
mov dword [edi], esi
mov esi, edi
jmp 0x42df70
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x34
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x43b766
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x33
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x43b766
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x43b4bf
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x35
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x43b766
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x43b4bf
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x36
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x43b766
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x43b4bf
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 3
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], ebx
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x42df70
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xa
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x2c]
jmp 0x43b956
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xb
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x2c]
add eax, 3
jmp 0x43b956
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 7
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x43b956
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xd
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x43b956
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xc
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x43b956
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 1
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x43b766
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 2
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x43b766
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x43b717
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 5
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], 0
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x42df70
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 6
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0x20]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x49efc0]
add eax, ecx
mov dword [edx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [edx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [edx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [edx + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [edx + 0x1c], eax
mov dword [edx], esi
mov esi, edx
jmp 0x42df70
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 8
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x43b956
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x32
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x43b956
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 9
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x43b956
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2f
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x42df70
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x30
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x43b766
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x3f
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x43b766
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x40
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x43b956
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x41
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x43b956
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x42
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x43b956
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x43b94d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x43b94d
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffe6
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc20
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1f
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x68
ret