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

Disassembly:
sub esp, 0x1b0
mov eax, dword [esp + 0x1b4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1b8]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1bc]
push ebx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x1c4]
push ebp
mov ebp, dword [esp + 0x1cc]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x1d0]
push esi
mov dword [esp + 0x38], eax
lea esi, [esp + 0x24]
mov eax, dword [esp + 0x1d8]
push edi
mov dword [esp + 0x28], 0
mov dword [esp + 0x40], eax
mov dword [esi + 0x5c], 0
mov dword [esp + 0x10], esi
lea ebx, [ebx]
mov dword [esi + 0x60], 0
jmp 0x42bfd0
mov edx, dword [ebp]
mov ebx, dword [ebp + 0x48]
mov dword [esp + 0x14], ebx
lea eax, [edx + 1]
mov dword [ebp], eax
cmp edx, dword [ebp + 4]
jb 0x42c011
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bfff
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b24f
mov edi, 0xfffffff8
jmp 0x436d4f
mov eax, dword [esi + 0x18]
cmp eax, dword [ebp + 8]
jb 0x42c045
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c033
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b25f
mov edi, 0xffffffeb
jmp 0x436d4f
cmp dword [ebp + 0x98], 2
jne 0x42c06f
mov eax, dword [esi + 4]
lea ecx, [esi + 0x120]
mov dword [esi + 0x124], eax
mov eax, dword [esi + 0x14]
mov dword [ecx], eax
mov dword [esi + 0x14], ecx
mov dword [ebp + 0x98], 0
mov eax, dword [esi + 8]
xor ebx, ebx
mov dword [esp + 0x24], 0
mov dword [esp + 0x18], ebx
movzx edx, byte [eax]
mov dword [esi + 0x94], edx
cmp edx, 0x9b
ja case.0x42c09c.98
movzx eax, byte [edx + 0x43b4a8]
jmp dword [eax*4 + 0x43b360]
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xb0], eax
push 0x12c
mov dword [ebp + 0xac], ebx
call dword [0xf2ff68]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43b1f6
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c0e7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b26f
mov edi, 0xfffffffa
jmp 0x436d4b
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c113
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
push 0x12c
call dword [0xf2ff68]
mov edx, eax
add esp, 4
test edx, edx
je 0x42c0cd
mov dword [esi + 0x128], 0x34
jmp 0x42c232
push 0x12c
call dword [0xf2ff68]
mov edx, eax
add esp, 4
test edx, edx
je 0x42c0cd
mov dword [esi + 0x128], 0x33
jmp 0x42c232
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xb0], eax
push 0x12c
mov dword [ebp + 0xac], ebx
call dword [0xf2ff68]
mov edi, eax
add esp, 4
test edi, edi
je 0x42c0cd
mov dword [esi + 0x128], 0x38
jmp 0x43b200
push 0x12c
call dword [0xf2ff68]
mov edx, eax
add esp, 4
test edx, edx
je 0x42c0cd
mov dword [esi + 0x128], 0x35
jmp 0x42c232
cmp dword [ebp + 0x6c], ebx
je 0x42c1e9
mov ecx, dword [esi + 8]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x4b37d0]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 8], edx
jmp 0x42c06f
push 0x12c
call dword [0xf2ff68]
mov edi, eax
add esp, 4
test edi, edi
je 0x42c0cd
mov dword [esi + 0x128], 0x39
jmp 0x43b200
push 0x12c
call dword [0xf2ff68]
mov edx, eax
add esp, 4
test edx, edx
je 0x42c0cd
mov dword [esi + 0x128], 0x36
mov eax, dword [esi + 4]
mov dword [edx + 4], eax
mov ecx, dword [esi + 8]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4b37d0]
add eax, ecx
mov dword [edx + 8], eax
mov eax, dword [esi + 0xc]
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]
inc eax
mov dword [edx + 0x18], eax
mov dword [edx], esi
mov esi, edx
jmp 0x42bfaf
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xb0], eax
push 0x12c
mov dword [ebp + 0xac], ebx
call dword [0xf2ff68]
mov edi, eax
add esp, 4
test edi, edi
je 0x42c0cd
mov dword [esi + 0x128], 0x3a
jmp 0x43b200
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 4]
mov dword [esi + 0x34], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x24], eax
jmp 0x438615
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add ecx, ecx
mov dword [esi + 0x90], ecx
cmp ecx, dword [ebp + 0x14]
jge case.0x42c09c.123
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x9c], eax
mov ecx, dword [esi + 0x90]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa0], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x8c]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x24], eax
mov edx, dword [esi + 4]
mov ecx, dword [ebp + 0x10]
sub edx, dword [ebp + 0x74]
sub ecx, dword [esi + 0x8c]
mov eax, dword [ebp + 0xc]
mov dword [eax + ecx*4], edx
jmp 0x436de6
mov dword [esi + 0x4c], ebx
jmp 0x42cdd1
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x70], ecx
mov eax, dword [esi + 8]
cmp byte [eax + 3], 0x70
jne 0x42c4ae
mov edi, dword [0xf33a5c]
test edi, edi
je 0x42c4a4
mov dword [esp + 0x158], 2
mov eax, dword [esi + 8]
movzx eax, byte [eax + 4]
mov dword [esp + 0x15c], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x160], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x164], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x168], eax
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x16c], eax
mov eax, dword [esi + 4]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x170], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 5]
movzx eax, byte [eax + 6]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x180], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 7]
movzx eax, byte [eax + 8]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x184], ecx
mov eax, dword [esi + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x174], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x178], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x17c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x188], eax
lea eax, [esp + 0x158]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x42c473
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c464
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
jns 0x42c4a4
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c48f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
jne 0x436d4b
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1b0
ret
movzx eax, byte [0x4b3840]
add dword [esi + 8], eax
mov eax, dword [esi + 8]
movzx edx, byte [eax + 3]
cmp edx, 0x89
je 0x42c716
cmp edx, 0x8a
je 0x42c716
cmp edx, 0x87
je 0x42c560
cmp edx, 0x88
je 0x42c560
cmp edx, 0x8b
jne 0x42c506
mov dword [esi + 0x50], ebx
mov ecx, dword [esi + 8]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
add edx, ecx
mov dword [esi + 8], edx
jmp 0x437056
push 0x12c
mov dword [ebp + 0x98], 1
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 3
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
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 dword [ecx + 0x14], ebx
mov eax, dword [esi + 0x18]
inc eax
mov dword [ecx + 0x18], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x42bfaf
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x90], ecx
cmp ecx, dword [esi + 0x10]
jge 0x42c589
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x42c589
mov eax, 1
jmp 0x42c58b
xor eax, eax
mov dword [esi + 0x50], eax
test eax, eax
jne 0x42c6eb
cmp edx, 0x88
jne 0x42c6eb
mov ebx, dword [esi + 0x90]
mov edx, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x28]
mov edi, ecx
sar ebx, 1
mov dword [esp + 0x18], eax
test edx, edx
jle 0x42c5e7
mov esi, eax
lea esp, [esp]
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
cmp ecx, ebx
je 0x42c5d8
add edi, dword [ebp + 0x24]
inc esi
cmp esi, edx
jl 0x42c5c0
mov ecx, dword [ebp + 0x28]
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
cmp eax, edx
jge 0x42c6eb
mov ebx, edi
cmp edi, ecx
jbe 0x42c65e
sub ebx, dword [ebp + 0x24]
lea eax, [edi + 2]
lea ecx, [ebx + 2]
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42c620
test dl, dl
je 0x42c61c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42c620
add eax, 2
add ecx, 2
test dl, dl
jne 0x42c600
xor eax, eax
jmp 0x42c625
sbb eax, eax
or eax, 1
test eax, eax
jne 0x42c65e
movzx ecx, byte [ebx]
movzx eax, byte [ebx + 1]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x90], ecx
cmp ecx, dword [esi + 0x10]
jge 0x42c64b
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x42c657
mov dword [esi + 0x50], 0
cmp ebx, dword [ebp + 0x28]
jmp 0x42c5f3
mov dword [esi + 0x50], 1
cmp dword [esi + 0x50], 0
jne 0x42c6f1
mov ebx, dword [esp + 0x18]
inc ebx
cmp ebx, dword [ebp + 0x20]
jge 0x42c6eb
lea eax, [edi + 2]
mov dword [esp + 0x1c], eax
lea esp, [esp]
add edi, dword [ebp + 0x24]
lea ecx, [edi + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42c6a6
test dl, dl
je 0x42c6a2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42c6a6
add eax, 2
add ecx, 2
test dl, dl
jne 0x42c686
xor eax, eax
jmp 0x42c6ab
sbb eax, eax
or eax, 1
test eax, eax
jne 0x42c6eb
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x90], ecx
cmp ecx, dword [esi + 0x10]
jge 0x42c6d1
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x42c6e4
inc ebx
mov dword [esi + 0x50], 0
cmp ebx, dword [ebp + 0x20]
jge 0x42c6eb
mov eax, dword [esp + 0x1c]
jmp 0x42c680
mov dword [esi + 0x50], 1
cmp dword [esi + 0x50], 0
je 0x42c6fe
mov ecx, 3
add dword [esi + 8], ecx
jmp 0x437056
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
jmp 0x437056
mov ecx, dword [ebp + 0xa4]
test ecx, ecx
je 0x42c4e9
movzx ebx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ebx, 8
or ebx, eax
cmp ebx, 0xffff
je 0x42c742
cmp ebx, dword [ecx + 4]
je 0x42c742
xor eax, eax
jmp 0x42c747
mov eax, 1
mov dword [esi + 0x50], eax
test eax, eax
jne 0x42c894
cmp edx, 0x8a
jne 0x42c894
mov ecx, dword [ebp + 0x28]
xor edx, edx
mov eax, dword [ebp + 0x20]
mov edi, ecx
mov dword [esp + 0x20], edi
mov dword [esp + 0x18], edx
test eax, eax
jle 0x42c79a
movzx eax, byte [edi]
movzx ecx, byte [edi + 1]
shl eax, 8
or ecx, eax
mov eax, dword [ebp + 0x20]
cmp ecx, ebx
je 0x42c78f
add edi, dword [ebp + 0x24]
inc edx
cmp edx, eax
jl 0x42c774
mov ecx, dword [ebp + 0x28]
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], edi
cmp edx, eax
jge 0x42c894
mov ebx, edi
cmp edi, ecx
jbe 0x42c817
lea eax, [edi + 2]
mov dword [esp + 0x1c], eax
mov edi, eax
sub ebx, dword [ebp + 0x24]
mov eax, edi
lea ecx, [ebx + 2]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42c7e0
test dl, dl
je 0x42c7dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42c7e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x42c7c0
xor eax, eax
jmp 0x42c7e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x42c80f
movzx eax, byte [ebx]
xor ecx, ecx
movzx edx, byte [ebx + 1]
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
cmp edx, dword [eax + 4]
sete cl
mov dword [esi + 0x50], ecx
test ecx, ecx
jne 0x42c80f
cmp ebx, dword [ebp + 0x28]
ja 0x42c7b1
mov edi, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
cmp dword [esi + 0x50], 0
jne 0x42c6f1
inc edx
mov dword [esp + 0x18], edx
cmp edx, dword [ebp + 0x20]
jge 0x42c894
lea eax, [edi + 2]
mov ebx, edx
mov dword [esp + 0x1c], eax
add edi, dword [ebp + 0x24]
lea ecx, [edi + 2]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42c860
test dl, dl
je 0x42c85c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42c860
add eax, 2
add ecx, 2
test dl, dl
jne 0x42c840
xor eax, eax
jmp 0x42c865
sbb eax, eax
or eax, 1
test eax, eax
jne 0x42c894
movzx eax, byte [edi]
xor ecx, ecx
movzx edx, byte [edi + 1]
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
cmp edx, dword [eax + 4]
sete cl
mov dword [esi + 0x50], ecx
test ecx, ecx
jne 0x42c894
mov eax, dword [esp + 0x1c]
inc ebx
cmp ebx, dword [ebp + 0x20]
jl 0x42c834
cmp dword [esi + 0x50], 0
je 0x42c6fe
mov ecx, 3
add dword [esi + 8], ecx
jmp 0x437056
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x90], eax
mov eax, dword [esi + 0x8c]
mov dword [ebp + 0x90], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [ebp + 0x14]
jl 0x42c8f1
mov dword [ebp + 0x3c], 1
add dword [esi + 8], 3
jmp 0x42c06f
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x90]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov eax, dword [esi + 0x90]
cmp dword [esi + 0x10], eax
jg 0x42c927
add eax, 2
mov dword [esi + 0x10], eax
add dword [esi + 8], 3
jmp 0x42c06f
mov edi, dword [esi + 4]
mov ecx, dword [esi + 0xc]
cmp edi, ecx
jne 0x42c98a
cmp edx, 0x99
je 0x42c98a
cmp dword [ebp + 0xa4], ebx
jne 0x42c98a
cmp dword [ebp + 0x58], ebx
jne 0x42c961
cmp dword [ebp + 0x5c], ebx
je 0x42c98a
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x42c98a
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c97b
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov dword [ebp + 0x80], edi
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov edi, dword [esi + 0x94]
neg edi
sbb edi, edi
and edi, 0xfffffc18
inc edi
jmp 0x42c475
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x24], eax
cmp dword [ebp + 0x98], 1
jne 0x42c9d9
mov dword [esi + 0x50], 1
mov dword [ebp + 0x98], ebx
jmp 0x4370f6
mov dword [esi + 0x50], ebx
jmp 0x4370f6
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x24], eax
cmp dword [ebp + 0x98], 1
jne 0x42ca05
mov dword [esi + 0x50], 1
mov dword [ebp + 0x98], ebx
jmp 0x4371fd
mov dword [esi + 0x50], ebx
jmp 0x4371fd
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 8]
test ebx, ebx
je 0x42ca93
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x42ca50
dec dword [esi + 4]
dec edx
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x74]
jb 0x42ca6a
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42ca4c
jmp 0x42ca40
dec ecx
mov dword [esi + 4], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x42ca40
test edx, edx
jg 0x42ca27
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jae 0x42ca61
mov dword [ebp + 0x84], eax
add dword [esi + 8], 3
jmp 0x42c06f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ca84
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 8]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
sub dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
jae 0x42ca50
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cac8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [0xf33a5c]
test edi, edi
je 0x42cbdf
mov dword [esp + 0x18c], 2
mov eax, dword [esi + 8]
movzx eax, byte [eax + 1]
mov dword [esp + 0x190], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x194], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x198], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x19c], eax
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x1a0], eax
mov eax, dword [esi + 4]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x1a4], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x1b4], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x1b8], ecx
mov eax, dword [esi + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x1a8], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x1ac], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x1b0], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x1bc], eax
lea eax, [esp + 0x18c]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x42cbd9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cbca
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
js 0x42c475
add dword [esi + 8], 6
jmp 0x42c06f
mov eax, dword [esi + 8]
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 + 0x1c], eax
cmp eax, dword [ebp + 0x70]
jne 0x42cc09
xor edx, edx
jmp 0x42cc16
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 0x42cc33
cmp edx, dword [ecx + 4]
jne 0x42cc2d
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0x10]
je 0x42cc67
mov ecx, dword [ecx]
test ecx, ecx
jne 0x42cc20
mov dword [esi + 0x3c], edx
lea ecx, [esi + 0x38]
mov eax, dword [esi + 4]
mov dword [esi + 0x48], eax
mov eax, dword [ebp + 0xa4]
mov dword [ecx], eax
mov dword [ebp + 0xa4], ecx
add dword [esi + 8], 3
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x44], eax
cmp eax, 0x1e
jg 0x42cc93
lea eax, [esi + 0xa8]
mov dword [esi + 0x40], eax
jmp 0x42ccab
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cc81
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b28c
mov edi, 0xffffffe6
jmp 0x436d4b
shl eax, 2
push eax
call dword [0xf2ff60]
add esp, 4
mov dword [esi + 0x40], eax
test eax, eax
je 0x42c0cd
mov eax, dword [esi + 0x44]
shl eax, 2
push eax
push dword [ebp + 0xc]
push dword [esi + 0x40]
call fcn.004216c9
mov eax, dword [esi + 0x1c]
add esp, 0xc
cmp byte [eax], 0x82
sbb eax, eax
inc eax
mov dword [esi + 0x50], eax
jmp 0x43734c
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x42ccd4
jmp 0x42c06f
mov eax, dword [esi + 8]
inc eax
push 0x12c
mov dword [esi + 0x28], eax
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0xa
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x28]
jmp 0x438142
mov edx, dword [esi + 8]
inc edx
mov dword [esi + 0x28], edx
mov edi, edi
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x28], edx
cmp byte [edx], 0x71
je 0x42cd30
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0xb
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x28]
add eax, 3
jmp 0x438142
mov edx, dword [esi + 8]
inc edx
mov dword [esi + 0x28], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x28], edx
cmp byte [edx], 0x71
je 0x42cd81
lea eax, [edx + 3]
mov dword [esi + 8], eax
jmp 0x42c06f
inc dword [esi + 8]
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x94], eax
mov dword [esi + 0x4c], 1
mov eax, dword [esi + 0x94]
cmp eax, 0x80
je 0x42cdd1
cmp eax, 0x85
jne 0x42cea0
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x90], eax
cmp eax, dword [ebp + 0x14]
jge case.0x42c09c.126
mov dword [esi + 0x54], ebx
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x70], eax
mov ecx, dword [esi + 0x90]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x9c], eax
mov ecx, dword [esi + 0x90]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa0], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x8c]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x98], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x8c]
mov edx, dword [esi + 4]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4], edx
cmp dword [esi + 0x94], 0x82
jl 0x42ce76
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0xf2ff68]
mov edx, eax
add esp, 4
test edx, edx
je 0x42c0cd
mov dword [esi + 0x128], 0x3f
jmp 0x42c232
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x54], ebx
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x70], eax
cmp dword [esi + 0x94], 0x82
jl 0x42cec2
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0xf2ff68]
mov edx, eax
add esp, 4
test edx, edx
je 0x42c0cd
mov dword [esi + 0x128], 0x30
jmp 0x42c232
mov edx, dword [esi + 8]
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 + 0x30], edx
mov al, byte [edx]
cmp al, 0x82
jae 0x42cf0f
cmp al, 0x7b
je 0x42cf0f
mov dword [esi + 0x34], ebx
jmp 0x42cf20
mov eax, dword [esi + 0x14]
mov eax, dword [eax + 4]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0x30]
mov al, byte [edx]
cmp al, 0x77
jb 0x42cf2d
cmp al, 0x7a
jbe 0x42cf31
cmp al, 0x7c
jne 0x42cf75
mov eax, dword [esi + 4]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0xc]
lea ecx, [esp + 0x28]
mov dword [ebp + 0x7c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cf63
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b2bc
mov edi, 1
jmp 0x436d4b
cmp al, 0x7f
je 0x42cf89
cmp al, 0x84
je 0x42cf89
cmp al, 0x80
je 0x42cf89
cmp al, 0x85
jne 0x42d044
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x90], eax
mov eax, dword [ebp + 0xa4]
test eax, eax
je 0x42cfc8
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x8c]
jne 0x42cfc8
mov eax, dword [esi + 4]
mov dword [ebp + 0x80], eax
jmp 0x42cf43
mov eax, dword [esi + 0x8c]
mov dword [ebp + 0x90], eax
mov ecx, dword [esi + 0x90]
cmp ecx, dword [ebp + 0x14]
jl 0x42cfe8
mov dword [ebp + 0x3c], 1
jmp 0x42d044
mov edx, dword [esi + 0x10]
cmp ecx, edx
jle 0x42d008
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x42d008
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 + 0x8c]
mov edx, dword [ebp + 0xc]
mov ecx, dword [esi + 0x90]
mov eax, dword [edx + eax*4]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x90]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov eax, dword [esi + 0x90]
cmp dword [esi + 0x10], eax
jg 0x42d044
add eax, 2
mov dword [esi + 0x10], eax
mov ecx, dword [esi + 8]
mov al, byte [ecx]
cmp al, 0x72
je 0x42d115
mov edx, dword [esi + 4]
cmp edx, dword [esi + 0x34]
je 0x42d115
cmp al, 0x75
jne 0x42d09c
mov dword [ebp + 0x80], edx
lea ecx, [esp + 0x28]
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x8c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d08a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b29c
mov edi, 0xfffffc1b
jmp 0x436d4b
cmp al, 0x74
jne 0x42d0d3
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 7
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x438142
mov eax, dword [esi + 0x30]
cmp byte [eax], 0x82
jb 0x42d0e5
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0xd
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x30]
jmp 0x438142
mov eax, dword [esi + 0x30]
cmp byte [eax], 0x7b
jne 0x42d150
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0xc
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x438142
lea eax, [ecx + 3]
mov dword [esi + 8], eax
jmp 0x42c06f
cmp dword [ebp + 0x40], ebx
je case.0x42c09c.1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
jne case.0x42c09c.1
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d182
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
je 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d1b7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x40], ebx
je 0x42d1fc
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
jne 0x42d1fc
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d1ed
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x42d2c2
cmp ecx, dword [ebp + 0x78]
je 0x42d258
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x42d238
mov ebx, dword [esp + 0x14]
cmp ecx, edx
jbe 0x42d25c
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043cc80
add esp, 0x14
test eax, eax
jne 0x42d2c2
jmp 0x42d25c
mov edi, dword [ebp + 0x1c]
lea eax, [edx + edi]
cmp ecx, eax
jb 0x42d258
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x42d258
cmp edi, 1
je 0x42d2c2
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x42d2c2
mov ebx, dword [esp + 0x14]
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d276
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 4], eax
je 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d2ad
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov eax, dword [esi + 4]
mov dword [esi + 0xc], eax
inc dword [esi + 8]
jmp 0x42c06f
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x42d33f
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x42d2f5
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 0x1c]
push ebx
push eax
push edx
push edi
push ecx
call fcn.0043cb30
add esp, 0x14
test eax, eax
jne 0x42d2c2
jmp 0x42d316
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x42d312
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x42d312
cmp edi, 1
je 0x42d2c2
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x42d2c2
mov ebx, dword [esp + 0x14]
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d330
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x44], ebx
je 0x42d36d
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d35e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], ebx
je 0x42d2c2
cmp ecx, dword [ebp + 0x84]
jbe 0x42d2c2
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d3b3
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b2ac
mov edi, 0xfffffff4
jmp 0x436d4b
cmp dword [ebp + 0x44], ebx
je 0x42d3f3
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d3e4
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x54], ebx
je case.0x42c09c.23
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x42d429
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d41a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], ebx
je 0x42d2c2
cmp eax, dword [ebp + 0x84]
jmp 0x42d37f
mov ecx, dword [esi + 4]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x42d36d
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x42d471
push dword [esp + 0x14]
push edi
push eax
push edx
push ecx
call fcn.0043cb30
add esp, 0x14
test eax, eax
jne 0x42d499
jmp 0x42d344
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x42d344
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x42d344
cmp edx, 1
je 0x42d499
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
jne 0x42d344
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 4]
cmp ecx, eax
jmp 0x42d342
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x42d783
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x74]
jne 0x42d4c8
mov dword [esi + 0x54], 0
jmp 0x42d5f2
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x42d4dc
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x42d4d2
cmp edx, dword [ebp + 0x84]
jae 0x42d4ea
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x42d594
test bl, 0x20
jne 0x42d50a
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x42d58c
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42d524
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x42d58c
and eax, 0x3f
test bl, 8
jne 0x42d53f
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x42d58c
test bl, 4
jne 0x42d563
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 0x42d58c
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 + 0x50], 0
je 0x42d653
cmp ebx, 0x5f
jne 0x42d5ac
mov dword [esi + 0x54], 1
jmp 0x42d5ee
mov eax, ebx
and ebx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x42d664
cmp eax, 3
je 0x42d664
xor eax, eax
mov dword [esi + 0x54], eax
mov ebx, dword [esp + 0x14]
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42d66b
cmp dword [ebp + 0x88], 0
je 0x42d831
cmp edi, dword [ebp + 0x84]
jbe 0x42d831
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42d831
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d641
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b2ac
mov edi, 0xfffffff4
jmp 0x436d4f
cmp ebx, 0x100
jae 0x42d5e9
mov eax, dword [ebp + 0x38]
test byte [ebx + eax], 0x10
je 0x42d5e9
mov eax, 1
jmp 0x42d5eb
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42d715
test dl, 0x20
jne 0x42d68b
movzx eax, byte [edi + 1]
and edx, 0x1f
jmp 0x42d70d
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x42d6a5
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x42d70d
and eax, 0x3f
test dl, 8
jne 0x42d6c0
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42d70d
test dl, 4
jne 0x42d6e4
and edx, 3
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 0x42d70d
and edx, 1
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
cmp dword [ebp + 0x50], 0
je 0x42d768
cmp edx, 0x5f
jne 0x42d72c
mov dword [esi + 0x4c], 1
jmp 0x42d87d
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x42d779
cmp eax, 3
je 0x42d779
xor eax, eax
jmp 0x42d87a
cmp edx, 0x100
jae 0x42d761
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je 0x42d761
mov eax, 1
jmp 0x42d87a
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
jne 0x42d797
mov dword [esi + 0x54], 0
jmp 0x42d815
cmp eax, dword [ebp + 0x84]
ja 0x42d7a6
dec eax
mov dword [ebp + 0x84], eax
cmp dword [ebp + 0x50], 0
mov eax, dword [esi + 4]
je 0x42d801
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x42d7c1
mov dword [esi + 0x54], 1
jmp 0x42d815
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x42d7fa
cmp eax, 3
je 0x42d7fa
xor eax, eax
jmp 0x42d812
mov eax, 1
jmp 0x42d812
movzx eax, byte [eax - 1]
mov ecx, dword [ebp + 0x38]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x54], eax
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42d83a
cmp dword [ebp + 0x88], 0
je 0x42d831
cmp eax, dword [ebp + 0x84]
jmp 0x42d60d
mov dword [esi + 0x4c], 0
jmp 0x42d87d
cmp dword [ebp + 0x50], 0
je 0x42d86a
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x42d851
mov dword [esi + 0x4c], 1
jmp 0x42d87d
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, ecx
jmp 0x42d740
movzx eax, byte [eax]
mov ecx, dword [ebp + 0x38]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 8]
mov cl, byte [eax]
inc eax
mov dword [esi + 8], eax
mov eax, dword [esi + 0x4c]
cmp cl, 5
jne 0x42d898
xor ecx, ecx
cmp eax, dword [esi + 0x54]
sete cl
jmp 0x42d8a0
xor ecx, ecx
cmp eax, dword [esi + 0x54]
setne cl
test ecx, ecx
je 0x42c06f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d8c2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x42d8fc
mov edx, dword [esi + 4]
mov edi, dword [ebp + 0x78]
mov ebx, dword [esp + 0x14]
cmp edx, edi
jae 0x42d950
push ebx
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.0043cb30
add esp, 0x14
test eax, eax
jne 0x42d923
jmp 0x42d950
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 4]
cmp ecx, eax
ja case.0x42c09c.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne case.0x42c09c.13
mov ebx, dword [esp + 0x14]
cmp edx, 1
je 0x42d923
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
jne 0x42d950
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d93d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42d9a6
cmp dword [ebp + 0x88], 0
je 0x42d97d
cmp eax, dword [ebp + 0x84]
jbe 0x42d97d
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d997
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc eax
mov dword [esi + 4], eax
test ebx, ebx
je 0x42d2c2
cmp eax, dword [ebp + 0x78]
jae 0x42d2c2
jmp 0x42d9c0
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42d2c2
lea eax, [ecx + 1]
mov dword [esi + 4], eax
cmp eax, dword [ebp + 0x78]
jb 0x42d9c0
inc dword [esi + 8]
jmp 0x42c06f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42da37
cmp dword [ebp + 0x88], ebx
je 0x42da0e
cmp eax, dword [ebp + 0x84]
jbe 0x42da0e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42da28
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
inc eax
mov dword [esi + 4], eax
inc dword [esi + 8]
jmp 0x42c06f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42da98
cmp dword [ebp + 0x88], ebx
je 0x42da6f
cmp edi, dword [ebp + 0x84]
jbe 0x42da6f
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42da89
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42db95
cmp edx, 0xc0
jb 0x42db95
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42dad2
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42db92
test dl, 0x10
jne 0x42daf4
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 + 4], 2
jmp 0x42db95
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42db21
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 0x42db92
test dl, 4
jne 0x42db57
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 0x42db92
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 + 4], eax
cmp edx, 0x100
jae 0x42d2c2
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
je 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42dbc8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42dc2c
cmp dword [ebp + 0x88], ebx
je 0x42dc03
cmp edi, dword [ebp + 0x84]
jbe 0x42dc03
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42dc1d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42dd29
cmp edx, 0xc0
jb 0x42dd29
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42dc66
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42dd26
test dl, 0x10
jne 0x42dc88
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 + 4], 2
jmp 0x42dd29
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42dcb5
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 0x42dd26
test dl, 4
jne 0x42dceb
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 0x42dd26
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 + 4], eax
cmp edx, 0xff
ja 0x42dd42
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
je 0x42dd42
inc dword [esi + 8]
jmp 0x42c06f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42dd5c
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42ddc0
cmp dword [ebp + 0x88], ebx
je 0x42dd97
cmp edi, dword [ebp + 0x84]
jbe 0x42dd97
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ddb1
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42debd
cmp edx, 0xc0
jb 0x42debd
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42ddfa
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42deba
test dl, 0x10
jne 0x42de1c
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 + 4], 2
jmp 0x42debd
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42de49
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 0x42deba
test dl, 4
jne 0x42de7f
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 0x42deba
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 + 4], eax
cmp edx, 0x100
jae 0x42d2c2
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
je 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42def0
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42df54
cmp dword [ebp + 0x88], ebx
je 0x42df2b
cmp edi, dword [ebp + 0x84]
jbe 0x42df2b
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42df45
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42e051
cmp edx, 0xc0
jb 0x42e051
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42df8e
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42e04e
test dl, 0x10
jne 0x42dfb0
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 + 4], 2
jmp 0x42e051
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42dfdd
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 0x42e04e
test dl, 4
jne 0x42e013
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 0x42e04e
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 + 4], eax
cmp edx, 0xff
ja 0x42e06a
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
je 0x42e06a
inc dword [esi + 8]
jmp 0x42c06f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e084
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42e0e8
cmp dword [ebp + 0x88], ebx
je 0x42e0bf
cmp edi, dword [ebp + 0x84]
jbe 0x42e0bf
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e0d9
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42e1e5
cmp edx, 0xc0
jb 0x42e1e5
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42e122
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42e1e2
test dl, 0x10
jne 0x42e144
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 + 4], 2
jmp 0x42e1e5
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42e171
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 0x42e1e2
test dl, 4
jne 0x42e1a7
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 0x42e1e2
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 + 4], eax
cmp edx, 0x100
jae 0x42d2c2
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e218
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42e27c
cmp dword [ebp + 0x88], ebx
je 0x42e253
cmp edi, dword [ebp + 0x84]
jbe 0x42e253
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e26d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42e379
cmp edx, 0xc0
jb 0x42e379
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42e2b6
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42e376
test dl, 0x10
jne 0x42e2d8
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 + 4], 2
jmp 0x42e379
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42e305
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 0x42e376
test dl, 4
jne 0x42e33b
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 0x42e376
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 + 4], eax
cmp edx, 0xff
ja 0x42e392
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je 0x42e392
inc dword [esi + 8]
jmp 0x42c06f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e3ac
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42e410
cmp dword [ebp + 0x88], ebx
je 0x42e3e7
cmp edi, dword [ebp + 0x84]
jbe 0x42e3e7
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e401
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42e50d
cmp edx, 0xc0
jb 0x42e50d
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42e44a
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42e50a
test dl, 0x10
jne 0x42e46c
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 + 4], 2
jmp 0x42e50d
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42e499
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 0x42e50a
test dl, 4
jne 0x42e4cf
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 0x42e50a
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 + 4], eax
cmp edx, 0xd
ja 0x42e545
je 0x42e524
cmp edx, 0xa
je 0x42d2c2
jbe 0x42e55d
cmp edx, 0xc
jmp 0x42e55b
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x42d2c2
cmp byte [eax], 0xa
jne 0x42d2c2
inc eax
mov dword [esi + 4], eax
inc dword [esi + 8]
jmp 0x42c06f
cmp edx, 0x85
je 0x42e586
cmp edx, 0x2027
jbe 0x42e55d
cmp edx, 0x2029
jbe 0x42e586
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e577
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x64], 0
je 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e5aa
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42e60e
cmp dword [ebp + 0x88], ebx
je 0x42e5e5
cmp edi, dword [ebp + 0x84]
jbe 0x42e5e5
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e5ff
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42e70b
cmp edx, 0xc0
jb 0x42e70b
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42e648
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42e708
test dl, 0x10
jne 0x42e66a
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 + 4], 2
jmp 0x42e70b
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42e697
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 0x42e708
test dl, 4
jne 0x42e6cd
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 0x42e708
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 + 4], eax
cmp edx, 0x180e
ja 0x42e766
je 0x42e72d
cmp edx, 0xa0
ja 0x42e756
je 0x42e72d
cmp edx, 9
je 0x42e72d
cmp edx, 0x20
jne 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e747
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x1680
je 0x42e72d
inc dword [esi + 8]
jmp 0x42c06f
cmp edx, 0x205f
ja 0x42e794
je 0x42e72d
cmp edx, 0x2000
jb 0x42d2c2
cmp edx, 0x200a
jbe 0x42e72d
cmp edx, 0x202f
je 0x42e72d
inc dword [esi + 8]
jmp 0x42c06f
cmp edx, 0x3000
je 0x42e72d
inc dword [esi + 8]
jmp 0x42c06f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42e7f9
cmp dword [ebp + 0x88], ebx
je 0x42e7d0
cmp edi, dword [ebp + 0x84]
jbe 0x42e7d0
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e7ea
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42e8f6
cmp edx, 0xc0
jb 0x42e8f6
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42e833
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42e8f3
test dl, 0x10
jne 0x42e855
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 + 4], 2
jmp 0x42e8f6
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42e882
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 0x42e8f3
test dl, 4
jne 0x42e8b8
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 0x42e8f3
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 + 4], eax
cmp edx, 0x180e
ja 0x42e928
je 0x42d2c2
cmp edx, 0xa0
ja 0x42e920
je 0x42d2c2
cmp edx, 9
je 0x42d2c2
cmp edx, 0x20
jmp 0x42e958
cmp edx, 0x1680
jmp 0x42e958
cmp edx, 0x205f
ja 0x42e952
je 0x42d2c2
cmp edx, 0x2000
jb 0x42e95e
cmp edx, 0x200a
jbe 0x42d2c2
cmp edx, 0x202f
jmp 0x42e958
cmp edx, 0x3000
je 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e978
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42e9dc
cmp dword [ebp + 0x88], ebx
je 0x42e9b3
cmp edi, dword [ebp + 0x84]
jbe 0x42e9b3
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e9cd
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42ead9
cmp edx, 0xc0
jb 0x42ead9
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42ea16
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42ead6
test dl, 0x10
jne 0x42ea38
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 + 4], 2
jmp 0x42ead9
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42ea65
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 0x42ead6
test dl, 4
jne 0x42ea9b
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 0x42ead6
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 + 4], eax
cmp edx, 0x85
ja 0x42eaf9
je 0x42eb08
cmp edx, 0xa
jb 0x42d2c2
cmp edx, 0xd
jbe 0x42eb08
inc dword [esi + 8]
jmp 0x42c06f
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42eb22
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42eb86
cmp dword [ebp + 0x88], ebx
je 0x42eb5d
cmp edi, dword [ebp + 0x84]
jbe 0x42eb5d
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42eb77
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42ec83
cmp edx, 0xc0
jb 0x42ec83
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42ebc0
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42ec80
test dl, 0x10
jne 0x42ebe2
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 + 4], 2
jmp 0x42ec83
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42ec0f
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 0x42ec80
test dl, 4
jne 0x42ec45
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 0x42ec80
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 + 4], eax
cmp edx, 0x85
ja 0x42ecc8
je 0x42d2c2
cmp edx, 0xa
jb 0x42ec9f
cmp edx, 0xd
jbe 0x42d2c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ecb9
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x42ec9f
inc dword [esi + 8]
jmp 0x42c06f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42ed30
cmp dword [ebp + 0x88], ebx
je 0x42ed07
cmp edi, dword [ebp + 0x84]
jbe 0x42ed07
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ed21
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42ee2d
cmp edx, 0xc0
jb 0x42ee2d
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42ed6a
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42ee2a
test dl, 0x10
jne 0x42ed8c
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 + 4], 2
jmp 0x42ee2d
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42edb9
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 0x42ee2a
test dl, 4
jne 0x42edef
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 0x42ee2a
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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
mov eax, dword [esi + 8]
movzx eax, byte [eax + 1]
movzx edi, word [ecx*2 + 0x4b6bc8]
cmp eax, 8
ja case.0x4394f3.15
jmp dword [eax*4 + 0x43b544]
cmp dword [esi + 0x94], 0xf
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ee89
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov al, byte [edi*8 + 0x4b38e9]
cmp al, 9
je 0x42eeaf
cmp al, 5
je 0x42eeaf
cmp al, 8
je 0x42eeaf
xor ecx, ecx
jmp 0x42eeb4
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42eee2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 8]
xor edx, edx
movzx ecx, byte [edi*8 + 0x4b38e9]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x4b3870]
setne dl
xor eax, eax
cmp dword [esi + 0x94], 0x10
sete al
cmp edx, eax
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ef3a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 8]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edi*8 + 0x4b38e9]
setne cl
xor eax, eax
cmp dword [esi + 0x94], 0x10
sete al
cmp ecx, eax
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ef89
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 8]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edi*8 + 0x4b38e8]
setne cl
xor eax, eax
cmp dword [esi + 0x94], 0x10
sete al
cmp ecx, eax
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42efd8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx eax, byte [edi*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x42f004
cmp eax, 3
je 0x42f004
xor ecx, ecx
jmp 0x42f009
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f037
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx eax, byte [edi*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 6
je 0x42f070
cmp edx, 9
je 0x42f070
cmp edx, 0xa
je 0x42f070
cmp edx, 0xc
je 0x42f070
cmp edx, 0xd
je 0x42f070
xor ecx, ecx
jmp 0x42f075
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f0a3
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx eax, byte [edi*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 6
je 0x42f0e1
cmp edx, 9
je 0x42f0e1
cmp edx, 0xa
je 0x42f0e1
cmp edx, 0xb
je 0x42f0e1
cmp edx, 0xc
je 0x42f0e1
cmp edx, 0xd
je 0x42f0e1
xor ecx, ecx
jmp 0x42f0e6
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f114
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx eax, byte [edi*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x42f145
cmp eax, 3
je 0x42f145
cmp edx, 0x5f
je 0x42f145
xor ecx, ecx
jmp 0x42f14a
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f178
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f1a1
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b33f
mov edi, 0xfffffff2
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42f208
cmp dword [ebp + 0x88], ebx
je 0x42f1df
cmp edi, dword [ebp + 0x84]
jbe 0x42f1df
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f1f9
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42f305
cmp edx, 0xc0
jb 0x42f305
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42f242
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42f302
test dl, 0x10
jne 0x42f264
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 + 4], 2
jmp 0x42f305
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42f291
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 0x42f302
test dl, 4
jne 0x42f2c7
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 0x42f302
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 + 4], eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 2
jne 0x42f35c
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f34d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x42d2c2
jmp 0x42f370
mov eax, dword [esi + 4]
mov ecx, 1
movzx edx, byte [eax]
test ebx, ebx
je 0x42f471
cmp edx, 0xc0
jb 0x42f471
test dl, 0x20
jne 0x42f3a5
movzx eax, byte [eax + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42f469
test dl, 0x10
jne 0x42f3ca
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
mov ecx, 3
movzx eax, byte [eax + 2]
jmp 0x42f469
test dl, 8
jne 0x42f3f8
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
mov ecx, 4
jmp 0x42f469
movzx eax, byte [eax + 1]
and eax, 0x3f
test dl, 4
jne 0x42f432
mov ecx, dword [esi + 4]
and edx, 3
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
mov ecx, 5
jmp 0x42f469
and edx, ecx
mov ecx, dword [esi + 4]
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
mov ecx, 6
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 2
jne 0x42d2c2
add dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42f370
inc dword [esi + 8]
jmp 0x42c06f
xor eax, eax
cmp edx, 0x6e
sete al
mov dword [esp + 0x154], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x90], ecx
add dword [esi + 8], 3
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x10]
jge 0x42f502
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x42f502
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x42f50c
mov eax, dword [ebp + 0x4c]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x80], eax
mov edx, dword [esi + 8]
mov bl, byte [edx]
movzx ecx, bl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x42f52d
movzx eax, byte [eax + 0x43b570]
jmp dword [eax*4 + 0x43b568]
lea eax, [edx + 1]
mov dword [esi + 8], eax
lea ebx, [ecx - 0x62]
movsx eax, byte [ecx + 0x4b2f8e]
and ebx, 1
mov dword [esi + 0x88], eax
movsx eax, byte [ecx + 0x4b2f96]
mov dword [esp + 0x20], ebx
mov dword [esi + 0x84], eax
test eax, eax
jne 0x42f5b3
mov dword [esi + 0x84], 0x7fffffff
jmp 0x42f5b3
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x20], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x88], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
jne 0x42f5af
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], 5
mov eax, dword [esi + 0x80]
test eax, eax
je 0x42c06f
jns 0x42f5d0
cmp dword [esi + 0x88], 0
je 0x42c06f
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x42f612
lea ecx, [ecx]
push dword [esp + 0x154]
mov ebx, dword [esi + 4]
push ebp
push dword [esi + 0x80]
push ebx
push dword [esi + 0x90]
call fcn.0043b9b0
add esp, 0x14
test eax, eax
js 0x42f633
add eax, ebx
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x42f5e0
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x42c06f
cmp dword [esp + 0x20], 0
je 0x42f689
mov dword [esi + 0x7c], eax
jmp 0x4375e4
cmp dword [ebp + 0x88], 0
je 0x42f660
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42f660
cmp eax, dword [ebp + 0x84]
jbe 0x42f660
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f67a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov edi, dword [esi + 0x88]
jmp 0x42f6a0
cmp edi, dword [esi + 0x84]
jge 0x43761c
push dword [esp + 0x154]
mov ebx, dword [esi + 4]
push ebp
push dword [esi + 0x80]
push ebx
push dword [esi + 0x90]
call fcn.0043b9b0
add esp, 0x14
test eax, eax
js 0x42f6d8
add eax, ebx
inc edi
mov dword [esi + 4], eax
jmp 0x42f6a0
cmp dword [ebp + 0x88], 0
je 0x43761c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x43761c
cmp eax, dword [ebp + 0x84]
jbe 0x43761c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x43761c
jmp 0x42d399
push dword [esp + 0x154]
push ebp
push dword [esi + 0x80]
push dword [esi + 4]
push dword [esi + 0x90]
call fcn.0043b9b0
add esp, 0x14
mov dword [esi + 0x80], eax
test eax, eax
jns 0x42f795
cmp dword [ebp + 0x88], 0
je 0x42f76c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42f76c
cmp eax, dword [ebp + 0x84]
jbe 0x42f76c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f786
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
add dword [esi + 4], eax
jmp 0x42c06f
mov eax, dword [esi + 8]
inc eax
mov dword [esi + 0x24], eax
add dword [esi + 8], 0x21
mov edx, dword [esi + 8]
mov bl, byte [edx]
movzx ecx, bl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x42f7c3
movzx eax, byte [eax + 0x43b580]
jmp dword [eax*4 + 0x43b578]
lea eax, [edx + 1]
mov dword [esi + 8], eax
lea ebx, [ecx - 0x62]
movsx eax, byte [ecx + 0x4b2f8e]
and ebx, 1
mov dword [esi + 0x88], eax
movsx eax, byte [ecx + 0x4b2f96]
mov dword [esp + 0x18], ebx
mov dword [esi + 0x84], eax
test eax, eax
jne 0x42f85f
mov dword [esi + 0x84], 0x7fffffff
jmp 0x42f85f
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x18], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x88], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
jne 0x42f845
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], 5
jmp 0x42f85f
mov dword [esi + 0x84], 1
mov dword [esi + 0x88], 1
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x42fa83
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x42f9db
lea esp, [esp]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x42fa32
movzx ebx, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
cmp ebx, 0xc0
jb 0x42f979
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 0x20
jne 0x42f8ba
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 1]
jmp 0x42f976
test bl, 0x10
jne 0x42f8db
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 2]
jmp 0x42f976
test bl, 8
jne 0x42f905
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 3]
jmp 0x42f976
test bl, 4
jne 0x42f93b
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 4]
jmp 0x42f976
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov dword [esi + 4], eax
cmp ebx, 0xff
jbe 0x42f9b3
cmp dword [esi + 0x94], 0x6a
jne 0x42f9ca
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42f9a4
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov eax, dword [esi + 0x24]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je 0x42fa09
inc edi
cmp edi, dword [esi + 0x88]
jle 0x42f880
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x42c06f
mov edi, dword [esp + 0x18]
test edi, edi
je 0x42fb42
test ebx, ebx
jne 0x43b112
mov dword [esi + 0x7c], eax
jmp 0x437750
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42fa23
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], 0
je 0x42fa5a
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42fa5a
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42fa74
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov ebx, 1
cmp dword [esi + 0x88], ebx
jl 0x42f9d7
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x42faf1
movzx edi, byte [eax]
mov edx, 1
inc eax
mov ecx, edi
mov dword [esi + 4], eax
and ecx, 7
mov eax, dword [esi + 0x24]
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je 0x42fac8
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x42fa94
jmp 0x42f9d7
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42fae2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], 0
je 0x42fb19
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42fb19
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42fb33
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x88]
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x42fcd0
lea ebx, [ebx]
cmp eax, dword [esi + 0x84]
jge 0x438a2c
mov edi, dword [esi + 4]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x42fc98
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x42fc55
test bl, 0x20
jne 0x42fba8
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x18], 2
jmp 0x42fc4d
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42fbcd
and ebx, 0xf
mov dword [esp + 0x18], 3
shl ebx, 6
or ebx, ecx
jmp 0x42fc4d
and eax, 0x3f
test bl, 8
jne 0x42fbf0
and ebx, 7
mov dword [esp + 0x18], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x42fc4d
test bl, 4
jne 0x42fc1c
and ebx, 3
mov dword [esp + 0x18], 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 0x42fc4d
and ebx, 1
mov dword [esp + 0x18], 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
cmp ebx, 0xff
jbe 0x42fc66
cmp dword [esi + 0x94], 0x6a
jmp 0x42fc7b
mov eax, dword [esi + 0x24]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je 0x438a2c
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 4], eax
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
jmp 0x42fb60
cmp dword [ebp + 0x88], 0
je 0x438a2c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x438a2c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x438a2c
jmp 0x42d399
cmp eax, dword [esi + 0x84]
jge 0x437782
mov ebx, dword [esi + 4]
cmp ebx, dword [ebp + 0x78]
jae 0x42fd13
movzx edi, byte [ebx]
mov edx, 1
mov eax, dword [esi + 0x24]
mov ecx, edi
and ecx, 7
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je 0x437782
lea eax, [ebx + 1]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
jmp 0x42fcd0
cmp dword [ebp + 0x88], 0
je 0x437782
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x437782
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x437782
jmp 0x42d399
mov eax, dword [esi + 8]
add eax, 3
mov dword [esi + 0x24], eax
mov edx, dword [esi + 8]
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 + 8], edx
mov bl, byte [edx]
movzx ecx, bl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x42fd80
movzx eax, byte [eax + 0x43b590]
jmp dword [eax*4 + 0x43b588]
lea eax, [edx + 1]
mov dword [esi + 8], eax
lea ebx, [ecx - 0x62]
movsx eax, byte [ecx + 0x4b2f8e]
and ebx, 1
mov dword [esi + 0x88], eax
movsx eax, byte [ecx + 0x4b2f96]
mov dword [esi + 0x84], eax
test eax, eax
jne 0x42fe1a
mov dword [esi + 0x84], 0x7fffffff
jmp 0x42fe1a
movzx ecx, byte [edx + 1]
xor edi, edi
movzx eax, byte [edx + 2]
cmp bl, 0x69
mov ebx, edi
sete bl
shl ecx, 8
or ecx, eax
mov dword [esi + 0x88], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
jne 0x42fdfc
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], 5
jmp 0x42fe1a
mov ebx, dword [esp + 0x18]
mov dword [esi + 0x84], 1
mov dword [esi + 0x88], 1
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x42ff59
jmp 0x42fe30
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42fffd
movzx ecx, byte [edx]
inc edx
cmp dword [esp + 0x14], 0
mov dword [esi + 4], edx
je 0x42ff34
cmp ecx, 0xc0
jb 0x42ff34
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x42fe75
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x42ff31
test cl, 0x10
jne 0x42fe96
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 0x42ff31
test cl, 8
jne 0x42fec0
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 0x42ff31
test cl, 4
jne 0x42fef6
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 0x42ff31
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 + 4], eax
push dword [esp + 0x14]
push dword [esi + 0x24]
push ecx
call fcn.0043d1b0
add esp, 0xc
test eax, eax
je 0x42ffd4
inc edi
cmp edi, dword [esi + 0x88]
jle 0x42fe30
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x42c06f
test ebx, ebx
jne 0x43b120
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x88]
mov dword [esp + 0x20], eax
cmp eax, dword [esi + 0x84]
jge 0x43012f
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x43010c
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x4300eb
cmp edx, 0xc0
jb 0x4300eb
test dl, 0x20
jne 0x43004e
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x4300e3
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ffee
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], 0
je 0x430025
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x430025
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43003f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x43006d
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4300e3
and eax, 0x3f
test dl, 8
jne 0x43008d
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4300e3
test dl, 4
jne 0x4300b6
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 0x4300e3
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
push dword [esp + 0x14]
push dword [esi + 0x24]
push edx
call fcn.0043d1b0
add esp, 0xc
test eax, eax
je 0x43012f
mov eax, dword [esp + 0x20]
add dword [esi + 4], ebx
inc eax
jmp 0x42ff7f
cmp dword [ebp + 0x88], 0
je 0x43012f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x43012f
mov dword [ebp + 0x60], ebx
cmp dword [ebp + 0x88], ebx
jg 0x42d399
mov ebx, dword [esp + 0x14]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x15
jmp 0x438139
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x430361
mov dword [esi + 0x80], 1
inc dword [esi + 8]
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
cmp eax, 0xc0
jb 0x430299
test al, 0x20
jne 0x4301ae
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x78]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x78], ecx
inc dword [esi + 0x80]
jmp 0x430299
mov ecx, dword [esi + 8]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x4301e2
mov eax, dword [esi + 0x78]
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x78], edx
add dword [esi + 0x80], 2
jmp 0x430299
test al, 8
jne 0x430218
mov eax, dword [esi + 0x78]
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 + 0x78], edx
add dword [esi + 0x80], 3
jmp 0x430299
test al, 4
mov eax, dword [esi + 0x78]
jne 0x430257
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 + 0x78], edx
add dword [esi + 0x80], 4
jmp 0x430299
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 + 0x78], edx
add dword [esi + 0x80], 5
mov edi, dword [ebp + 0x78]
mov eax, edi
mov edx, dword [esi + 4]
sub eax, edx
mov ecx, dword [esi + 0x80]
cmp ecx, eax
jle 0x4302ff
cmp dword [ebp + 0x88], 0
je 0x4302d6
cmp edx, edi
jb 0x4302d6
cmp edx, dword [ebp + 0x84]
jbe 0x4302d6
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4302f0
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test ecx, ecx
jle 0x43032d
lea eax, [ecx - 1]
mov dword [esi + 0x80], eax
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
mov bl, byte [eax]
mov dl, byte [ecx]
lea eax, [ecx + 1]
mov dword [esi + 4], eax
inc dword [esi + 8]
cmp bl, dl
jne 0x430338
mov ecx, dword [esi + 0x80]
test ecx, ecx
jg 0x430303
dec dword [esi + 0x80]
jmp 0x42c06f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x430352
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 4]
sub eax, edi
cmp eax, 1
jge 0x4303bc
cmp dword [ebp + 0x88], 0
je 0x430393
cmp edi, dword [ebp + 0x84]
jbe 0x430393
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4303ad
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 8]
mov cl, byte [edi]
mov dl, byte [eax + 1]
lea eax, [edi + 1]
mov dword [esi + 4], eax
cmp dl, cl
je 0x43076f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4303ec
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x430450
cmp dword [ebp + 0x88], ebx
je 0x430427
cmp edi, dword [ebp + 0x84]
jbe 0x430427
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x430441
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x43072b
mov dword [esi + 0x80], 1
inc dword [esi + 8]
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
cmp eax, 0xc0
jb 0x43058f
test al, 0x20
jne 0x4304a4
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x78]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x78], ecx
inc dword [esi + 0x80]
jmp 0x43058f
mov ecx, dword [esi + 8]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x4304d8
mov eax, dword [esi + 0x78]
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x78], edx
add dword [esi + 0x80], 2
jmp 0x43058f
test al, 8
jne 0x43050e
mov eax, dword [esi + 0x78]
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 + 0x78], edx
add dword [esi + 0x80], 3
jmp 0x43058f
test al, 4
mov eax, dword [esi + 0x78]
jne 0x43054d
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 + 0x78], edx
add dword [esi + 0x80], 4
jmp 0x43058f
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 + 0x78], edx
add dword [esi + 0x80], 5
mov edi, dword [esi + 0x78]
mov eax, dword [esi + 4]
cmp edi, 0x80
jae 0x4305df
mov edx, dword [ebp + 0x30]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
je 0x4305d4
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4305c5
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 8]
inc dword [esi + 4]
jmp 0x42c06f
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 4], edi
cmp edx, 0xc0
jb 0x4306bf
test dl, 0x20
jne 0x43060f
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4306bc
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x430636
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4306bc
test dl, 8
jne 0x430659
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 0x4306bc
test dl, 4
jne 0x430688
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 0x4306bc
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 + 4], eax
mov eax, dword [esi + 0x80]
add dword [esi + 8], eax
mov edi, dword [esi + 0x78]
cmp edi, edx
je 0x42c06f
mov eax, edi
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edi
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
mov eax, dword [eax*8 + 0x4b38ec]
add eax, edi
cmp edx, eax
je 0x42c06f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43071c
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 8]
mov edx, dword [ebp + 0x30]
movzx ecx, byte [edi]
movzx eax, byte [eax + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
je 0x430769
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43075a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
lea eax, [edi + 1]
mov dword [esi + 4], eax
add dword [esi + 8], 2
jmp 0x42c06f
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov dword [esi + 0x88], ecx
add dword [esi + 8], 3
jmp 0x430891
mov dword [esp + 0x24], 1
mov dword [esi + 0x88], ebx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov ecx, dword [esi + 8]
mov al, byte [ecx]
cmp al, 0x28
je 0x4307d2
mov dword [esp + 0x18], ebx
cmp al, 0x35
jne 0x4307da
mov dword [esp + 0x18], 1
lea eax, [ecx + 3]
mov dword [esi + 8], eax
jmp 0x430891
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x430891
mov dword [esi + 0x88], 1
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x430891
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 1
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x430891
mov ecx, dword [esi + 8]
xor eax, eax
cmp edx, 0x2e
setge al
movzx edx, byte [ecx]
dec eax
and eax, 0xfffffff3
add eax, 0x2e
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov ebx, edx
and ebx, 1
mov dword [esp + 0x18], ebx
movsx eax, byte [edx + 0x4b2ff0]
mov dword [esi + 0x88], eax
movsx eax, byte [edx + 0x4b2ff8]
mov dword [esi + 0x84], eax
test eax, eax
jne 0x430891
mov dword [esi + 0x84], 0x7fffffff
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x430d36
mov dword [esi + 0x80], 1
mov eax, dword [esi + 8]
mov dword [esi + 0x20], eax
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
mov dword [esi + 0x78], ebx
cmp ebx, 0xc0
jb 0x4309c8
mov eax, dword [esi + 8]
test bl, 0x20
jne 0x4308e7
movzx eax, byte [eax + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or eax, ebx
mov dword [esi + 0x78], eax
inc dword [esi + 0x80]
jmp 0x4309c8
test bl, 0x10
jne 0x430919
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
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 + 0x78], ecx
add dword [esi + 0x80], 2
jmp 0x4309c8
mov ecx, dword [esi + 8]
movzx edx, byte [eax + 1]
and edx, 0x3f
movzx eax, byte [ecx + 2]
and eax, 0x3f
test bl, 8
jne 0x430957
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 + 0x78], edx
add dword [esi + 0x80], 3
jmp 0x4309c8
test bl, 4
jne 0x43098d
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 + 0x78], edx
add dword [esi + 0x80], 4
jmp 0x4309c8
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 + 0x78], edx
add dword [esi + 0x80], 5
mov eax, dword [esi + 0x80]
add dword [esi + 8], eax
cmp dword [esi + 0x80], 1
jle 0x430d44
cmp dword [esi + 0x94], 0x2e
jl 0x430a27
mov edx, dword [esi + 0x78]
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
mov ecx, dword [eax*8 + 0x4b38ec]
add ecx, edx
cmp ecx, edx
je 0x430a27
lea eax, [esi + 0x68]
push eax
push ecx
call fcn.0043ce20
add esp, 8
mov dword [esi + 0x64], eax
jmp 0x430a2e
mov dword [esi + 0x64], 0
cmp dword [esi + 0x88], 1
mov dword [esp + 0x1c], 1
jl 0x430b51
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x80]
sub eax, ebx
mov edi, dword [esi + 4]
mov dword [esp + 0x20], ecx
cmp edi, eax
ja 0x430ac5
mov edx, dword [esi + 0x20]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x430a78
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x430a81
add ecx, 4
add edx, 4
sub edi, 4
jae 0x430a67
cmp edi, 0xfffffffc
je 0x430b39
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x430abe
cmp edi, 0xfffffffd
je 0x430b39
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x430abe
cmp edi, 0xfffffffe
je 0x430b39
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x430abe
cmp edi, 0xffffffff
je 0x430b39
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x430b39
mov edi, dword [esi + 4]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esi + 0x64]
test ebx, ebx
jle 0x430ca3
sub ecx, ebx
cmp edi, ecx
ja 0x430ca3
mov ecx, edi
lea edx, [esi + 0x68]
mov edi, ebx
sub edi, 4
jb 0x430af7
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x430afc
add ecx, 4
add edx, 4
sub edi, 4
jae 0x430ae6
cmp edi, 0xfffffffc
je 0x430b39
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x430ca3
cmp edi, 0xfffffffd
je 0x430b39
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x430ca3
cmp edi, 0xfffffffe
je 0x430b39
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x430ca3
cmp edi, 0xffffffff
je 0x430b39
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x430ca3
mov edx, dword [esp + 0x1c]
add dword [esi + 4], ebx
inc edx
mov dword [esp + 0x1c], edx
cmp edx, dword [esi + 0x88]
jle 0x430a43
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x42c06f
mov edi, dword [esp + 0x18]
test edi, edi
jne 0x43b132
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x430d26
jmp 0x430b90
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x80]
sub eax, ebx
mov edi, dword [esi + 4]
mov dword [esp + 0x20], ecx
cmp edi, eax
ja 0x430c12
mov edx, dword [esi + 0x20]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x430bc5
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x430bce
add ecx, 4
add edx, 4
sub edi, 4
jae 0x430bb4
cmp edi, 0xfffffffc
je 0x430c86
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x430c0b
cmp edi, 0xfffffffd
je 0x430c86
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x430c0b
cmp edi, 0xfffffffe
je 0x430c86
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x430c0b
cmp edi, 0xffffffff
je 0x430c86
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x430c86
mov edi, dword [esi + 4]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esi + 0x64]
test ebx, ebx
jle 0x430cf9
sub ecx, ebx
cmp edi, ecx
ja 0x430cf9
mov ecx, edi
lea edx, [esi + 0x68]
mov edi, ebx
sub edi, 4
jb 0x430c44
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x430c49
add ecx, 4
add edx, 4
sub edi, 4
jae 0x430c33
cmp edi, 0xfffffffc
je 0x430c86
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x430cf9
cmp edi, 0xfffffffd
je 0x430c86
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x430cf9
cmp edi, 0xfffffffe
je 0x430c86
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x430cf9
cmp edi, 0xffffffff
je 0x430c86
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x430cf9
mov edx, dword [esp + 0x1c]
add dword [esi + 4], ebx
inc edx
mov dword [esp + 0x1c], edx
cmp edx, dword [esi + 0x84]
jl 0x430b90
jmp 0x430d26
cmp dword [ebp + 0x88], 0
je 0x430cd0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x430cd0
cmp eax, dword [ebp + 0x84]
jbe 0x430cd0
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x430cea
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], 0
je 0x430d26
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x430d26
cmp eax, dword [ebp + 0x84]
jbe 0x430d26
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
cmp dword [esp + 0x24], 0
jne 0x42c06f
jmp 0x438e2e
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
inc dword [esi + 8]
jmp 0x430d48
mov ebx, dword [esp + 0x14]
cmp dword [esi + 0x94], 0x2e
jl 0x430eaf
mov ecx, dword [ebp + 0x34]
mov edx, 1
mov eax, dword [esi + 0x78]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x8c], eax
cmp dword [esi + 0x88], edx
jl 0x430d97
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x430de6
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x430d8a
cmp dword [esi + 0x8c], ecx
jne 0x430dbd
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x88]
jle 0x430d72
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x42c06f
mov edi, dword [esp + 0x18]
test edi, edi
je 0x430e37
mov dword [esi + 0x7c], eax
jmp 0x437887
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x430dd7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x430e0e
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x430e0e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x430e28
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x430e9f
jmp 0x430e50
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x430e77
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x430e68
cmp dword [esi + 0x8c], ecx
jne 0x430e9f
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x430e50
jmp 0x430e9f
cmp dword [ebp + 0x88], 0
je 0x430e9f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x430e9f
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
cmp dword [esp + 0x24], 0
jne 0x42c06f
jmp 0x4378b9
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x430edd
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x430f2c
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esi + 0x78], edx
jne 0x430f03
inc edi
cmp edi, dword [esi + 0x88]
jle 0x430ec0
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x42c06f
mov edi, dword [esp + 0x18]
test edi, edi
je 0x430f7d
mov dword [esi + 0x7c], eax
jmp 0x4379db
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x430f1d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x430f54
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x430f54
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x430f6e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x430fda
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x430fb2
movzx eax, byte [ecx]
cmp dword [esi + 0x78], eax
jne 0x430fda
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x430f91
jmp 0x430fda
cmp dword [ebp + 0x88], 0
je 0x430fda
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x430fda
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
cmp dword [esp + 0x24], 0
jne 0x42c06f
jmp 0x437a0d
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x43103f
cmp dword [ebp + 0x88], ebx
je 0x431016
cmp eax, dword [ebp + 0x84]
jbe 0x431016
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x431030
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
inc dword [esi + 8]
mov eax, dword [esi + 4]
mov ebx, dword [esp + 0x14]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 4], edi
test ebx, ebx
je 0x431131
cmp edx, 0xc0
jb 0x431131
test dl, 0x20
jne 0x431081
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43112e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4310a8
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x43112e
test dl, 8
jne 0x4310cb
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 0x43112e
test dl, 4
jne 0x4310fa
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 0x43112e
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 + 4], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
inc eax
cmp dword [esi + 0x94], 0x20
mov dword [esi + 8], eax
jne 0x431180
cmp ecx, edx
je 0x431157
mov eax, dword [ebp + 0x34]
movzx eax, byte [eax + ecx]
cmp eax, edx
jne 0x42c06f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x431171
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp ecx, edx
jne 0x42c06f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4311a2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov dword [esi + 0x88], ecx
add dword [esi + 8], 3
jmp 0x431300
mov dword [esi + 0x88], ebx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov ecx, dword [esi + 8]
mov al, byte [ecx]
cmp al, 0x42
je 0x431210
cmp al, 0x4f
je 0x431210
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x18], ebx
mov dword [esi + 8], eax
jmp 0x431300
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x18], ebx
mov dword [esi + 8], eax
jmp 0x431300
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x431300
mov dword [esi + 0x88], 1
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x431300
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 1
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x431300
mov dword [esi + 0x88], ebx
mov eax, dword [esi + 8]
mov dword [esp + 0x24], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
add dword [esi + 8], 3
jmp 0x431300
mov ecx, dword [esi + 8]
xor eax, eax
cmp edx, 0x48
setl al
movzx edx, byte [ecx]
dec eax
and eax, 0xd
add eax, 0x3b
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov ebx, edx
and ebx, 1
mov dword [esp + 0x18], ebx
movsx eax, byte [edx + 0x4b2ff0]
mov dword [esi + 0x88], eax
movsx eax, byte [edx + 0x4b2ff8]
mov dword [esi + 0x84], eax
test eax, eax
jne 0x431300
mov dword [esi + 0x84], 0x7fffffff
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
inc dword [esi + 8]
cmp dword [esi + 0x94], 0x48
jl 0x4317b2
cmp dword [esp + 0x14], 0
mov ecx, dword [ebp + 0x34]
mov eax, dword [esi + 0x78]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x8c], eax
je 0x43150b
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x431463
jmp 0x431350
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4314ba
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x431449
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x43138a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x431446
test cl, 0x10
jne 0x4313ab
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 0x431446
test cl, 8
jne 0x4313d5
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 0x431446
test cl, 4
jne 0x43140b
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 0x431446
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 + 4], eax
cmp dword [esi + 0x78], ecx
je 0x431491
cmp dword [esi + 0x8c], ecx
je 0x431491
inc edi
cmp edi, dword [esi + 0x88]
jle 0x431350
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x42c06f
test ebx, ebx
mov ebx, dword [esp + 0x14]
je 0x4315c4
test ebx, ebx
jne 0x43b140
mov dword [esi + 0x7c], eax
jmp 0x437b0e
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4314ab
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], 0
je 0x4314e2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4314e2
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4314fc
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov edx, 1
cmp dword [esi + 0x88], edx
jl 0x431463
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x431573
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x43154a
cmp dword [esi + 0x8c], ecx
je 0x43154a
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x88]
jle 0x431520
jmp 0x431463
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x431564
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], 0
je 0x43159b
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x43159b
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4315b5
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
test ebx, ebx
je 0x431745
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x431735
mov edi, dword [esi + 4]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x43170d
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4316ec
test dl, 0x20
jne 0x431622
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x4316ec
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x43164c
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 0x4316ec
test dl, 8
jne 0x431678
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 0x4316ec
test dl, 4
jne 0x4316b0
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 0x4316ec
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 dword [esi + 0x78], edx
je 0x431735
cmp dword [esi + 0x8c], edx
je 0x431735
add eax, edi
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x4315e4
jmp 0x431735
cmp dword [ebp + 0x88], 0
je 0x431735
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x431735
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
cmp dword [esp + 0x24], 0
jne 0x42c06f
jmp 0x439083
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x4317a2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x43177a
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x4317a2
cmp dword [esi + 0x8c], ecx
je 0x4317a2
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x431753
jmp 0x4317a2
cmp dword [ebp + 0x88], 0
je 0x4317a2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4317a2
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
cmp dword [esp + 0x24], 0
jne 0x42c06f
jmp 0x437b69
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x431978
mov ebx, 1
cmp dword [esi + 0x88], ebx
jl 0x4318cc
nop
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jae 0x431927
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
cmp edx, 0xc0
jb 0x4318ba
test dl, 0x20
jne 0x43180a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4318b7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x431831
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4318b7
test dl, 8
jne 0x431854
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 0x4318b7
test dl, 4
jne 0x431883
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 0x4318b7
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 + 4], eax
cmp dword [esi + 0x78], edx
je 0x4318fe
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x4317d0
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x42c06f
mov edi, dword [esp + 0x18]
test edi, edi
je 0x431a2c
test ebx, ebx
jne 0x43b14e
mov dword [esi + 0x7c], eax
jmp 0x437c66
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x431918
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], 0
je 0x43194f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x43194f
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x431969
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x4318d0
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4319db
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esi + 0x78], edx
je 0x4319b2
inc edi
cmp edi, dword [esi + 0x88]
jle 0x431990
jmp 0x4318d0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4319cc
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x431a03
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x431a03
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x431a1d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
test ebx, ebx
je 0x431ba9
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x431b99
lea esp, [esp]
mov edi, dword [esi + 4]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x431b71
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x431b58
test dl, 0x20
jne 0x431a8e
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x431b58
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x431ab8
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 0x431b58
test dl, 8
jne 0x431ae4
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 0x431b58
test dl, 4
jne 0x431b1c
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 0x431b58
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 dword [esi + 0x78], edx
je 0x431b99
add eax, edi
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x431a50
jmp 0x431b99
cmp dword [ebp + 0x88], 0
je 0x431b99
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x431b99
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
cmp dword [esp + 0x24], 0
jne 0x42c06f
jmp 0x4392dc
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x431c00
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x431bd8
movzx eax, byte [ecx]
cmp dword [esi + 0x78], eax
je 0x431c00
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x431bb7
jmp 0x431c00
cmp dword [ebp + 0x88], 0
je 0x431c00
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x431c00
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
cmp dword [esp + 0x24], 0
jne 0x42c06f
jmp 0x437c98
mov eax, dword [esi + 8]
mov dword [esp + 0x18], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov dword [esi + 0x88], ecx
add dword [esi + 8], 3
jmp 0x431d3a
mov dword [esi + 0x88], ebx
xor edx, edx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov eax, dword [esi + 8]
cmp byte [eax], 0x5c
sete dl
add eax, 3
mov dword [esp + 0x18], edx
mov dword [esi + 8], eax
jmp 0x431d3a
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x431d3a
mov dword [esi + 0x88], 1
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x431d3a
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 1
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x431d3a
mov dword [esi + 0x88], ebx
mov eax, dword [esi + 8]
mov dword [esp + 0x24], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
add dword [esi + 8], 3
jmp 0x431d3a
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
movsx eax, byte [ecx + 0x4b2f9b]
lea edx, [ecx - 0x55]
mov dword [esi + 0x88], eax
and edx, 1
movsx eax, byte [ecx + 0x4b2fa3]
mov dword [esp + 0x18], edx
mov dword [esi + 0x84], eax
test eax, eax
jne 0x431d3a
mov dword [esi + 0x84], 0x7fffffff
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x74], eax
inc dword [esi + 8]
mov ecx, dword [esi + 0x74]
cmp ecx, 0x10
je 0x431d5c
cmp ecx, 0xf
je 0x431d5c
mov dword [esi + 0x58], 0xffffffff
jmp 0x431d7f
xor eax, eax
cmp ecx, 0xf
sete al
mov dword [esi + 0x60], eax
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x58], eax
inc dword [esi + 8]
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x5c], eax
inc dword [esi + 8]
mov ecx, dword [esi + 0x88]
test ecx, ecx
jle 0x4331be
mov eax, dword [esi + 0x58]
test eax, eax
js 0x432dd3
cmp eax, 8
ja case.default.0x431da1
jmp dword [eax*4 + 0x43b598]
cmp dword [esi + 0x60], ebx
je 0x431dd6
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x431dc7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov ebx, dword [esp + 0x14]
mov edx, 1
cmp ecx, edx
jl 0x4331c2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x431e3c
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
test ebx, ebx
je 0x431e2e
cmp ecx, 0xc0
jb 0x431e2e
test cl, 0x20
jne 0x431e0a
inc eax
jmp 0x431e2b
test cl, 0x10
jne 0x431e14
add eax, 2
jmp 0x431e2b
test cl, 8
jne 0x431e1e
add eax, 3
jmp 0x431e2b
test cl, 4
jne 0x431e28
add eax, 4
jmp 0x431e2b
add eax, 5
mov dword [esi + 4], eax
inc edx
cmp edx, dword [esi + 0x88]
jle 0x431de7
jmp 0x4331c2
cmp dword [ebp + 0x88], 0
je 0x431e64
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x431e64
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x431e7e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x4331c2
mov edi, edi
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x43201d
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x431fa1
cmp ecx, 0xc0
jb 0x431fa1
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x431ee2
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x431f9e
test cl, 0x10
jne 0x431f03
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 0x431f9e
test cl, 8
jne 0x431f2d
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 0x431f9e
test cl, 4
jne 0x431f63
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 0x431f9e
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp eax, 9
je 0x431fd8
cmp eax, 5
je 0x431fd8
cmp eax, 8
je 0x431fd8
xor eax, eax
jmp 0x431fdd
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x431ff4
inc edi
cmp edi, dword [esi + 0x88]
jle 0x431ea0
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43200e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x432045
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x432045
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43205f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4321f4
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x432181
cmp ecx, 0xc0
jb 0x432181
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4320c2
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x43217e
test cl, 0x10
jne 0x4320e3
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 0x43217e
test cl, 8
jne 0x43210d
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 0x43217e
test cl, 4
jne 0x432143
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 0x43217e
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x4321cb
inc edi
cmp edi, dword [esi + 0x88]
jle 0x432080
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4321e5
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x43221c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x43221c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x432236
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x4331c2
jmp 0x432260
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4323cd
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x432361
cmp ecx, 0xc0
jb 0x432361
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4322a2
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x43235e
test cl, 0x10
jne 0x4322c3
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 0x43235e
test cl, 8
jne 0x4322ed
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 0x43235e
test cl, 4
jne 0x432323
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 0x43235e
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x4323a4
inc edi
cmp edi, dword [esi + 0x88]
jle 0x432260
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4323be
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4323f5
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4323f5
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43240f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x43259d
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x432531
cmp ecx, 0xc0
jb 0x432531
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x432472
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x43252e
test cl, 0x10
jne 0x432493
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 0x43252e
test cl, 8
jne 0x4324bd
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 0x43252e
test cl, 4
jne 0x4324f3
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 0x43252e
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e8]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x432574
inc edi
cmp edi, dword [esi + 0x88]
jle 0x432430
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43258e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4325c5
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4325c5
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4325df
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x43277f
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x432701
cmp ecx, 0xc0
jb 0x432701
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x432642
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4326fe
test cl, 0x10
jne 0x432663
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 0x4326fe
test cl, 8
jne 0x43268d
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 0x4326fe
test cl, 4
jne 0x4326c3
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 0x4326fe
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x43273a
cmp eax, 3
je 0x43273a
xor eax, eax
jmp 0x43273f
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x432756
inc edi
cmp edi, dword [esi + 0x88]
jle 0x432600
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x432770
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4327a7
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4327a7
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4327c1
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x4331c2
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x43296f
movzx edx, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
test ebx, ebx
je 0x4328e2
cmp edx, 0xc0
jb 0x4328e2
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 0x20
jne 0x432823
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [ecx + 1]
jmp 0x4328df
test dl, 0x10
jne 0x432844
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 2]
jmp 0x4328df
test dl, 8
jne 0x43286e
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x4328df
test dl, 4
jne 0x4328a4
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x4328df
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 6
je 0x43292a
cmp edx, 9
je 0x43292a
cmp edx, 0xa
je 0x43292a
cmp edx, 0xc
je 0x43292a
cmp edx, 0xd
je 0x43292a
xor eax, eax
jmp 0x43292f
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x432946
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4327e1
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x432960
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x432997
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x432997
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4329b1
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x4331c2
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x432b64
movzx edx, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
test ebx, ebx
je 0x432ad2
cmp edx, 0xc0
jb 0x432ad2
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 0x20
jne 0x432a13
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [ecx + 1]
jmp 0x432acf
test dl, 0x10
jne 0x432a34
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 2]
jmp 0x432acf
test dl, 8
jne 0x432a5e
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x432acf
test dl, 4
jne 0x432a94
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x432acf
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 6
je 0x432b1f
cmp edx, 9
je 0x432b1f
cmp edx, 0xa
je 0x432b1f
cmp edx, 0xb
je 0x432b1f
cmp edx, 0xc
je 0x432b1f
cmp edx, 0xd
je 0x432b1f
xor eax, eax
jmp 0x432b24
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x432b3b
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4329d1
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x432b55
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x432b8c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x432b8c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x432ba6
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x4331c2
jmp 0x432bd0
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x432d56
movzx edx, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
test ebx, ebx
je 0x432cd1
cmp edx, 0xc0
jb 0x432cd1
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 0x20
jne 0x432c12
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [ecx + 1]
jmp 0x432cce
test dl, 0x10
jne 0x432c33
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 2]
jmp 0x432cce
test dl, 8
jne 0x432c5d
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x432cce
test dl, 4
jne 0x432c93
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x432cce
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x432d11
cmp eax, 3
je 0x432d11
cmp edx, 0x5f
je 0x432d11
xor eax, eax
jmp 0x432d16
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x432d2d
inc edi
cmp edi, dword [esi + 0x88]
jle 0x432bd0
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x432d47
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x432d7e
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x432d7e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x432d98
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x432dc1
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b33f
mov edi, 0xfffffff2
jmp 0x436d4b
mov eax, dword [esi + 0x74]
mov ebx, dword [esp + 0x14]
cmp eax, 0x16
jne 0x4330fa
lea edi, [eax - 0x15]
cmp ecx, edi
jl 0x4331c2
mov edi, edi
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4330a9
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x432ef1
cmp ecx, 0xc0
jb 0x432ef1
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x432e32
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x432eee
test cl, 0x10
jne 0x432e53
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 0x432eee
test cl, 8
jne 0x432e7d
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 0x432eee
test cl, 4
jne 0x432eb3
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 0x432eee
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 2
je 0x433080
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x43306e
nop
mov eax, dword [esi + 4]
mov ecx, 1
movzx edx, byte [eax]
test ebx, ebx
je 0x433031
cmp edx, 0xc0
jb 0x433031
test dl, 0x20
jne 0x432f65
movzx eax, byte [eax + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x433029
test dl, 0x10
jne 0x432f8a
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
mov ecx, 3
movzx eax, byte [eax + 2]
jmp 0x433029
test dl, 8
jne 0x432fb8
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
mov ecx, 4
jmp 0x433029
movzx eax, byte [eax + 1]
and eax, 0x3f
test dl, 4
jne 0x432ff2
mov ecx, dword [esi + 4]
and edx, 3
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
mov ecx, 5
jmp 0x433029
and edx, ecx
mov ecx, dword [esi + 4]
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
mov ecx, 6
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 2
jne 0x43306e
add dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x432f30
inc edi
cmp edi, dword [esi + 0x88]
jle 0x432df0
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43309a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4330d1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4330d1
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4330eb
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
add eax, 0xfffffffa
test ebx, ebx
je 0x4341cb
cmp eax, 0xf
ja case.0x4394f3.15
jmp dword [eax*4 + 0x43b5bc]
mov ebx, 1
cmp ecx, ebx
jl 0x4331be
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x4331fb
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x433177
push dword [esp + 0x14]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043cb30
add esp, 0x14
test eax, eax
je 0x433194
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433168
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x433194
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x433194
cmp edi, 1
je 0x43314e
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x43314e
inc dword [esi + 4]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4331b1
nop
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4331b1
inc ecx
mov dword [esi + 4], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x4331a0
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x433122
mov ebx, dword [esp + 0x14]
mov ecx, dword [esi + 0x88]
cmp ecx, dword [esi + 0x84]
je 0x42c06f
mov edi, dword [esp + 0x18]
test edi, edi
je 0x434b9c
mov eax, dword [esi + 0x58]
test eax, eax
js 0x434b82
cmp eax, 8
ja case.0x4394f3.15
jmp dword [eax*4 + 0x43b5fc]
cmp dword [ebp + 0x88], 0
je 0x433223
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x433223
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43323d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov edi, 1
cmp ecx, edi
jl 0x4331c2
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, edx
jae 0x433298
inc eax
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x43328a
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43328a
lea eax, [ecx + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x433272
inc edi
cmp edi, dword [esi + 0x88]
jle 0x433260
jmp 0x4331c2
cmp dword [ebp + 0x88], 0
je 0x4332c0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4332c0
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4332da
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 4]
sub eax, ecx
cmp edx, eax
jbe 0x434314
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433313
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4334ca
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x433429
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x43336a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x433426
test cl, 0x10
jne 0x43338b
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 0x433426
test cl, 8
jne 0x4333b5
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 0x433426
test cl, 4
jne 0x4333eb
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 0x433426
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 + 4], eax
cmp ecx, 0xd
ja 0x43344d
je 0x43343a
cmp ecx, 0xa
je 0x433466
lea eax, [ecx - 0xb]
jmp 0x43345b
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x433466
cmp byte [eax], 0xa
jne 0x433466
inc eax
mov dword [esi + 4], eax
jmp 0x433466
cmp ecx, 0x85
je 0x433460
lea eax, [ecx - 0x2028]
cmp eax, 1
ja 0x433478
cmp dword [ebp + 0x64], 0
jne 0x4334a1
inc edi
cmp edi, dword [esi + 0x88]
jle 0x433330
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433492
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4334bb
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4334f2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4334f2
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43350c
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
jmp 0x433530
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4336b4
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x433629
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x43356a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x433626
test cl, 0x10
jne 0x43358b
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 0x433626
test cl, 8
jne 0x4335b5
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 0x433626
test cl, 4
jne 0x4335eb
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 0x433626
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 + 4], eax
cmp ecx, 0x180e
ja 0x43364f
je 0x43368b
cmp ecx, 0xa0
ja 0x433647
je 0x43368b
cmp ecx, 9
je 0x43368b
cmp ecx, 0x20
jmp 0x433677
cmp ecx, 0x1680
jmp 0x433677
cmp ecx, 0x205f
ja 0x433671
je 0x43368b
cmp ecx, 0x2000
jb 0x433679
cmp ecx, 0x200a
jbe 0x43368b
cmp ecx, 0x202f
jmp 0x433677
cmp ecx, 0x3000
je 0x43368b
inc edi
cmp edi, dword [esi + 0x88]
jle 0x433530
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4336a5
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4336dc
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4336dc
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4336f6
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x433896
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x43380b
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x43374c
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x433808
test cl, 0x10
jne 0x43376d
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 0x433808
test cl, 8
jne 0x433797
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 0x433808
test cl, 4
jne 0x4337cd
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 0x433808
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 + 4], eax
cmp ecx, 0x180e
ja 0x433831
je 0x43385b
cmp ecx, 0xa0
ja 0x433829
je 0x43385b
cmp ecx, 9
je 0x43385b
cmp ecx, 0x20
jmp 0x433859
cmp ecx, 0x1680
jmp 0x433859
cmp ecx, 0x205f
ja 0x433853
je 0x43385b
cmp ecx, 0x2000
jb 0x43386d
cmp ecx, 0x200a
jbe 0x43385b
cmp ecx, 0x202f
jmp 0x433859
cmp ecx, 0x3000
jne 0x43386d
inc edi
cmp edi, dword [esi + 0x88]
jle 0x433712
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433887
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4338be
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4338be
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4338d8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x433a4c
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x4339ed
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x43392e
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4339ea
test cl, 0x10
jne 0x43394f
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 0x4339ea
test cl, 8
jne 0x433979
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 0x4339ea
test cl, 4
jne 0x4339af
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 0x4339ea
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 + 4], eax
cmp ecx, 0x85
ja 0x433a01
je 0x433a23
cmp ecx, 0xa
jb 0x433a11
cmp ecx, 0xd
jmp 0x433a0f
cmp ecx, 0x2028
jb 0x433a11
cmp ecx, 0x2029
jbe 0x433a23
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4338f4
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433a3d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x433a74
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x433a74
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433a8e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
lea ebx, [ebx]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x433c01
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x433ba9
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x433aea
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x433ba6
test cl, 0x10
jne 0x433b0b
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 0x433ba6
test cl, 8
jne 0x433b35
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 0x433ba6
test cl, 4
jne 0x433b6b
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 0x433ba6
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 + 4], eax
cmp ecx, 0x85
ja 0x433bbb
je 0x433bc6
lea eax, [ecx - 0xa]
cmp eax, 3
jmp 0x433bc4
lea eax, [ecx - 0x2028]
cmp eax, 1
ja 0x433bd8
inc edi
cmp edi, dword [esi + 0x88]
jle 0x433ab0
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433bf2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x433c29
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x433c29
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433c43
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x433da5
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x433d59
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x433c9a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x433d56
test cl, 0x10
jne 0x433cbb
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 0x433d56
test cl, 8
jne 0x433ce5
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 0x433d56
test cl, 4
jne 0x433d1b
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 0x433d56
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 + 4], eax
cmp ecx, 0x80
jae 0x433d6a
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne 0x433d7c
inc edi
cmp edi, dword [esi + 0x88]
jle 0x433c60
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433d96
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x433dcd
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x433dcd
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433de7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x433e5a
mov al, byte [edx]
cmp al, 0x80
jae 0x433e31
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je 0x433e31
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x433e03
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433e4b
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x433e82
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x433e82
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433e9c
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, 1
cmp ecx, ebx
jl 0x4331be
mov edx, dword [ebp + 0x78]
jmp 0x433ec0
mov edi, dword [esi + 4]
cmp edi, edx
jae 0x433f35
mov al, byte [edi]
cmp al, 0x80
jae 0x433ed9
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
jne 0x433f0c
lea eax, [edi + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x433efe
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x433efe
lea eax, [ecx + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x433ee6
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x433ec0
jmp 0x4331be
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433f26
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], 0
je 0x433f5d
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x433f5d
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433f77
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov edi, 1
cmp ecx, edi
jl 0x4331c2
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x433fea
mov al, byte [edx]
cmp al, 0x80
jae 0x433fc1
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je 0x433fc1
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x433f93
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x433fdb
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x434012
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434012
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43402c
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ebx, 1
cmp ecx, ebx
jl 0x4331be
mov edx, dword [ebp + 0x78]
jmp 0x434050
mov edi, dword [esi + 4]
cmp edi, edx
jae 0x4340c5
mov al, byte [edi]
cmp al, 0x80
jae 0x434069
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
jne 0x43409c
lea eax, [edi + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x43408e
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43408e
lea eax, [ecx + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x434076
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x434050
jmp 0x4331be
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4340b6
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
cmp dword [ebp + 0x88], 0
je 0x4340ed
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4340ed
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434107
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov edi, 1
cmp ecx, edi
jl 0x4331c2
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x43417a
mov al, byte [edx]
cmp al, 0x80
jae 0x434151
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je 0x434151
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x434123
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43416b
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4341a2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4341a2
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4341bc
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp eax, 0xf
ja case.0x4394f3.15
jmp dword [eax*4 + 0x43b620]
mov ebx, 1
cmp ecx, ebx
jl 0x4331be
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x434269
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x43423b
push 0
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043cb30
add esp, 0x14
test eax, eax
je 0x434258
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43422c
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x434258
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x434258
cmp edi, 1
je 0x434212
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x434212
inc dword [esi + 4]
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x4341e8
jmp 0x4331be
cmp dword [ebp + 0x88], 0
je 0x434291
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434291
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4342ab
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 4]
sub eax, ecx
cmp edx, eax
jbe 0x434314
cmp dword [ebp + 0x88], 0
je 0x4342eb
cmp edx, dword [ebp + 0x84]
jbe 0x4342eb
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434305
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
lea eax, [ecx + edx]
mov dword [esi + 4], eax
jmp 0x4331c2
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 4]
sub eax, ecx
cmp edx, eax
jbe 0x434314
cmp dword [ebp + 0x88], 0
je 0x434350
cmp edx, dword [ebp + 0x84]
jbe 0x434350
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43436a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edx, 1
cmp ecx, edx
jl 0x4331c2
jmp 0x434390
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x434431
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 4], ecx
cmp eax, 0x7b
ja case.0x4343b2.14
movzx eax, byte [eax + 0x43b670]
jmp dword [eax*4 + 0x43b660]
cmp ecx, dword [ebp + 0x78]
jae case.0x4343b2.10
cmp byte [ecx], 0xa
jne case.0x4343b2.10
lea eax, [ecx + 1]
mov dword [esi + 4], eax
jmp case.0x4343b2.10
cmp dword [ebp + 0x64], 0
jne 0x4343df
inc edx
cmp edx, dword [esi + 0x88]
jle 0x434390
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4343f9
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434422
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x434459
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434459
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434473
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edx, 1
cmp ecx, edx
jl 0x4331c2
nop
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4344e8
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 9
je 0x4344bf
cmp ecx, 0x20
je 0x4344bf
cmp ecx, 0xa0
je 0x4344bf
inc edx
cmp edx, dword [esi + 0x88]
jle 0x434490
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4344d9
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x434510
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434510
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43452a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edx, 1
cmp ecx, edx
jl 0x4331c2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x43459e
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 9
je 0x434567
cmp ecx, 0x20
je 0x434567
cmp ecx, 0xa0
jne 0x434575
inc edx
cmp edx, dword [esi + 0x88]
jle 0x434546
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43458f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4345c6
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4345c6
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4345e0
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edx, 1
cmp ecx, edx
jl 0x4331c2
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x434658
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xa
jl 0x434621
cmp ecx, 0xd
jle 0x43462f
cmp ecx, 0x85
je 0x43462f
inc edx
cmp edx, dword [esi + 0x88]
jle 0x434600
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434649
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x434680
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434680
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43469a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edx, 1
cmp ecx, edx
jl 0x4331c2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x43470e
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xa
jl 0x4346e5
cmp ecx, 0xd
jle 0x4346d7
cmp ecx, 0x85
jne 0x4346e5
inc edx
cmp edx, dword [esi + 0x88]
jle 0x4346b6
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4346ff
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x434736
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434736
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434750
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
lea esp, [esp]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4347c1
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne 0x434798
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x434770
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4347b2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4347e9
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4347e9
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434803
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x434871
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je 0x434848
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x434820
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434862
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x434899
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434899
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4348b3
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x434921
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
jne 0x4348f8
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x4348d0
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434912
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x434949
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434949
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434963
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4349d1
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je 0x4349a8
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x434980
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4349c2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x4349f9
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4349f9
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434a13
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x434a81
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
jne 0x434a58
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x434a30
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434a72
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x434aa9
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434aa9
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434ac3
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, 1
cmp ecx, edi
jl 0x4331c2
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x434b31
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je 0x434b08
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x434ae0
jmp 0x4331c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434b22
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x88], 0
je 0x434b59
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x434b59
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x434b73
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [esi + 0x74], 0x16
je 0x43b1e8
test ebx, ebx
jne 0x43b1da
mov dword [esi + 0x7c], ecx
jmp 0x437e15
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x58]
test eax, eax
js 0x4357ee
cmp eax, 8
ja case.0x4394f3.15
jmp dword [eax*4 + 0x43b6ec]
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x4357b8
nop
mov edx, dword [esi + 4]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x434c3b
movzx ecx, byte [edx]
test ebx, ebx
je 0x434c1e
cmp ecx, 0xc0
jb 0x434c1e
test cl, 0x20
jne 0x434bf8
mov eax, 2
jmp 0x434c1e
test cl, 0x10
jne 0x434c04
mov eax, 3
jmp 0x434c1e
test cl, 8
jne 0x434c10
mov eax, 4
jmp 0x434c1e
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x60], 0
jne 0x4357b8
add eax, edx
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x434bd0
jmp 0x4357b8
cmp dword [ebp + 0x88], 0
je 0x4357b8
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4357b8
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x4357b8
jmp 0x42d627
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x4357b8
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x434dc1
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x434d64
cmp edx, 0xc0
jb 0x434d64
test dl, 0x20
jne 0x434cc3
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x434d5c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x434ce5
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x434d5c
and eax, 0x3f
test dl, 8
jne 0x434d05
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x434d5c
test dl, 4
jne 0x434d2e
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 0x434d5c
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
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp eax, 9
je 0x434d9b
cmp eax, 5
je 0x434d9b
cmp eax, 8
je 0x434d9b
xor eax, eax
jmp 0x434da0
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x4357b8
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x434c82
jmp 0x4357b8
cmp dword [ebp + 0x88], 0
je 0x4357b8
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4357b8
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jle 0x4357b8
jmp 0x42d399
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x4357b8
jmp 0x434e10
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x434f4d
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x434ef1
cmp edx, 0xc0
jb 0x434ef1
test dl, 0x20
jne 0x434e51
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x434ee9
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x434e73
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x434ee9
and eax, 0x3f
test dl, 8
jne 0x434e93
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x434ee9
test dl, 4
jne 0x434ebc
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 0x434ee9
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, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x4357b8
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x434e10
jmp 0x4357b8
cmp dword [ebp + 0x88], 0
je 0x4357b8
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4357b8
mov dword [ebp + 0x60], ebx
cmp dword [ebp + 0x88], ebx
jle 0x4357b8
jmp 0x42d399
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x4357b8
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x434f4d
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x435070
cmp edx, 0xc0
jb 0x435070
test dl, 0x20
jne 0x434fd0
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x435068
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x434ff2
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x435068
and eax, 0x3f
test dl, 8
jne 0x435012
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x435068
test dl, 4
jne 0x43503b
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 0x435068
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, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x4357b8
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x434f93
jmp 0x4357b8
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x4357b8
jmp 0x4350e0
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x434f4d
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x4351c1
cmp edx, 0xc0
jb 0x4351c1
test dl, 0x20
jne 0x435121
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x4351b9
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x435143
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4351b9
and eax, 0x3f
test dl, 8
jne 0x435163
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4351b9
test dl, 4
jne 0x43518c
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 0x4351b9
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, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e8]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x4357b8
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x4350e0
jmp 0x4357b8
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x4357b8
jmp 0x435230
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x434dc1
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x435312
cmp edx, 0xc0
jb 0x435312
test dl, 0x20
jne 0x435271
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43530a
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x435293
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43530a
and eax, 0x3f
test dl, 8
jne 0x4352b3
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43530a
test dl, 4
jne 0x4352dc
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 0x43530a
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
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x43534b
cmp eax, 3
je 0x43534b
xor eax, eax
jmp 0x435350
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x4357b8
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x435230
jmp 0x4357b8
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x4357b8
jmp 0x435390
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x434f4d
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x435471
cmp edx, 0xc0
jb 0x435471
test dl, 0x20
jne 0x4353d1
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x435469
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4353f3
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x435469
and eax, 0x3f
test dl, 8
jne 0x435413
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x435469
test dl, 4
jne 0x43543c
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 0x435469
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, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 6
je 0x4354b9
cmp edx, 9
je 0x4354b9
cmp edx, 0xa
je 0x4354b9
cmp edx, 0xc
je 0x4354b9
cmp edx, 0xd
je 0x4354b9
xor eax, eax
jmp 0x4354be
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x4357b8
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x435390
jmp 0x4357b8
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x4357b8
lea ecx, [ecx]
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x434f4d
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x4355e1
cmp edx, 0xc0
jb 0x4355e1
test dl, 0x20
jne 0x435541
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x4355d9
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x435563
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4355d9
and eax, 0x3f
test dl, 8
jne 0x435583
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4355d9
test dl, 4
jne 0x4355ac
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 0x4355d9
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, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 6
je 0x43562e
cmp edx, 9
je 0x43562e
cmp edx, 0xa
je 0x43562e
cmp edx, 0xb
je 0x43562e
cmp edx, 0xc
je 0x43562e
cmp edx, 0xd
je 0x43562e
xor eax, eax
jmp 0x435633
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x4357b8
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x435500
jmp 0x4357b8
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x4357b8
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x434f4d
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x435753
cmp edx, 0xc0
jb 0x435753
test dl, 0x20
jne 0x4356b3
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x43574b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4356d5
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x43574b
and eax, 0x3f
test dl, 8
jne 0x4356f5
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43574b
test dl, 4
jne 0x43571e
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 0x43574b
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, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x435793
cmp eax, 3
je 0x435793
cmp edx, 0x5f
je 0x435793
xor eax, eax
jmp 0x435798
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x4357b8
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x435672
cmp dword [esp + 0x24], 0
jne 0x42c06f
mov ebx, dword [esp + 0x14]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x2c
jmp 0x438139
mov eax, dword [esi + 0x74]
cmp eax, 0x16
jne 0x435af4
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x435ac2
mov ebx, dword [ebp + 0x78]
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, ebx
jae 0x435a9b
mov ebx, dword [esp + 0x14]
movzx edx, byte [edi]
test ebx, ebx
je 0x4358f5
cmp edx, 0xc0
jb 0x4358f5
test dl, 0x20
jne 0x435854
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4358ed
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x435876
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4358ed
and eax, 0x3f
test dl, 8
jne 0x435896
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4358ed
test dl, 4
jne 0x4358bf
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 0x4358ed
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
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 2
je 0x435ac2
add dword [esi + 4], ecx
mov ebx, dword [ebp + 0x78]
cmp dword [esi + 4], ebx
jae 0x435a84
jmp 0x435940
cmp dword [esp + 0x14], 0
mov ecx, 1
mov eax, dword [esi + 4]
movzx edx, byte [eax]
je 0x435a47
cmp edx, 0xc0
jb 0x435a47
test dl, 0x20
jne 0x435978
movzx eax, byte [eax + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x435a3f
test dl, 0x10
jne 0x43599d
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
mov ecx, 3
movzx eax, byte [eax + 2]
jmp 0x435a3f
test dl, 8
jne 0x4359ce
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
mov ecx, 4
jmp 0x435a3f
movzx eax, byte [eax + 1]
and eax, 0x3f
test dl, 4
jne 0x435a08
mov ecx, dword [esi + 4]
and edx, 3
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
mov ecx, 5
jmp 0x435a3f
and edx, ecx
mov ecx, dword [esi + 4]
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
mov ecx, 6
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 2
jne 0x435a84
add dword [esi + 4], ecx
mov ebx, dword [ebp + 0x78]
cmp dword [esi + 4], ebx
jb 0x435940
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x435813
jmp 0x435abe
cmp dword [ebp + 0x88], 0
je 0x435abe
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x435abe
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jg 0x42d399
mov ebx, dword [esp + 0x14]
cmp dword [esp + 0x24], 0
jne 0x42c06f
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x2d
jmp 0x438139
add eax, 0xfffffffa
test ebx, ebx
je 0x43687f
cmp eax, 0xf
ja case.0x4394f3.15
jmp dword [eax*4 + 0x43b710]
mov eax, dword [esi + 0x84]
mov ebx, dword [esi + 0x88]
cmp eax, 0x7fffffff
jge 0x435be6
cmp ebx, eax
jge 0x43686b
mov edi, edi
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x435bb1
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x435b62
push dword [esp + 0x14]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043cb30
add esp, 0x14
test eax, eax
jne 0x43686b
jmp 0x435b87
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x435b87
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x435b87
cmp edi, 1
je 0x43686b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x43686b
inc dword [esi + 4]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x435ba3
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x435ba3
inc ecx
mov dword [esi + 4], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x435b92
inc ebx
cmp ebx, dword [esi + 0x84]
jl 0x435b30
jmp 0x43686b
cmp dword [ebp + 0x88], 0
je 0x43686b
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x43686b
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x43686b
jmp 0x42d399
cmp ebx, eax
jge 0x43686b
mov edi, edi
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x435bb1
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x435c1e
push dword [esp + 0x14]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043cb30
add esp, 0x14
test eax, eax
jne 0x43686b
jmp 0x435c43
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x435c43
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x435c43
cmp edi, 1
je 0x43686b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x43686b
inc dword [esi + 4]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x435c61
mov edi, edi
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x435c61
inc ecx
mov dword [esi + 4], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x435c50
inc ebx
cmp ebx, dword [esi + 0x84]
jl 0x435bf0
jmp 0x43686b
mov eax, dword [esi + 0x84]
cmp eax, 0x7fffffff
jge 0x435cfe
mov edi, dword [esi + 0x88]
cmp edi, eax
jge 0x43686f
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 4]
cmp eax, edx
jae 0x435cc9
inc eax
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x435cbb
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x435cbb
lea eax, [ecx + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x435ca3
inc edi
cmp edi, dword [esi + 0x84]
jl 0x435c91
jmp 0x43686f
cmp dword [ebp + 0x88], 0
je 0x43686f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x43686f
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x43686f
jmp 0x42d627
mov eax, dword [ebp + 0x78]
mov dword [esi + 4], eax
cmp dword [ebp + 0x88], 0
je 0x43686f
jmp 0x435cd9
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x84]
mov edi, dword [esi + 4]
sub eax, edi
sub ecx, dword [esi + 0x88]
cmp ecx, eax
jbe 0x435d45
mov dword [esi + 4], edx
cmp dword [ebp + 0x88], 0
je 0x43686f
cmp edx, dword [ebp + 0x84]
jmp 0x435cdf
lea eax, [edi + ecx]
mov dword [esi + 4], eax
jmp 0x43686f
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x43686b
mov edi, dword [esi + 4]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x435bb1
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x435e6d
test dl, 0x20
jne 0x435da0
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x435e6d
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x435dca
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 0x435e6d
test dl, 8
jne 0x435df9
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 0x435e6d
test dl, 4
jne 0x435e31
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 0x435e6d
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, 0xd
jne 0x435e89
lea eax, [edi + 1]
mov dword [esi + 4], eax
cmp eax, dword [ebp + 0x78]
jae 0x43686b
cmp byte [eax], 0xa
jne 0x435ec3
inc eax
jmp 0x435ec0
cmp edx, 0xa
je 0x435ebe
cmp dword [ebp + 0x64], 0
jne 0x43686b
cmp edx, 0xb
je 0x435ebe
cmp edx, 0xc
je 0x435ebe
cmp edx, 0x85
je 0x435ebe
cmp edx, 0x2028
je 0x435ebe
cmp edx, 0x2029
jne 0x43686b
add eax, edi
mov dword [esi + 4], eax
inc ebx
cmp ebx, dword [esi + 0x84]
jl 0x435d62
jmp 0x43686b
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x43686b
jmp 0x435ef0
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436049
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x435fc7
test dl, 0x20
jne 0x435f26
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x435fbf
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x435f48
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x435fbf
and eax, 0x3f
test dl, 8
jne 0x435f68
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x435fbf
test dl, 4
jne 0x435f91
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 0x435fbf
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 0x435fed
je 0x43601b
cmp edx, 0xa0
ja 0x435fe5
je 0x43601b
cmp edx, 9
je 0x43601b
cmp edx, 0x20
jmp 0x436015
cmp edx, 0x1680
jmp 0x436015
cmp edx, 0x205f
ja 0x43600f
je 0x43601b
cmp edx, 0x2000
jb 0x436017
cmp edx, 0x200a
jbe 0x43601b
cmp edx, 0x202f
jmp 0x436015
cmp edx, 0x3000
je 0x43601b
xor edx, edx
jmp 0x436020
mov edx, 1
xor eax, eax
cmp dword [esi + 0x74], 0x12
sete al
cmp edx, eax
je 0x43686b
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x435ef0
jmp 0x43686b
cmp dword [ebp + 0x88], 0
je 0x43686b
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x43686b
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jle 0x43686b
jmp 0x42d399
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x43686b
jmp 0x436090
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436049
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x436163
test dl, 0x20
jne 0x4360c2
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43615b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4360e4
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43615b
and eax, 0x3f
test dl, 8
jne 0x436104
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43615b
test dl, 4
jne 0x43612d
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 0x43615b
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 0x4361a2
je 0x4361ad
cmp edx, 0xa
jb 0x436177
cmp edx, 0xd
jbe 0x4361ad
xor edx, edx
xor eax, eax
cmp dword [esi + 0x74], 0x14
sete al
cmp edx, eax
je 0x43686b
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x436090
jmp 0x43686b
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x436177
mov edx, 1
jmp 0x436179
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x43686b
jmp 0x4361d0
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436049
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4362a7
test dl, 0x20
jne 0x436206
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43629f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436228
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43629f
and eax, 0x3f
test dl, 8
jne 0x436248
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43629f
test dl, 4
jne 0x436271
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 0x43629f
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 0x4362bc
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
jne 0x43686b
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x4361d0
jmp 0x43686b
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x43686b
jmp 0x4362f0
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436049
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4363c7
test dl, 0x20
jne 0x436326
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4363bf
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436348
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4363bf
and eax, 0x3f
test dl, 8
jne 0x436368
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4363bf
test dl, 4
jne 0x436391
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 0x4363bf
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 0x43686b
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
je 0x43686b
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x4362f0
jmp 0x43686b
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x43686b
lea ebx, [ebx]
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436049
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4364e7
test dl, 0x20
jne 0x436446
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4364df
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436468
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4364df
and eax, 0x3f
test dl, 8
jne 0x436488
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4364df
test dl, 4
jne 0x4364b1
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 0x4364df
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 0x4364fc
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
jne 0x43686b
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x436410
jmp 0x43686b
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x43686b
jmp 0x436530
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436049
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x436607
test dl, 0x20
jne 0x436566
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4365ff
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x436588
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4365ff
and eax, 0x3f
test dl, 8
jne 0x4365a8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4365ff
test dl, 4
jne 0x4365d1
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 0x4365ff
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 0x43686b
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
je 0x43686b
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x436530
jmp 0x43686b
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x43686b
lea ebx, [ebx]
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436049
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x436727
test dl, 0x20
jne 0x436686
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43671f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4366a8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43671f
and eax, 0x3f
test dl, 8
jne 0x4366c8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43671f
test dl, 4
jne 0x4366f1
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 0x43671f
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 0x43673c
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
jne 0x43686b
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x436650
jmp 0x43686b
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x43686b
jmp 0x436770
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x436049
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x436847
test dl, 0x20
jne 0x4367a6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43683f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4367c8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43683f
and eax, 0x3f
test dl, 8
jne 0x4367e8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43683f
test dl, 4
jne 0x436811
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 0x43683f
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 0x43686b
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je 0x43686b
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x436770
mov ebx, dword [esp + 0x14]
cmp dword [esp + 0x24], 0
jne 0x42c06f
jmp 0x43994e
cmp eax, 0xf
ja case.0x4394f3.15
jmp dword [eax*4 + 0x43b750]
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x4368c6
lea ecx, [ecx]
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x436905
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4368da
push 0
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043cb30
add esp, 0x14
test eax, eax
je 0x4368f7
mov ebx, dword [esp + 0x14]
cmp dword [esp + 0x24], 0
jne 0x42c06f
jmp 0x43810b
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4368f7
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x4368f7
cmp edi, 1
je 0x4368c6
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x4368c6
inc dword [esi + 4]
inc ebx
cmp ebx, dword [esi + 0x84]
jl 0x4368a0
jmp 0x4368c6
cmp dword [ebp + 0x88], 0
je 0x4368c6
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4368c6
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x4368c6
jmp 0x42d399
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x84]
mov edi, dword [esi + 4]
sub eax, edi
sub ecx, dword [esi + 0x88]
cmp ecx, eax
jbe 0x43697d
mov dword [esi + 4], edx
cmp dword [ebp + 0x88], 0
je 0x4368ca
cmp edx, dword [ebp + 0x84]
jbe 0x4368ca
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x4368ca
jmp 0x42d627
lea eax, [edi + ecx]
mov dword [esi + 4], eax
jmp 0x4368ca
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x4368ca
lea ebx, [ebx]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4369ff
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x4369c7
lea eax, [ecx + 1]
mov dword [esi + 4], eax
cmp eax, dword [ebp + 0x78]
jae 0x4368ca
cmp byte [eax], 0xa
jne 0x4369f1
inc eax
jmp 0x4369ee
cmp eax, 0xa
je 0x4369eb
cmp dword [ebp + 0x64], 0
jne 0x4368ca
cmp eax, 0xb
je 0x4369eb
cmp eax, 0xc
je 0x4369eb
cmp eax, 0x85
jne 0x4368ca
lea eax, [ecx + 1]
mov dword [esi + 4], eax
inc edx
cmp edx, dword [esi + 0x84]
jl 0x4369a0
jmp 0x4368ca
cmp dword [ebp + 0x88], 0
je 0x4368ca
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4368ca
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x4368ca
jmp 0x42d627
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x4368ca
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4369ff
movzx eax, byte [ecx]
cmp eax, 9
je 0x4368ca
cmp eax, 0x20
je 0x4368ca
cmp eax, 0xa0
je 0x4368ca
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x436a46
jmp 0x4368ca
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x4368ca
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4369ff
movzx eax, byte [ecx]
cmp eax, 9
je 0x436ab8
cmp eax, 0x20
je 0x436ab8
cmp eax, 0xa0
jne 0x4368ca
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x436a94
jmp 0x4368ca
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x4368ca
mov edi, edi
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4369ff
movzx eax, byte [ecx]
cmp eax, 0xa
je 0x4368ca
cmp eax, 0xb
je 0x4368ca
cmp eax, 0xc
je 0x4368ca
cmp eax, 0xd
je 0x4368ca
cmp eax, 0x85
je 0x4368ca
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x436ae0
jmp 0x4368ca
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x4368ca
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4369ff
movzx eax, byte [ecx]
cmp eax, 0xa
je 0x436b72
cmp eax, 0xb
je 0x436b72
cmp eax, 0xc
je 0x436b72
cmp eax, 0xd
je 0x436b72
cmp eax, 0x85
jne 0x4368ca
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x436b44
jmp 0x4368ca
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x4368ca
jmp 0x436ba0
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4369ff
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne 0x4368ca
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x436ba0
jmp 0x4368ca
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x4368ca
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4369ff
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je 0x4368ca
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x436be2
jmp 0x4368ca
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x4368ca
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4369ff
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
jne 0x4368ca
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x436c24
jmp 0x4368ca
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x4368ca
jmp 0x436c70
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4369ff
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je 0x4368ca
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x436c70
jmp 0x4368ca
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x4368ca
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4369ff
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
jne 0x4368ca
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x436cb2
jmp 0x4368ca
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x4368ca
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4369ff
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je 0x4368ca
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x436cf4
jmp 0x4368ca
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x436d3e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b34f
mov edi, 0xfffffffb
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 0x128]
dec eax
cmp eax, 0x41
ja case.default.0x436d5f
jmp dword [eax*4 + 0x43b790]
cmp edi, 0xfffffc1c
je 0x436e23
cmp edi, 0xfffffc20
jne 0x436dae
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x436d5f.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x436daa
cmp byte [ecx], 0x71
jne case.0x436d5f.49
xor edi, edi
jmp 0x436db6
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x98]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x436e23
cmp dword [esi + 0x94], 0x82
jl 0x436dfc
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0xf2ff68]
mov edx, eax
add esp, 4
test edx, edx
je 0x42c0cd
mov dword [esi + 0x128], 1
jmp 0x42c232
mov edx, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0x9c]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa0]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
lea ecx, [esp + 0x28]
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x436e77
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
jne 0x436d4f
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1b0
ret
cmp edi, 0xfffffc20
jne 0x436f11
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x436d5f.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x436ec0
cmp byte [ecx], 0x71
jne case.0x436d5f.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je case.0x42c09c.123
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x436f02
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test edi, edi
je 0x436ec0
cmp edi, 0xfffffc1c
jne case.0x436d5f.49
mov edx, dword [esi + 8]
mov al, byte [edx]
cmp al, 0x7b
je 0x436f53
cmp al, 0x71
jne 0x436f44
mov edi, edi
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je 0x436f30
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
jmp case.0x436d5f.49
mov eax, dword [esi + 0x94]
cmp eax, 0x82
jge 0x436faa
cmp eax, 0x7b
je 0x436faa
cmp dword [ebp + 0x68], 0
jne 0x436fb4
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x71
je 0x436fb4
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4b37d0]
add eax, ecx
mov dword [esi + 8], eax
jmp 0x42bfd0
mov dword [ebp + 0x98], 2
mov eax, dword [ebp + 0xac]
push 0x12c
mov dword [esi + 0x24], eax
call dword [0xf2ff68]
mov edx, eax
add esp, 4
test edx, edx
je 0x42c0cd
mov dword [esi + 0x128], 2
jmp 0x42c232
cmp edi, 1
jne 0x437039
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x10]
jle 0x436ff7
mov dword [esi + 0x10], eax
mov dword [esi + 0x50], 1
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
add edx, 3
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
jne 0x437056
jmp 0x437020
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x437020
jmp 0x437056
test edi, edi
je 0x437049
cmp edi, 0xfffffc20
jne case.0x436d5f.49
mov dword [esi + 0x50], 0
mov eax, dword [esi + 0x70]
add dword [esi + 8], eax
cmp dword [esi + 0x50], 0
jne 0x437068
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x42c927
cmp dword [esi + 0x94], 0x86
jne 0x438716
push 0x12c
mov dword [ebp + 0x98], 2
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0x31
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x438142
cmp edi, 1
je 0x43711d
cmp edi, 0xfffffc19
je 0x43711d
test edi, edi
je 0x4370d2
cmp edi, 0xfffffc20
jne case.0x436d5f.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x437123
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 4
jmp 0x43721f
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x72
jne 0x437154
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437145
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [esi + 0x50], 0
jne 0x437275
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x437161
lea eax, [edx + 3]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
jmp 0x42c06f
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
cmp edi, 1
je 0x4372a1
cmp edi, 0xfffffc19
je 0x4372a1
cmp edi, 0xfffffc1e
je 0x437251
cmp edi, 0xfffffc1d
je 0x437251
cmp edi, 0xfffffc1a
je 0x437251
test edi, edi
je 0x4371de
cmp edi, 0xfffffc20
jne case.0x436d5f.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov edx, dword [esi + 8]
cmp byte [edx], 0x71
jne 0x43726b
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 5
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
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 dword [ecx + 0x14], 0
mov eax, dword [esi + 0x18]
inc eax
mov dword [ecx + 0x18], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x42bfaf
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x437254
cmp dword [esi + 0x50], 0
je 0x4374b7
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43728f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b2bc
mov edi, 1
jmp 0x436d4f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4372bb
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 0x44]
shl eax, 2
push eax
push dword [esi + 0x40]
push dword [ebp + 0xc]
call fcn.004216c9
mov eax, dword [esi + 0x38]
lea ebx, [esi + 0x38]
add esp, 0xc
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x43b0dc
cmp edi, 0xfffffc19
je 0x43b0dc
test edi, edi
je 0x43732c
cmp edi, 0xfffffc20
je 0x43732c
mov ecx, dword [esi + 0x40]
lea eax, [esi + 0xa8]
cmp ecx, eax
je 0x42c475
push ecx
call dword [0xf2ff64]
add esp, 4
jmp 0x42c475
mov dword [ebp + 0xa4], ebx
mov edx, dword [esi + 0x1c]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [esi + 0x1c], eax
cmp byte [eax], 0x71
jne 0x43738c
cmp dword [esi + 0x50], 0
je 0x43735c
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0xf2ff68]
mov edx, eax
add esp, 4
test edx, edx
je 0x42c0cd
mov dword [esi + 0x128], 6
mov eax, dword [esi + 4]
mov dword [edx + 4], eax
mov ecx, dword [esi + 0x1c]
jmp 0x42c23b
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
lea eax, [esi + 0xa8]
mov ecx, dword [esi + 0x40]
cmp ecx, eax
je 0x4373ab
push ecx
call dword [0xf2ff64]
add esp, 4
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4373c5
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x30]
mov al, byte [eax]
cmp al, 0x7b
jne 0x437415
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 8
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x30]
jmp 0x438142
cmp al, 0x82
jb 0x438703
push 0x12c
mov dword [ebp + 0x98], 2
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x32
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x30]
jmp 0x438142
lea ecx, [esp + 0x28]
test edi, edi
jne 0x436e61
mov eax, dword [esi + 0x30]
mov dword [ebp + 0xb4], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437482
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b2cc
mov edi, 0xfffffc1c
jmp 0x436d4f
test edi, edi
jne case.0x436d5f.49
mov edx, dword [esi + 0x28]
nop
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x28], edx
cmp byte [edx], 0x71
je 0x4374a0
lea eax, [edx + 3]
mov dword [esi + 8], eax
jmp 0x42c06f
test edi, edi
je 0x42d2c2
jmp case.0x436d5f.49
cmp edi, 0xfffffc1c
jne 0x4374e2
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x30]
jmp 0x4374e4
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x30]
cmp byte [eax], 0x7b
jne 0x438716
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 9
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x438142
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x437565
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437556
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
push dword [esp + 0x154]
mov edi, dword [esi + 4]
push ebp
push dword [esi + 0x80]
push edi
push dword [esi + 0x90]
call fcn.0043b9b0
add esp, 0x14
test eax, eax
jns 0x4375dc
cmp dword [ebp + 0x88], 0
je 0x4375b3
cmp edi, dword [ebp + 0x78]
jb 0x4375b3
cmp edi, dword [ebp + 0x84]
jbe 0x4375b3
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4375cd
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
add eax, edi
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0xe
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x80]
sub dword [esi + 4], eax
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x43764b
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0xf
jmp 0x438139
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437665
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x4376b0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4376a1
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x437706
cmp dword [ebp + 0x88], 0
je 0x4376dd
cmp eax, dword [ebp + 0x84]
jbe 0x4376dd
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4376f7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
mov edi, ecx
mov edx, dword [esi + 0x24]
and ecx, 7
shr edi, 3
mov eax, 1
shl eax, cl
test byte [edi + edx], al
jne 0x43774d
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43773e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x11
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x4389ea
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0x13
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x4377f1
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4377e2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x437847
cmp dword [ebp + 0x88], 0
je 0x43781e
cmp eax, dword [ebp + 0x84]
jbe 0x43781e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437838
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x437880
cmp dword [esi + 0x8c], ecx
je 0x437880
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437871
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc eax
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x18
jmp 0x438139
dec dword [esi + 4]
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x4378e8
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x19
jmp 0x438139
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437902
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x43794d
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43793e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x4379a3
cmp dword [ebp + 0x88], 0
je 0x43797a
cmp eax, dword [ebp + 0x84]
jbe 0x43797a
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437994
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esi + 0x78], edx
je 0x4379d8
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4379c9
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x1a
jmp 0x438139
dec dword [esi + 4]
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x437a3c
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x1b
jmp 0x438139
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437a56
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x437aa1
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437a92
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x437af7
cmp dword [ebp + 0x88], 0
je 0x437ace
cmp eax, dword [ebp + 0x84]
jbe 0x437ace
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437ae8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x437b35
cmp dword [esi + 0x8c], ecx
je 0x437b35
inc eax
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x1d
jmp 0x438139
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437b4f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test edi, edi
jne case.0x436d5f.49
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x439046
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x1f
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x437bd8
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437bc9
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x437c2e
cmp dword [ebp + 0x88], 0
je 0x437c05
cmp eax, dword [ebp + 0x84]
jbe 0x437c05
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437c1f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esi + 0x78], edx
jne 0x437c63
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437c54
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x21
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x43929e
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x23
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x437d07
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437cf8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x437d5f
cmp dword [ebp + 0x88], 0
je 0x437d36
cmp ecx, dword [ebp + 0x84]
jbe 0x437d36
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437d50
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [esi + 0x74], 0xc
jne 0x437d80
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x437da2
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043cb30
add esp, 0x14
test eax, eax
jne 0x437dbf
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 4], edx
mov eax, dword [esi + 0x74]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x4394f3.15
jmp dword [eax*4 + 0x43b898]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x437d80
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x437d80
cmp edi, 1
je 0x437dbf
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
jne 0x437d80
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437dd9
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x437dfb.14
movzx eax, byte [ecx + 0x43b8e8]
jmp dword [eax*4 + 0x43b8d8]
cmp edx, dword [ebp + 0x78]
jae case.0x437d9b.12
cmp byte [edx], 0xa
jne case.0x437d9b.12
lea eax, [edx + 1]
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x2b
jmp 0x438139
cmp dword [ebp + 0x64], 0
je case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437e5c
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437e85
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp ecx, 9
je 0x437eaa
cmp ecx, 0x20
je 0x437eaa
cmp ecx, 0xa0
jne case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437ec4
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp ecx, 9
je case.0x437d9b.12
cmp ecx, 0x20
je case.0x437d9b.12
cmp ecx, 0xa0
je case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437f0b
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp ecx, 0xa
jb case.0x437d9b.12
cmp ecx, 0xd
jbe 0x437f34
cmp ecx, 0x85
jne case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437f4e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp ecx, 0xa
jb 0x437f77
cmp ecx, 0xd
jbe case.0x437d9b.12
cmp ecx, 0x85
je case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437f91
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437fc7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x437ffd
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438033
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
jne case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438069
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43809f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
jne case.0x437d9b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4380d5
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test edi, edi
jne case.0x436d5f.49
dec dword [esi + 4]
cmp dword [esi + 0x74], 0x11
mov eax, dword [esi + 4]
jne 0x43810b
cmp eax, dword [esi + 0x2c]
jbe 0x43810b
cmp byte [eax], 0xa
jne 0x43810b
cmp byte [eax - 1], 0xd
jne 0x43810b
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x43a6ac
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x2f
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
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]
inc eax
mov dword [ecx + 0x18], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x42bfaf
cmp edi, 0xfffffc1b
jne 0x438196
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
mov dword [esi + 4], eax
mov eax, dword [esi + 0x70]
add eax, dword [ebp + 0x70]
mov dword [esi + 8], eax
mov dword [esi + 0x54], 1
jmp 0x42ceac
cmp edi, 0xfffffc20
jne 0x4381ca
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x436d5f.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x4381d2
cmp byte [ecx], 0x71
jmp 0x4381cc
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x42ceac
cmp dword [esi + 0x54], 0
jne 0x43b107
cmp dword [esi + 0x4c], 0
jne 0x43b107
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43821f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test edi, edi
je 0x438256
cmp edi, 0xfffffc1d
je 0x438256
cmp edi, 0xfffffc1e
je 0x438256
cmp edi, 0xfffffc1f
je 0x438256
cmp edi, 0xfffffc20
jne case.0x436d5f.49
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438270
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b2ec
mov edi, 0xfffffc1a
jmp 0x436d4f
test edi, edi
je 0x438310
cmp edi, 0xfffffc1d
je 0x438310
cmp edi, 0xfffffc20
je 0x438310
jmp case.0x436d5f.49
cmp edi, 1
je 0x4382b4
cmp edi, 0xfffffc19
jne 0x4382ce
cmp dword [ebp + 0xac], 0
jne 0x4382ce
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xac], eax
jmp case.0x436d5f.49
cmp edi, 0xfffffc1f
jne case.0x436d5f.49
mov eax, dword [esi + 8]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x438303
test dl, dl
je 0x4382ff
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x438303
add eax, 2
add ecx, 2
test dl, dl
jne 0x4382e3
xor eax, eax
jmp 0x438308
sbb eax, eax
or eax, 1
test eax, eax
jne case.0x436d5f.49
mov eax, dword [esi + 4]
lea ecx, [esp + 0x28]
mov dword [ebp + 0x7c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438330
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b30c
mov edi, 0xfffffc1e
jmp 0x436d4f
cmp edi, 1
je 0x43834f
cmp edi, 0xfffffc19
jne case.0x436d5f.51
cmp dword [ebp + 0xac], 0
jne case.0x436d5f.51
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
je 0x438374
cmp edi, 0xfffffc20
jne case.0x436d5f.49
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43838e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b2dc
mov edi, 0xfffffc1d
jmp 0x436d4f
test edi, edi
je 0x4383b8
cmp edi, 0xfffffc1d
je 0x4383b8
cmp edi, 0xfffffc20
jne case.0x436d5f.49
mov eax, dword [esi + 8]
lea ecx, [esp + 0x28]
add eax, 2
mov dword [ebp + 0x7c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4383db
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b31c
mov edi, 0xfffffc1f
jmp 0x436d4f
cmp edi, 1
je 0x4383fa
cmp edi, 0xfffffc19
jne case.0x436d5f.54
cmp dword [ebp + 0xac], 0
jne case.0x436d5f.54
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xac], eax
lea ecx, [esp + 0x28]
test edi, edi
jne 0x436e61
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438437
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b2fc
mov edi, 0xfffffc20
jmp 0x436d4f
cmp edi, 0xfffffc1b
jne 0x438484
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
mov dword [esi + 4], eax
mov eax, dword [esi + 0x70]
add eax, dword [ebp + 0x70]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x98], eax
mov dword [esi + 0x54], 1
jmp 0x42ce4b
cmp edi, 0xfffffc20
jne 0x4384b8
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x436d5f.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x4384c0
cmp byte [ecx], 0x71
jmp 0x4384ba
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x98]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x42ce4b
cmp dword [esi + 0x54], 0
jne 0x43852b
mov edx, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0x9c]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa0]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
cmp dword [esi + 0x4c], 0
jne 0x42c927
cmp dword [esi + 0x54], 0
jne 0x42c927
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438559
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edi, 1
jne 0x4385b1
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0xc], eax
mov edx, dword [esi + 8]
mov al, byte [edx]
cmp al, 0x7c
je 0x438650
cmp al, 0x71
je 0x438650
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4385a2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edi, 0xfffffc20
jne 0x4385e5
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x436d5f.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x4385ed
cmp byte [ecx], 0x71
jmp 0x4385e7
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x438573
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0x40
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x438142
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x438650
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
mov ecx, dword [ebp + 0x80]
mov dword [esi + 4], ecx
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, 0x72
je 0x42c927
cmp ecx, dword [esi + 0x34]
je 0x42c927
push 0x12c
cmp al, 0x74
jne 0x4386c6
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x41
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x438142
mov dword [ebp + 0x98], 2
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x42
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x30]
jmp 0x438142
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
jmp 0x42bfd0
test edi, edi
jne case.0x436d5f.49
add dword [esi + 8], 3
jmp 0x42bfd0
test edi, edi
jne case.0x436d5f.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
jne 0x43875e
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43874f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test ebx, ebx
je 0x430133
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x430133
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x438772
jmp 0x430133
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x4387bf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4387b0
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jb 0x438815
cmp dword [ebp + 0x88], 0
je 0x4387ec
cmp edx, dword [ebp + 0x84]
jbe 0x4387ec
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438806
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx ebx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ebx, 0xc0
jb 0x438909
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x438843
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x438906
test bl, 0x10
jne 0x438865
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add dword [esi + 4], 2
jmp 0x438909
mov ecx, dword [esi + 4]
test bl, 8
jne 0x438895
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 3]
jmp 0x438906
test bl, 4
jne 0x4388cb
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 [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 4]
jmp 0x438906
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 [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov dword [esi + 4], eax
cmp ebx, 0xff
jbe 0x438947
cmp dword [esi + 0x94], 0x6a
jne 0x438989
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438938
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov edx, dword [esi + 0x24]
mov edi, ebx
and ebx, 7
shr edi, 3
mov eax, 1
mov ecx, ebx
shl eax, cl
test byte [edi + edx], al
jne 0x438989
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43897a
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
inc dword [esi + 0x7c]
mov ebx, dword [esp + 0x14]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43b240
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4389c2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b26f
mov edi, 0xfffffffa
jmp 0x436d4f
test edi, edi
jne case.0x436d5f.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
jne 0x438a13
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438a04
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x438a2c
jmp 0x438a20
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x438a20
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0x12
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x438a8f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438a80
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x438ae5
cmp dword [ebp + 0x88], 0
je 0x438abc
cmp edi, dword [ebp + 0x84]
jbe 0x438abc
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438ad6
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x438be1
cmp edx, 0xc0
jb 0x438be1
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x438b1b
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x438bde
test dl, 0x10
jne 0x438b3d
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 + 4], 2
jmp 0x438be1
mov ecx, dword [esi + 4]
test dl, 8
jne 0x438b6d
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 0x438bde
test dl, 4
jne 0x438ba3
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 0x438bde
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 + 4], eax
push ebx
push dword [esi + 0x24]
push edx
call fcn.0043d1b0
add esp, 0xc
test eax, eax
jne 0x438c1b
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438c0c
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x14
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x438c81
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438c72
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov edi, dword [esi + 0x80]
sub eax, edi
mov ebx, dword [esi + 4]
cmp ebx, eax
ja 0x438cf4
mov edx, dword [esi + 0x20]
mov ecx, ebx
sub edi, 4
jb 0x438cb4
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x438cb9
add ecx, 4
add edx, 4
sub edi, 4
jae 0x438ca3
cmp edi, 0xfffffffc
je 0x438ce6
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x438cf1
cmp edi, 0xfffffffd
je 0x438ce6
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x438cf1
cmp edi, 0xfffffffe
je 0x438ce6
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x438cf1
cmp edi, 0xffffffff
je 0x438ce6
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x438cf1
mov eax, dword [esi + 0x80]
jmp 0x438d5b
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x64]
test edi, edi
jle 0x438d8a
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x438d8a
lea edx, [esi + 0x68]
mov ecx, ebx
sub edi, 4
jb 0x438d26
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x438d2b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x438d15
cmp edi, 0xfffffffc
je 0x438d58
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x438d8a
cmp edi, 0xfffffffd
je 0x438d58
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x438d8a
cmp edi, 0xfffffffe
je 0x438d58
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x438d8a
cmp edi, 0xffffffff
je 0x438d58
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x438d8a
mov eax, dword [esi + 0x64]
add eax, ebx
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0x16
jmp 0x438139
cmp dword [ebp + 0x88], 0
je 0x438db4
cmp ebx, dword [ebp + 0x78]
jb 0x438db4
cmp ebx, dword [ebp + 0x84]
jbe 0x438db4
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d399
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438dce
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
test edi, edi
jne case.0x436d5f.49
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 0x2c]
jne 0x438e16
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438e07
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
dec ecx
mov dword [esi + 4], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x438e2e
dec ecx
mov dword [esi + 4], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x438e22
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0x17
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x438e91
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438e82
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x438ee7
cmp dword [ebp + 0x88], 0
je 0x438ebe
cmp edi, dword [ebp + 0x84]
jbe 0x438ebe
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x438ed8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx ebx, byte [edi]
inc edi
mov dword [esi + 4], edi
cmp ebx, 0xc0
jb 0x438fcc
test bl, 0x20
jne 0x438f15
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x438fc9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x438f3d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 4], 2
jmp 0x438fcc
mov edx, dword [esi + 4]
test bl, 8
jne 0x438f66
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 0x438fc9
test bl, 4
jne 0x438f95
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 0x438fc9
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 + 4], eax
cmp dword [esi + 0x78], ebx
je 0x439007
cmp dword [esi + 0x8c], ebx
je 0x439007
inc dword [esi + 0x7c]
mov ebx, dword [esp + 0x14]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x1c
jmp 0x438139
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439021
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4b
test edi, edi
jne case.0x436d5f.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
jne 0x43906f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439060
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x439083
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x439077
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0x1e
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x4390e6
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4390d7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x43913c
cmp dword [ebp + 0x88], 0
je 0x439113
cmp edi, dword [ebp + 0x84]
jbe 0x439113
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43912d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
cmp edx, 0xc0
jb 0x439230
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x43916a
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43922d
test dl, 0x10
jne 0x43918c
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 + 4], 2
jmp 0x439230
mov ecx, dword [esi + 4]
test dl, 8
jne 0x4391bc
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 0x43922d
test dl, 4
jne 0x4391f2
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 0x43922d
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 + 4], eax
cmp dword [esi + 0x78], edx
jne 0x43925e
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43924f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x20
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
jne 0x4392c7
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4392b8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x4392dc
nop
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x4392d0
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c0cd
mov dword [esi + 0x128], 0x22
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x43933f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439330
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x439397
cmp dword [ebp + 0x88], 0
je 0x43936e
cmp ecx, dword [ebp + 0x84]
jbe 0x43936e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439388
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [esi + 0x74], 0xc
jne 0x4393b8
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4393eb
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043cb30
add esp, 0x14
test eax, eax
jne 0x439408
mov eax, dword [esi + 4]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 4], edi
cmp edx, 0xc0
jb 0x4394e4
test dl, 0x20
jne 0x439431
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4394e1
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4393b8
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x4393b8
cmp edi, 1
je 0x439408
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
jne 0x4393b8
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439422
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x439458
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4394e1
test dl, 8
jne 0x43947e
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 0x4394e1
test dl, 4
jne 0x4394ad
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 0x4394e1
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 + 4], eax
mov eax, dword [esi + 0x74]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x4394f3.15
jmp dword [eax*4 + 0x43b964]
cmp edx, 0xd
ja 0x43952f
je 0x439511
cmp edx, 0xa
je case.0x4394f3.12
jbe 0x439547
cmp edx, 0xc
jmp 0x439545
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae case.0x4394f3.12
cmp byte [eax], 0xa
jne case.0x4394f3.12
inc eax
mov dword [esi + 4], eax
jmp case.0x4394f3.12
cmp edx, 0x85
je 0x439570
cmp edx, 0x2027
jbe 0x439547
cmp edx, 0x2029
jbe 0x439570
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439561
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp dword [ebp + 0x64], 0
je case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439590
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x180e
ja 0x4395fb
je 0x439625
cmp edx, 0xa0
ja 0x4395f3
je 0x439625
cmp edx, 9
je 0x439625
cmp edx, 0x20
je 0x439625
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x2a
jmp 0x438139
cmp edx, 0x1680
jmp 0x4395c7
cmp edx, 0x205f
ja 0x43961d
je 0x439625
cmp edx, 0x2000
jb case.0x4394f3.12
cmp edx, 0x200a
jbe 0x439625
cmp edx, 0x202f
jmp 0x4395c7
cmp edx, 0x3000
jne case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43963f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x180e
ja 0x439680
je case.0x4394f3.12
cmp edx, 0xa0
ja 0x439678
je case.0x4394f3.12
cmp edx, 9
je case.0x4394f3.12
cmp edx, 0x20
jmp 0x4396b0
cmp edx, 0x1680
jmp 0x4396b0
cmp edx, 0x205f
ja 0x4396aa
je case.0x4394f3.12
cmp edx, 0x2000
jb 0x4396b6
cmp edx, 0x200a
jbe case.0x4394f3.12
cmp edx, 0x202f
jmp 0x4396b0
cmp edx, 0x3000
je case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4396d0
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x85
ja 0x4396fc
je 0x43970b
cmp edx, 0xa
jb case.0x4394f3.12
cmp edx, 0xd
jbe 0x43970b
jmp case.0x4394f3.12
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439725
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x85
ja 0x43974c
je case.0x4394f3.12
cmp edx, 0xa
jb 0x43975b
cmp edx, 0xd
jmp 0x439755
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439775
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x100
jae case.0x4394f3.12
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
je case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4397b7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x100
jae 0x4397db
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
jne case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4397f5
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x100
jae case.0x4394f3.12
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
je case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439837
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x100
jae 0x43985b
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
jne case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439875
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x100
jae case.0x4394f3.12
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4398b7
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
cmp edx, 0x100
jae 0x4398db
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
jne case.0x4394f3.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4398f5
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test edi, edi
jne case.0x436d5f.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
je 0x43a6ac
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x439932
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x439926
cmp dword [esi + 0x74], 0x11
jne 0x43994e
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jbe 0x43994e
cmp byte [eax], 0xa
jne 0x43994e
dec eax
cmp byte [eax], 0xd
jne 0x43994e
mov dword [esi + 4], eax
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x2e
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x4399b1
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4399a2
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x439a07
cmp dword [ebp + 0x88], 0
je 0x4399de
cmp eax, dword [ebp + 0x84]
jbe 0x4399de
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4399f8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
test ebx, ebx
je 0x439a46
cmp ecx, 0xc0
jb 0x439a46
test cl, 0x20
jne 0x439a22
inc eax
jmp 0x439a43
test cl, 0x10
jne 0x439a2c
add eax, 2
jmp 0x439a43
test cl, 8
jne 0x439a36
add eax, 3
jmp 0x439a43
test cl, 4
jne 0x439a40
add eax, 4
jmp 0x439a43
add eax, 5
mov dword [esi + 4], eax
cmp dword [esi + 0x60], 0
je 0x439a75
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439a66
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x24
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x439adb
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439acc
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x439b31
cmp dword [ebp + 0x88], 0
je 0x439b08
cmp edi, dword [ebp + 0x84]
jbe 0x439b08
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439b22
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x439c2d
cmp edx, 0xc0
jb 0x439c2d
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x439b67
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x439c2a
test dl, 0x10
jne 0x439b89
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 + 4], 2
jmp 0x439c2d
mov ecx, dword [esi + 4]
test dl, 8
jne 0x439bb9
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 0x439c2a
test dl, 4
jne 0x439bef
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 0x439c2a
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 + 4], eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp eax, 9
je 0x439c64
cmp eax, 5
je 0x439c64
cmp eax, 8
je 0x439c64
xor eax, eax
jmp 0x439c69
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x439c97
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439c88
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x25
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x439cfd
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439cee
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x439d53
cmp dword [ebp + 0x88], 0
je 0x439d2a
cmp edi, dword [ebp + 0x84]
jbe 0x439d2a
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439d44
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x439e4f
cmp edx, 0xc0
jb 0x439e4f
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x439d89
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x439e4c
test dl, 0x10
jne 0x439dab
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 + 4], 2
jmp 0x439e4f
mov ecx, dword [esi + 4]
test dl, 8
jne 0x439ddb
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 0x439e4c
test dl, 4
jne 0x439e11
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 0x439e4c
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 + 4], eax
mov eax, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
jne 0x439eb0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439ea1
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x26
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x439f16
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439f07
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x439f6c
cmp dword [ebp + 0x88], 0
je 0x439f43
cmp edi, dword [ebp + 0x84]
jbe 0x439f43
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x439f5d
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x43a068
cmp edx, 0xc0
jb 0x43a068
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x439fa2
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43a065
test dl, 0x10
jne 0x439fc4
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 + 4], 2
jmp 0x43a068
mov ecx, dword [esi + 4]
test dl, 8
jne 0x439ff4
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 0x43a065
test dl, 4
jne 0x43a02a
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 0x43a065
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 + 4], eax
mov eax, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
jne 0x43a0c2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a0b3
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x27
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x43a128
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a119
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x43a17e
cmp dword [ebp + 0x88], 0
je 0x43a155
cmp edi, dword [ebp + 0x84]
jbe 0x43a155
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a16f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x43a27a
cmp edx, 0xc0
jb 0x43a27a
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x43a1b4
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43a277
test dl, 0x10
jne 0x43a1d6
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 + 4], 2
jmp 0x43a27a
mov ecx, dword [esi + 4]
test dl, 8
jne 0x43a206
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 0x43a277
test dl, 4
jne 0x43a23c
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 0x43a277
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 + 4], eax
mov eax, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e8]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
jne 0x43a2d4
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a2c5
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x28
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x43a33a
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a32b
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x43a390
cmp dword [ebp + 0x88], 0
je 0x43a367
cmp edi, dword [ebp + 0x84]
jbe 0x43a367
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a381
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x43a48c
cmp edx, 0xc0
jb 0x43a48c
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x43a3c6
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43a489
test dl, 0x10
jne 0x43a3e8
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 + 4], 2
jmp 0x43a48c
mov ecx, dword [esi + 4]
test dl, 8
jne 0x43a418
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 0x43a489
test dl, 4
jne 0x43a44e
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 0x43a489
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 + 4], eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 2
jne 0x43a4e3
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a4d4
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x43a631
nop
mov eax, dword [esi + 4]
mov ecx, 1
movzx edx, byte [eax]
test ebx, ebx
je 0x43a5f4
cmp edx, 0xc0
jb 0x43a5f4
test dl, 0x20
jne 0x43a525
movzx eax, byte [eax + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43a5ec
test dl, 0x10
jne 0x43a54a
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
mov ecx, 3
movzx eax, byte [eax + 2]
jmp 0x43a5ec
test dl, 8
jne 0x43a57b
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
mov ecx, 4
jmp 0x43a5ec
movzx eax, byte [eax + 1]
and eax, 0x3f
test dl, 4
jne 0x43a5b5
mov ecx, dword [esi + 4]
and edx, 3
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
mov ecx, 5
jmp 0x43a5ec
and edx, ecx
mov ecx, dword [esi + 4]
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
mov ecx, 6
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 2
jne 0x43a631
add dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x43a4f0
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x29
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
je 0x43a6ac
test ebx, ebx
je 0x4357c7
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x4357c7
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x43a685
jmp 0x4357c7
test edi, edi
jne case.0x436d5f.49
mov edx, dword [esi + 4]
lea eax, [edx - 1]
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x2c]
jne 0x43a6d5
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a6c6
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
test ebx, ebx
jne 0x43a6e4
mov eax, dword [esi + 4]
movzx edx, byte [eax]
jmp 0x43a7d8
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43a6fc
nop
dec ecx
mov dword [esi + 4], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x43a6f0
mov eax, dword [esi + 4]
movzx edx, byte [eax]
cmp edx, 0xc0
jb 0x43a7d8
test dl, 0x20
jne 0x43a71f
movzx eax, byte [eax + 1]
and edx, 0x1f
jmp 0x43a7d0
test dl, 0x10
jne 0x43a73f
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, byte [eax + 2]
jmp 0x43a7d0
test dl, 8
jne 0x43a76b
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
jmp 0x43a7d0
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 4]
and eax, 0x3f
test dl, 4
jne 0x43a7a0
and edx, 3
shl edx, 6
or eax, edx
movzx edx, byte [ecx + 2]
shl eax, 6
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
jmp 0x43a7d0
and edx, 1
shl edx, 6
or eax, edx
movzx edx, byte [ecx + 2]
shl eax, 6
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 2
jne 0x435acd
dec dword [esi + 4]
jmp 0x43a6d5
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x43a84e
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a83f
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x43a8a8
cmp dword [ebp + 0x88], 0
je 0x43a87f
cmp edi, dword [ebp + 0x84]
jbe 0x43a87f
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43a899
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x43a9a4
cmp edx, 0xc0
jb 0x43a9a4
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x43a8de
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43a9a1
test dl, 0x10
jne 0x43a900
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 + 4], 2
jmp 0x43a9a4
mov ecx, dword [esi + 4]
test dl, 8
jne 0x43a930
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 0x43a9a1
test dl, 4
jne 0x43a966
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 0x43a9a1
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 + 4], eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4b49c8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x43a9dd
cmp eax, 3
je 0x43a9dd
xor eax, eax
jmp 0x43a9e2
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x43aa10
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43aa01
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x3b
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x43aa76
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43aa67
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x43aad0
cmp dword [ebp + 0x88], 0
je 0x43aaa7
cmp edi, dword [ebp + 0x84]
jbe 0x43aaa7
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43aac1
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x43abcc
cmp edx, 0xc0
jb 0x43abcc
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x43ab06
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43abc9
test dl, 0x10
jne 0x43ab28
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 + 4], 2
jmp 0x43abcc
mov ecx, dword [esi + 4]
test dl, 8
jne 0x43ab58
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 0x43abc9
test dl, 4
jne 0x43ab8e
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 0x43abc9
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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 6
je 0x43ac14
cmp edx, 9
je 0x43ac14
cmp edx, 0xa
je 0x43ac14
cmp edx, 0xc
je 0x43ac14
cmp edx, 0xd
je 0x43ac14
xor eax, eax
jmp 0x43ac19
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x43ac47
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43ac38
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x3c
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x43acad
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43ac9e
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x43ad07
cmp dword [ebp + 0x88], 0
je 0x43acde
cmp edi, dword [ebp + 0x84]
jbe 0x43acde
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43acf8
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x43ae03
cmp edx, 0xc0
jb 0x43ae03
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x43ad3d
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43ae00
test dl, 0x10
jne 0x43ad5f
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 + 4], 2
jmp 0x43ae03
mov ecx, dword [esi + 4]
test dl, 8
jne 0x43ad8f
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 0x43ae00
test dl, 4
jne 0x43adc5
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 0x43ae00
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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
cmp dword [eax*4 + 0x4b3870], 6
je 0x43ae50
cmp edx, 9
je 0x43ae50
cmp edx, 0xa
je 0x43ae50
cmp edx, 0xb
je 0x43ae50
cmp edx, 0xc
je 0x43ae50
cmp edx, 0xd
je 0x43ae50
xor eax, eax
jmp 0x43ae55
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x43ae83
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43ae74
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x3d
jmp 0x438139
test edi, edi
jne case.0x436d5f.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x43aee9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43aeda
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x43af43
cmp dword [ebp + 0x88], 0
je 0x43af1a
cmp edi, dword [ebp + 0x84]
jbe 0x43af1a
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x42d627
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43af34
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x43b03f
cmp edx, 0xc0
jb 0x43b03f
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x43af79
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43b03c
test dl, 0x10
jne 0x43af9b
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 + 4], 2
jmp 0x43b03f
mov ecx, dword [esi + 4]
test dl, 8
jne 0x43afcb
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 0x43b03c
test dl, 4
jne 0x43b001
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 0x43b03c
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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4b49c8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b6bc8]
movzx eax, byte [eax*8 + 0x4b38e9]
mov eax, dword [eax*4 + 0x4b3870]
cmp eax, 1
je 0x43b07f
cmp eax, 3
je 0x43b07f
cmp edx, 0x5f
je 0x43b07f
xor eax, eax
jmp 0x43b084
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x43b0b2
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x43b0a3
push eax
call dword [0xf2ff6c]
add esp, 4
test esi, esi
je 0x43b27f
xor edi, edi
jmp 0x436d4f
inc dword [esi + 0x7c]
push 0x12c
call dword [0xf2ff68]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4389a8
mov dword [esi + 0x128], 0x3e
jmp 0x438139
mov ecx, dword [esi + 0x40]
lea eax, [esi + 0xa8]
cmp ecx, eax
je 0x43b0f3
push ecx
call dword [0xf2ff64]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 4], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0xc], eax
jmp 0x42c06f
add eax, 3
mov dword [esi + 8], eax
jmp 0x42c06f
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x438990
mov eax, dword [esi + 0x88]
mov ebx, dword [esp + 0x14]
mov dword [esi + 0x7c], eax
jmp 0x438c1e
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x438d63
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x438fe0
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x439261
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x439a78
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x439c9a
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x439eb3
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x43a0c5
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x43a2d7
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x43aa13
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x43ac4a
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x43ae86
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x43b0b5
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x4395cc
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x43a634
mov dword [esi + 0x128], 0x37
mov eax, dword [esi + 4]
mov dword [edi + 4], eax
mov ecx, dword [esi + 8]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x4b37d0]
movzx eax, byte [ecx + 1]
add edx, eax
add edx, ecx
mov dword [edi + 8], edx
mov eax, dword [esi + 0xc]
mov dword [edi + 0xc], eax
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]
inc eax
mov dword [edi + 0x18], eax
mov dword [edi], esi
mov esi, edi
jmp 0x42bfaf
mov dword [esi + 0x128], 0x10
jmp 0x438139
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffe6
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc20
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1f
pop ebx
add esp, 0x1b0
ret
push dword [esi + 0x128]
push str.jump_error_in_pcre_match:_label__d_non_existent_n
call fcn.004216cf
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x1b0
ret