Function at 0x101109d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x14c
mov eax, dword [0x1017a974]
xor eax, esp
mov dword [esp + 0x148], eax
mov ecx, dword [esp + 0x158]
mov eax, dword [esp + 0x154]
mov edx, dword [esp + 0x164]
push ebp
mov ebp, dword [esp + 0x164]
mov dword [esp + 0x1c], ecx
xor ecx, ecx
push esi
mov esi, dword [esp + 0x158]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebp
mov dword [esp + 0x1c], edx
cmp eax, ecx
jne 0x10110a79
lea eax, [esp + 0x170]
cmp dword [esp + 0x170], ecx
jne 0x10110a56
push 1
push ecx
push ecx
push ecx
push ecx
push ecx
push eax
call fcn.101109d0
add esp, 0x1c
pop esi
pop ebp
mov ecx, dword [esp + 0x148]
xor ecx, esp
call fcn.100d5eaf
add esp, 0x14c
ret
sub eax, esi
cmp eax, ecx
jle 0x1011d595
pop esi
neg eax
pop ebp
mov ecx, dword [esp + 0x148]
xor ecx, esp
call fcn.100d5eaf
add esp, 0x14c
ret
mov eax, dword [ebp]
mov edx, dword [ebp + 0x48]
push ebx
push edi
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x30], edx
cmp eax, dword [ebp + 4]
jae 0x10119fb9
jmp 0x10110a9a
xor ecx, ecx
inc eax
mov dword [ebp], eax
mov eax, dword [esp + 0x178]
cmp eax, dword [ebp + 8]
jae 0x10119fc6
cmp dword [ebp + 0x98], 2
jne 0x10110ad1
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x68]
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], edx
mov dword [esp + 0x24], eax
mov dword [ebp + 0x98], ecx
mov edx, dword [esp + 0x14]
mov cl, byte [edx]
movzx eax, cl
xor ebx, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x34], ebx
mov byte [esp + 0x1f], cl
cmp eax, 0x9b
ja case.0x10110afa.98
movzx eax, byte [eax + 0x1011d6f4]
jmp dword [eax*4 + 0x1011d5ac]
mov edi, dword [esp + 0x10]
cmp dword [edi + 0x6c], ebx
je 0x1011a213
movzx ecx, cl
movzx eax, byte [ecx + 0x10156df8]
movzx ecx, byte [edx + 1]
add ecx, edx
add ecx, eax
mov dword [esp + 0x14], ecx
jmp 0x10110ad1
mov ebp, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x2c], edx
mov edx, dword [ebp + 0xac]
mov dword [esp + 0x34], esi
mov dword [esp + 0x3c], edx
jmp 0x10110b50
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x16c]
mov edx, dword [esp + 0x14]
inc eax
push eax
push ebx
push ebp
push ecx
push edi
add edx, 3
push edx
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 1
je 0x10110be5
cmp eax, 0xfffffc20
jne 0x10110bb1
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx edx, byte [edx + 2]
shl ecx, 8
or ecx, edx
mov edx, dword [esp + 0x14]
add ecx, edx
cmp dword [ebp + 0x7c], ecx
jae fcn.1011d593
cmp byte [edx], 0x71
je 0x10110bbd
cmp byte [ecx], 0x71
jne fcn.1011d593
jmp 0x10110bbd
test eax, eax
jne fcn.1011d593
mov edx, dword [esp + 0x14]
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
shl eax, 8
or eax, ecx
add edx, eax
mov eax, dword [esp + 0x3c]
mov dword [ebp + 0xac], eax
cmp byte [edx], 0x71
mov dword [esp + 0x14], edx
je 0x10110b50
jmp 0x10110bf0
mov edi, dword [ebp + 0x7c]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x28], edi
mov al, byte [edx]
cmp al, 0x7c
je 0x10110c00
cmp al, 0x71
jne case.0x1011d2ee.14
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 0x10110c00
cmp byte [edx], 0x72
mov eax, dword [ebp + 0x8c]
mov esi, dword [ebp + 0x80]
mov dword [esp + 0x14], edx
mov dword [esp + 0x16c], eax
je 0x10110c3a
cmp esi, dword [esp + 0x34]
jne 0x10119cdf
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov dword [esp + 0x3c], ebx
jmp 0x10111795
movzx edi, byte [edx + 1]
movzx ecx, byte [edx + 2]
mov ebp, dword [esp + 0x10]
shl edi, 8
or edi, ecx
cmp byte [edx + 3], 0x70
jne 0x10110d4e
mov ecx, dword [0x101c63d8]
cmp ecx, ebx
je 0x10110d41
mov eax, dword [esp + 0x14]
mov dword [esp + 0x70], 2
movzx edx, byte [eax + 4]
mov dword [esp + 0x74], edx
mov edx, dword [ebp + 0xc]
mov dword [esp + 0x78], edx
mov edx, dword [ebp + 0x74]
mov dword [esp + 0x7c], edx
mov edx, dword [ebp + 0x78]
sub edx, dword [ebp + 0x74]
mov dword [esp + 0x80], edx
mov edx, dword [esp + 0x28]
sub edx, dword [ebp + 0x74]
mov dword [esp + 0x84], edx
mov edx, esi
sub edx, dword [ebp + 0x74]
mov dword [esp + 0x88], edx
movzx edx, byte [eax + 5]
movzx ebx, byte [eax + 6]
shl edx, 8
or edx, ebx
mov dword [esp + 0x98], edx
movzx edx, byte [eax + 7]
movzx eax, byte [eax + 8]
shl edx, 8
or edx, eax
mov eax, dword [esp + 0x16c]
mov dword [esp + 0x9c], edx
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x8c], eax
mov edx, dword [ebp + 0x90]
mov dword [esp + 0x90], edx
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x94], eax
mov edx, dword [ebp + 0xb0]
lea eax, [esp + 0x70]
push eax
mov dword [esp + 0xa4], edx
call ecx
add esp, 4
test eax, eax
jg case.0x1011d2ee.14
jl fcn.1011d593
mov edx, dword [esp + 0x14]
xor ebx, ebx
movzx ecx, byte [0x10156e68]
add edx, ecx
mov dword [esp + 0x14], edx
movzx ecx, byte [edx + 3]
lea eax, [edx + 3]
cmp ecx, 0x89
je 0x10110f8f
cmp ecx, 0x8a
je 0x10110f8f
cmp ecx, 0x87
je 0x10110deb
cmp ecx, 0x88
je 0x10110deb
cmp ecx, 0x8b
jne 0x10110d9d
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
shl eax, 8
or eax, ecx
add edx, eax
mov dword [esp + 0x14], edx
jmp 0x10111135
mov ebx, dword [esp + 0x16c]
mov ecx, dword [esp + 0x28]
mov dword [ebp + 0x98], 1
mov edx, dword [esp + 0x178]
inc edx
push edx
push 0
push ebp
push ebx
push ecx
push eax
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 1
je 0x10119c4e
test eax, eax
je 0x10110de2
cmp eax, 0xfffffc20
jne fcn.1011d593
add dword [esp + 0x14], edi
jmp 0x10111131
movzx eax, byte [edx + 4]
movzx edi, byte [edx + 5]
shl eax, 8
or eax, edi
add eax, eax
cmp eax, dword [esp + 0x16c]
jge 0x10110e0f
mov edi, dword [ebp + 0xc]
cmp dword [edi + eax*4], ebx
jge 0x10110f77
mov dword [esp + 0x2c], ebx
cmp ecx, 0x88
jne 0x10110f4f
mov ebx, dword [ebp + 0x20]
mov edi, dword [ebp + 0x28]
sar eax, 1
xor ecx, ecx
mov dword [esp + 0x44], eax
mov dword [esp + 0x38], ecx
test ebx, ebx
jle 0x10110e53
movzx edx, byte [edi]
movzx eax, byte [edi + 1]
shl edx, 8
or edx, eax
cmp edx, dword [esp + 0x44]
je 0x10110e4f
add edi, dword [ebp + 0x24]
inc ecx
cmp ecx, ebx
jl 0x10110e35
mov dword [esp + 0x38], ecx
cmp ecx, ebx
jge 0x10110f4f
mov ebx, edi
cmp edi, dword [ebp + 0x28]
jbe 0x10110eca
sub ebx, dword [ebp + 0x24]
lea eax, [edi + 2]
lea ecx, [ebx + 2]
jmp 0x10110e70
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10110e90
test dl, dl
je 0x10110e8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10110e90
add eax, 2
add ecx, 2
test dl, dl
jne 0x10110e70
xor eax, eax
jmp 0x10110e95
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x10110eca
movzx eax, byte [ebx]
movzx ecx, byte [ebx + 1]
shl eax, 8
or eax, ecx
add eax, eax
cmp eax, dword [esp + 0x16c]
jge 0x10110ebd
mov edx, dword [ebp + 0xc]
cmp dword [edx + eax*4], 0
jge 0x10110f71
mov dword [esp + 0x2c], 0
cmp ebx, dword [ebp + 0x28]
ja 0x10110e62
mov eax, dword [esp + 0x38]
inc eax
cmp eax, dword [ebp + 0x20]
mov dword [esp + 0x38], eax
jge 0x10110f4f
mov ebx, dword [ebp + 0x24]
lea eax, [edi + 2]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x44]
add edi, ebx
lea ecx, [edi + 2]
jmp 0x10110ef0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10110f10
test dl, dl
je 0x10110f0c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10110f10
add eax, 2
add ecx, 2
test dl, dl
jne 0x10110ef0
xor eax, eax
jmp 0x10110f15
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x10110f4f
movzx eax, byte [edi]
movzx ecx, byte [edi + 1]
shl eax, 8
or eax, ecx
add eax, eax
cmp eax, dword [esp + 0x16c]
jge 0x10110f39
mov edx, dword [ebp + 0xc]
cmp dword [edx + eax*4], 0
jge 0x10110f71
mov eax, dword [esp + 0x38]
inc eax
cmp eax, dword [ebp + 0x20]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x38], eax
jl 0x10110ee2
mov ecx, dword [esp + 0x14]
movzx eax, byte [ecx + 1]
movzx ecx, byte [ecx + 2]
mov edx, dword [esp + 0x14]
shl eax, 8
or eax, ecx
xor ebx, ebx
add edx, eax
mov dword [esp + 0x14], edx
jmp 0x10111127
mov edx, dword [esp + 0x14]
xor ebx, ebx
mov eax, 3
add edx, eax
mov dword [esp + 0x2c], 1
mov dword [esp + 0x14], edx
jmp 0x10111127
cmp dword [ebp + 0xa4], ebx
je 0x10110d85
movzx eax, byte [edx + 4]
movzx edx, byte [edx + 5]
shl eax, 8
or eax, edx
cmp eax, 0xffff
je 0x10111040
mov edx, dword [ebp + 0xa4]
mov edx, dword [edx + 4]
mov dword [esp + 0x44], edx
cmp eax, edx
je 0x10111040
mov dword [esp + 0x2c], ebx
cmp ecx, 0x8a
jne 0x10111110
mov ebx, dword [ebp + 0x28]
xor ecx, ecx
cmp dword [ebp + 0x20], ecx
mov dword [esp + 0x38], ecx
jle 0x10111003
movzx edi, byte [ebx]
movzx edx, byte [ebx + 1]
shl edi, 8
or edx, edi
cmp edx, eax
je 0x10110fff
add ebx, dword [ebp + 0x24]
inc ecx
cmp ecx, dword [ebp + 0x20]
jl 0x10110fe6
mov dword [esp + 0x38], ecx
cmp ecx, dword [ebp + 0x20]
jge 0x10111110
mov edi, ebx
cmp ebx, dword [ebp + 0x28]
jbe 0x1011108b
sub edi, dword [ebp + 0x24]
lea eax, [ebx + 2]
lea ecx, [edi + 2]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10111052
test dl, dl
je 0x1011103c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10111052
add eax, 2
add ecx, 2
test dl, dl
jne 0x10111020
xor eax, eax
jmp 0x10111057
mov dword [esp + 0x2c], 1
mov eax, 3
jmp 0x10111121
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x1011108b
movzx eax, byte [edi]
movzx ecx, byte [edi + 1]
shl eax, 8
or eax, ecx
xor edx, edx
cmp eax, dword [esp + 0x44]
sete dl
mov eax, edx
mov dword [esp + 0x2c], eax
test eax, eax
jne 0x10111109
cmp edi, dword [ebp + 0x28]
ja 0x10111013
test edx, edx
jne 0x10111109
mov eax, dword [esp + 0x38]
inc eax
cmp eax, dword [ebp + 0x20]
mov dword [esp + 0x38], eax
jge 0x10111110
mov edi, dword [ebp + 0x24]
lea eax, [ebx + 2]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x50]
add ebx, edi
lea ecx, [ebx + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x101110d0
test dl, dl
je 0x101110cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x101110d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x101110b0
xor eax, eax
jmp 0x101110d5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x10111110
movzx edx, byte [ebx]
movzx ecx, byte [ebx + 1]
shl edx, 8
or ecx, edx
cmp ecx, dword [esp + 0x44]
sete al
mov dword [esp + 0x2c], eax
test eax, eax
jne 0x10111109
mov eax, dword [esp + 0x38]
inc eax
cmp eax, dword [ebp + 0x20]
mov dword [esp + 0x38], eax
jl 0x101110a7
cmp dword [esp + 0x2c], 0
je 0x10111110
mov eax, 3
jmp 0x10111121
mov ecx, dword [esp + 0x14]
movzx eax, byte [ecx + 1]
movzx ecx, byte [ecx + 2]
shl eax, 8
or eax, ecx
add dword [esp + 0x14], eax
xor ebx, ebx
cmp dword [esp + 0x2c], ebx
jne 0x10119c98
mov edx, dword [esp + 0x14]
cmp byte [edx], 0x71
je 0x10119c98
add dword [esp + 0x14], 3
jmp 0x10110ad1
mov ebx, dword [esp + 0x14]
movzx eax, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl eax, 8
or eax, edx
mov edx, dword [esp + 0x10]
lea ecx, [eax + eax]
mov dword [edx + 0x90], eax
cmp ecx, dword [edx + 0x14]
jl 0x1011117e
add ebx, 3
mov dword [edx + 0x3c], 1
mov dword [esp + 0x14], ebx
jmp 0x10110ad1
mov ebp, dword [edx + 0x10]
mov edi, dword [edx + 0xc]
sub ebp, eax
mov eax, dword [edi + ebp*4]
mov dword [edi + ecx*4], eax
mov eax, esi
sub eax, dword [edx + 0x74]
cmp dword [esp + 0x16c], ecx
mov edx, dword [edx + 0xc]
mov dword [edx + ecx*4 + 4], eax
jg 0x101111ab
add ecx, 2
mov dword [esp + 0x16c], ecx
add ebx, 3
mov dword [esp + 0x14], ebx
jmp 0x10110ad1
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 0xac]
mov dword [esp + 0x3c], eax
mov eax, 1
cmp dword [edi + 0x98], eax
jne 0x101111de
mov dword [esp + 0x2c], eax
mov dword [edi + 0x98], ebx
jmp 0x101111e2
mov dword [esp + 0x2c], ebx
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
lea ecx, [ecx]
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x28]
inc ecx
push ecx
push 0
push edi
push ebp
push edx
lea eax, [ebx + 3]
push eax
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 1
je 0x10111255
cmp eax, 0xfffffc19
je 0x10111255
mov ecx, dword [esp + 0x3c]
mov dword [edi + 0xac], ecx
cmp eax, 0xfffffc1a
je case.0x1011d2ee.14
test eax, eax
je 0x1011123f
cmp eax, 0xfffffc20
jne fcn.1011d593
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add ebx, edx
cmp byte [ebx], 0x71
je 0x101111f0
jmp 0x1011125c
mov ecx, dword [edi + 0x7c]
mov dword [esp + 0x28], ecx
cmp byte [ebx], 0x72
je case.0x1011d2ee.14
cmp dword [esp + 0x2c], 0
jne 0x1011a4ec
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add ebx, edx
cmp byte [ebx], 0x71
je 0x10111270
mov ecx, dword [edi + 0x8c]
add ebx, 3
mov dword [esp + 0x14], ebx
mov dword [esp + 0x16c], ecx
jmp 0x10110ad1
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0xac]
mov eax, 1
mov dword [esp + 0x3c], edx
cmp dword [edi + 0x98], eax
jne 0x101112c4
mov dword [esp + 0x2c], eax
mov dword [edi + 0x98], ebx
jmp 0x101112c8
mov dword [esp + 0x2c], ebx
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x28]
inc eax
push eax
push 0
push edi
push ebp
push ecx
lea edx, [ebx + 3]
push edx
push esi
call fcn.101109d0
mov ecx, dword [esp + 0x58]
add esp, 0x1c
mov dword [edi + 0xac], ecx
cmp eax, 1
je case.0x1011d2ee.14
cmp eax, 0xfffffc19
je case.0x1011d2ee.14
cmp eax, 0xfffffc1e
je 0x10111350
cmp eax, 0xfffffc1d
je 0x10111350
cmp eax, 0xfffffc1a
je 0x10111350
test eax, eax
je 0x10111334
cmp eax, 0xfffffc20
jne fcn.1011d593
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add ebx, edx
cmp byte [ebx], 0x71
je 0x101112d3
jmp 0x10111364
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
add ebx, ecx
cmp byte [ebx], 0x71
je 0x10111350
cmp dword [esp + 0x2c], 0
jne 0x1011a4ec
add ebx, 3
mov dword [esp + 0x14], ebx
jmp 0x10110ad1
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
mov edi, dword [esp + 0x10]
shl eax, 8
cmp dword [esp + 0x30], ebx
je 0x101113c2
or eax, ecx
jle 0x101113cf
mov ebp, dword [edi + 0x74]
dec esi
dec eax
cmp esi, ebp
jb case.0x1011d2ee.14
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x101113bc
jmp 0x101113b0
mov cl, byte [esi - 1]
dec esi
and cl, 0xc0
cmp cl, 0x80
je 0x101113b0
cmp eax, ebx
jg 0x10111397
jmp 0x101113cf
or eax, ecx
sub esi, eax
cmp esi, dword [edi + 0x74]
jb case.0x1011d2ee.14
cmp esi, dword [edi + 0x84]
jae 0x101113dd
mov dword [edi + 0x84], esi
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov edi, dword [0x101c63d8]
cmp edi, ebx
mov ebx, dword [esp + 0x14]
je 0x101114cd
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xa4], 2
movzx edx, byte [ebx + 1]
mov dword [esp + 0xa8], edx
mov eax, dword [ecx + 0xc]
mov dword [esp + 0xac], eax
mov edx, dword [ecx + 0x74]
mov dword [esp + 0xb0], edx
mov eax, dword [ecx + 0x78]
sub eax, dword [ecx + 0x74]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xb4], eax
sub edx, dword [ecx + 0x74]
mov eax, esi
mov dword [esp + 0xb8], edx
sub eax, dword [ecx + 0x74]
mov dword [esp + 0xbc], eax
movzx edx, byte [ebx + 2]
movzx eax, byte [ebx + 3]
shl edx, 8
or edx, eax
mov dword [esp + 0xcc], edx
movzx edx, byte [ebx + 4]
movzx eax, byte [ebx + 5]
shl edx, 8
or edx, eax
mov eax, dword [esp + 0x16c]
mov dword [esp + 0xd0], edx
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0xc0], eax
mov edx, dword [ecx + 0x90]
mov dword [esp + 0xc4], edx
mov eax, dword [ecx + 0xa8]
mov dword [esp + 0xc8], eax
mov ecx, dword [ecx + 0xb0]
lea edx, [esp + 0xa4]
push edx
mov dword [esp + 0xd8], ecx
call edi
add esp, 4
test eax, eax
jg case.0x1011d2ee.14
jl fcn.1011d593
add ebx, 6
mov dword [esp + 0x14], ebx
jmp 0x10110ad1
movzx edi, byte [edx + 1]
movzx eax, byte [edx + 2]
mov ebp, dword [esp + 0x10]
shl edi, 8
or edi, eax
add edi, dword [ebp + 0x70]
cmp edi, dword [ebp + 0x70]
jne 0x101114f6
xor ecx, ecx
jmp 0x10111503
movzx ecx, byte [edi + 3]
movzx eax, byte [edi + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp + 0xa4]
cmp eax, ebx
je 0x10111524
lea ecx, [ecx]
cmp ecx, dword [eax + 4]
jne 0x1011151e
cmp esi, dword [eax + 0x10]
je 0x1011a459
mov eax, dword [eax]
cmp eax, ebx
jne 0x10111510
mov dword [esp + 0x58], ecx
mov dword [esp + 0x64], esi
mov ecx, dword [ebp + 0xa4]
mov dword [esp + 0x54], ecx
lea eax, [esp + 0x54]
mov dword [ebp + 0xa4], eax
mov ecx, dword [ebp + 0x10]
add edx, 3
cmp ecx, 0x1e
mov dword [esp + 0x14], edx
mov dword [esp + 0x60], ecx
jg 0x10111560
lea eax, [esp + 0xd8]
mov dword [esp + 0x5c], eax
jmp 0x1011157e
add ecx, ecx
add ecx, ecx
push ecx
call dword [0x1017d080]
add esp, 4
mov dword [esp + 0x5c], eax
test eax, eax
je 0x1011a463
mov ecx, dword [esp + 0x60]
lea edx, [ecx*4]
mov ecx, dword [ebp + 0xc]
push edx
push ecx
push eax
call fcn.100d6800
add esp, 0xc
cmp byte [edi], 0x82
sbb eax, eax
inc eax
mov dword [esp + 0x2c], eax
lea ecx, [ecx]
test eax, eax
je 0x101115ae
mov dword [ebp + 0x98], 2
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x16c]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
movzx eax, byte [edi]
push ebp
push ecx
movzx ecx, byte [eax + 0x10156df8]
push edx
add ecx, edi
push ecx
push esi
call fcn.101109d0
mov edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x78]
mov ebx, eax
lea eax, [edx*4]
mov edx, dword [ebp + 0xc]
push eax
push ecx
push edx
call fcn.100d6800
mov eax, dword [esp + 0x7c]
add esp, 0x28
mov dword [ebp + 0xa4], eax
cmp ebx, 1
je 0x10111656
cmp ebx, 0xfffffc19
je 0x10111656
test ebx, ebx
je 0x1011162b
cmp ebx, 0xfffffc20
je 0x1011162b
cmp ebx, 0xfffffc1a
jne 0x1011a46d
lea ecx, [esp + 0x54]
mov dword [ebp + 0xa4], ecx
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
add edi, edx
cmp byte [edi], 0x71
jne 0x1011a48d
mov eax, dword [esp + 0x2c]
jmp 0x101115a0
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0xd8]
cmp eax, ecx
je 0x1011166f
push eax
call dword [0x1017d084]
add esp, 4
mov edx, dword [ebp + 0x7c]
mov esi, dword [ebp + 0x80]
mov dword [esp + 0x28], edx
jmp 0x10110ad1
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
shl eax, 8
or eax, ecx
add edx, eax
cmp byte [edx], 0x71
je case.0x10110afa.113
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
inc edx
push edx
mov edx, dword [esp + 0x170]
push eax
mov eax, dword [esp + 0x30]
push ecx
push edx
push eax
inc edi
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
shl ecx, 8
or ecx, edx
add edi, ecx
cmp byte [edi], 0x71
je 0x101116d5
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
lea edi, [edx + 1]
mov eax, edi
lea ebx, [ebx]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
cmp byte [eax], 0x71
je 0x10111700
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
inc ecx
push ecx
mov ecx, dword [esp + 0x14]
push edx
mov edx, dword [esp + 0x174]
push ecx
mov ecx, dword [esp + 0x34]
push edx
push ecx
add eax, 3
push eax
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov dword [esp + 0x14], edi
jmp 0x10110ad1
lea eax, [edx + 1]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
cmp byte [eax], 0x71
je 0x10111755
add eax, 3
mov dword [esp + 0x14], eax
jmp 0x10110ad1
mov al, byte [edx + 1]
inc edx
mov dword [esp + 0x14], edx
mov byte [esp + 0x1f], al
mov dword [esp + 0x3c], 1
cmp al, 0x80
je 0x10111795
cmp al, 0x85
jne 0x10111961
mov ebp, dword [esp + 0x14]
movzx ecx, byte [ebp + 3]
movzx edx, byte [ebp + 4]
mov edi, dword [esp + 0x10]
shl ecx, 8
or ecx, edx
lea edx, [ecx + ecx]
cmp edx, dword [edi + 0x14]
mov dword [esp + 0x38], ecx
jge 0x1011194d
mov eax, dword [edi + 0xc]
mov ebx, dword [eax + edx*4]
mov edx, dword [eax + edx*4 + 4]
sub ebp, dword [edi + 0x70]
mov dword [esp + 0x48], edx
mov edx, dword [edi + 0x10]
sub edx, ecx
mov eax, dword [eax + edx*4]
mov ecx, dword [edi + 0x90]
mov dword [esp + 0x50], ebx
mov ebx, dword [esp + 0x16c]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x20], eax
mov dword [esp + 0x34], ecx
mov eax, dword [edi + 0x10]
sub eax, dword [esp + 0x38]
mov ecx, dword [edi + 0xc]
mov edx, esi
sub edx, dword [edi + 0x74]
cmp byte [esp + 0x1f], 0x82
mov dword [ecx + eax*4], edx
jb 0x10111817
mov dword [edi + 0x98], 2
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
inc edx
push edx
push eax
mov eax, dword [esp + 0x1c]
movzx edx, byte [eax]
push edi
push ebx
push ecx
movzx ecx, byte [edx + 0x10156df8]
add ecx, eax
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 0xfffffc1b
jne 0x10111880
mov eax, dword [edi + 0x70]
mov ebx, dword [edi + 0x8c]
mov edx, dword [edi + 0x90]
mov esi, dword [edi + 0x80]
add eax, ebp
mov dword [esp + 0x16c], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x2c], 1
jmp 0x101117f4
cmp eax, 0xfffffc20
jne 0x101118b7
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx edx, byte [edx + 2]
shl ecx, 8
or ecx, edx
mov edx, dword [esp + 0x14]
add ecx, edx
cmp dword [edi + 0x7c], ecx
jae fcn.1011d593
cmp byte [edx], 0x71
je 0x101118c3
cmp byte [ecx], 0x71
jne fcn.1011d593
jmp 0x101118c3
test eax, eax
jne fcn.1011d593
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x34]
mov dword [edi + 0x90], eax
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
mov dword [esp + 0x14], edx
je 0x101117f4
cmp dword [esp + 0x2c], 0
jne 0x1011191b
mov ebx, dword [edi + 0xc]
mov ecx, dword [esp + 0x38]
mov ebp, dword [esp + 0x50]
lea eax, [ecx + ecx]
mov dword [ebx + eax*4], ebp
mov ebx, dword [edi + 0xc]
mov ebp, dword [esp + 0x48]
mov dword [ebx + eax*4 + 4], ebp
mov eax, dword [edi + 0x10]
sub eax, ecx
mov ecx, dword [edi + 0xc]
mov edi, dword [esp + 0x20]
mov dword [ecx + eax*4], edi
cmp dword [esp + 0x3c], 0
jne 0x1011192d
cmp dword [esp + 0x2c], 0
je case.0x1011d2ee.14
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x3c], 0
xor ebx, ebx
jmp 0x10111969
mov cl, byte [esp + 0x1f]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x3c], 0
xor ebx, ebx
jmp 0x10111969
mov edi, dword [esp + 0x10]
mov cl, byte [esp + 0x1f]
mov ebp, dword [esp + 0x10]
mov eax, edx
sub eax, dword [edi + 0x70]
mov edi, dword [esp + 0x14]
mov dword [esp + 0x2c], ebx
mov ebx, dword [esp + 0x16c]
mov dword [esp + 0x44], eax
jmp 0x10111990
mov cl, byte [esp + 0x1f]
jmp 0x10111990
cmp cl, 0x82
jb 0x1011199f
mov dword [ebp + 0x98], 2
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
inc edx
push edx
movzx edx, byte [edi]
push eax
movzx eax, byte [edx + 0x10156df8]
push ebp
push ebx
push ecx
add eax, edi
push eax
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 0xfffffc1b
jne 0x101119f5
mov ebx, dword [ebp + 0x8c]
mov edi, dword [ebp + 0x70]
mov esi, dword [ebp + 0x80]
add edi, dword [esp + 0x44]
mov dword [esp + 0x16c], ebx
mov dword [esp + 0x2c], 1
jmp 0x10111987
cmp eax, 0xfffffc20
jne 0x10111a1e
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
shl ecx, 8
or ecx, edx
add ecx, edi
cmp dword [ebp + 0x7c], ecx
jae fcn.1011d593
cmp byte [edi], 0x71
je 0x10111a26
cmp byte [ecx], 0x71
jmp 0x10111a20
test eax, eax
jne fcn.1011d593
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x71
je 0x10111987
cmp dword [esp + 0x2c], 0
jne 0x10111a50
cmp dword [esp + 0x3c], 0
je case.0x1011d2ee.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
shl eax, 8
or eax, ecx
mov edi, edx
sub edi, eax
mov al, byte [edi]
mov dword [esp + 0x2c], edi
cmp al, 0x82
jae 0x10111a7b
cmp al, 0x7b
jne 0x10111a88
mov ecx, dword [esp + 0x24]
mov ebx, dword [ecx + 4]
mov ecx, dword [ecx]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x34], ebx
cmp al, 0x77
jb 0x10111a98
cmp al, 0x7a
jbe 0x1011a4b7
cmp al, 0x7c
je 0x1011a4b7
cmp al, 0x7f
je 0x10111ab4
cmp al, 0x84
je 0x10111ab4
cmp al, 0x80
je 0x10111ab4
cmp al, 0x85
jne 0x10111b5f
mov eax, dword [esp + 0x2c]
movzx ebx, byte [eax + 3]
movzx edx, byte [eax + 4]
mov ebp, dword [esp + 0x10]
shl ebx, 8
or ebx, edx
cmp dword [ebp + 0xa4], 0
lea edx, [ebx + ebx]
je 0x10111ae4
mov eax, dword [ebp + 0xa4]
cmp dword [eax + 4], ebx
je 0x1011a4df
mov dword [ebp + 0x90], ebx
cmp edx, dword [ebp + 0x14]
jl 0x10111b00
mov edi, dword [esp + 0x2c]
mov dword [ebp + 0x3c], 1
mov edx, dword [esp + 0x14]
jmp 0x10111b63
mov ecx, dword [esp + 0x16c]
cmp edx, ecx
jle 0x10111b2d
mov eax, dword [ebp + 0xc]
lea edi, [eax + ecx*4]
lea eax, [eax + edx*4]
cmp edi, eax
jae 0x10111b2d
mov ecx, eax
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x16c]
mov edi, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
sub edi, ebx
mov edi, dword [eax + edi*4]
mov dword [eax + edx*4], edi
mov edi, dword [ebp + 0xc]
mov eax, esi
sub eax, dword [ebp + 0x74]
cmp ecx, edx
mov dword [edi + edx*4 + 4], eax
mov edi, dword [esp + 0x2c]
jg 0x10111afa
add edx, 2
mov dword [esp + 0x16c], edx
mov edx, dword [esp + 0x14]
jmp 0x10111b63
mov ebp, dword [esp + 0x10]
cmp byte [edx], 0x72
je 0x10111b72
cmp esi, dword [esp + 0x34]
jne 0x10119f02
cmp byte [edi], 0x7b
je 0x1011a577
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x40], ebx
je 0x10111b9f
cmp esi, dword [eax + 0x74]
je case.0x1011d2ee.14
jmp 0x10111b9f
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x74]
jne case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x40], ebx
je 0x10111bc4
cmp esi, dword [eax + 0x74]
je case.0x1011d2ee.14
mov edx, dword [eax + 0x74]
cmp esi, edx
je 0x10111c3c
cmp esi, dword [eax + 0x78]
je case.0x1011d2ee.14
mov ecx, dword [eax + 0x18]
cmp ecx, ebx
je 0x10111c0b
cmp esi, edx
jbe case.0x1011d2ee.14
mov edx, dword [esp + 0x30]
push edx
lea edx, [eax + 0x1c]
mov eax, dword [eax + 0x74]
push edx
push eax
push ecx
push esi
call fcn.101270e0
add esp, 0x14
test eax, eax
je case.0x1011d2ee.14
inc dword [esp + 0x14]
jmp 0x10110ad1
mov edx, dword [eax + 0x1c]
mov ecx, dword [eax + 0x74]
add ecx, edx
cmp esi, ecx
jb case.0x1011d2ee.14
mov ecx, esi
sub ecx, edx
mov dl, byte [ecx]
cmp dl, byte [eax + 0x2c]
jne case.0x1011d2ee.14
cmp dword [eax + 0x1c], 1
je 0x10111c3c
mov cl, byte [ecx + 1]
cmp cl, byte [eax + 0x2d]
jne case.0x1011d2ee.14
inc dword [esp + 0x14]
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x94]
add ecx, dword [eax + 0x74]
cmp esi, ecx
jne case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
inc edx
mov dword [esp + 0x28], esi
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov edi, dword [esp + 0x10]
cmp esi, dword [edi + 0x78]
jae 0x10111ce4
mov eax, dword [edi + 0x18]
cmp eax, ebx
je 0x10111caf
mov edx, dword [esp + 0x30]
push edx
mov edx, dword [edi + 0x78]
lea ecx, [edi + 0x1c]
push ecx
push edx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
je 0x1011a5bc
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov eax, dword [edi + 0x78]
sub eax, dword [edi + 0x1c]
cmp esi, eax
ja 0x1011a5bc
mov cl, byte [esi]
cmp cl, byte [edi + 0x2c]
jne 0x1011a5bc
cmp dword [edi + 0x1c], 1
je 0x10111d11
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
jne 0x1011a5be
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
cmp dword [edi + 0x44], ebx
jne case.0x1011d2ee.14
cmp dword [edi + 0x88], ebx
je 0x10111d11
cmp esi, dword [edi + 0x84]
jbe 0x10111d11
mov eax, 1
mov dword [edi + 0x60], eax
cmp dword [edi + 0x88], eax
jg 0x1011d431
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov edi, dword [esp + 0x10]
cmp dword [edi + 0x44], ebx
jne case.0x1011d2ee.14
cmp dword [edi + 0x54], ebx
je 0x10111d42
jmp 0x10111d33
mov edi, dword [esp + 0x10]
cmp esi, dword [edi + 0x78]
jb case.0x1011d2ee.14
jmp 0x10111ced
mov edi, dword [esp + 0x10]
cmp esi, dword [edi + 0x78]
jae 0x10111ced
mov eax, dword [edi + 0x18]
lea ebp, [edi + 0x1c]
cmp eax, ebx
je 0x10111d75
mov ecx, dword [esp + 0x30]
mov edx, dword [edi + 0x78]
push ecx
push ebp
push edx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
je 0x1011a607
mov edx, dword [esp + 0x14]
xor ebx, ebx
jmp 0x10111da0
mov eax, dword [edi + 0x78]
sub eax, dword [ebp]
cmp esi, eax
ja 0x1011a607
mov cl, byte [esi]
cmp cl, byte [edi + 0x2c]
jne 0x1011a607
cmp dword [ebp], 1
je 0x10111da0
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
jne 0x1011a609
mov ecx, dword [edi + 0x78]
sub ecx, dword [ebp]
cmp esi, ecx
jne 0x1011a609
jmp 0x10111ced
cmp dword [esp + 0x30], ebx
je 0x1011208c
mov ebx, dword [esp + 0x10]
cmp esi, dword [ebx + 0x74]
je 0x10111f13
mov dl, byte [esi - 1]
lea eax, [esi - 1]
and dl, 0xc0
cmp dl, 0x80
jne 0x10111de4
mov cl, byte [eax - 1]
dec eax
and cl, 0xc0
cmp cl, 0x80
je 0x10111dd8
cmp eax, dword [ebx + 0x84]
jae 0x10111df2
mov dword [ebx + 0x84], eax
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x10111e9f
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x20
jne 0x10111e1a
and ecx, 0x1f
shl ecx, 6
or ecx, edx
jmp 0x10111e9f
test cl, 0x10
jne 0x10111e2b
movzx eax, byte [eax + 2]
and ecx, 0xf
shl ecx, 6
jmp 0x10111e93
test cl, 8
jne 0x10111e42
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
jmp 0x10111e8d
test cl, 4
jne 0x10111e65
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
jmp 0x10111e8d
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 3]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or edx, ecx
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, edx
cmp dword [ebx + 0x50], 0
je 0x10111efb
cmp ecx, 0x5f
jne 0x10111eaf
lea edi, [ecx - 0x5e]
jmp 0x10111f15
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x10111ed1
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d59]
mov eax, dword [ecx*4 + 0x10156f90]
cmp eax, 1
je 0x10111ef4
cmp eax, 3
jne 0x10111f13
mov edi, 1
jmp 0x10111f15
cmp ecx, 0x100
jae 0x10111f13
mov edx, dword [ebx + 0x38]
test byte [ecx + edx], 0x10
je 0x10111f13
mov edi, 1
jmp 0x10111f15
xor edi, edi
cmp esi, dword [ebx + 0x78]
jb 0x10111f46
cmp dword [ebx + 0x88], 0
je 0x10111f3f
cmp esi, dword [ebx + 0x84]
jbe 0x10111f3f
mov eax, 1
mov dword [ebx + 0x60], eax
cmp dword [ebx + 0x88], eax
jg 0x1011d431
xor eax, eax
jmp 0x101121be
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x1011200a
test cl, 0x20
jne 0x10111f6e
movzx eax, byte [esi + 1]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
jmp 0x1011200a
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 0x10
jne 0x10111f95
and ecx, 0xf
shl ecx, 6
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
jmp 0x1011200a
test cl, 8
jne 0x10111fa8
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
jmp 0x10111ffa
and eax, 0x3f
test cl, 4
jne 0x10111fd9
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
jmp 0x1011200a
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp dword [ebx + 0x50], 0
je 0x10112069
cmp ecx, 0x5f
jne 0x1011201d
lea eax, [ecx - 0x5e]
jmp 0x101121be
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x1011203f
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d59]
mov eax, dword [ecx*4 + 0x10156f90]
cmp eax, 1
je 0x10112082
cmp eax, 3
je 0x10112082
xor eax, eax
jmp 0x101121be
cmp ecx, 0x100
jae 0x10112146
mov edx, dword [ebx + 0x38]
test byte [ecx + edx], 0x10
je 0x10112146
mov eax, 1
jmp 0x101121be
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x74]
jne 0x1011209c
xor edi, edi
jmp 0x1011211c
cmp esi, dword [ecx + 0x84]
ja 0x101120ad
lea eax, [esi - 1]
mov dword [ecx + 0x84], eax
cmp dword [ecx + 0x50], ebx
je 0x1011210b
movzx edi, byte [esi - 1]
cmp edi, 0x5f
jne 0x101120c2
mov edi, 1
jmp 0x1011211c
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and edi, 0x8000007f
jns 0x101120e4
dec edi
or edi, 0xffffff80
inc edi
add edx, edi
movzx eax, word [edx*2 + 0x1014a2f8]
movzx edx, byte [eax*8 + 0x10146d59]
mov eax, dword [edx*4 + 0x10156f90]
cmp eax, 1
je 0x101120bb
cmp eax, 3
je 0x101120bb
xor edi, edi
jmp 0x1011211c
movzx edx, byte [esi - 1]
mov eax, dword [ecx + 0x38]
movzx edi, byte [edx + eax]
shr edi, 4
and edi, 1
cmp esi, dword [ecx + 0x78]
jb 0x1011214a
cmp dword [ecx + 0x88], 0
je 0x10112146
cmp esi, dword [ecx + 0x84]
jbe 0x10112146
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jg 0x1011d431
xor eax, eax
jmp 0x101121be
cmp dword [ecx + 0x50], 0
je 0x101121ae
movzx ecx, byte [esi]
cmp ecx, 0x5f
jne 0x1011215d
lea eax, [ecx - 0x5e]
jmp 0x101121be
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
shl eax, 7
and ecx, 0x8000007f
jns 0x1011217f
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx ecx, word [eax*2 + 0x1014a2f8]
movzx edx, byte [ecx*8 + 0x10146d59]
mov eax, dword [edx*4 + 0x10156f90]
cmp eax, 1
je 0x10112082
cmp eax, 3
je 0x10112082
xor eax, eax
jmp 0x101121be
mov eax, dword [ecx + 0x38]
movzx ecx, byte [esi]
movzx eax, byte [ecx + eax]
shr eax, 4
and eax, 1
mov ecx, dword [esp + 0x14]
mov dl, byte [ecx]
inc ecx
mov dword [esp + 0x14], ecx
cmp dl, 5
jne 0x101121d9
xor ecx, ecx
cmp eax, edi
sete cl
mov eax, ecx
jmp 0x101121e2
xor edx, edx
cmp eax, edi
setne dl
mov eax, edx
test eax, eax
je 0x10110ad1
xor eax, eax
jmp fcn.1011d593
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 0x18]
cmp eax, ebx
je 0x10112228
cmp esi, dword [edi + 0x78]
jae 0x1011224f
mov ecx, dword [esp + 0x30]
push ecx
mov ecx, dword [edi + 0x78]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
jne case.0x1011d2ee.14
mov edx, dword [esp + 0x14]
xor ebx, ebx
jmp 0x1011224f
mov eax, dword [edi + 0x78]
sub eax, dword [edi + 0x1c]
cmp esi, eax
ja 0x1011224f
mov cl, byte [esi]
cmp cl, byte [edi + 0x2c]
jne 0x1011224f
cmp dword [edi + 0x1c], 1
je case.0x1011d2ee.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
je case.0x1011d2ee.14
cmp dword [edi + 0x88], ebx
je 0x1011228b
lea ecx, [esi + 1]
cmp ecx, dword [edi + 0x78]
jb 0x1011228b
cmp dword [edi + 0x18], ebx
jne 0x1011228b
cmp dword [edi + 0x1c], 2
jne 0x1011228b
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne 0x1011228b
mov eax, 1
mov dword [edi + 0x60], eax
cmp dword [edi + 0x88], eax
jg 0x1011d431
jmp 0x1011228b
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x1011a652
inc esi
cmp dword [esp + 0x30], ebx
je 0x10111d11
cmp esi, eax
jae 0x10111d11
lea esp, [esp]
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x10111d11
inc esi
cmp esi, eax
jb 0x101122b0
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011a6a8
inc esi
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x1011a67d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x101123dc
cmp eax, 0xc0
jb 0x101123dc
movzx edi, byte [esi]
and edi, 0x3f
test al, 0x20
jne 0x10112323
and eax, 0x1f
shl eax, 6
or eax, edi
inc esi
jmp 0x101123dc
test al, 0x10
jne 0x10112343
and eax, 0xf
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 2
jmp 0x101123dc
test al, 8
jne 0x1011236c
and eax, 7
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 3
jmp 0x101123dc
test al, 4
jne 0x101123a1
and eax, 3
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 4
jmp 0x101123dc
and eax, 1
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 4]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 5
cmp eax, 0x100
jae 0x10111d11
mov ecx, dword [ecx + 0x38]
test byte [eax + ecx], 4
jne case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x1011a67d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x101124f5
cmp eax, 0xc0
jb 0x101124f5
movzx edi, byte [esi]
and edi, 0x3f
test al, 0x20
jne 0x1011243c
and eax, 0x1f
shl eax, 6
or eax, edi
inc esi
jmp 0x101124f5
test al, 0x10
jne 0x1011245c
and eax, 0xf
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 2
jmp 0x101124f5
test al, 8
jne 0x10112485
and eax, 7
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 3
jmp 0x101124f5
test al, 4
jne 0x101124ba
and eax, 3
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 4
jmp 0x101124f5
and eax, 1
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 4]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 5
cmp eax, 0xff
ja case.0x1011d2ee.14
mov ecx, dword [ecx + 0x38]
test byte [eax + ecx], 4
je case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x1011a67d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x1011260e
cmp eax, 0xc0
jb 0x1011260e
movzx edi, byte [esi]
and edi, 0x3f
test al, 0x20
jne 0x10112555
and eax, 0x1f
shl eax, 6
or eax, edi
inc esi
jmp 0x1011260e
test al, 0x10
jne 0x10112575
and eax, 0xf
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 2
jmp 0x1011260e
test al, 8
jne 0x1011259e
and eax, 7
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 3
jmp 0x1011260e
test al, 4
jne 0x101125d3
and eax, 3
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 4
jmp 0x1011260e
and eax, 1
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 4]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 5
cmp eax, 0x100
jae 0x10111d11
mov ecx, dword [ecx + 0x38]
test byte [eax + ecx], 1
jne case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x1011a67d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x10112727
cmp eax, 0xc0
jb 0x10112727
movzx edi, byte [esi]
and edi, 0x3f
test al, 0x20
jne 0x1011266e
and eax, 0x1f
shl eax, 6
or eax, edi
inc esi
jmp 0x10112727
test al, 0x10
jne 0x1011268e
and eax, 0xf
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 2
jmp 0x10112727
test al, 8
jne 0x101126b7
and eax, 7
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 3
jmp 0x10112727
test al, 4
jne 0x101126ec
and eax, 3
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 4
jmp 0x10112727
and eax, 1
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 4]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 5
cmp eax, 0xff
ja case.0x1011d2ee.14
mov ecx, dword [ecx + 0x38]
test byte [eax + ecx], 1
je case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x1011a67d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x10112840
cmp eax, 0xc0
jb 0x10112840
movzx edi, byte [esi]
and edi, 0x3f
test al, 0x20
jne 0x10112787
and eax, 0x1f
shl eax, 6
or eax, edi
inc esi
jmp 0x10112840
test al, 0x10
jne 0x101127a7
and eax, 0xf
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 2
jmp 0x10112840
test al, 8
jne 0x101127d0
and eax, 7
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 3
jmp 0x10112840
test al, 4
jne 0x10112805
and eax, 3
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 4
jmp 0x10112840
and eax, 1
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 4]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 5
cmp eax, 0x100
jae 0x10111d11
mov ecx, dword [ecx + 0x38]
test byte [eax + ecx], 0x10
jne case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x1011a67d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x10112959
cmp eax, 0xc0
jb 0x10112959
movzx edi, byte [esi]
and edi, 0x3f
test al, 0x20
jne 0x101128a0
and eax, 0x1f
shl eax, 6
or eax, edi
inc esi
jmp 0x10112959
test al, 0x10
jne 0x101128c0
and eax, 0xf
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 2
jmp 0x10112959
test al, 8
jne 0x101128e9
and eax, 7
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 3
jmp 0x10112959
test al, 4
jne 0x1011291e
and eax, 3
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 4
jmp 0x10112959
and eax, 1
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 4]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 5
cmp eax, 0xff
ja case.0x1011d2ee.14
mov ecx, dword [ecx + 0x38]
test byte [eax + ecx], 0x10
je case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov ecx, dword [esp + 0x10]
mov edi, dword [ecx + 0x78]
cmp esi, edi
jae 0x1011a67d
movzx eax, byte [esi]
mov ebx, 1
add esi, ebx
cmp dword [esp + 0x30], 0
je 0x10112a7b
cmp eax, 0xc0
jb 0x10112a7b
movzx ebp, byte [esi]
and ebp, 0x3f
test al, 0x20
jne 0x101129c3
and eax, 0x1f
shl eax, 6
or eax, ebp
add esi, ebx
jmp 0x10112a7b
test al, 0x10
jne 0x101129e3
and eax, 0xf
shl eax, 6
or eax, ebp
movzx ebp, byte [esi + 1]
shl eax, 6
and ebp, 0x3f
or eax, ebp
add esi, 2
jmp 0x10112a7b
test al, 8
jne 0x10112a0c
and eax, 7
shl eax, 6
or eax, ebp
movzx ebp, byte [esi + 1]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 2]
shl eax, 6
and ebp, 0x3f
or eax, ebp
add esi, 3
jmp 0x10112a7b
test al, 4
jne 0x10112a41
and eax, 3
shl eax, 6
or eax, ebp
movzx ebp, byte [esi + 1]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 2]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 3]
shl eax, 6
and ebp, 0x3f
or eax, ebp
add esi, 4
jmp 0x10112a7b
and eax, ebx
shl eax, 6
or eax, ebp
movzx ebp, byte [esi + 1]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 2]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 3]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 4]
shl eax, 6
and ebp, 0x3f
or eax, ebp
add esi, 5
cmp eax, 0xd
ja 0x10112ad3
je 0x10112a92
cmp eax, 0xa
je 0x10112afa
jbe case.0x1011d2ee.14
cmp eax, 0xc
jmp 0x10112aea
cmp esi, edi
jb 0x10112ac1
cmp dword [ecx + 0x88], 0
je 0x10112afa
cmp esi, dword [ecx + 0x84]
jbe 0x10112afa
mov dword [ecx + 0x60], ebx
cmp dword [ecx + 0x88], ebx
jg 0x1011d431
add edx, ebx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
cmp byte [esi], 0xa
jne 0x10112afa
add esi, ebx
add edx, ebx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
cmp eax, 0x85
je 0x10112af0
cmp eax, 0x2027
jbe case.0x1011d2ee.14
cmp eax, 0x2029
ja case.0x1011d2ee.14
cmp dword [ecx + 0x64], 0
jne case.0x1011d2ee.14
add edx, ebx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011a6a8
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x10112bfc
cmp eax, 0xc0
jb 0x10112bfc
movzx ecx, byte [esi]
and ecx, 0x3f
test al, 0x20
jne 0x10112b43
and eax, 0x1f
shl eax, 6
or eax, ecx
inc esi
jmp 0x10112bfc
test al, 0x10
jne 0x10112b63
and eax, 0xf
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x10112bfc
test al, 8
jne 0x10112b8c
and eax, 7
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x10112bfc
test al, 4
jne 0x10112bc1
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x10112bfc
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp eax, 0x180e
ja 0x10112c2b
je case.0x1011d2ee.14
cmp eax, 0xa0
ja 0x10112c24
je case.0x1011d2ee.14
cmp eax, 9
je case.0x1011d2ee.14
cmp eax, 0x20
jmp 0x10112c5a
cmp eax, 0x1680
jmp 0x10112c5a
cmp eax, 0x205f
ja 0x10112c55
je case.0x1011d2ee.14
cmp eax, 0x2000
jb 0x10111d11
cmp eax, 0x200a
jbe case.0x1011d2ee.14
cmp eax, 0x202f
jmp 0x10112c5a
cmp eax, 0x3000
je case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011a6a8
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x10112d61
cmp eax, 0xc0
jb 0x10112d61
movzx ecx, byte [esi]
and ecx, 0x3f
test al, 0x20
jne 0x10112ca8
and eax, 0x1f
shl eax, 6
or eax, ecx
inc esi
jmp 0x10112d61
test al, 0x10
jne 0x10112cc8
and eax, 0xf
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x10112d61
test al, 8
jne 0x10112cf1
and eax, 7
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x10112d61
test al, 4
jne 0x10112d26
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x10112d61
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp eax, 0x180e
ja 0x10112d90
je 0x10111d11
cmp eax, 0xa0
ja 0x10112d89
je 0x10111d11
cmp eax, 9
je 0x10111d11
cmp eax, 0x20
jmp 0x10112dbf
cmp eax, 0x1680
jmp 0x10112dbf
cmp eax, 0x205f
ja 0x10112dba
je 0x10111d11
cmp eax, 0x2000
jb case.0x1011d2ee.14
cmp eax, 0x200a
jbe 0x10111d11
cmp eax, 0x202f
jmp 0x10112dbf
cmp eax, 0x3000
jne case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011a6a8
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x10112ec6
cmp eax, 0xc0
jb 0x10112ec6
movzx ecx, byte [esi]
and ecx, 0x3f
test al, 0x20
jne 0x10112e0d
and eax, 0x1f
shl eax, 6
or eax, ecx
inc esi
jmp 0x10112ec6
test al, 0x10
jne 0x10112e2d
and eax, 0xf
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x10112ec6
test al, 8
jne 0x10112e56
and eax, 7
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x10112ec6
test al, 4
jne 0x10112e8b
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x10112ec6
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp eax, 0x85
ja 0x10112ee1
je case.0x1011d2ee.14
cmp eax, 0xa
jb 0x10111d11
cmp eax, 0xd
jmp 0x10112ef1
cmp eax, 0x2028
jb 0x10111d11
cmp eax, 0x2029
jbe case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011a6a8
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x10112ff8
cmp eax, 0xc0
jb 0x10112ff8
movzx ecx, byte [esi]
and ecx, 0x3f
test al, 0x20
jne 0x10112f3f
and eax, 0x1f
shl eax, 6
or eax, ecx
inc esi
jmp 0x10112ff8
test al, 0x10
jne 0x10112f5f
and eax, 0xf
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x10112ff8
test al, 8
jne 0x10112f88
and eax, 7
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x10112ff8
test al, 4
jne 0x10112fbd
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x10112ff8
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp eax, 0x85
ja 0x10113013
je 0x10111d11
cmp eax, 0xa
jb case.0x1011d2ee.14
cmp eax, 0xd
jmp 0x10113023
cmp eax, 0x2028
jb case.0x1011d2ee.14
cmp eax, 0x2029
ja case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011a6a8
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x1011313a
cmp ecx, 0xc0
jb 0x1011313a
test cl, 0x20
jne 0x10113073
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x1011313a
test cl, 0x10
jne 0x1011309a
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x1011313a
test cl, 8
jne 0x101130ca
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1011313a
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x10113106
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x1011313a
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
mov edx, ecx
shl eax, 7
and edx, 0x8000007f
jns 0x1011315e
dec edx
or edx, 0xffffff80
inc edx
mov edi, dword [esp + 0x14]
add eax, edx
movzx edx, byte [edi + 1]
movzx eax, word [eax*2 + 0x1014a2f8]
lea eax, [eax*8 + 0x10146d58]
cmp edx, 9
ja case.default.0x10113180
jmp dword [edx*4 + 0x1011d790]
cmp byte [esp + 0x1f], 0xf
je case.0x1011d2ee.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
mov al, byte [eax + 1]
cmp al, 9
je 0x101131b1
cmp al, 5
je 0x101131b1
cmp al, 8
je 0x101131b1
xor eax, eax
jmp 0x101131b6
mov eax, 1
xor ecx, ecx
cmp byte [esp + 0x1f], 0xf
sete cl
cmp eax, ecx
je case.0x1011d2ee.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
movzx edx, byte [eax + 1]
movzx eax, byte [edi + 2]
xor ecx, ecx
cmp eax, dword [edx*4 + 0x10156f90]
setne cl
xor edx, edx
cmp byte [esp + 0x1f], 0x10
sete dl
cmp ecx, edx
je case.0x1011d2ee.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
mov cl, byte [edi + 2]
xor edx, edx
cmp cl, byte [eax + 1]
setne dl
xor eax, eax
cmp byte [esp + 0x1f], 0x10
sete al
cmp edx, eax
je case.0x1011d2ee.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
mov cl, byte [edi + 2]
xor edx, edx
cmp cl, byte [eax]
setne dl
xor eax, eax
cmp byte [esp + 0x1f], 0x10
sete al
cmp edx, eax
je case.0x1011d2ee.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
movzx ecx, byte [eax + 1]
mov eax, dword [ecx*4 + 0x10156f90]
cmp eax, 1
je 0x10113270
cmp eax, 3
je 0x10113270
xor eax, eax
jmp 0x10113275
mov eax, 1
xor edx, edx
cmp byte [esp + 0x1f], 0xf
sete dl
cmp eax, edx
je case.0x1011d2ee.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
movzx eax, byte [eax + 1]
cmp dword [eax*4 + 0x10156f90], 6
je 0x101131b1
cmp ecx, 9
je 0x101131b1
cmp ecx, 0xa
je 0x101131b1
cmp ecx, 0xc
je 0x101131b1
cmp ecx, 0xd
je 0x101131b1
xor eax, eax
jmp 0x101131b6
movzx edx, byte [eax + 1]
cmp dword [edx*4 + 0x10156f90], 6
je 0x101131b1
cmp ecx, 9
je 0x101131b1
cmp ecx, 0xa
je 0x101131b1
cmp ecx, 0xb
jmp 0x101132b1
movzx edx, byte [eax + 1]
mov eax, dword [edx*4 + 0x10156f90]
cmp eax, 1
je 0x101131b1
cmp eax, 3
je 0x101131b1
cmp ecx, 0x5f
jmp 0x101132c3
movzx edx, byte [edi + 2]
mov eax, dword [edx*4 + 0x10146c18]
lea edx, [edx*4 + 0x10146c18]
cmp ecx, eax
jb 0x1011333e
add edx, 4
cmp ecx, eax
je 0x10113355
mov eax, dword [edx]
cmp ecx, eax
jae 0x10113331
cmp byte [esp + 0x1f], 0x10
je case.0x1011d2ee.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
cmp byte [esp + 0x1f], 0x10
jne case.0x1011d2ee.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x10110ad1
mov ecx, dword [esp + 0x10]
mov ebp, dword [ecx + 0x78]
cmp esi, ebp
jae 0x1011a7e9
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], ebx
je 0x10113475
cmp ecx, 0xc0
jb 0x10113475
test cl, 0x20
jne 0x101133ae
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x10113475
test cl, 0x10
jne 0x101133d5
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x10113475
test cl, 8
jne 0x10113405
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10113475
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x10113441
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x10113475
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
shl eax, 7
and ecx, 0x8000007f
jns 0x10113497
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx ecx, word [eax*2 + 0x1014a2f8]
movzx ebx, byte [ecx*8 + 0x10146d5a]
cmp esi, ebp
jae 0x101135f4
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
mov edi, 1
je 0x101135a4
cmp ecx, 0xc0
jb 0x101135a4
test cl, 0x20
jne 0x101134ec
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x101135a2
test cl, 0x10
jne 0x10113516
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x101135a4
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x10113539
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x10113594
and eax, 0x3f
test cl, 4
jne 0x1011356f
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x101135a4
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x101135c6
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d5a]
mov edx, 1
shl edx, cl
test dword [ebx*4 + 0x10157008], edx
je 0x101135f4
add esi, edi
mov ebx, ecx
cmp esi, ebp
jb 0x101134b1
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x1011362a
cmp esi, ebp
jb 0x1011362a
cmp esi, dword [eax + 0x84]
jbe 0x1011362a
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jg 0x1011d431
add dword [esp + 0x14], ecx
jmp 0x10110ad1
mov ecx, 1
add dword [esp + 0x14], ecx
jmp 0x10110ad1
mov edx, dword [esp + 0x14]
movzx ebx, byte [edx + 1]
mov edi, dword [esp + 0x10]
xor eax, eax
cmp cl, 0x6e
movzx ecx, byte [edx + 2]
sete al
shl ebx, 8
or ebx, ecx
add ebx, ebx
add edx, 3
cmp ebx, dword [esp + 0x16c]
mov dword [esp + 0x14], edx
mov dword [esp + 0x3c], eax
jge 0x1011367f
mov eax, dword [edi + 0xc]
mov ecx, dword [eax + ebx*4]
lea eax, [eax + ebx*4]
test ecx, ecx
jl 0x1011367f
mov eax, dword [eax + 4]
sub eax, ecx
jmp 0x10113689
mov eax, dword [edi + 0x4c]
neg eax
sbb eax, eax
neg eax
dec eax
mov dl, byte [edx]
movzx ecx, dl
lea ebp, [ecx - 0x62]
mov dword [esp + 0x2c], eax
cmp ebp, 7
ja case.default.0x101136a5
movzx ebp, byte [ebp + 0x1011d7c0]
jmp dword [ebp*4 + 0x1011d7b8]
inc dword [esp + 0x14]
lea eax, [ecx - 0x62]
movsx ebp, byte [eax + 0x10145c00]
movsx edi, byte [eax + 0x10145bf8]
mov ecx, eax
and ecx, 1
mov dword [esp + 0x34], ecx
test ebp, ebp
jne 0x1011370d
mov ebp, closesocket
jmp 0x1011370d
mov eax, dword [esp + 0x14]
movzx edi, byte [eax + 1]
movzx ebp, byte [eax + 3]
xor ecx, ecx
cmp dl, 0x69
movzx edx, byte [eax + 2]
sete cl
shl edi, 8
shl ebp, 8
or edi, edx
mov dword [esp + 0x34], ecx
movzx ecx, byte [eax + 4]
or ebp, ecx
jne 0x10113706
mov ebp, closesocket
add eax, 5
mov dword [esp + 0x14], eax
cmp dword [esp + 0x2c], 0
je 0x10110ad1
jge 0x10113722
test edi, edi
je 0x10110ad1
cmp edi, 1
mov dword [esp + 0x38], 1
jl 0x10113761
nop
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x10]
push edx
push eax
mov eax, dword [esp + 0x34]
mov ecx, esi
mov edx, ebx
call fcn.101106c0
add esp, 8
test eax, eax
jl 0x1011a6b3
add esi, eax
mov eax, dword [esp + 0x38]
inc eax
cmp eax, edi
mov dword [esp + 0x38], eax
jle 0x10113730
cmp edi, ebp
je 0x10110ad1
cmp dword [esp + 0x34], 0
je 0x1011a6f4
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
mov edx, dword [esp + 0x170]
push eax
mov eax, dword [esp + 0x30]
push ecx
mov ecx, dword [esp + 0x20]
push edx
push eax
push ecx
push esi
mov dword [esp + 0x54], edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov edi, dword [esp + 0x10]
cmp dword [esp + 0x38], ebp
jge case.0x1011d2ee.14
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x2c]
push edx
push edi
mov ecx, esi
mov edx, ebx
call fcn.101106c0
add esp, 8
test eax, eax
jl 0x1011a7a8
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x16c]
inc dword [esp + 0x38]
add esi, eax
mov eax, dword [esp + 0x178]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x1c]
push edi
push edx
push eax
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x101137b2
jmp fcn.1011d593
mov ecx, dword [esp + 0x3c]
push ecx
push edi
mov ecx, esi
mov edx, ebx
call fcn.101106c0
add esp, 8
test eax, eax
jl 0x1011a7a8
add esi, eax
jmp 0x10110ad1
mov cl, byte [edx + 0x21]
lea eax, [edx + 1]
add edx, 0x21
mov dword [esp + 0x3c], eax
movzx eax, cl
lea edi, [eax - 0x62]
mov dword [esp + 0x14], edx
cmp edi, 7
ja case.default.0x1011385b
movzx edi, byte [edi + 0x1011d7d0]
jmp dword [edi*4 + 0x1011d7c8]
movsx ebp, byte [eax + 0x10145b96]
add eax, 0xffffff9e
mov ecx, eax
movsx eax, byte [eax + 0x10145c00]
inc edx
and ecx, 1
mov dword [esp + 0x14], edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x18], eax
cmp eax, ebx
jne 0x101138d9
mov dword [esp + 0x18], closesocket
jmp 0x101138d9
movzx ebp, byte [edx + 1]
xor eax, eax
cmp cl, 0x69
movzx ecx, byte [edx + 2]
sete al
shl ebp, 8
or ebp, ecx
movzx ecx, byte [edx + 4]
mov dword [esp + 0x34], eax
movzx eax, byte [edx + 3]
shl eax, 8
or eax, ecx
mov dword [esp + 0x18], eax
jne 0x101138c7
mov dword [esp + 0x18], closesocket
add edx, 5
mov dword [esp + 0x14], edx
jmp 0x101138d9
mov ebp, 1
mov dword [esp + 0x18], ebp
mov edi, 1
cmp dword [esp + 0x30], ebx
je 0x10113a24
cmp ebp, edi
jl 0x10113a5f
mov edx, dword [esp + 0x10]
mov edx, dword [edx + 0x78]
jmp 0x10113902
xor ebx, ebx
cmp esi, edx
jae 0x1011a7e5
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x101139ed
movzx ecx, byte [esi]
and ecx, 0x3f
test al, 0x20
jne 0x10113931
and eax, 0x1f
shl eax, 6
or eax, ecx
inc esi
jmp 0x101139ed
test al, 0x10
jne 0x10113951
and eax, 0xf
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x101139ed
test al, 8
jne 0x1011397d
and eax, 7
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x101139ed
test al, 4
jne 0x101139b2
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x101139ed
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp eax, 0xff
jbe 0x101139fb
cmp byte [esp + 0x1f], 0x6a
jmp 0x10113a13
mov ecx, eax
and ecx, 7
mov ebx, 1
shl ebx, cl
mov ecx, dword [esp + 0x3c]
shr eax, 3
mov al, byte [eax + ecx]
test al, bl
je case.0x1011d2ee.14
inc edi
cmp edi, ebp
jle 0x10113900
jmp 0x10113a5f
cmp ebp, 1
jl 0x10113a5f
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x78]
cmp esi, edx
jae 0x1011b785
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov ebx, 1
shl ebx, cl
mov ecx, dword [esp + 0x3c]
shr eax, 3
mov al, byte [eax + ecx]
inc esi
test al, bl
je case.0x1011d2ee.14
inc edi
cmp edi, ebp
jle 0x10113a30
mov eax, dword [esp + 0x18]
cmp ebp, eax
je 0x10110ad1
cmp dword [esp + 0x34], 0
je 0x1011a996
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x16c]
inc edx
cmp dword [esp + 0x30], 0
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebx
push edx
je 0x1011a915
mov edi, dword [esp + 0x28]
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
jmp 0x10113ac0
cmp ebp, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x1011a8b8
test al, 0x20
jne 0x1011a7f4
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x1011a8b8
mov ebx, dword [esp + 0x14]
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
lea ecx, [ebx + 3]
add ebx, edx
mov dword [esp + 0x3c], ecx
mov cl, byte [ebx]
movzx eax, cl
lea edx, [eax - 0x62]
mov dword [esp + 0x14], ebx
cmp edx, 7
ja case.default.0x10113b38
movzx edx, byte [edx + 0x1011d7e0]
jmp dword [edx*4 + 0x1011d7d8]
movsx ebp, byte [eax + 0x10145b9e]
movsx edi, byte [eax + 0x10145b96]
add eax, 0xffffff9e
mov ecx, eax
inc ebx
and ecx, 1
mov dword [esp + 0x14], ebx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x18], ebp
test ebp, ebp
jne 0x10113bb6
mov ebp, closesocket
jmp 0x10113bb2
movzx edi, byte [ebx + 1]
movzx ebp, byte [ebx + 3]
movzx edx, byte [ebx + 4]
xor eax, eax
cmp cl, 0x69
movzx ecx, byte [ebx + 2]
sete al
shl edi, 8
shl ebp, 8
or edi, ecx
or ebp, edx
mov dword [esp + 0x18], ebp
mov dword [esp + 0x34], eax
jne 0x10113ba2
mov ebp, closesocket
mov dword [esp + 0x18], ebp
add ebx, 5
mov dword [esp + 0x14], ebx
jmp 0x10113bb6
mov ebp, 1
mov edi, ebp
mov dword [esp + 0x18], ebp
cmp edi, 1
mov dword [esp + 0x38], 1
jl 0x10113cff
jmp 0x10113bd0
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011ac25
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x10113cd3
cmp eax, 0xc0
jb 0x10113cd3
test al, 0x20
jne 0x10113c0f
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x10113cd3
test al, 0x10
jne 0x10113c35
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x10113cd3
test al, 8
jne 0x10113c64
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x10113cd3
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x10113c9f
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x10113cd3
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x3c]
push edx
push ecx
push eax
call fcn.10126a50
add esp, 0xc
test eax, eax
je case.0x1011d2ee.14
mov eax, dword [esp + 0x38]
inc eax
cmp eax, edi
mov dword [esp + 0x38], eax
jle 0x10113bd0
cmp edi, ebp
je 0x10110ad1
cmp dword [esp + 0x34], 0
je 0x1011ad41
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebp
push ecx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x1011acf5
cmp eax, 0xc0
jb 0x1011acf5
test al, 0x20
jne 0x1011ac31
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x1011acf5
cmp dword [esp + 0x30], ebx
je 0x10113e14
movzx ecx, byte [edx + 1]
inc edx
mov eax, 1
mov dword [esp + 0x14], edx
cmp ecx, 0xc0
jb 0x10113ddf
test cl, 0x20
jne 0x10113db9
mov eax, 2
jmp 0x10113ddf
test cl, 0x10
jne 0x10113dc5
mov eax, 3
jmp 0x10113ddf
test cl, 8
jne 0x10113dd1
mov eax, 4
jmp 0x10113ddf
test cl, 4
mov eax, 0
setne al
add eax, 5
mov ecx, dword [esp + 0x10]
mov edi, dword [ecx + 0x78]
sub edi, esi
cmp eax, edi
jg 0x1011af18
cmp eax, ebx
jle 0x10110ad1
mov cl, byte [edx]
mov bl, byte [esi]
inc edx
dec eax
inc esi
mov dword [esp + 0x14], edx
cmp cl, bl
jne case.0x1011d2ee.14
test eax, eax
jg 0x10113df8
jmp 0x10110ad1
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
sub ecx, esi
cmp ecx, 1
jl 0x1011af4c
mov al, byte [esi]
inc esi
cmp byte [edx + 1], al
jne case.0x1011d2ee.14
add edx, 2
mov dword [esp + 0x14], edx
jmp 0x10110ad1
mov edi, dword [esp + 0x10]
cmp esi, dword [edi + 0x78]
jae 0x1011b26c
cmp dword [esp + 0x30], ebx
je 0x101140b3
movzx ecx, byte [edx + 1]
inc edx
mov eax, 1
mov dword [esp + 0x14], edx
cmp ecx, 0xc0
jb 0x10113f54
movzx eax, byte [edx + 1]
and eax, 0x3f
test cl, 0x20
jne 0x10113e8d
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov eax, 2
jmp 0x10113f54
test cl, 0x10
jne 0x10113eb0
and ecx, 0xf
shl ecx, 6
or eax, ecx
movzx ecx, byte [edx + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov eax, 3
jmp 0x10113f54
test cl, 8
jne 0x10113edf
and ecx, 7
shl ecx, 6
or eax, ecx
movzx ecx, byte [edx + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [edx + 3]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov eax, 4
jmp 0x10113f54
test cl, 4
jne 0x10113f17
and ecx, 3
shl ecx, 6
or eax, ecx
movzx ecx, byte [edx + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [edx + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [edx + 4]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov eax, 5
jmp 0x10113f54
and ecx, 1
shl ecx, 6
or eax, ecx
movzx ecx, byte [edx + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [edx + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [edx + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [edx + 5]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov eax, 6
cmp ecx, 0x80
jae 0x10113f79
mov eax, dword [edi + 0x30]
movzx edi, byte [esi]
mov cl, byte [ecx + eax]
cmp cl, byte [edi + eax]
jne case.0x1011d2ee.14
inc edx
mov dword [esp + 0x14], edx
inc esi
jmp 0x10110ad1
movzx ebx, byte [esi]
inc esi
cmp ebx, 0xc0
jb 0x10114061
movzx edx, byte [esi]
and edx, 0x3f
test bl, 0x20
jne 0x10113fa2
and ebx, 0x1f
shl ebx, 6
or ebx, edx
inc esi
jmp 0x10114061
test bl, 0x10
jne 0x10113fc3
and ebx, 0xf
shl ebx, 6
or ebx, edx
movzx edx, byte [esi + 1]
shl ebx, 6
and edx, 0x3f
or ebx, edx
add esi, 2
jmp 0x10114061
test bl, 8
jne 0x10113ff0
and ebx, 7
shl ebx, 6
or ebx, edx
movzx edx, byte [esi + 1]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [esi + 2]
shl ebx, 6
and edx, 0x3f
or ebx, edx
add esi, 3
jmp 0x10114061
test bl, 4
jne 0x10114026
and ebx, 3
shl ebx, 6
or ebx, edx
movzx edx, byte [esi + 1]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [esi + 2]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [esi + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
add esi, 4
jmp 0x10114061
and ebx, 1
shl ebx, 6
or ebx, edx
movzx edx, byte [esi + 1]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [esi + 2]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [esi + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [esi + 4]
shl ebx, 6
and edx, 0x3f
or ebx, edx
add esi, 5
add dword [esp + 0x14], eax
cmp ecx, ebx
je 0x10110ad1
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
mov edx, ecx
shl eax, 7
and edx, 0x8000007f
jns 0x10114091
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x1014a2f8]
mov edx, dword [eax*8 + 0x10146d5c]
add edx, ecx
cmp ebx, edx
je 0x10110ad1
xor eax, eax
jmp fcn.1011d593
mov eax, dword [edi + 0x30]
movzx ecx, byte [edx + 1]
movzx edi, byte [esi]
mov cl, byte [ecx + eax]
cmp cl, byte [edi + eax]
jne case.0x1011d2ee.14
inc esi
add edx, 2
mov dword [esp + 0x14], edx
jmp 0x10110ad1
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
shl eax, 8
or eax, ecx
mov ebp, eax
add edx, 3
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], ebp
mov dword [esp + 0x14], edx
jmp 0x101141bf
mov dword [esp + 0x3c], 1
movzx eax, byte [edx + 1]
movzx edi, byte [edx + 2]
shl eax, 8
xor ebp, ebp
or eax, edi
mov dword [esp + 0x20], ebp
mov dword [esp + 0x18], eax
cmp cl, 0x28
je 0x10114126
mov dword [esp + 0x34], ebx
cmp cl, 0x35
jne 0x1011412e
mov dword [esp + 0x34], 1
add edx, 3
mov dword [esp + 0x14], edx
jmp 0x101141bf
xor ebp, ebp
inc edx
mov dword [esp + 0x3c], 1
mov dword [esp + 0x20], ebp
mov dword [esp + 0x14], edx
jmp 0x101141b7
mov ebp, 1
add edx, ebp
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x14], edx
jmp 0x101141b7
mov eax, 1
xor ebp, ebp
add edx, eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x20], ebp
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
jmp 0x101141bf
cmp cl, 0x2e
sbb edi, edi
movzx eax, cl
and edi, 0xfffffff3
add edi, 0x2e
sub eax, edi
movsx ebp, byte [eax + 0x10145bf8]
mov ecx, eax
movsx eax, byte [eax + 0x10145c00]
inc edx
and ecx, 1
mov dword [esp + 0x14], edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x18], eax
cmp eax, ebx
jne 0x101141bf
mov dword [esp + 0x18], closesocket
mov eax, dword [esp + 0x14]
cmp dword [esp + 0x30], ebx
movzx ebx, byte [eax]
je 0x101145d4
mov edi, 1
mov dword [esp + 0x2c], edi
mov dword [esp + 0x44], eax
cmp ebx, 0xc0
jb 0x101142ad
test bl, 0x20
jne 0x10114207
movzx edx, byte [eax + 1]
and ebx, 0x1f
and edx, 0x3f
shl ebx, 6
or ebx, edx
mov edi, 2
jmp 0x101142a9
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x10114229
and ebx, 0xf
shl ebx, 6
or ecx, ebx
mov edi, 3
jmp 0x1011429f
and edx, 0x3f
test bl, 8
jne 0x10114249
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 3]
mov edi, 4
jmp 0x1011429f
test bl, 4
jne 0x10114272
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 3]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 4]
mov edi, 5
jmp 0x1011429f
and ebx, edi
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 3]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 4]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [eax + 5]
mov edi, 6
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov ebx, ecx
mov dword [esp + 0x2c], edi
add eax, edi
cmp edi, 1
mov dword [esp + 0x14], eax
jle 0x101145d9
cmp byte [esp + 0x1f], 0x2e
jb 0x10114317
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
mov ecx, ebx
shl eax, 7
and ecx, 0x8000007f
jns 0x101142e7
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx edx, word [eax*2 + 0x1014a2f8]
mov eax, dword [edx*8 + 0x10146d5c]
add eax, ebx
cmp eax, ebx
je 0x10114317
lea ecx, [esp + 0x150]
push ecx
push eax
call fcn.101269f0
add esp, 8
mov ebx, eax
mov dword [esp + 0x20], eax
jmp 0x1011431d
xor ebx, ebx
mov dword [esp + 0x20], ebx
cmp ebp, 1
mov dword [esp + 0x38], 1
jl 0x1011441f
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x78]
mov dword [esp + 0x50], eax
sub eax, edi
mov dword [esp + 0x48], eax
jmp 0x10114345
mov eax, dword [esp + 0x48]
cmp esi, eax
ja 0x10114396
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x44]
mov edi, esi
cmp eax, 4
jb 0x1011436c
mov edx, dword [edi]
cmp edx, dword [ecx]
jne 0x10114396
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x10114358
test eax, eax
je 0x10114390
mov dl, byte [ecx]
cmp dl, byte [edi]
jne 0x10114396
cmp eax, 1
jbe 0x10114390
mov dl, byte [ecx + 1]
cmp dl, byte [edi + 1]
jne 0x10114396
cmp eax, 2
jbe 0x10114390
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x10114396
add esi, dword [esp + 0x2c]
jmp 0x1011440a
test ebx, ebx
jle 0x1011af77
mov ecx, dword [esp + 0x50]
sub ecx, ebx
cmp esi, ecx
ja 0x1011af77
mov eax, ebx
lea ecx, [esp + 0x150]
mov edi, esi
cmp ebx, 4
jb 0x101143d8
lea esp, [esp]
mov edx, dword [edi]
cmp edx, dword [ecx]
jne 0x1011af77
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x101143c0
test eax, eax
je 0x10114408
mov dl, byte [ecx]
cmp dl, byte [edi]
jne 0x1011af77
cmp eax, 1
jbe 0x10114408
mov dl, byte [ecx + 1]
cmp dl, byte [edi + 1]
jne 0x1011af77
cmp eax, 2
jbe 0x10114408
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x1011af77
add esi, ebx
mov eax, dword [esp + 0x38]
inc eax
cmp eax, ebp
mov dword [esp + 0x38], eax
jle 0x10114341
mov edi, dword [esp + 0x2c]
cmp ebp, dword [esp + 0x18]
je 0x10110ad1
cmp dword [esp + 0x34], 0
jne 0x1011afb0
cmp ebp, dword [esp + 0x18]
mov dword [esp + 0x34], esi
jge 0x10114545
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x78]
mov dword [esp + 0x50], eax
sub eax, edi
mov dword [esp + 0x48], eax
jmp 0x10114459
mov eax, dword [esp + 0x48]
cmp esi, eax
ja 0x101144ae
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x44]
mov edi, esi
cmp eax, 4
jb 0x10114484
lea esp, [esp]
mov edx, dword [edi]
cmp edx, dword [ecx]
jne 0x101144ae
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x10114470
test eax, eax
je 0x101144a8
mov dl, byte [ecx]
cmp dl, byte [edi]
jne 0x101144ae
cmp eax, 1
jbe 0x101144a8
mov dl, byte [ecx + 1]
cmp dl, byte [edi + 1]
jne 0x101144ae
cmp eax, 2
jbe 0x101144a8
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x101144ae
add esi, dword [esp + 0x2c]
jmp 0x1011450a
test ebx, ebx
jle 0x10114517
mov ecx, dword [esp + 0x50]
sub ecx, ebx
cmp esi, ecx
ja 0x10114517
mov eax, ebx
lea ecx, [esp + 0x150]
mov edi, esi
cmp ebx, 4
jb 0x101144e4
lea esp, [esp]
mov edx, dword [edi]
cmp edx, dword [ecx]
jne 0x10114517
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x101144d0
test eax, eax
je 0x10114508
mov dl, byte [ecx]
cmp dl, byte [edi]
jne 0x10114517
cmp eax, 1
jbe 0x10114508
mov dl, byte [ecx + 1]
cmp dl, byte [edi + 1]
jne 0x10114517
cmp eax, 2
jbe 0x10114508
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x10114517
add esi, ebx
inc ebp
cmp ebp, dword [esp + 0x18]
jl 0x10114455
jmp 0x10114545
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x88], 0
je 0x10114545
cmp esi, dword [ecx + 0x78]
jb 0x10114545
cmp esi, dword [ecx + 0x84]
jbe 0x10114545
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x16c]
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
inc ecx
push ecx
push edx
push eax
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
cmp esi, dword [esp + 0x34]
je case.0x1011d2ee.14
mov cl, byte [esi - 1]
dec esi
and cl, 0xc0
cmp cl, 0x80
jne 0x101145ac
lea esp, [esp]
mov dl, byte [esi - 1]
dec esi
and dl, 0xc0
cmp dl, 0x80
je 0x101145a0
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
push ecx
push edx
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x10114586
jmp fcn.1011d593
inc eax
mov dword [esp + 0x14], eax
cmp byte [esp + 0x1f], 0x2e
jb 0x101146e5
mov edi, dword [esp + 0x10]
mov ecx, dword [edi + 0x34]
movzx edx, byte [ecx + ebx]
mov ecx, 1
cmp ebp, ecx
mov dword [esp + 0x38], edx
jl 0x10114623
mov edx, dword [edi + 0x78]
nop
cmp esi, edx
jae 0x1011b4dc
movzx eax, byte [esi]
cmp ebx, eax
je 0x1011461d
cmp dword [esp + 0x38], eax
jne case.0x1011d2ee.14
mov ebp, dword [esp + 0x20]
inc ecx
inc esi
cmp ecx, ebp
jle 0x10114600
cmp ebp, dword [esp + 0x18]
je 0x10110ad1
cmp dword [esp + 0x34], 0
jne 0x1011b142
cmp ebp, dword [esp + 0x18]
mov dword [esp + 0x34], esi
mov ecx, ebp
jge 0x10114687
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x10114662
movzx eax, byte [esi]
cmp ebx, eax
je 0x10114658
cmp dword [esp + 0x38], eax
jne 0x10114687
inc ecx
inc esi
cmp ecx, dword [esp + 0x18]
jl 0x10114647
jmp 0x10114687
cmp dword [edi + 0x88], 0
je 0x10114687
cmp esi, dword [edi + 0x84]
jbe 0x10114687
mov eax, 1
mov dword [edi + 0x60], eax
cmp dword [edi + 0x88], eax
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
cmp esi, dword [esp + 0x34]
jb 0x101146de
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x16c]
jmp 0x101146b0
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
push edx
push eax
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
dec esi
test eax, eax
jne fcn.1011d593
cmp esi, dword [esp + 0x34]
jae 0x101146b0
xor eax, eax
jmp fcn.1011d593
mov edx, dword [esp + 0x10]
mov eax, 1
cmp ebp, eax
jl 0x1011470e
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x1011d404
movzx edi, byte [esi]
inc esi
cmp ebx, edi
jne case.0x1011d2ee.14
inc eax
cmp eax, ebp
jle 0x101146f5
cmp ebp, dword [esp + 0x18]
je 0x10110ad1
cmp dword [esp + 0x34], 0
jne 0x1011b1dd
cmp ebp, dword [esp + 0x18]
mov edi, esi
mov dword [esp + 0x34], edi
mov eax, ebp
jge 0x1011476e
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x10114749
movzx ebp, byte [esi]
cmp ebx, ebp
jne 0x1011476e
inc eax
inc esi
cmp eax, dword [esp + 0x18]
jl 0x10114734
jmp 0x1011476e
cmp dword [edx + 0x88], 0
je 0x1011476e
cmp esi, dword [edx + 0x84]
jbe 0x1011476e
mov eax, 1
mov dword [edx + 0x60], eax
cmp dword [edx + 0x88], eax
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
cmp esi, edi
jb 0x101147be
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x16c]
lea esp, [esp]
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
push ecx
push edx
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
dec esi
test eax, eax
jne fcn.1011d593
cmp esi, dword [esp + 0x34]
jae 0x10114790
xor eax, eax
jmp fcn.1011d593
mov edi, dword [esp + 0x10]
cmp esi, dword [edi + 0x78]
jae 0x1011b26c
cmp dword [esp + 0x30], ebx
je 0x10114a3c
mov eax, dword [esp + 0x14]
movzx ebx, byte [eax + 1]
inc eax
inc eax
mov dword [esp + 0x14], eax
cmp ebx, 0xc0
jb 0x101148da
test bl, 0x20
jne 0x1011480f
movzx ecx, byte [eax]
and ebx, 0x1f
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
inc eax
jmp 0x101148d6
test bl, 0x10
jne 0x10114836
movzx edx, byte [eax]
movzx ecx, byte [eax + 1]
and ebx, 0xf
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
add eax, 2
jmp 0x101148d6
test bl, 8
jne 0x10114866
movzx edx, byte [eax]
movzx ecx, byte [eax + 1]
and ebx, 7
shl ebx, 6
and edx, 0x3f
or ebx, edx
movzx edx, byte [eax + 2]
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
shl ebx, 6
and edx, 0x3f
or ebx, edx
add eax, 3
jmp 0x101148d6
movzx ecx, byte [eax]
movzx edx, byte [eax + 1]
and ecx, 0x3f
and edx, 0x3f
test bl, 4
jne 0x101148a2
and ebx, 3
shl ebx, 6
or ebx, ecx
movzx ecx, byte [eax + 2]
shl ebx, 6
or ebx, edx
movzx edx, byte [eax + 3]
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
shl ebx, 6
and edx, 0x3f
or ebx, edx
add eax, 4
jmp 0x101148d6
and ebx, 1
shl ebx, 6
or ebx, ecx
movzx ecx, byte [eax + 2]
shl ebx, 6
or ebx, edx
movzx edx, byte [eax + 3]
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
movzx ecx, byte [eax + 4]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
add eax, 5
mov dword [esp + 0x14], eax
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x101149ca
test cl, 0x20
jne 0x10114903
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x101149ca
test cl, 0x10
jne 0x1011492a
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x101149ca
test cl, 8
jne 0x1011495a
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x101149ca
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x10114996
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x101149ca
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
cmp byte [esp + 0x1f], 0x1f
jne 0x101149e0
cmp ebx, ecx
jne 0x10110ad1
xor eax, eax
jmp fcn.1011d593
cmp ebx, 0x7f
jbe 0x10114a1e
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
mov edx, ebx
shl eax, 7
and edx, 0x8000007f
jns 0x10114a09
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x1014a2f8]
mov eax, dword [eax*8 + 0x10146d5c]
add eax, ebx
jmp 0x10114a25
mov edx, dword [edi + 0x34]
movzx eax, byte [edx + ebx]
cmp ebx, ecx
je case.0x1011d2ee.14
cmp eax, ecx
jne 0x10110ad1
xor eax, eax
jmp fcn.1011d593
movzx ecx, byte [esi]
movzx eax, byte [edx + 1]
inc esi
cmp eax, ecx
je case.0x1011d2ee.14
cmp byte [esp + 0x1f], 0x20
jne 0x10114a62
mov edi, dword [edi + 0x34]
movzx eax, byte [edi + eax]
cmp eax, ecx
je case.0x1011d2ee.14
add edx, 2
mov dword [esp + 0x14], edx
jmp 0x10110ad1
movzx eax, byte [edx + 1]
movzx edi, byte [edx + 2]
shl eax, 8
or eax, edi
mov dword [esp + 0x18], eax
mov ebx, eax
add edx, 3
jmp 0x10114b3f
movzx eax, byte [edx + 1]
movzx edi, byte [edx + 2]
shl eax, 8
or eax, edi
xor ebx, ebx
mov dword [esp + 0x18], eax
cmp cl, 0x42
je 0x10114aaa
mov dword [esp + 0x34], ebx
cmp cl, 0x4f
jne 0x10114ab2
mov dword [esp + 0x34], 1
add edx, 3
jmp 0x10114b3f
xor ebx, ebx
mov dword [esp + 0x3c], 1
inc edx
jmp 0x10114b37
mov ebx, 1
mov dword [esp + 0x3c], ebx
add edx, ebx
jmp 0x10114b37
mov eax, 1
xor ebx, ebx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x18], eax
add edx, eax
jmp 0x10114b3f
movzx eax, byte [edx + 1]
movzx edi, byte [edx + 2]
shl eax, 8
or eax, edi
xor ebx, ebx
mov dword [esp + 0x3c], 1
mov dword [esp + 0x18], eax
add edx, 3
jmp 0x10114b3f
cmp cl, 0x48
sbb edi, edi
and edi, 0xfffffff3
add edi, 0x48
movzx eax, cl
sub eax, edi
movsx ebx, byte [eax + 0x10145bf8]
mov edi, eax
movsx eax, byte [eax + 0x10145c00]
and edi, 1
inc edx
mov dword [esp + 0x34], edi
mov dword [esp + 0x18], eax
test eax, eax
jne 0x10114b3f
mov dword [esp + 0x18], closesocket
movzx eax, byte [edx]
inc edx
cmp dword [esp + 0x30], 0
mov dword [esp + 0x2c], eax
mov dword [esp + 0x14], edx
je 0x10114c3a
cmp eax, 0xc0
jb 0x10114c3a
movzx edi, byte [edx]
and edi, 0x3f
test al, 0x20
jne 0x10114b79
and eax, 0x1f
shl eax, 6
or eax, edi
inc edx
jmp 0x10114c32
test al, 0x10
jne 0x10114b99
and eax, 0xf
shl eax, 6
or eax, edi
movzx edi, byte [edx + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
add edx, 2
jmp 0x10114c32
test al, 8
jne 0x10114bc2
and eax, 7
shl eax, 6
or eax, edi
movzx edi, byte [edx + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [edx + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
add edx, 3
jmp 0x10114c32
test al, 4
jne 0x10114bf7
and eax, 3
shl eax, 6
or eax, edi
movzx edi, byte [edx + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [edx + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [edx + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
add edx, 4
jmp 0x10114c32
and eax, 1
shl eax, 6
or eax, edi
movzx edi, byte [edx + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [edx + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [edx + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [edx + 4]
shl eax, 6
and edi, 0x3f
or eax, edi
add edx, 5
mov dword [esp + 0x2c], eax
mov dword [esp + 0x14], edx
cmp cl, 0x48
jb 0x101150b5
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
test edi, edi
je 0x10114c93
cmp eax, 0x7f
jbe 0x10114c93
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x101480f8]
mov eax, dword [esp + 0x2c]
mov edx, eax
shl ecx, 7
and edx, 0x8000007f
jns 0x10114c7a
dec edx
or edx, 0xffffff80
inc edx
mov ebp, dword [esp + 0x10]
add ecx, edx
movzx ecx, word [ecx*2 + 0x1014a2f8]
mov ecx, dword [ecx*8 + 0x10146d5c]
add ecx, eax
jmp 0x10114c9e
mov ebp, dword [esp + 0x10]
mov edx, dword [ebp + 0x34]
movzx ecx, byte [edx + eax]
mov dword [esp + 0x38], ecx
mov edx, 1
test edi, edi
je 0x10114dbd
cmp ebx, edx
jl 0x10114df9
cmp esi, dword [ebp + 0x78]
jae 0x1011b277
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x10114da0
movzx edi, byte [esi]
and edi, 0x3f
test al, 0x20
jne 0x10114ce7
and eax, 0x1f
shl eax, 6
or eax, edi
inc esi
jmp 0x10114da0
test al, 0x10
jne 0x10114d07
and eax, 0xf
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 2
jmp 0x10114da0
test al, 8
jne 0x10114d30
and eax, 7
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 3
jmp 0x10114da0
test al, 4
jne 0x10114d65
and eax, 3
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 4
jmp 0x10114da0
and eax, 1
shl eax, 6
or eax, edi
movzx edi, byte [esi + 1]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 2]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 3]
shl eax, 6
and edi, 0x3f
or eax, edi
movzx edi, byte [esi + 4]
shl eax, 6
and edi, 0x3f
or eax, edi
add esi, 5
cmp dword [esp + 0x2c], eax
je case.0x1011d2ee.14
cmp ecx, eax
je case.0x1011d2ee.14
inc edx
cmp edx, ebx
jle 0x10114cb7
jmp 0x10114df9
cmp ebx, 1
jl 0x10114df9
mov edi, dword [ebp + 0x78]
jmp 0x10114dd4
mov ebp, dword [esp + 0x10]
cmp esi, edi
jae 0x1011b2ae
movzx eax, byte [esi]
cmp dword [esp + 0x2c], eax
je case.0x1011d2ee.14
cmp dword [esp + 0x38], eax
je case.0x1011d2ee.14
inc edx
inc esi
cmp edx, ebx
jle 0x10114dd0
cmp ebx, dword [esp + 0x18]
je 0x10110ad1
cmp dword [esp + 0x34], 0
jne 0x1011b2e5
cmp dword [esp + 0x30], 0
mov ebp, esi
mov dword [esp + 0x34], ebp
je 0x10115004
mov edi, dword [esp + 0x18]
cmp ebx, edi
jge 0x10114f73
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
mov edx, 1
jmp 0x10114e40
mov ecx, edx
cmp esi, ebp
jae 0x10114f4f
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10114f35
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10114e75
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10114f35
test al, 0x10
jne 0x10114e97
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10114f35
test al, 8
jne 0x10114ec2
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10114f35
test al, 4
jne 0x10114ef9
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10114f35
and eax, edx
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp dword [esp + 0x2c], eax
je 0x10114f73
cmp dword [esp + 0x38], eax
je 0x10114f73
add ebx, edx
add esi, ecx
cmp ebx, edi
jl 0x10114e40
jmp 0x10114f73
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x10114f73
cmp esi, dword [eax + 0x84]
jbe 0x10114f73
mov dword [eax + 0x60], edx
cmp dword [eax + 0x88], edx
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
mov edx, dword [esp + 0x178]
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x16c]
mov ebx, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
inc edx
push edx
push ebp
push eax
push edi
push ebx
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov edx, esi
dec esi
cmp edx, dword [esp + 0x34]
je 0x101150ae
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10114fdc
lea esp, [esp]
mov cl, byte [esi - 1]
dec esi
and cl, 0xc0
cmp cl, 0x80
je 0x10114fd0
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
inc edx
push edx
push ebp
push eax
push edi
push ebx
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x10114fb4
jmp fcn.1011d593
mov edx, dword [esp + 0x18]
cmp ebx, edx
mov ecx, ebx
jge 0x10115055
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x78]
cmp esi, edi
jae 0x10115030
movzx eax, byte [esi]
cmp dword [esp + 0x2c], eax
je 0x10115055
cmp dword [esp + 0x38], eax
je 0x10115055
inc ecx
inc esi
cmp ecx, edx
jl 0x10115015
jmp 0x10115055
cmp dword [ebx + 0x88], 0
je 0x10115055
cmp esi, dword [ebx + 0x84]
jbe 0x10115055
mov eax, 1
mov dword [ebx + 0x60], eax
cmp dword [ebx + 0x88], eax
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
cmp esi, ebp
jb 0x101150ae
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x16c]
jmp 0x10115080
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
push eax
push ecx
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
dec esi
cmp esi, dword [esp + 0x34]
jae 0x10115080
xor eax, eax
jmp fcn.1011d593
cmp dword [esp + 0x30], 0
je 0x101151d1
mov ecx, 1
cmp ebx, ecx
jl 0x101151fc
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x1011b4dc
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x101151bc
movzx ebp, byte [esi]
and ebp, 0x3f
test al, 0x20
jne 0x10115103
and eax, 0x1f
shl eax, 6
or eax, ebp
inc esi
jmp 0x101151bc
test al, 0x10
jne 0x10115123
and eax, 0xf
shl eax, 6
or eax, ebp
movzx ebp, byte [esi + 1]
shl eax, 6
and ebp, 0x3f
or eax, ebp
add esi, 2
jmp 0x101151bc
test al, 8
jne 0x1011514c
and eax, 7
shl eax, 6
or eax, ebp
movzx ebp, byte [esi + 1]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 2]
shl eax, 6
and ebp, 0x3f
or eax, ebp
add esi, 3
jmp 0x101151bc
test al, 4
jne 0x10115181
and eax, 3
shl eax, 6
or eax, ebp
movzx ebp, byte [esi + 1]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 2]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 3]
shl eax, 6
and ebp, 0x3f
or eax, ebp
add esi, 4
jmp 0x101151bc
and eax, 1
shl eax, 6
or eax, ebp
movzx ebp, byte [esi + 1]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 2]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 3]
shl eax, 6
and ebp, 0x3f
or eax, ebp
movzx ebp, byte [esi + 4]
shl eax, 6
and ebp, 0x3f
or eax, ebp
add esi, 5
cmp dword [esp + 0x2c], eax
je case.0x1011d2ee.14
inc ecx
cmp ecx, ebx
jle 0x101150d4
jmp 0x101151fc
mov eax, 1
cmp ebx, eax
jl 0x101151fc
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + 0x78]
cmp esi, ecx
jae 0x1011b513
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x2c], edx
je case.0x1011d2ee.14
inc eax
cmp eax, ebx
jle 0x101151e1
cmp ebx, dword [esp + 0x18]
je 0x10110ad1
cmp dword [esp + 0x34], 0
jne 0x1011b54e
cmp dword [esp + 0x30], 0
mov edi, esi
mov dword [esp + 0x34], edi
je 0x101153fb
mov edi, dword [esp + 0x18]
cmp ebx, edi
jge 0x1011536d
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
mov edx, 1
jmp 0x10115244
mov eax, dword [esp + 0x10]
mov ecx, edx
cmp esi, ebp
jae 0x1011534d
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10115339
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10115279
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10115339
test al, 0x10
jne 0x1011529b
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10115339
test al, 8
jne 0x101152c6
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10115339
test al, 4
jne 0x101152fd
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10115339
and eax, edx
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp dword [esp + 0x2c], eax
je 0x1011536d
add ebx, edx
add esi, ecx
cmp ebx, edi
jl 0x10115240
jmp 0x1011536d
cmp dword [eax + 0x88], 0
je 0x1011536d
cmp esi, dword [eax + 0x84]
jbe 0x1011536d
mov dword [eax + 0x60], edx
cmp dword [eax + 0x88], edx
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
mov eax, dword [esp + 0x178]
mov ebp, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x16c]
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x14]
inc eax
push eax
push ebp
push ecx
push edi
push ebx
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov edi, edi
mov eax, esi
dec esi
cmp eax, dword [esp + 0x34]
je 0x1011549e
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x101153d3
mov dl, byte [esi - 1]
dec esi
and dl, 0xc0
cmp dl, 0x80
je 0x101153c7
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
inc eax
push eax
push ebp
push ecx
push edi
push ebx
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x101153b0
jmp fcn.1011d593
mov edx, dword [esp + 0x18]
cmp ebx, edx
mov eax, ebx
jge 0x1011544e
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + 0x78]
mov ebx, 1
cmp esi, ecx
jae 0x10115428
movzx ebp, byte [esi]
cmp dword [esp + 0x2c], ebp
je 0x1011544e
add eax, ebx
add esi, ebx
cmp eax, edx
jl 0x10115411
jmp 0x1011544e
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x1011544e
mov eax, edx
cmp esi, dword [eax + 0x84]
jbe 0x1011544e
mov dword [eax + 0x60], ebx
cmp dword [eax + 0x88], ebx
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
cmp esi, edi
jb 0x1011549e
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x16c]
mov edi, dword [esp + 0x14]
lea esp, [esp]
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
push ecx
push edx
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
dec esi
cmp esi, dword [esp + 0x34]
jae 0x10115470
xor eax, eax
jmp fcn.1011d593
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
shl eax, 8
or eax, ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x34], 1
add edx, 3
jmp 0x1011557f
movzx eax, byte [edx + 1]
movzx edi, byte [edx + 2]
shl eax, 8
or eax, edi
mov dword [esp + 0x18], eax
xor eax, eax
cmp cl, 0x5c
sete al
mov dword [esp + 0x20], ebx
add edx, 3
mov dword [esp + 0x34], eax
jmp 0x1011557f
mov dword [esp + 0x3c], 1
mov dword [esp + 0x20], ebx
inc edx
jmp 0x10115577
mov eax, 1
mov dword [esp + 0x3c], eax
mov dword [esp + 0x20], eax
add edx, eax
jmp 0x10115577
mov eax, 1
mov dword [esp + 0x3c], eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x18], eax
add edx, eax
jmp 0x1011557f
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
shl eax, 8
or eax, ecx
mov dword [esp + 0x3c], 1
mov dword [esp + 0x20], ebx
mov dword [esp + 0x18], eax
add edx, 3
jmp 0x1011557f
movzx eax, cl
sub eax, 0x55
mov ecx, eax
and ecx, 1
mov dword [esp + 0x34], ecx
movsx ecx, byte [eax + 0x10145bf8]
movsx eax, byte [eax + 0x10145c00]
inc edx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x18], eax
cmp eax, ebx
jne 0x1011557f
mov dword [esp + 0x18], closesocket
movzx eax, byte [edx]
inc edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x14], edx
cmp eax, 0x10
je 0x101155a2
cmp eax, 0xf
je 0x101155a2
mov ebx, dword [esp + 0x4c]
or eax, 0xffffffff
mov dword [esp + 0x48], eax
jmp 0x101155c7
movzx ecx, byte [edx]
movzx ebx, byte [edx + 1]
xor eax, eax
cmp dword [esp + 0x2c], 0xf
mov dword [esp + 0x48], ecx
sete al
inc edx
inc edx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x14], edx
mov dword [esp + 0x40], eax
mov eax, ecx
mov ebp, dword [esp + 0x20]
test ebp, ebp
jle 0x101157d8
test eax, eax
jl 0x101163f8
cmp eax, 9
ja case.default.0x10113180
jmp dword [eax*4 + 0x1011d7e8]
cmp dword [esp + 0x40], 0
jne case.0x1011d2ee.14
mov ecx, 1
cmp ebp, ecx
jl 0x101157d8
mov ebx, dword [esp + 0x10]
mov edx, dword [ebx + 0x78]
mov edi, dword [esp + 0x30]
mov edi, edi
cmp esi, edx
jae 0x1011b74e
movzx eax, byte [esi]
inc esi
test edi, edi
je 0x1011564c
cmp eax, 0xc0
jb 0x1011564c
test al, 0x20
jne 0x1011562e
inc esi
jmp 0x1011564c
test al, 0x10
jne 0x10115637
add esi, 2
jmp 0x1011564c
test al, 8
jne 0x10115640
add esi, 3
jmp 0x1011564c
test al, 4
jne 0x10115649
add esi, 4
jmp 0x1011564c
add esi, 5
inc ecx
cmp ecx, ebp
jle 0x10115610
jmp 0x101157d8
mov edi, 1
cmp ebp, edi
jl 0x101157d8
mov edx, dword [esp + 0x10]
mov ebp, dword [edx + 0x78]
mov ebx, dword [esp + 0x30]
mov edi, edi
cmp esi, ebp
jae 0x1011b785
movzx ecx, byte [esi]
inc esi
test ebx, ebx
je 0x10115773
cmp ecx, 0xc0
jb 0x10115773
test cl, 0x20
jne 0x101156a9
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x10115773
test cl, 0x10
jne 0x101156d0
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10115773
test cl, 8
jne 0x10115703
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 7
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x10115773
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0x3f
and edx, 0x3f
test cl, 4
jne 0x1011573f
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x10115773
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x10115795
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx eax, byte [eax*8 + 0x10146d59]
cmp eax, 9
je 0x101157ba
cmp eax, 5
je 0x101157ba
cmp eax, 8
je 0x101157ba
xor eax, eax
jmp 0x101157bf
mov eax, 1
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
inc edi
cmp edi, dword [esp + 0x20]
jle 0x10115670
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
je 0x10110ad1
cmp dword [esp + 0x34], 0
mov eax, dword [esp + 0x48]
jne 0x1011b892
mov dword [esp + 0x34], esi
test eax, eax
jl 0x10118422
cmp eax, 9
ja case.default.0x10113180
jmp dword [eax*4 + 0x1011d810]
mov edi, 1
cmp ebp, edi
jl 0x101157d8
mov ecx, dword [esp + 0x10]
mov ebp, dword [ecx + 0x78]
lea ecx, [ecx]
cmp esi, ebp
jae 0x1011b785
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x10115926
cmp ecx, 0xc0
jb 0x10115926
test cl, 0x20
jne 0x1011585c
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x10115926
test cl, 0x10
jne 0x10115883
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x10115926
test cl, 8
jne 0x101158b6
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10115926
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x101158f2
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x10115926
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
shl eax, 7
and ecx, 0x8000007f
jns 0x10115948
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx ecx, word [eax*2 + 0x1014a2f8]
movzx edx, byte [ecx*8 + 0x10146d59]
xor eax, eax
cmp dword [edx*4 + 0x10156f90], ebx
sete al
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
inc edi
cmp edi, dword [esp + 0x20]
jle 0x10115820
jmp 0x101157d4
mov edi, 1
cmp ebp, edi
jl 0x101157d8
mov ecx, dword [esp + 0x10]
mov ebp, dword [ecx + 0x78]
cmp esi, ebp
jae 0x1011b785
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x10115a9a
cmp ecx, 0xc0
jb 0x10115a9a
test cl, 0x20
jne 0x101159d0
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x10115a9a
test cl, 0x10
jne 0x101159f7
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x10115a9a
test cl, 8
jne 0x10115a2a
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10115a9a
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x10115a66
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x10115a9a
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
shl eax, 7
and ecx, 0x8000007f
jns 0x10115abc
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx ecx, word [eax*2 + 0x1014a2f8]
movzx edx, byte [ecx*8 + 0x10146d59]
xor eax, eax
cmp edx, ebx
sete al
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
inc edi
cmp edi, dword [esp + 0x20]
jle 0x10115994
jmp 0x101157d4
mov edi, 1
cmp ebp, edi
jl 0x101157d8
mov ecx, dword [esp + 0x10]
mov ebp, dword [ecx + 0x78]
cmp esi, ebp
jae 0x1011b785
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x10115c09
cmp ecx, 0xc0
jb 0x10115c09
test cl, 0x20
jne 0x10115b3f
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x10115c09
test cl, 0x10
jne 0x10115b66
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x10115c09
test cl, 8
jne 0x10115b99
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10115c09
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x10115bd5
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x10115c09
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
shl eax, 7
and ecx, 0x8000007f
jns 0x10115c2b
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx ecx, word [eax*2 + 0x1014a2f8]
movzx edx, byte [ecx*8 + 0x10146d58]
xor eax, eax
cmp edx, ebx
sete al
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
inc edi
cmp edi, dword [esp + 0x20]
jle 0x10115b03
jmp 0x101157d4
mov edi, 1
cmp ebp, edi
jl 0x101157d8
mov ecx, dword [esp + 0x10]
mov ebp, dword [ecx + 0x78]
mov ebx, dword [esp + 0x30]
cmp esi, ebp
jae 0x1011b785
movzx ecx, byte [esi]
inc esi
test ebx, ebx
je 0x10115d79
cmp ecx, 0xc0
jb 0x10115d79
test cl, 0x20
jne 0x10115caf
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x10115d79
test cl, 0x10
jne 0x10115cd6
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x10115d79
test cl, 8
jne 0x10115d09
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10115d79
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x10115d45
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x10115d79
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
shl eax, 7
and ecx, 0x8000007f
jns 0x10115d9b
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx ecx, word [eax*2 + 0x1014a2f8]
movzx edx, byte [ecx*8 + 0x10146d59]
mov eax, dword [edx*4 + 0x10156f90]
cmp eax, 1
je 0x10115dc2
cmp eax, 3
je 0x10115dc2
xor eax, eax
jmp 0x10115dc7
mov eax, 1
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
inc edi
cmp edi, dword [esp + 0x20]
jle 0x10115c76
jmp 0x101157d4
mov edi, 1
cmp ebp, edi
jl 0x101157d8
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
mov ebx, dword [esp + 0x30]
lea esp, [esp]
cmp esi, ebp
jae 0x1011b785
movzx ecx, byte [esi]
inc esi
test ebx, ebx
je 0x10115f00
cmp ecx, 0xc0
jb 0x10115f00
test cl, 0x20
jne 0x10115e39
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x10115f00
test cl, 0x10
jne 0x10115e60
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x10115f00
test cl, 8
jne 0x10115e90
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10115f00
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x10115ecc
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x10115f00
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
mov edx, ecx
shl eax, 7
and edx, 0x8000007f
jns 0x10115f24
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x1014a2f8]
movzx edx, byte [eax*8 + 0x10146d59]
cmp dword [edx*4 + 0x10156f90], 6
je 0x10115f58
cmp ecx, 9
je 0x10115f58
cmp ecx, 0xa
je 0x10115f58
cmp ecx, 0xc
je 0x10115f58
cmp ecx, 0xd
je 0x10115f58
xor eax, eax
jmp 0x10115f5d
mov eax, 1
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
inc edi
cmp edi, dword [esp + 0x20]
jle 0x10115e00
jmp 0x101157d4
mov edi, 1
cmp ebp, edi
jl 0x101157d8
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
lea ebx, [edi + 5]
mov edi, edi
cmp esi, ebp
jae 0x1011b785
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x10116096
cmp ecx, 0xc0
jb 0x10116096
test cl, 0x20
jne 0x10115fcc
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x10116096
test cl, 0x10
jne 0x10115ff3
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x10116096
test cl, 8
jne 0x10116026
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10116096
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x10116062
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x10116096
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
mov edx, ecx
shl eax, 7
and edx, 0x8000007f
jns 0x101160ba
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x1014a2f8]
movzx edx, byte [eax*8 + 0x10146d59]
cmp dword [edx*4 + 0x10156f90], ebx
je 0x101160f2
cmp ecx, 9
je 0x101160f2
cmp ecx, 0xa
je 0x101160f2
cmp ecx, 0xb
je 0x101160f2
cmp ecx, 0xc
je 0x101160f2
cmp ecx, 0xd
je 0x101160f2
xor eax, eax
jmp 0x101160f7
mov eax, 1
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
inc edi
cmp edi, dword [esp + 0x20]
jle 0x10115f90
jmp 0x101157d4
mov edi, 1
cmp ebp, edi
jl 0x101157d8
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
mov ebx, dword [esp + 0x30]
lea esp, [esp]
cmp esi, ebp
jae 0x1011b785
movzx ecx, byte [esi]
inc esi
test ebx, ebx
je 0x10116230
cmp ecx, 0xc0
jb 0x10116230
test cl, 0x20
jne 0x10116169
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x10116230
test cl, 0x10
jne 0x10116190
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x10116230
test cl, 8
jne 0x101161c0
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10116230
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x101161fc
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x10116230
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
mov edx, ecx
shl eax, 7
and edx, 0x8000007f
jns 0x10116254
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x1014a2f8]
movzx edx, byte [eax*8 + 0x10146d59]
mov eax, dword [edx*4 + 0x10156f90]
cmp eax, 1
je 0x10116280
cmp eax, 3
je 0x10116280
cmp ecx, 0x5f
je 0x10116280
xor eax, eax
jmp 0x10116285
mov eax, 1
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
inc edi
cmp edi, dword [esp + 0x20]
jle 0x10116130
jmp 0x101157d4
mov edi, 1
cmp ebp, edi
jl 0x101157d8
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
cmp esi, ebp
jae 0x1011b785
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x101163b1
cmp eax, 0xc0
jb 0x101163b1
test al, 0x20
jne 0x101162ed
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x101163b1
test al, 0x10
jne 0x10116313
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x101163b1
test al, 8
jne 0x10116342
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x101163b1
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x1011637d
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x101163b1
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
mov ecx, dword [ebx*4 + 0x10146c18]
lea edx, [ebx*4 + 0x10146c18]
cmp eax, ecx
jb 0x101163d0
add edx, 4
cmp eax, ecx
je 0x101163dd
mov ecx, dword [edx]
cmp eax, ecx
jae 0x101163c3
cmp dword [esp + 0x40], 0
je case.0x1011d2ee.14
jmp 0x101163e8
cmp dword [esp + 0x40], 0
jne case.0x1011d2ee.14
inc edi
cmp edi, dword [esp + 0x20]
jle 0x101162b3
jmp 0x101157d4
mov eax, dword [esp + 0x2c]
cmp eax, 0x16
jne 0x101166ea
cmp ebp, 1
mov dword [esp + 0x38], 1
jl 0x101157d8
mov eax, dword [esp + 0x10]
lea ebx, [ebx]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x1011b789
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x10116526
cmp ecx, 0xc0
jb 0x10116526
test cl, 0x20
jne 0x1011645f
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x10116526
test cl, 0x10
jne 0x10116486
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x10116526
test cl, 8
jne 0x101164b6
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10116526
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x101164f2
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x10116526
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
shl eax, 7
and ecx, 0x8000007f
jns 0x10116548
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx ecx, word [eax*2 + 0x1014a2f8]
movzx ebp, byte [ecx*8 + 0x10146d5a]
cmp esi, ebx
jae 0x101166a5
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
mov edi, 1
je 0x10116655
cmp ecx, 0xc0
jb 0x10116655
test cl, 0x20
jne 0x1011659d
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x10116653
test cl, 0x10
jne 0x101165c7
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x10116655
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x101165ea
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x10116645
and eax, 0x3f
test cl, 4
jne 0x10116620
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x10116655
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x10116677
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d5a]
mov edx, 1
shl edx, cl
test dword [ebp*4 + 0x10157008], edx
je 0x101166a5
add esi, edi
mov ebp, ecx
cmp esi, ebx
jb 0x10116562
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x101166d2
cmp esi, ebx
jb 0x101166d2
cmp esi, dword [eax + 0x84]
jbe 0x101166d2
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jg 0x1011d431
mov ecx, dword [esp + 0x38]
inc ecx
cmp ecx, dword [esp + 0x20]
mov dword [esp + 0x38], ecx
jle 0x10116420
jmp 0x101157d4
add eax, 0xfffffffa
cmp dword [esp + 0x30], 0
je 0x1011713d
cmp eax, 0xf
ja case.default.0x10113180
jmp dword [eax*4 + 0x1011d838]
mov ebp, 1
cmp dword [esp + 0x20], ebp
jl 0x101157d4
mov ebx, dword [esp + 0x10]
mov ecx, ebp
lea ecx, [ecx]
cmp esi, dword [ebx + 0x78]
jae 0x1011b7c0
mov eax, dword [ebx + 0x18]
lea edi, [ebx + 0x1c]
test eax, eax
je 0x10116754
mov ecx, dword [esp + 0x30]
mov edx, dword [ebx + 0x78]
push ecx
push edi
push edx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
jne case.0x1011d2ee.14
lea ecx, [eax + 1]
jmp 0x10116778
mov eax, dword [ebx + 0x78]
sub eax, dword [edi]
cmp esi, eax
ja 0x10116778
mov dl, byte [esi]
cmp dl, byte [ebx + 0x2c]
jne 0x10116778
cmp dword [edi], ecx
je case.0x1011d2ee.14
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x2d]
je case.0x1011d2ee.14
cmp dword [ebx + 0x88], 0
je 0x101167aa
lea edx, [esi + 1]
cmp edx, dword [ebx + 0x78]
jb 0x101167aa
cmp dword [ebx + 0x18], 0
jne 0x101167aa
cmp dword [edi], 2
jne 0x101167aa
mov al, byte [esi]
cmp al, byte [ebx + 0x2c]
jne 0x101167aa
mov dword [ebx + 0x60], ecx
cmp dword [ebx + 0x88], ecx
jg 0x1011d431
mov eax, dword [ebx + 0x78]
add esi, ecx
cmp esi, eax
jae 0x101167c3
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x101167c3
add esi, ecx
cmp esi, eax
jb 0x101167b3
add ebp, ecx
cmp ebp, dword [esp + 0x20]
jle 0x10116720
jmp 0x101157d4
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x1011b824
inc esi
cmp esi, eax
jae 0x10116804
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x10116804
inc esi
cmp esi, eax
jb 0x101167f5
inc ecx
cmp ecx, ebp
jle 0x101167e8
jmp 0x101157d8
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
sub ecx, ebp
cmp esi, ecx
ja case.0x1011d2ee.14
add esi, ebp
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
lea ebx, [ebx]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x10116928
movzx ebx, byte [esi]
and ebx, 0x3f
test al, 0x20
jne 0x1011686f
and eax, 0x1f
shl eax, 6
or eax, ebx
inc esi
jmp 0x10116928
test al, 0x10
jne 0x1011688f
and eax, 0xf
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 2
jmp 0x10116928
test al, 8
jne 0x101168b8
and eax, 7
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 3
jmp 0x10116928
test al, 4
jne 0x101168ed
and eax, 3
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 4
jmp 0x10116928
and eax, 1
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 4]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 5
cmp eax, 0xd
ja 0x1011694b
je 0x1011693f
cmp eax, 0xa
je 0x10116972
jbe case.0x1011d2ee.14
cmp eax, 0xc
jmp 0x10116962
cmp esi, edx
jae 0x10116972
cmp byte [esi], 0xa
jne 0x10116972
inc esi
jmp 0x10116972
cmp eax, 0x85
je 0x10116968
cmp eax, 0x2027
jbe case.0x1011d2ee.14
cmp eax, 0x2029
ja case.0x1011d2ee.14
cmp dword [edi + 0x64], 0
jne case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x10116840
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x10116a7c
movzx ebx, byte [esi]
and ebx, 0x3f
test al, 0x20
jne 0x101169c3
and eax, 0x1f
shl eax, 6
or eax, ebx
inc esi
jmp 0x10116a7c
test al, 0x10
jne 0x101169e3
and eax, 0xf
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 2
jmp 0x10116a7c
test al, 8
jne 0x10116a0c
and eax, 7
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 3
jmp 0x10116a7c
test al, 4
jne 0x10116a41
and eax, 3
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 4
jmp 0x10116a7c
and eax, 1
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 4]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 5
cmp eax, 0x180e
ja 0x10116aab
je case.0x1011d2ee.14
cmp eax, 0xa0
ja 0x10116aa4
je case.0x1011d2ee.14
cmp eax, 9
je case.0x1011d2ee.14
cmp eax, 0x20
jmp 0x10116ad6
cmp eax, 0x1680
jmp 0x10116ad6
cmp eax, 0x205f
ja 0x10116ad1
je case.0x1011d2ee.14
cmp eax, 0x2000
jb 0x10116adc
cmp eax, 0x200a
jbe case.0x1011d2ee.14
cmp eax, 0x202f
jmp 0x10116ad6
cmp eax, 0x3000
je case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x10116994
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
mov edi, edi
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x10116be8
movzx ebx, byte [esi]
and ebx, 0x3f
test al, 0x20
jne 0x10116b2f
and eax, 0x1f
shl eax, 6
or eax, ebx
inc esi
jmp 0x10116be8
test al, 0x10
jne 0x10116b4f
and eax, 0xf
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 2
jmp 0x10116be8
test al, 8
jne 0x10116b78
and eax, 7
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 3
jmp 0x10116be8
test al, 4
jne 0x10116bad
and eax, 3
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 4
jmp 0x10116be8
and eax, 1
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 4]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 5
cmp eax, 0x180e
ja 0x10116c0b
je 0x10116c38
cmp eax, 0xa0
ja 0x10116c04
je 0x10116c38
cmp eax, 9
je 0x10116c38
cmp eax, 0x20
jmp 0x10116c32
cmp eax, 0x1680
jmp 0x10116c32
cmp eax, 0x205f
ja 0x10116c2d
je 0x10116c38
cmp eax, 0x2000
jb case.0x1011d2ee.14
cmp eax, 0x200a
jbe 0x10116c38
cmp eax, 0x202f
jmp 0x10116c32
cmp eax, 0x3000
jne case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x10116b00
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
lea ebx, [ebx]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x10116d48
movzx ebx, byte [esi]
and ebx, 0x3f
test al, 0x20
jne 0x10116c8f
and eax, 0x1f
shl eax, 6
or eax, ebx
inc esi
jmp 0x10116d48
test al, 0x10
jne 0x10116caf
and eax, 0xf
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 2
jmp 0x10116d48
test al, 8
jne 0x10116cd8
and eax, 7
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 3
jmp 0x10116d48
test al, 4
jne 0x10116d0d
and eax, 3
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 4
jmp 0x10116d48
and eax, 1
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 4]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 5
cmp eax, 0x85
ja 0x10116d5f
je case.0x1011d2ee.14
cmp eax, 0xa
jb 0x10116d71
cmp eax, 0xd
jmp 0x10116d6b
cmp eax, 0x2028
jb 0x10116d71
cmp eax, 0x2029
jbe case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x10116c60
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x10116e7b
movzx ebx, byte [esi]
and ebx, 0x3f
test al, 0x20
jne 0x10116dc2
and eax, 0x1f
shl eax, 6
or eax, ebx
inc esi
jmp 0x10116e7b
test al, 0x10
jne 0x10116de2
and eax, 0xf
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 2
jmp 0x10116e7b
test al, 8
jne 0x10116e0b
and eax, 7
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 3
jmp 0x10116e7b
test al, 4
jne 0x10116e40
and eax, 3
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 4
jmp 0x10116e7b
and eax, 1
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 4]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 5
cmp eax, 0x85
ja 0x10116e92
je 0x10116ea8
cmp eax, 0xa
jb case.0x1011d2ee.14
cmp eax, 0xd
jmp 0x10116ea2
cmp eax, 0x2028
jb case.0x1011d2ee.14
cmp eax, 0x2029
ja case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x10116d93
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
lea ebx, [ebx]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x10116fb8
movzx ebx, byte [esi]
and ebx, 0x3f
test al, 0x20
jne 0x10116eff
and eax, 0x1f
shl eax, 6
or eax, ebx
inc esi
jmp 0x10116fb8
test al, 0x10
jne 0x10116f1f
and eax, 0xf
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 2
jmp 0x10116fb8
test al, 8
jne 0x10116f48
and eax, 7
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 3
jmp 0x10116fb8
test al, 4
jne 0x10116f7d
and eax, 3
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 4
jmp 0x10116fb8
and eax, 1
shl eax, 6
or eax, ebx
movzx ebx, byte [esi + 1]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 2]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 3]
shl eax, 6
and ebx, 0x3f
or eax, ebx
movzx ebx, byte [esi + 4]
shl eax, 6
and ebx, 0x3f
or eax, ebx
add esi, 5
cmp eax, 0x80
jae 0x10116fcc
mov ebx, dword [edi + 0x38]
test byte [eax + ebx], 4
jne case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x10116ed0
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
mov edi, edi
cmp esi, edx
jae 0x1011b824
mov al, byte [esi]
cmp al, 0x80
jae case.0x1011d2ee.14
mov ebx, dword [edi + 0x38]
movzx eax, al
test byte [eax + ebx], 4
je case.0x1011d2ee.14
inc ecx
inc esi
cmp ecx, ebp
jle 0x10116ff0
jmp 0x101157d8
mov edx, 1
cmp ebp, edx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x1011b824
mov al, byte [esi]
cmp al, 0x80
jae 0x1011704f
mov ebx, dword [edi + 0x38]
movzx eax, al
test byte [eax + ebx], 1
jne case.0x1011d2ee.14
inc esi
cmp esi, ecx
jae 0x10117061
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10117061
inc esi
cmp esi, ecx
jb 0x10117054
inc edx
cmp edx, ebp
jle 0x10117031
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
nop
cmp esi, edx
jae 0x1011b824
mov al, byte [esi]
cmp al, 0x80
jae case.0x1011d2ee.14
mov ebx, dword [edi + 0x38]
movzx eax, al
test byte [eax + ebx], 1
je case.0x1011d2ee.14
inc ecx
inc esi
cmp ecx, ebp
jle 0x10117080
jmp 0x101157d8
mov edx, 1
cmp ebp, edx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x1011b824
mov al, byte [esi]
cmp al, 0x80
jae 0x101170df
mov ebx, dword [edi + 0x38]
movzx eax, al
test byte [eax + ebx], 0x10
jne case.0x1011d2ee.14
inc esi
cmp esi, ecx
jae 0x101170f1
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x101170f1
inc esi
cmp esi, ecx
jb 0x101170e4
inc edx
cmp edx, ebp
jle 0x101170c1
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
nop
cmp esi, edx
jae 0x1011b824
mov al, byte [esi]
cmp al, 0x80
jae case.0x1011d2ee.14
mov ebx, dword [edi + 0x38]
movzx eax, al
test byte [eax + ebx], 0x10
je case.0x1011d2ee.14
inc ecx
inc esi
cmp ecx, ebp
jle 0x10117110
jmp 0x101157d8
cmp eax, 0xf
ja case.default.0x10113180
jmp dword [eax*4 + 0x1011d878]
mov ebp, 1
cmp dword [esp + 0x20], ebp
jl 0x101157d4
mov ecx, dword [esp + 0x10]
lea ebx, [esi + 1]
mov edx, ebp
cmp esi, dword [ecx + 0x78]
jae 0x1011b7f2
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x1011719e
mov ecx, dword [esp + 0x10]
push 0
lea edi, [ecx + 0x1c]
mov ecx, dword [ecx + 0x78]
push edi
push ecx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
jne case.0x1011d2ee.14
mov ecx, dword [esp + 0x10]
lea edx, [eax + 1]
jmp 0x101171c5
mov eax, dword [ecx + 0x78]
sub eax, dword [ecx + 0x1c]
lea edi, [ecx + 0x1c]
cmp esi, eax
ja 0x101171c5
mov al, byte [esi]
cmp al, byte [ecx + 0x2c]
jne 0x101171c5
cmp dword [edi], edx
je case.0x1011d2ee.14
mov al, byte [ebx]
cmp al, byte [ecx + 0x2d]
je case.0x1011d2ee.14
cmp dword [ecx + 0x88], 0
je 0x101171f4
cmp ebx, dword [ecx + 0x78]
jb 0x101171f4
cmp dword [ecx + 0x18], 0
jne 0x101171f4
cmp dword [edi], 2
jne 0x101171f4
mov al, byte [esi]
cmp al, byte [ecx + 0x2c]
jne 0x101171f4
mov dword [ecx + 0x60], edx
cmp dword [ecx + 0x88], edx
jg 0x1011d431
add ebp, edx
add esi, edx
add ebx, edx
cmp ebp, dword [esp + 0x20]
jle 0x10117165
jmp 0x101157d4
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
sub ecx, ebp
cmp esi, ecx
ja 0x1011b789
add esi, ebp
jmp 0x101157d8
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
sub edx, ebp
cmp esi, edx
ja 0x1011b789
add esi, ebp
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
lea ecx, [ecx]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
sub eax, 0xa
inc esi
cmp eax, 0x7b
ja case.0x1011d2ee.14
movzx eax, byte [eax + 0x1011d8c8]
jmp dword [eax*4 + 0x1011d8b8]
cmp esi, edx
jae case.0x1011726f.10
cmp byte [esi], 0xa
jne case.0x1011726f.10
inc esi
jmp case.0x1011726f.10
cmp dword [edi + 0x64], 0
jne case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x10117250
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
lea ebx, [ebx]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 9
je case.0x1011d2ee.14
cmp eax, 0x20
je case.0x1011d2ee.14
cmp eax, 0xa0
je case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x101172b0
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 9
je 0x10117318
cmp eax, 0x20
je 0x10117318
cmp eax, 0xa0
jne case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x101172f7
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 0xa
jl 0x1011735b
cmp eax, 0xd
jle case.0x1011d2ee.14
cmp eax, 0x85
je case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x10117336
jmp 0x101157d8
mov ecx, 1
cmp ebp, ecx
jl 0x101157d4
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
lea esp, [esp]
cmp esi, edx
jae 0x1011b824
movzx eax, byte [esi]
inc esi
cmp eax, 0xa
jl case.0x1011d2ee.14
cmp eax, 0xd
jle 0x101173a5
cmp eax, 0x85
jne case.0x1011d2ee.14
inc ecx
cmp ecx, ebp
jle 0x10117380
jmp 0x101157d8
mov eax, 1
cmp ebp, eax
jl 0x101157d4
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x1011b85b
movzx edi, byte [esi]
mov ebx, dword [edx + 0x38]
test byte [edi + ebx], 4
jne case.0x1011d2ee.14
inc eax
inc esi
cmp eax, ebp
jle 0x101173c3
jmp 0x101157d8
mov eax, 1
cmp ebp, eax
jl 0x101157d4
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
lea ebx, [ebx]
cmp esi, ecx
jae 0x1011b85b
movzx edi, byte [esi]
mov ebx, dword [edx + 0x38]
test byte [edi + ebx], 4
je case.0x1011d2ee.14
inc eax
inc esi
cmp eax, ebp
jle 0x10117400
jmp 0x101157d8
mov eax, 1
cmp ebp, eax
jl 0x101157d4
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x1011b85b
movzx edi, byte [esi]
mov ebx, dword [edx + 0x38]
test byte [edi + ebx], 1
jne case.0x1011d2ee.14
inc eax
inc esi
cmp eax, ebp
jle 0x10117437
jmp 0x101157d8
mov eax, 1
cmp ebp, eax
jl 0x101157d4
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
mov edi, edi
cmp esi, ecx
jae 0x1011b85b
movzx edi, byte [esi]
mov ebx, dword [edx + 0x38]
test byte [edi + ebx], 1
je case.0x1011d2ee.14
inc eax
inc esi
cmp eax, ebp
jle 0x10117470
jmp 0x101157d8
mov eax, 1
cmp ebp, eax
jl 0x101157d4
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x1011b85b
movzx edi, byte [esi]
mov ebx, dword [edx + 0x38]
test byte [edi + ebx], 0x10
jne case.0x1011d2ee.14
inc eax
inc esi
cmp eax, ebp
jle 0x101174a7
jmp 0x101157d8
mov eax, 1
cmp ebp, eax
jl 0x101157d8
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
mov edi, edi
cmp esi, ecx
jae 0x1011b85b
movzx edi, byte [esi]
mov ebx, dword [edx + 0x38]
test byte [edi + ebx], 0x10
je case.0x1011d2ee.14
inc eax
inc esi
cmp eax, ebp
jle 0x101174e0
jmp 0x101157d8
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x18]
cmp edx, ebx
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
mov ebp, dword [esp + 0x40]
jmp 0x10117524
mov eax, dword [esp + 0x10]
mov ecx, 1
cmp esi, edi
jae 0x10117580
cmp dword [esp + 0x30], 0
movzx eax, byte [esi]
je 0x1011756c
cmp eax, 0xc0
jb 0x1011756c
test al, 0x20
jne 0x10117549
mov ecx, 2
jmp 0x1011756c
test al, 0x10
jne 0x10117554
mov ecx, 3
jmp 0x1011756c
test al, 8
jne 0x1011755f
mov ecx, 4
jmp 0x1011756c
test al, 4
mov ecx, 0
setne cl
add ecx, 5
test ebp, ebp
jne 0x1011838f
inc edx
add esi, ecx
cmp edx, ebx
jl 0x10117520
jmp 0x1011838f
cmp dword [eax + 0x88], 0
je 0x1011838f
cmp esi, dword [eax + 0x84]
jbe 0x1011838f
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jmp 0x10118389
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
jmp 0x101175c4
mov eax, dword [esp + 0x10]
mov edi, 1
cmp esi, ebx
jae 0x10117727
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
je 0x101176bf
cmp ecx, 0xc0
jb 0x101176bf
test cl, 0x20
jne 0x10117607
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x101176bd
test cl, 0x10
jne 0x10117631
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x101176bf
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x10117654
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x101176af
and eax, 0x3f
test cl, 4
jne 0x1011768a
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x101176bf
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x101176e1
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx eax, byte [eax*8 + 0x10146d59]
cmp eax, 9
je 0x10117706
cmp eax, 5
je 0x10117706
cmp eax, 8
je 0x10117706
xor eax, eax
jmp 0x1011770b
mov eax, 1
cmp eax, dword [esp + 0x40]
je 0x1011838f
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x18]
jl 0x101175c0
jmp 0x1011838f
cmp dword [eax + 0x88], 0
je 0x1011838f
cmp esi, dword [eax + 0x84]
jbe 0x1011838f
mov dword [eax + 0x60], edi
cmp dword [eax + 0x88], edi
jmp 0x10118389
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
jmp 0x10117769
mov eax, dword [esp + 0x10]
mov edi, 1
cmp esi, ebx
jae 0x10117727
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
je 0x10117860
cmp ecx, 0xc0
jb 0x10117860
test cl, 0x20
jne 0x101177a8
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x1011785e
test cl, 0x10
jne 0x101177d2
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x10117860
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x101177f5
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x10117850
and eax, 0x3f
test cl, 4
jne 0x1011782b
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x10117860
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x10117882
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d59]
mov eax, dword [esp + 0x4c]
xor edx, edx
cmp dword [ecx*4 + 0x10156f90], eax
sete dl
cmp edx, dword [esp + 0x40]
je 0x1011838f
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x18]
jl 0x10117765
jmp 0x1011838f
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
jmp 0x101178e4
mov eax, dword [esp + 0x10]
mov edi, 1
cmp esi, ebx
jae 0x10117727
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
je 0x101179df
cmp ecx, 0xc0
jb 0x101179df
test cl, 0x20
jne 0x10117927
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x101179dd
test cl, 0x10
jne 0x10117951
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x101179df
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x10117974
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x101179cf
and eax, 0x3f
test cl, 4
jne 0x101179aa
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x101179df
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x10117a01
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d59]
xor edx, edx
cmp ecx, dword [esp + 0x4c]
sete dl
cmp edx, dword [esp + 0x40]
je 0x1011838f
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x18]
jl 0x101178e0
jmp 0x1011838f
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
lea ecx, [ecx]
mov edi, 1
cmp esi, ebx
jae 0x10117ba4
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
je 0x10117b4b
cmp ecx, 0xc0
jb 0x10117b4b
test cl, 0x20
jne 0x10117a93
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x10117b49
test cl, 0x10
jne 0x10117abd
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x10117b4b
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x10117ae0
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x10117b3b
and eax, 0x3f
test cl, 4
jne 0x10117b16
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x10117b4b
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x10117b6d
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d58]
xor edx, edx
cmp ecx, dword [esp + 0x4c]
sete dl
cmp edx, dword [esp + 0x40]
je 0x1011838f
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x18]
jl 0x10117a50
jmp 0x1011838f
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x1011838f
mov ecx, eax
cmp esi, dword [ecx + 0x84]
jbe 0x1011838f
mov ecx, edi
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jmp 0x10118389
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
jmp 0x10117bf4
mov eax, dword [esp + 0x10]
mov edi, 1
cmp esi, ebx
jae 0x10117727
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
je 0x10117cef
cmp ecx, 0xc0
jb 0x10117cef
test cl, 0x20
jne 0x10117c37
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x10117ced
test cl, 0x10
jne 0x10117c61
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x10117cef
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x10117c84
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x10117cdf
and eax, 0x3f
test cl, 4
jne 0x10117cba
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x10117cef
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x10117d11
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d59]
mov eax, dword [ecx*4 + 0x10156f90]
cmp eax, 1
je 0x10117d38
cmp eax, 3
je 0x10117d38
xor eax, eax
jmp 0x10117d3d
mov eax, 1
cmp eax, dword [esp + 0x40]
je 0x1011838f
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x18]
jl 0x10117bf0
jmp 0x1011838f
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
jmp 0x10117d74
mov eax, dword [esp + 0x10]
mov edi, 1
cmp esi, ebx
jae 0x10117727
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
je 0x10117e6f
cmp ecx, 0xc0
jb 0x10117e6f
test cl, 0x20
jne 0x10117db7
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x10117e6d
test cl, 0x10
jne 0x10117de1
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x10117e6f
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x10117e04
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x10117e5f
and eax, 0x3f
test cl, 4
jne 0x10117e3a
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x10117e6f
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
mov eax, ecx
shl edx, 7
and eax, 0x8000007f
jns 0x10117e92
dec eax
or eax, 0xffffff80
inc eax
add edx, eax
movzx edx, word [edx*2 + 0x1014a2f8]
movzx eax, byte [edx*8 + 0x10146d59]
cmp dword [eax*4 + 0x10156f90], 6
je 0x10117ec6
cmp ecx, 9
je 0x10117ec6
cmp ecx, 0xa
je 0x10117ec6
cmp ecx, 0xc
je 0x10117ec6
cmp ecx, 0xd
je 0x10117ec6
xor eax, eax
jmp 0x10117ecb
mov eax, 1
cmp eax, dword [esp + 0x40]
je 0x1011838f
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x18]
jl 0x10117d70
jmp 0x1011838f
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
jmp 0x10117f04
mov eax, dword [esp + 0x10]
mov edi, 1
cmp esi, ebx
jae 0x10117727
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
je 0x10117fff
cmp ecx, 0xc0
jb 0x10117fff
test cl, 0x20
jne 0x10117f47
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x10117ffd
test cl, 0x10
jne 0x10117f71
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x10117fff
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x10117f94
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x10117fef
and eax, 0x3f
test cl, 4
jne 0x10117fca
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x10117fff
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
mov eax, ecx
shl edx, 7
and eax, 0x8000007f
jns 0x10118022
dec eax
or eax, 0xffffff80
inc eax
add edx, eax
movzx edx, word [edx*2 + 0x1014a2f8]
movzx eax, byte [edx*8 + 0x10146d59]
cmp dword [eax*4 + 0x10156f90], 6
je 0x1011805b
cmp ecx, 9
je 0x1011805b
cmp ecx, 0xa
je 0x1011805b
cmp ecx, 0xb
je 0x1011805b
cmp ecx, 0xc
je 0x1011805b
cmp ecx, 0xd
je 0x1011805b
xor eax, eax
jmp 0x10118060
mov eax, 1
cmp eax, dword [esp + 0x40]
je 0x1011838f
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x18]
jl 0x10117f00
jmp 0x1011838f
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
jmp 0x10118097
mov eax, dword [esp + 0x10]
mov edi, 1
cmp esi, ebx
jae 0x10117727
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
je 0x10118192
cmp ecx, 0xc0
jb 0x10118192
test cl, 0x20
jne 0x101180da
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x10118190
test cl, 0x10
jne 0x10118104
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x10118192
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x10118127
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x10118182
and eax, 0x3f
test cl, 4
jne 0x1011815d
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x10118192
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
mov eax, ecx
shl edx, 7
and eax, 0x8000007f
jns 0x101181b5
dec eax
or eax, 0xffffff80
inc eax
add edx, eax
movzx edx, word [edx*2 + 0x1014a2f8]
movzx eax, byte [edx*8 + 0x10146d59]
mov eax, dword [eax*4 + 0x10156f90]
cmp eax, 1
je 0x101181e1
cmp eax, 3
je 0x101181e1
cmp ecx, 0x5f
je 0x101181e1
xor eax, eax
jmp 0x101181e6
mov eax, 1
cmp eax, dword [esp + 0x40]
je 0x1011838f
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x18]
jl 0x10118093
jmp 0x1011838f
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x1011838f
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
jmp 0x10118224
mov eax, dword [esp + 0x10]
mov edx, 1
cmp esi, ebx
jae 0x1011836f
cmp dword [esp + 0x30], 0
movzx eax, byte [esi]
je 0x1011832d
cmp eax, 0xc0
jb 0x1011832d
test al, 0x20
jne 0x10118265
movzx ecx, byte [esi + 1]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, 2
jmp 0x1011832b
test al, 0x10
jne 0x1011828e
movzx edx, byte [esi + 1]
and eax, 0xf
and edx, 0x3f
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 3
jmp 0x1011832d
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 8
jne 0x101182b8
movzx edx, byte [esi + 2]
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 3]
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 4
jmp 0x10118325
test al, 4
jne 0x101182f1
movzx edx, byte [esi + 2]
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov eax, ecx
mov edx, 5
jmp 0x1011832d
and eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov edi, dword [esp + 0x4c]
mov ecx, dword [edi*4 + 0x10146c18]
lea edi, [edi*4 + 0x10146c18]
cmp eax, ecx
jb 0x10118350
add edi, 4
cmp eax, ecx
je 0x10118359
mov ecx, dword [edi]
cmp eax, ecx
jae 0x10118343
cmp dword [esp + 0x40], 0
je 0x1011838f
jmp 0x10118360
cmp dword [esp + 0x40], 0
jne 0x1011838f
inc ebp
add esi, edx
cmp ebp, dword [esp + 0x18]
jl 0x10118220
jmp 0x1011838f
cmp dword [eax + 0x88], 0
je 0x1011838f
cmp esi, dword [eax + 0x84]
jbe 0x1011838f
mov dword [eax + 0x60], edx
cmp dword [eax + 0x88], edx
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x16c]
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
inc ecx
push ecx
push edx
push eax
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov ecx, esi
dec esi
cmp ecx, dword [esp + 0x34]
je case.0x1011d2ee.14
cmp dword [esp + 0x30], 0
je 0x101183fa
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x101183fa
mov edi, edi
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x101183f0
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
push edx
push eax
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x101183d0
jmp fcn.1011d593
mov eax, dword [esp + 0x2c]
cmp eax, 0x16
jne 0x101187b3
mov eax, dword [esp + 0x20]
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x38], eax
jge 0x1011874d
mov eax, dword [esp + 0x10]
mov edx, 1
lea ebx, [ebx]
mov ebp, dword [eax + 0x78]
cmp esi, ebp
jae 0x1011872d
movzx ecx, byte [esi]
add esi, edx
cmp dword [esp + 0x30], 0
je 0x1011855e
cmp ecx, 0xc0
jb 0x1011855e
test cl, 0x20
jne 0x10118491
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, edx
jmp 0x1011855e
test cl, 0x10
jne 0x101184b8
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011855e
test cl, 8
jne 0x101184e8
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 7
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x1011855e
movzx eax, byte [esi]
and eax, 0x3f
test cl, 4
jne 0x10118524
movzx edx, byte [esi + 1]
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x1011855e
and ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x10118580
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ebx, byte [eax*8 + 0x10146d5a]
cmp esi, ebp
jae 0x101186e3
lea ebx, [ebx]
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
mov edi, 1
je 0x10118693
cmp ecx, 0xc0
jb 0x10118693
test cl, 0x20
jne 0x101185db
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x10118691
test cl, 0x10
jne 0x10118605
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x10118693
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x10118628
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x10118683
and eax, 0x3f
test cl, 4
jne 0x1011865e
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x10118693
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x101186b5
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d5a]
mov edx, 1
shl edx, cl
test dword [ebx*4 + 0x10157008], edx
je 0x101186e3
add esi, edi
mov ebx, ecx
cmp esi, ebp
jb 0x101185a0
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x10118712
cmp esi, ebp
jb 0x10118712
cmp esi, dword [eax + 0x84]
jbe 0x10118712
mov edx, 1
mov dword [eax + 0x60], edx
cmp dword [eax + 0x88], edx
jg 0x1011d431
jmp 0x10118717
mov edx, 1
mov ecx, dword [esp + 0x38]
add ecx, edx
cmp ecx, dword [esp + 0x18]
mov dword [esp + 0x38], ecx
jl 0x10118450
jmp 0x1011874d
cmp dword [eax + 0x88], 0
je 0x1011874d
cmp esi, dword [eax + 0x84]
jbe 0x1011874d
mov dword [eax + 0x60], edx
cmp dword [eax + 0x88], edx
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x16c]
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
inc ecx
push ecx
push edx
push eax
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov edi, edi
mov ecx, esi
dec esi
cmp ecx, dword [esp + 0x34]
je case.0x1011d2ee.14
lea ecx, [ecx]
cmp dword [esp + 0x30], 0
jne 0x1011d43b
movzx ecx, byte [esi]
jmp 0x1011d51a
add eax, 0xfffffffa
cmp dword [esp + 0x30], 0
je 0x1011974b
cmp eax, 0xf
ja case.default.0x10113180
jmp dword [eax*4 + 0x1011d944]
cmp dword [esp + 0x18], 0x7fffffff
mov ebp, dword [esp + 0x20]
jge 0x101188b2
cmp ebp, dword [esp + 0x18]
jge 0x10119699
lea ecx, [ecx]
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10119670
mov eax, dword [ecx + 0x18]
lea edi, [ecx + 0x1c]
test eax, eax
je 0x10118829
mov edx, dword [esp + 0x30]
mov ecx, dword [ecx + 0x78]
push edx
push edi
push ecx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
jne 0x10119699
mov ecx, dword [esp + 0x10]
jmp 0x10118854
mov edx, dword [ecx + 0x78]
sub edx, dword [edi]
cmp esi, edx
ja 0x10118854
mov al, byte [esi]
cmp al, byte [ecx + 0x2c]
jne 0x10118854
cmp dword [edi], 1
je 0x10119699
mov cl, byte [esi + 1]
mov edx, dword [esp + 0x10]
cmp cl, byte [edx + 0x2d]
je 0x10119699
mov ecx, edx
cmp dword [ecx + 0x88], 0
je 0x1011888b
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
jb 0x1011888b
cmp dword [ecx + 0x18], 0
jne 0x1011888b
cmp dword [edi], 2
jne 0x1011888b
mov dl, byte [esi]
cmp dl, byte [ecx + 0x2c]
jne 0x1011888b
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jg 0x1011d431
mov eax, dword [ecx + 0x78]
inc esi
cmp esi, eax
jae 0x101188a2
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x101188a2
inc esi
cmp esi, eax
jb 0x10118893
inc ebp
cmp ebp, dword [esp + 0x18]
jl 0x101187f0
jmp 0x10119699
cmp ebp, dword [esp + 0x18]
jge 0x10119699
lea esp, [esp]
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10119670
mov eax, dword [ecx + 0x18]
lea edi, [ecx + 0x1c]
test eax, eax
je 0x101188f9
mov edx, dword [esp + 0x30]
mov ecx, dword [ecx + 0x78]
push edx
push edi
push ecx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
jne 0x10119699
mov ecx, dword [esp + 0x10]
jmp 0x10118924
mov edx, dword [ecx + 0x78]
sub edx, dword [edi]
cmp esi, edx
ja 0x10118924
mov al, byte [esi]
cmp al, byte [ecx + 0x2c]
jne 0x10118924
cmp dword [edi], 1
je 0x10119699
mov cl, byte [esi + 1]
mov edx, dword [esp + 0x10]
cmp cl, byte [edx + 0x2d]
je 0x10119699
mov ecx, edx
cmp dword [ecx + 0x88], 0
je 0x1011895b
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
jb 0x1011895b
cmp dword [ecx + 0x18], 0
jne 0x1011895b
cmp dword [edi], 2
jne 0x1011895b
mov dl, byte [esi]
cmp dl, byte [ecx + 0x2c]
jne 0x1011895b
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jg 0x1011d431
mov eax, dword [ecx + 0x78]
inc esi
cmp esi, eax
jae 0x10118972
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x10118972
inc esi
cmp esi, eax
jb 0x10118963
inc ebp
cmp ebp, dword [esp + 0x18]
jl 0x101188c0
jmp 0x10119699
mov eax, dword [esp + 0x18]
cmp eax, 0x7fffffff
jge 0x101189e9
mov ecx, dword [esp + 0x20]
cmp ecx, eax
jge 0x10119699
mov ebp, dword [esp + 0x10]
mov eax, dword [ebp + 0x78]
mov edi, dword [esp + 0x18]
cmp esi, eax
jae 0x101189c9
inc esi
cmp esi, eax
jae 0x101189bf
lea ecx, [ecx]
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x101189bf
inc esi
cmp esi, eax
jb 0x101189b0
inc ecx
cmp ecx, edi
jl 0x101189a4
jmp 0x10119699
cmp dword [ebp + 0x88], 0
je 0x10119699
mov eax, ebp
cmp esi, dword [eax + 0x84]
jbe 0x10119699
jmp 0x10119685
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
mov esi, dword [eax + 0x78]
je 0x10119699
mov ecx, eax
cmp esi, dword [ecx + 0x84]
jbe 0x10119699
jmp 0x10119685
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov edx, dword [ecx + 0x78]
sub eax, dword [esp + 0x20]
sub edx, esi
cmp eax, edx
jbe 0x10118a48
cmp dword [ecx + 0x88], 0
mov esi, dword [ecx + 0x78]
je 0x10119699
mov eax, ecx
cmp esi, dword [eax + 0x84]
jbe 0x10119699
jmp 0x10119685
add esi, eax
jmp 0x10119699
mov edi, dword [esp + 0x20]
cmp edi, dword [esp + 0x18]
jge 0x10119699
mov ebx, dword [esp + 0x10]
mov edx, dword [ebx + 0x78]
jmp 0x10118a74
mov ebx, dword [esp + 0x10]
mov ecx, 1
cmp esi, edx
jae 0x10118bc7
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10118b6d
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10118aac
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10118b6d
test al, 0x10
jne 0x10118ace
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10118b6d
test al, 8
jne 0x10118af9
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10118b6d
test al, 4
jne 0x10118b30
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10118b6d
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0xd
jne 0x10118b83
inc esi
cmp esi, edx
jae 0x10119699
cmp byte [esi], 0xa
jne 0x10118bb7
inc esi
jmp 0x10118bb7
cmp eax, 0xa
je 0x10118bb5
cmp dword [ebx + 0x64], 0
jne 0x10119699
cmp eax, 0xb
je 0x10118bb5
cmp eax, 0xc
je 0x10118bb5
cmp eax, 0x85
je 0x10118bb5
cmp eax, 0x2028
je 0x10118bb5
cmp eax, 0x2029
jne 0x10119699
add esi, ecx
inc edi
cmp edi, dword [esp + 0x18]
jl 0x10118a70
jmp 0x10119699
cmp dword [ebx + 0x88], 0
je 0x10119699
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x84]
jbe 0x10119699
mov eax, ecx
jmp 0x10119685
mov edi, dword [esp + 0x20]
cmp edi, dword [esp + 0x18]
jge 0x10119699
mov edx, dword [esp + 0x10]
mov ebp, dword [edx + 0x78]
mov edx, dword [esp + 0x18]
jmp 0x10118c10
mov ecx, 1
cmp esi, ebp
jae 0x10118d7c
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10118d09
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10118c48
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10118d09
test al, 0x10
jne 0x10118c6a
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10118d09
test al, 8
jne 0x10118c95
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10118d09
test al, 4
jne 0x10118ccc
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10118d09
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0x180e
ja 0x10118d2c
je 0x10118d55
cmp eax, 0xa0
ja 0x10118d25
je 0x10118d55
cmp eax, 9
je 0x10118d55
cmp eax, 0x20
jmp 0x10118d4f
cmp eax, 0x1680
jmp 0x10118d4f
cmp eax, 0x205f
ja 0x10118d4a
je 0x10118d55
cmp eax, 0x2000
jb 0x10118d51
cmp eax, 0x200a
jbe 0x10118d55
cmp eax, 0x202f
jmp 0x10118d4f
cmp eax, 0x3000
je 0x10118d55
xor eax, eax
jmp 0x10118d5a
mov eax, 1
xor ebx, ebx
cmp dword [esp + 0x2c], 0x12
sete bl
cmp eax, ebx
je 0x10119699
inc edi
add esi, ecx
cmp edi, edx
jl 0x10118c10
jmp 0x10119699
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x10119699
cmp esi, dword [eax + 0x84]
jbe 0x10119699
jmp 0x1011968a
mov edi, dword [esp + 0x20]
cmp edi, dword [esp + 0x18]
jge 0x10119699
mov ecx, dword [esp + 0x10]
mov ebp, dword [ecx + 0x78]
mov edx, dword [esp + 0x18]
mov ecx, 1
cmp esi, ebp
jae 0x10118d7c
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10118eac
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10118deb
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10118eac
test al, 0x10
jne 0x10118e0d
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10118eac
test al, 8
jne 0x10118e38
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10118eac
test al, 4
jne 0x10118e6f
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10118eac
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0x85
ja 0x10118ee3
je 0x10118ef1
cmp eax, 0xa
jb 0x10118ebf
cmp eax, 0xd
jbe 0x10118ef1
xor eax, eax
xor ebx, ebx
cmp dword [esp + 0x2c], 0x14
sete bl
cmp eax, ebx
je 0x10119699
inc edi
add esi, ecx
cmp edi, edx
jl 0x10118db7
jmp 0x10119699
cmp eax, 0x2028
jb 0x10118ebf
cmp eax, 0x2029
ja 0x10118ebf
mov eax, 1
jmp 0x10118ec1
mov edx, dword [esp + 0x20]
cmp edx, dword [esp + 0x18]
jge 0x10119699
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x78]
lea ecx, [ecx]
mov ecx, 1
cmp esi, edi
jae 0x10118bc7
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10119009
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10118f48
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10119009
test al, 0x10
jne 0x10118f6a
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10119009
test al, 8
jne 0x10118f95
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10119009
test al, 4
jne 0x10118fcc
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10119009
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0x100
jae 0x10119021
mov ebx, dword [ebx + 0x38]
test byte [eax + ebx], 4
jne 0x10119699
mov ebx, dword [esp + 0x10]
inc edx
add esi, ecx
cmp edx, dword [esp + 0x18]
jl 0x10118f10
jmp 0x10119699
mov edx, dword [esp + 0x20]
cmp edx, dword [esp + 0x18]
jge 0x10119699
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
jmp 0x10119050
mov ecx, 1
cmp esi, edi
jae 0x1011966c
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10119149
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10119088
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10119149
test al, 0x10
jne 0x101190aa
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10119149
test al, 8
jne 0x101190d5
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10119149
test al, 4
jne 0x1011910c
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10119149
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0x100
jae 0x10119699
mov ebx, dword [esp + 0x10]
mov ebx, dword [ebx + 0x38]
test byte [eax + ebx], 4
je 0x10119699
inc edx
add esi, ecx
cmp edx, dword [esp + 0x18]
jl 0x10119050
jmp 0x10119699
mov edx, dword [esp + 0x20]
cmp edx, dword [esp + 0x18]
jge 0x10119699
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x78]
lea esp, [esp]
mov ecx, 1
cmp esi, edi
jae 0x10118bc7
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10119289
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x101191c8
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10119289
test al, 0x10
jne 0x101191ea
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10119289
test al, 8
jne 0x10119215
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10119289
test al, 4
jne 0x1011924c
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10119289
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0x100
jae 0x101192a1
mov ebx, dword [ebx + 0x38]
test byte [eax + ebx], 1
jne 0x10119699
mov ebx, dword [esp + 0x10]
inc edx
add esi, ecx
cmp edx, dword [esp + 0x18]
jl 0x10119190
jmp 0x10119699
mov edx, dword [esp + 0x20]
cmp edx, dword [esp + 0x18]
jge 0x10119699
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
jmp 0x101192d0
mov ecx, 1
cmp esi, edi
jae 0x1011966c
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x101193c9
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10119308
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x101193c9
test al, 0x10
jne 0x1011932a
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x101193c9
test al, 8
jne 0x10119355
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x101193c9
test al, 4
jne 0x1011938c
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x101193c9
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0x100
jae 0x10119699
mov ebx, dword [esp + 0x10]
mov ebx, dword [ebx + 0x38]
test byte [eax + ebx], 1
je 0x10119699
inc edx
add esi, ecx
cmp edx, dword [esp + 0x18]
jl 0x101192d0
jmp 0x10119699
mov edx, dword [esp + 0x20]
cmp edx, dword [esp + 0x18]
jge 0x10119699
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x78]
lea esp, [esp]
mov ecx, 1
cmp esi, edi
jae 0x10118bc7
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10119509
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10119448
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10119509
test al, 0x10
jne 0x1011946a
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10119509
test al, 8
jne 0x10119495
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10119509
test al, 4
jne 0x101194cc
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10119509
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0x100
jae 0x10119521
mov ebx, dword [ebx + 0x38]
test byte [eax + ebx], 0x10
jne 0x10119699
mov ebx, dword [esp + 0x10]
inc edx
add esi, ecx
cmp edx, dword [esp + 0x18]
jl 0x10119410
jmp 0x10119699
mov edx, dword [esp + 0x20]
cmp edx, dword [esp + 0x18]
jge 0x10119699
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
jmp 0x10119550
mov ecx, 1
cmp esi, edi
jae 0x1011966c
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x10119649
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10119588
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x10119649
test al, 0x10
jne 0x101195aa
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x10119649
test al, 8
jne 0x101195d5
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x10119649
test al, 4
jne 0x1011960c
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x10119649
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0x100
jae 0x10119699
mov ebx, dword [esp + 0x10]
mov ebx, dword [ebx + 0x38]
test byte [eax + ebx], 0x10
je 0x10119699
inc edx
add esi, ecx
cmp edx, dword [esp + 0x18]
jl 0x10119550
jmp 0x10119699
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x88], 0
je 0x10119699
mov edx, ecx
cmp esi, dword [edx + 0x84]
jbe 0x10119699
mov eax, edx
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x16c]
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
inc edx
push edx
push eax
push ecx
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
lea ebx, [ebx]
mov eax, dword [esp + 0x34]
mov edx, esi
dec esi
cmp edx, eax
je case.0x1011d2ee.14
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x1011970c
lea esp, [esp]
mov dl, byte [esi - 1]
dec esi
and dl, 0xc0
cmp dl, 0x80
je 0x10119700
cmp dword [esp + 0x2c], 0x11
jne 0x10119723
cmp esi, eax
jbe 0x10119723
cmp byte [esi], 0xa
jne 0x10119723
cmp byte [esi - 1], 0xd
jne 0x10119723
dec esi
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
push ecx
push edx
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x101196e0
jmp fcn.1011d593
cmp eax, 0xf
ja case.default.0x10113180
jmp dword [eax*4 + 0x1011d984]
mov ebp, dword [esp + 0x20]
cmp ebp, dword [esp + 0x18]
jge 0x10119bdd
lea ebx, [esi + 1]
lea esp, [esp]
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10119816
mov eax, dword [ecx + 0x18]
lea edi, [ecx + 0x1c]
test eax, eax
je 0x101197a6
mov ecx, dword [ecx + 0x78]
push 0
push edi
push ecx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
jne 0x10119bdd
mov ecx, dword [esp + 0x10]
jmp 0x101197d0
mov edx, dword [ecx + 0x78]
sub edx, dword [edi]
cmp esi, edx
ja 0x101197d0
mov al, byte [esi]
cmp al, byte [ecx + 0x2c]
jne 0x101197d0
cmp dword [edi], 1
je 0x10119bdd
mov cl, byte [ebx]
mov edx, dword [esp + 0x10]
cmp cl, byte [edx + 0x2d]
je 0x10119bdd
mov ecx, edx
cmp dword [ecx + 0x88], 0
je 0x10119804
cmp ebx, dword [ecx + 0x78]
jb 0x10119804
cmp dword [ecx + 0x18], 0
jne 0x10119804
cmp dword [edi], 2
jne 0x10119804
mov al, byte [esi]
cmp al, byte [ecx + 0x2c]
jne 0x10119804
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jg 0x1011d431
inc ebp
inc esi
inc ebx
cmp ebp, dword [esp + 0x18]
jl 0x10119770
jmp 0x10119bdd
cmp dword [ecx + 0x88], 0
je 0x10119bdd
cmp esi, dword [ecx + 0x84]
jbe 0x10119bdd
mov eax, dword [esp + 0x10]
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jmp 0x10119bd7
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov edx, dword [ecx + 0x78]
sub eax, dword [esp + 0x20]
sub edx, esi
cmp eax, edx
jbe 0x1011988a
cmp dword [ecx + 0x88], 0
mov esi, dword [ecx + 0x78]
je 0x10119bdd
cmp esi, dword [ecx + 0x84]
jbe 0x10119bdd
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jmp 0x10119bd7
add esi, eax
jmp 0x10119bdd
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x18]
cmp ecx, ebx
jge 0x10119bdd
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
mov ebp, 1
lea ecx, [ecx]
cmp esi, edx
jae 0x101198fe
movzx eax, byte [esi]
cmp eax, 0xd
jne 0x101198cd
add esi, ebp
cmp esi, edx
jae 0x10119bdd
cmp byte [esi], 0xa
jne 0x101198f3
jmp 0x101198f1
cmp eax, 0xa
je 0x101198f1
cmp dword [edi + 0x64], 0
jne 0x10119bdd
cmp eax, 0xb
je 0x101198f1
cmp eax, 0xc
je 0x101198f1
cmp eax, 0x85
jne 0x10119bdd
add esi, ebp
add ecx, ebp
cmp ecx, ebx
jl 0x101198b0
jmp 0x10119bdd
cmp dword [edi + 0x88], 0
je 0x10119bdd
cmp esi, dword [edi + 0x84]
jbe 0x10119bdd
mov dword [edi + 0x60], ebp
cmp dword [edi + 0x88], ebp
jmp 0x10119bd7
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp ecx, edi
jge 0x10119bdd
mov ebx, dword [esp + 0x10]
mov edx, dword [ebx + 0x78]
mov ebp, 1
cmp esi, edx
jae 0x1011996c
mov al, byte [esi]
cmp al, 9
je 0x10119bdd
cmp al, 0x20
je 0x10119bdd
cmp al, 0xa0
je 0x10119bdd
add ecx, ebp
add esi, ebp
cmp ecx, edi
jl 0x10119941
jmp 0x10119bdd
cmp dword [ebx + 0x88], 0
je 0x10119bdd
cmp esi, dword [ebx + 0x84]
jbe 0x10119bdd
mov dword [ebx + 0x60], ebp
cmp dword [ebx + 0x88], ebp
jmp 0x10119bd7
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp ecx, edi
jge 0x10119bdd
mov ebx, dword [esp + 0x10]
mov edx, dword [ebx + 0x78]
mov ebp, 1
nop
cmp esi, edx
jae 0x1011996c
mov al, byte [esi]
cmp al, 9
je 0x101199c6
cmp al, 0x20
je 0x101199c6
cmp al, 0xa0
jne 0x10119bdd
add ecx, ebp
add esi, ebp
cmp ecx, edi
jl 0x101199b0
jmp 0x10119bdd
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp ecx, edi
jge 0x10119bdd
mov ebx, dword [esp + 0x10]
mov edx, dword [ebx + 0x78]
mov ebp, 1
nop
cmp esi, edx
jae 0x1011996c
mov al, byte [esi]
cmp al, 0xa
jb 0x10119a0e
cmp al, 0xd
jbe 0x10119bdd
cmp al, 0x85
je 0x10119bdd
add ecx, ebp
add esi, ebp
cmp ecx, edi
jl 0x101199f0
jmp 0x10119bdd
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp ecx, edi
jge 0x10119bdd
mov ebx, dword [esp + 0x10]
mov edx, dword [ebx + 0x78]
mov ebp, 1
cmp esi, edx
jae 0x1011996c
mov al, byte [esi]
cmp al, 0xa
jb 0x10119bdd
cmp al, 0xd
jbe 0x10119a55
cmp al, 0x85
jne 0x10119bdd
add ecx, ebp
add esi, ebp
cmp ecx, edi
jl 0x10119a37
jmp 0x10119bdd
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp eax, edi
jge 0x10119bdd
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
lea esp, [esp]
cmp esi, ecx
jae 0x10119bb8
movzx ebx, byte [esi]
mov ebp, dword [edx + 0x38]
test byte [ebx + ebp], 4
jne 0x10119bdd
inc eax
inc esi
cmp eax, edi
jl 0x10119a80
jmp 0x10119bdd
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp eax, edi
jge 0x10119bdd
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
lea ebx, [ebx]
cmp esi, ecx
jae 0x10119bb8
movzx ebx, byte [esi]
mov ebp, dword [edx + 0x38]
test byte [ebx + ebp], 4
je 0x10119bdd
inc eax
inc esi
cmp eax, edi
jl 0x10119ac0
jmp 0x10119bdd
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp eax, edi
jge 0x10119bdd
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
lea ebx, [ebx]
cmp esi, ecx
jae 0x10119bb8
movzx ebx, byte [esi]
mov ebp, dword [edx + 0x38]
test byte [ebx + ebp], 1
jne 0x10119bdd
inc eax
inc esi
cmp eax, edi
jl 0x10119b00
jmp 0x10119bdd
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp eax, edi
jge 0x10119bdd
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
lea ebx, [ebx]
cmp esi, ecx
jae 0x10119bb8
movzx ebx, byte [esi]
mov ebp, dword [edx + 0x38]
test byte [ebx + ebp], 1
je 0x10119bdd
inc eax
inc esi
cmp eax, edi
jl 0x10119b40
jmp 0x10119bdd
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp eax, edi
jge 0x10119bdd
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x10119bb8
movzx ebx, byte [esi]
mov ebp, dword [edx + 0x38]
test byte [ebx + ebp], 0x10
jne 0x10119bdd
inc eax
inc esi
cmp eax, edi
jl 0x10119b72
jmp 0x10119bdd
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
cmp eax, edi
jge 0x10119bdd
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x78]
lea ecx, [ecx]
cmp esi, ecx
jae 0x10119bb8
movzx ebx, byte [esi]
mov ebp, dword [edx + 0x38]
test byte [ebx + ebp], 0x10
je 0x10119bdd
inc eax
inc esi
cmp eax, edi
jl 0x10119ba0
jmp 0x10119bdd
cmp dword [edx + 0x88], 0
je 0x10119bdd
cmp esi, dword [edx + 0x84]
jbe 0x10119bdd
mov eax, 1
mov dword [edx + 0x60], eax
cmp dword [edx + 0x88], eax
jg 0x1011d431
cmp dword [esp + 0x3c], 0
jne 0x10110ad1
cmp esi, dword [esp + 0x34]
jb case.0x1011d2ee.14
mov ebx, dword [esp + 0x16c]
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
lea ecx, [ecx]
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
push ecx
push edx
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
dec esi
cmp dword [esp + 0x2c], 0x11
jne 0x10119c41
cmp esi, dword [esp + 0x34]
jbe 0x10119c45
cmp byte [esi], 0xa
jne 0x10119c41
cmp byte [esi - 1], 0xd
jne 0x10119c41
dec esi
cmp esi, dword [esp + 0x34]
jae 0x10119c00
mov eax, dword [ebp + 0x8c]
cmp eax, ebx
jle 0x10119c5f
mov dword [esp + 0x16c], eax
mov eax, dword [esp + 0x14]
movzx ecx, byte [eax + 4]
movzx edx, byte [eax + 5]
shl ecx, 8
or ecx, edx
cmp byte [eax + ecx + 3], 0x71
lea eax, [eax + ecx + 3]
mov dword [esp + 0x14], eax
jne 0x10119c98
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
cmp byte [eax], 0x71
je 0x10119c80
mov dword [esp + 0x14], eax
cmp byte [esp + 0x1f], 0x86
jne 0x10119fa1
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x16c]
mov dword [ebp + 0x98], 2
mov eax, dword [esp + 0x178]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x1c]
push ebp
push edx
push eax
add ecx, 3
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
jmp fcn.1011d593
mov ecx, dword [esp + 0x178]
inc ecx
cmp byte [edx], 0x74
push ecx
push ebx
push ebp
push eax
push edi
jne 0x10119d17
mov edx, dword [esp + 0x28]
add edx, 3
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x14], eax
jmp 0x10119fa6
mov edx, dword [esp + 0x40]
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
jmp 0x10119fa1
movzx edi, byte [edx + 3]
movzx eax, byte [edx + 4]
mov ebp, dword [esp + 0x10]
shl edi, 8
or edi, eax
lea ebx, [edi + edi]
cmp ebx, dword [ebp + 0x14]
jge 0x10119e20
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + ebx*4]
mov dword [esp + 0x50], edx
mov edx, dword [eax + ebx*4 + 4]
mov dword [esp + 0x48], edx
mov edx, dword [ebp + 0x10]
sub edx, edi
lea eax, [eax + edx*4]
mov edx, dword [eax]
mov dword [esp + 0x20], edx
mov edx, dword [ebp + 0x90]
mov dword [esp + 0x34], edx
mov edx, dword [ebp + 0xac]
mov dword [esp + 0x3c], edx
mov edx, esi
sub edx, dword [ebp + 0x74]
mov dword [eax], edx
lea ebx, [ebx]
cmp cl, 0x82
jb 0x10119d9f
mov dword [ebp + 0x98], 2
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x16c]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
movzx ecx, byte [ebx]
push ebp
push edx
movzx edx, byte [ecx + 0x10156df8]
push eax
add edx, ebx
push edx
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 0xfffffc1c
je 0x1011a371
cmp eax, 0xfffffc20
jne 0x1011a334
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
add ecx, ebx
cmp dword [ebp + 0x7c], ecx
jae fcn.1011d593
cmp byte [ebx], 0x71
je 0x10119e11
cmp byte [ecx], 0x71
jne fcn.1011d593
xor eax, eax
jmp 0x1011a33c
mov ebp, dword [esp + 0x10]
lea esp, [esp]
cmp cl, 0x82
jae 0x10119e58
cmp cl, 0x7b
je 0x10119e58
cmp dword [ebp + 0x68], 0
jne 0x10119e62
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x71
je 0x10119e62
movzx eax, byte [edx]
movzx ecx, byte [eax + 0x10156df8]
add edx, ecx
mov dword [esp + 0x14], edx
jmp 0x10119fa6
mov dword [ebp + 0x98], 2
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x16c]
mov edi, dword [ebp + 0xac]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
movzx edx, byte [ebx]
push ebp
push eax
movzx eax, byte [edx + 0x10156df8]
push ecx
add eax, ebx
push eax
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 0xfffffc20
jne 0x10119ecd
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
add ecx, ebx
cmp dword [ebp + 0x7c], ecx
jae fcn.1011d593
cmp byte [ebx], 0x71
je 0x10119ed5
cmp byte [ecx], 0x71
jne fcn.1011d593
jmp 0x10119ed5
test eax, eax
jne 0x1011a39d
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
mov dword [ebp + 0xac], edi
cmp byte [ebx], 0x71
mov dword [esp + 0x14], ebx
jne case.0x1011d2ee.14
mov cl, byte [esp + 0x1f]
mov edx, ebx
jmp 0x10119e20
mov dl, byte [edx]
cmp dl, 0x75
je 0x1011a4f6
mov ebx, dword [esp + 0x28]
cmp dl, 0x74
jne 0x10119f5f
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x16c]
inc edx
push edx
mov edx, dword [esp + 0x18]
push eax
push ebp
push ecx
push ebx
add edx, 3
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov al, byte [edi]
cmp al, 0x7b
je 0x1011a513
cmp al, 0x82
jae 0x1011a52e
mov dword [esp + 0x14], edi
jmp 0x10119fa6
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x16c]
inc eax
push eax
push ecx
push ebp
push edx
push ebx
push edi
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 0xfffffc1c
jne 0x10119f90
cmp dword [ebp + 0xb4], edi
jmp 0x10119f92
test eax, eax
jne fcn.1011d593
cmp byte [edi], 0x7b
je 0x1011a555
add dword [esp + 0x14], 3
mov eax, dword [ebp + 0x48]
mov dword [esp + 0x30], eax
mov eax, dword [ebp]
cmp eax, dword [ebp + 4]
jb 0x10110a98
inc dword [ebp]
mov eax, 0xfffffff8
jmp fcn.1011d593
mov eax, 0xffffffeb
jmp fcn.1011d593
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x24]
lea edi, [eax + 2]
mov dword [ebx + 0xb0], edi
mov dword [ebx + 0xac], 0
mov ecx, dword [esp + 0x178]
inc ecx
push ecx
mov ecx, dword [esp + 0x170]
push edx
mov edx, dword [esp + 0x30]
push ebx
push ecx
movzx ecx, byte [eax]
push edx
movzx edx, byte [ecx + 0x10156df8]
movzx ecx, byte [eax + 1]
add edx, eax
add ecx, edx
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 1
je 0x1011a02f
cmp eax, 0xfffffc19
jne 0x1011a043
cmp dword [ebx + 0xac], 0
jne 0x1011a043
mov dword [ebx + 0xac], edi
jmp fcn.1011d593
cmp eax, 0xfffffc1f
jne fcn.1011d593
mov ecx, dword [ebx + 0x7c]
mov dl, byte [edi]
cmp dl, byte [ecx]
jne 0x1011a071
test dl, dl
je 0x1011a06d
mov dl, byte [edi + 1]
cmp dl, byte [ecx + 1]
jne 0x1011a071
add edi, 2
add ecx, 2
test dl, dl
jne 0x1011a051
xor ecx, ecx
jmp 0x1011a076
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne fcn.1011d593
mov dword [ebx + 0x7c], esi
mov eax, 0xfffffc1e
jmp fcn.1011d593
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
mov edx, dword [esp + 0x170]
push eax
mov eax, dword [esp + 0x30]
push ecx
push edx
push eax
mov eax, dword [esp + 0x28]
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x10156df8]
add edx, eax
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011a0e9
cmp eax, 0xfffffc1d
je 0x1011a0e9
cmp eax, 0xfffffc1e
je 0x1011a0e9
cmp eax, 0xfffffc1f
je 0x1011a0e9
cmp eax, 0xfffffc20
jne fcn.1011d593
mov eax, 0xfffffc1a
jmp fcn.1011d593
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x170]
push ecx
mov ecx, dword [esp + 0x30]
push edx
push eax
mov eax, dword [esp + 0x24]
movzx edx, byte [eax]
push ecx
movzx ecx, byte [edx + 0x10156df8]
add ecx, eax
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
jmp 0x1011a19d
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
lea edi, [eax + 2]
mov dword [ebx + 0xb0], edi
mov dword [ebx + 0xac], 0
mov edx, dword [esp + 0x178]
inc edx
push edx
mov edx, dword [esp + 0x170]
push ecx
mov ecx, dword [esp + 0x30]
push ebx
push edx
movzx edx, byte [eax]
push ecx
movzx ecx, byte [edx + 0x10156df8]
movzx edx, byte [eax + 1]
add ecx, eax
add edx, ecx
push edx
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 1
je 0x1011a18e
cmp eax, 0xfffffc19
jne 0x1011a19d
cmp dword [ebx + 0xac], 0
jne 0x1011a19d
mov dword [ebx + 0xac], edi
test eax, eax
je 0x1011a1ac
cmp eax, 0xfffffc20
jne fcn.1011d593
mov eax, 0xfffffc1d
jmp fcn.1011d593
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x16c]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edi
push edx
push eax
mov eax, dword [esp + 0x28]
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x10156df8]
add edx, eax
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011a206
cmp eax, 0xfffffc1d
je 0x1011a206
cmp eax, 0xfffffc20
jne fcn.1011d593
mov dword [edi + 0x7c], esi
mov eax, 0xfffffc1e
jmp fcn.1011d593
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x16c]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
movzx ecx, byte [ebx]
push edi
push edx
movzx edx, byte [ecx + 0x10156df8]
push eax
movzx eax, byte [ebx + 1]
add edx, ebx
add eax, edx
push eax
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011a265
cmp eax, 0xfffffc1d
je 0x1011a265
cmp eax, 0xfffffc20
jne fcn.1011d593
add ebx, 2
mov dword [edi + 0x7c], ebx
mov eax, 0xfffffc1f
jmp fcn.1011d593
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x16c]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
movzx edx, byte [edi]
push ebx
push eax
movzx eax, byte [edx + 0x10156df8]
push ecx
add eax, edi
push eax
push esi
call fcn.101109d0
add esp, 0x1c
jmp 0x1011a31f
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x16c]
lea ebp, [edi + 2]
mov dword [ebx + 0xb0], ebp
mov dword [ebx + 0xac], 0
mov ecx, dword [esp + 0x178]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
movzx edx, byte [edi]
push ebx
push eax
movzx eax, byte [edx + 0x10156df8]
push ecx
movzx ecx, byte [edi + 1]
add eax, edi
add ecx, eax
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
cmp eax, 1
je 0x1011a310
cmp eax, 0xfffffc19
jne 0x1011a31f
cmp dword [ebx + 0xac], 0
jne 0x1011a31f
mov dword [ebx + 0xac], ebp
test eax, eax
jne fcn.1011d593
mov dword [ebx + 0x7c], edi
mov eax, 0xfffffc20
jmp fcn.1011d593
test eax, eax
jne fcn.1011d593
mov ecx, dword [esp + 0x34]
mov dword [ebp + 0x90], ecx
movzx edx, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl edx, 8
or edx, ecx
add ebx, edx
mov edx, dword [esp + 0x3c]
mov dword [ebp + 0xac], edx
cmp byte [ebx], 0x71
mov dword [esp + 0x14], ebx
jne 0x1011a371
mov cl, byte [esp + 0x1f]
jmp 0x10119d90
mov edx, dword [ebp + 0xc]
mov esi, dword [esp + 0x50]
lea ecx, [edi + edi]
mov dword [edx + ecx*4], esi
mov edx, dword [ebp + 0xc]
mov esi, dword [esp + 0x48]
mov dword [edx + ecx*4 + 4], esi
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov esi, dword [esp + 0x20]
sub ecx, edi
mov dword [edx + ecx*4], esi
jmp fcn.1011d593
cmp eax, 0xfffffc1c
jne fcn.1011d593
mov ecx, ebx
mov bl, byte [ebx]
cmp bl, 0x7b
je 0x1011a3e3
cmp bl, 0x71
jne 0x1011a3d4
jmp 0x1011a3c0
movzx edx, byte [ecx + 1]
movzx esi, byte [ecx + 2]
shl edx, 8
or edx, esi
add ecx, edx
cmp byte [ecx], 0x71
je 0x1011a3c0
movzx edx, byte [ecx + 1]
movzx esi, byte [ecx + 2]
shl edx, 8
or edx, esi
sub ecx, edx
cmp dword [ebp + 0xb4], ecx
jne fcn.1011d593
xor eax, eax
jmp fcn.1011d593
mov edx, dword [esp + 0x28]
cmp esi, edx
jne 0x1011a42d
cmp cl, 0x99
je 0x1011a42d
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xa4], ebx
jne 0x1011a431
cmp dword [eax + 0x58], ebx
jne 0x1011a426
cmp dword [eax + 0x5c], ebx
je 0x1011a431
mov edi, dword [eax + 0x94]
add edi, dword [eax + 0x74]
cmp edx, edi
jne 0x1011a431
xor eax, eax
jmp fcn.1011d593
mov eax, dword [esp + 0x10]
mov dword [eax + 0x80], esi
mov esi, dword [esp + 0x16c]
mov dword [eax + 0x8c], esi
mov dword [eax + 0x7c], edx
movzx eax, cl
neg eax
sbb eax, eax
and eax, 0xfffffc18
inc eax
jmp fcn.1011d593
mov eax, 0xffffffe6
jmp fcn.1011d593
mov eax, 0xfffffffa
jmp fcn.1011d593
mov eax, dword [esp + 0x5c]
lea edx, [esp + 0xd8]
cmp eax, edx
je 0x1011a486
push eax
call dword [0x1017d084]
add esp, 4
mov eax, ebx
jmp fcn.1011d593
mov eax, dword [esp + 0x54]
mov dword [ebp + 0xa4], eax
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0xd8]
cmp eax, ecx
je 0x1011a4b0
push eax
call dword [0x1017d084]
add esp, 4
xor eax, eax
jmp fcn.1011d593
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x16c]
mov ecx, dword [esp + 0x28]
mov dword [eax + 0x80], esi
mov dword [eax + 0x8c], edx
mov dword [eax + 0x7c], ecx
mov eax, 1
jmp fcn.1011d593
mov edx, dword [esp + 0x28]
mov dword [ebp + 0x80], esi
mov dword [ebp + 0x7c], edx
mov eax, 1
jmp fcn.1011d593
mov eax, dword [esp + 0x16c]
mov dword [ebp + 0x80], esi
mov dword [ebp + 0x8c], eax
mov eax, 0xfffffc1b
jmp fcn.1011d593
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x16c]
inc ecx
push ecx
push edx
push ebp
push eax
push ebx
push edi
jmp 0x1011a59b
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x16c]
inc ecx
push ecx
push edx
push ebp
push eax
push ebx
push edi
push esi
call fcn.101109d0
add esp, 0x1c
jmp fcn.1011d593
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x16c]
inc ecx
push ecx
mov ecx, dword [esp + 0x18]
push edx
push ebp
push eax
push ebx
add ecx, 3
push ecx
jmp 0x1011a59b
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x16c]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [esp + 0x1c]
push ebp
push ecx
push edx
add eax, 3
push eax
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov dword [ebp + 0xb4], edi
mov eax, 0xfffffc1c
jmp fcn.1011d593
xor ebx, ebx
cmp dword [edi + 0x88], ebx
je case.0x1011d2ee.14
lea ecx, [esi + 1]
cmp ecx, dword [edi + 0x78]
jb case.0x1011d2ee.14
cmp dword [edi + 0x18], ebx
jne case.0x1011d2ee.14
cmp dword [edi + 0x1c], 2
jne case.0x1011d2ee.14
mov dl, byte [esi]
cmp dl, byte [edi + 0x2c]
jne case.0x1011d2ee.14
mov eax, 1
mov dword [edi + 0x60], eax
cmp dword [edi + 0x88], eax
jmp fcn.1011b7b0
xor ebx, ebx
cmp dword [edi + 0x88], ebx
je case.0x1011d2ee.14
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb case.0x1011d2ee.14
cmp dword [edi + 0x18], ebx
jne case.0x1011d2ee.14
cmp dword [edi + 0x1c], 2
jne case.0x1011d2ee.14
mov cl, byte [esi]
cmp cl, byte [edi + 0x2c]
jne case.0x1011d2ee.14
mov eax, 1
mov dword [edi + 0x60], eax
cmp dword [edi + 0x88], eax
jmp fcn.1011b7b0
cmp dword [edi + 0x88], ebx
je case.0x1011d2ee.14
cmp esi, dword [edi + 0x84]
jbe case.0x1011d2ee.14
mov eax, 1
mov dword [edi + 0x60], eax
cmp dword [edi + 0x88], eax
jmp fcn.1011b7b0
cmp dword [ecx + 0x88], ebx
je case.0x1011d2ee.14
cmp esi, dword [ecx + 0x84]
jbe case.0x1011d2ee.14
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jmp fcn.1011b7b0
cmp dword [eax + 0x88], ebx
jmp fcn.1011b790
cmp eax, 0xfffffffe
mov eax, dword [esp + 0x10]
jne 0x1011a6bf
mov esi, dword [eax + 0x78]
cmp dword [eax + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [eax + 0x78]
jb case.0x1011d2ee.14
cmp esi, dword [eax + 0x84]
jbe case.0x1011d2ee.14
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jmp 0x1011b53e
cmp edi, ebp
mov dword [esp + 0x34], esi
jge 0x1011a75e
lea esp, [esp]
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x10]
push edx
push eax
mov eax, dword [esp + 0x34]
mov ecx, esi
mov edx, ebx
call fcn.101106c0
add esp, 8
test eax, eax
jl 0x1011a727
inc edi
add esi, eax
cmp edi, ebp
jl 0x1011a700
jmp 0x1011a758
cmp eax, 0xfffffffe
jne 0x1011a758
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x1011a758
mov ecx, dword [eax + 0x78]
cmp ecx, dword [eax + 0x84]
jbe 0x1011a758
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jg 0x1011d431
cmp esi, dword [esp + 0x34]
jb 0x1011a7a1
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x16c]
mov ebp, dword [esp + 0x28]
lea ecx, [ecx]
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
push eax
push ecx
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
sub esi, dword [esp + 0x2c]
cmp esi, dword [esp + 0x34]
jae 0x1011a770
xor eax, eax
jmp fcn.1011d593
cmp eax, 0xfffffffe
jne 0x1011a7b0
mov esi, dword [edi + 0x78]
cmp dword [edi + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [edi + 0x78]
jb case.0x1011d2ee.14
cmp esi, dword [edi + 0x84]
jbe case.0x1011d2ee.14
mov eax, 1
mov dword [edi + 0x60], eax
cmp dword [edi + 0x88], eax
jmp 0x1011b53e
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x88], ebx
jmp 0x1011b51e
test al, 0x10
jne 0x1011a81a
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x1011a8b8
test al, 8
jne 0x1011a849
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x1011a8b8
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x1011a884
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x1011a8b8
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp eax, 0xff
jbe 0x1011a8c6
cmp byte [esp + 0x1f], 0x6a
jmp 0x1011a8de
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x3c]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je case.0x1011d2ee.14
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebx
push ecx
push edi
push esi
inc ebp
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x10113ac0
jmp fcn.1011d593
mov edi, ebp
mov ebp, dword [esp + 0x28]
push ebp
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
lea ecx, [ecx]
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x3c]
shr eax, 3
mov al, byte [eax + ecx]
inc esi
test al, dl
je case.0x1011d2ee.14
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebx
push ecx
push ebp
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011a930
jmp fcn.1011d593
cmp dword [esp + 0x30], 0
mov edx, esi
mov dword [esp + 0x34], edx
je 0x1011ab79
cmp ebp, eax
jge 0x1011aaf7
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0x3c]
jmp 0x1011a9c4
mov eax, dword [esp + 0x10]
mov edi, 1
cmp esi, dword [esp + 0x44]
jae 0x1011aad7
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x1011aaa4
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x1011a9fc
and eax, 0x1f
shl eax, 6
mov edi, 2
jmp 0x1011aaa2
test al, 0x10
jne 0x1011aa16
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov edi, 3
jmp 0x1011aa9c
test al, 8
jne 0x1011aa39
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov edi, 4
jmp 0x1011aa9c
test al, 4
jne 0x1011aa68
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
mov edi, 5
jmp 0x1011aa9c
and eax, edi
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov edi, 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp eax, 0xff
jbe 0x1011aab2
cmp byte [esp + 0x1f], 0x6a
jmp 0x1011aac6
mov ecx, eax
and ecx, 7
mov ebx, 1
shl ebx, cl
shr eax, 3
mov cl, byte [eax + edx]
test cl, bl
je 0x1011aaf7
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x18]
jl 0x1011a9c0
jmp 0x1011aaf7
cmp dword [eax + 0x88], 0
je 0x1011aaf7
cmp esi, dword [eax + 0x84]
jbe 0x1011aaf7
mov dword [eax + 0x60], edi
cmp dword [eax + 0x88], edi
jg 0x1011d431
mov edx, dword [esp + 0x178]
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x16c]
mov ebx, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
inc edx
push edx
push ebp
push eax
push edi
push ebx
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
lea ecx, [ecx]
mov edx, esi
dec esi
cmp edx, dword [esp + 0x34]
je 0x1011ac1e
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1011ab51
mov cl, byte [esi - 1]
dec esi
and cl, 0xc0
cmp cl, 0x80
je 0x1011ab45
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
inc edx
push edx
push ebp
push eax
push edi
push ebx
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011ab30
jmp fcn.1011d593
cmp ebp, eax
mov edi, ebp
jge 0x1011abe0
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
jmp 0x1011ab8c
mov eax, dword [esp + 0x10]
cmp esi, ebp
jae 0x1011abb7
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov ebx, 1
shl ebx, cl
mov ecx, dword [esp + 0x3c]
shr eax, 3
mov al, byte [eax + ecx]
test al, bl
je 0x1011abdc
inc edi
inc esi
cmp edi, dword [esp + 0x18]
jl 0x1011ab88
jmp 0x1011abdc
cmp dword [eax + 0x88], 0
je 0x1011abdc
cmp esi, dword [eax + 0x84]
jbe 0x1011abdc
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jg 0x1011d431
cmp esi, edx
jb 0x1011ac1e
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x16c]
nop
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
push edx
push eax
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
dec esi
cmp esi, dword [esp + 0x34]
jae 0x1011abf0
xor eax, eax
jmp fcn.1011d593
cmp dword [eax + 0x88], 0
jmp 0x1011af52
test al, 0x10
jne 0x1011ac57
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x1011acf5
test al, 8
jne 0x1011ac86
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x1011acf5
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x1011acc1
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x1011acf5
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x3c]
push ecx
push edx
push eax
call fcn.10126a50
add esp, 0xc
test eax, eax
je case.0x1011d2ee.14
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push ebp
push eax
push ebx
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x10113d44
jmp fcn.1011d593
cmp edi, ebp
mov dword [esp + 0x34], esi
mov ebx, edi
jge 0x1011ae90
nop
mov eax, dword [esp + 0x10]
mov edi, 1
cmp esi, dword [eax + 0x78]
jae 0x1011ae70
cmp dword [esp + 0x30], 0
movzx eax, byte [esi]
je 0x1011ae4c
cmp eax, 0xc0
jb 0x1011ae4c
test al, 0x20
jne 0x1011ad96
movzx ecx, byte [esi + 1]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edi, 2
jmp 0x1011ae4a
test al, 0x10
jne 0x1011adbf
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edi, 3
jmp 0x1011ae4c
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
and ecx, 0x3f
test al, 8
jne 0x1011ade1
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov edi, 4
jmp 0x1011ae3c
and edx, 0x3f
test al, 4
jne 0x1011ae16
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
mov eax, ecx
mov edi, 5
jmp 0x1011ae4c
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov edi, 6
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x3c]
push ecx
push edx
push eax
call fcn.10126a50
add esp, 0xc
test eax, eax
je 0x1011ae90
inc ebx
add esi, edi
cmp ebx, ebp
jl 0x1011ad50
jmp 0x1011ae90
cmp dword [eax + 0x88], 0
je 0x1011ae90
cmp esi, dword [eax + 0x84]
jbe 0x1011ae90
mov dword [eax + 0x60], edi
cmp dword [eax + 0x88], edi
jg 0x1011d431
mov eax, dword [esp + 0x178]
mov ebp, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x16c]
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x14]
inc eax
push eax
push ebp
push ecx
push edi
push ebx
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov eax, esi
dec esi
cmp eax, dword [esp + 0x34]
je case.0x1011d2ee.14
cmp dword [esp + 0x30], 0
je 0x1011aef0
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x1011aef0
mov dl, byte [esi - 1]
dec esi
and dl, 0xc0
cmp dl, 0x80
je 0x1011aee4
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
inc eax
push eax
push ebp
push ecx
push edi
push ebx
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011aec6
jmp fcn.1011d593
cmp dword [ecx + 0x88], ebx
je case.0x1011d2ee.14
cmp esi, dword [ecx + 0x78]
jb case.0x1011d2ee.14
cmp esi, dword [ecx + 0x84]
jbe case.0x1011d2ee.14
mov dword [ecx + 0x60], 1
cmp dword [ecx + 0x88], 1
jmp 0x1011b503
cmp dword [eax + 0x88], ebx
je case.0x1011d2ee.14
cmp esi, dword [eax + 0x84]
jbe case.0x1011d2ee.14
mov dword [eax + 0x60], 1
cmp dword [eax + 0x88], 1
jmp 0x1011b503
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [ecx + 0x78]
jb case.0x1011d2ee.14
cmp esi, dword [ecx + 0x84]
jbe case.0x1011d2ee.14
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jmp 0x1011b503
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x170]
push ecx
mov ecx, dword [esp + 0x30]
push edx
mov edx, dword [esp + 0x20]
push eax
push ecx
push edx
push esi
mov dword [esp + 0x54], ebp
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
lea ebx, [ebx]
mov eax, dword [esp + 0x38]
cmp eax, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov ecx, dword [esp + 0x10]
mov ebp, dword [ecx + 0x78]
mov edx, dword [esp + 0x2c]
mov eax, ebp
sub eax, edx
cmp esi, eax
ja 0x1011b068
mov ecx, dword [esp + 0x44]
mov eax, edx
mov edi, esi
cmp edx, 4
jb 0x1011b038
mov edi, edi
mov ebx, dword [edi]
cmp ebx, dword [ecx]
jne 0x1011b064
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x1011b020
mov ebx, dword [esp + 0x20]
test eax, eax
je 0x1011b060
mov bl, byte [ecx]
cmp bl, byte [edi]
jne 0x1011b064
cmp eax, 1
jbe 0x1011b05c
mov bl, byte [ecx + 1]
cmp bl, byte [edi + 1]
jne 0x1011b064
cmp eax, 2
jbe 0x1011b05c
mov cl, byte [ecx + 2]
cmp cl, byte [edi + 2]
jne 0x1011b064
mov ebx, dword [esp + 0x20]
add esi, edx
jmp 0x1011b0ca
mov ebx, dword [esp + 0x20]
test ebx, ebx
jle 0x1011b109
sub ebp, ebx
cmp esi, ebp
ja 0x1011b109
mov eax, ebx
lea ecx, [esp + 0x150]
mov edi, esi
cmp ebx, 4
jb 0x1011b0a4
lea ebx, [ebx]
mov edx, dword [edi]
cmp edx, dword [ecx]
jne 0x1011b109
sub eax, 4
add ecx, 4
add edi, 4
cmp eax, 4
jae 0x1011b090
test eax, eax
je 0x1011b0c8
mov dl, byte [ecx]
cmp dl, byte [edi]
jne 0x1011b109
cmp eax, 1
jbe 0x1011b0c8
mov dl, byte [ecx + 1]
cmp dl, byte [edi + 1]
jne 0x1011b109
cmp eax, 2
jbe 0x1011b0c8
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x1011b109
add esi, ebx
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc dword [esp + 0x38]
inc ecx
push ecx
mov ecx, dword [esp + 0x170]
push edx
mov edx, dword [esp + 0x30]
push eax
mov eax, dword [esp + 0x20]
push ecx
push edx
push eax
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011aff0
jmp fcn.1011d593
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [eax + 0x78]
jb case.0x1011d2ee.14
cmp esi, dword [eax + 0x84]
jbe case.0x1011d2ee.14
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jmp 0x1011b503
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x170]
push ecx
mov ecx, dword [esp + 0x30]
push edx
push eax
push ecx
mov edi, ebp
mov ebp, dword [esp + 0x28]
push ebp
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
lea ebx, [ebx]
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx eax, byte [esi]
cmp ebx, eax
je 0x1011b1a8
cmp dword [esp + 0x38], eax
jne case.0x1011d2ee.14
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
mov edx, dword [esp + 0x170]
push eax
mov eax, dword [esp + 0x30]
push ecx
push edx
push eax
inc esi
push ebp
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011b180
jmp fcn.1011d593
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
mov ecx, dword [esp + 0x170]
push edx
mov edx, dword [esp + 0x30]
push eax
push ecx
push edx
mov edi, ebp
mov ebp, dword [esp + 0x28]
push ebp
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.0x1011d2ee.14
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
mov ecx, dword [esp + 0x170]
push edx
mov edx, dword [esp + 0x30]
push eax
push ecx
push edx
push ebp
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011b215
jmp fcn.1011d593
cmp dword [edi + 0x88], ebx
jmp 0x1011b4e3
cmp dword [ebp + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [ebp + 0x84]
jbe case.0x1011d2ee.14
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
cmp dword [ebp + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [ebp + 0x84]
jbe case.0x1011d2ee.14
mov eax, 1
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x88], eax
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
mov edi, ebx
mov ebx, dword [esp + 0x178]
push ebx
push eax
push ebp
push esi
call fcn.101109d0
add esp, 0x1c
cmp dword [esp + 0x30], 0
je 0x1011b477
test eax, eax
jne fcn.1011d593
jmp 0x1011b330
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x1011b432
test al, 0x20
jne 0x1011b36e
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x1011b432
test al, 0x10
jne 0x1011b394
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x1011b432
test al, 8
jne 0x1011b3c3
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x1011b432
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x1011b3fe
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x1011b432
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp dword [esp + 0x2c], eax
je case.0x1011d2ee.14
cmp dword [esp + 0x38], eax
je case.0x1011d2ee.14
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebx
push edx
push ebp
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011b330
jmp fcn.1011d593
test eax, eax
jne fcn.1011d593
nop
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx eax, byte [esi]
cmp dword [esp + 0x2c], eax
je case.0x1011d2ee.14
cmp dword [esp + 0x38], eax
je case.0x1011d2ee.14
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebx
push ecx
inc esi
push ebp
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011b480
jmp fcn.1011d593
cmp dword [edi + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [edi + 0x84]
jbe case.0x1011d2ee.14
mov eax, 1
mov dword [edi + 0x60], eax
cmp dword [edi + 0x88], eax
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [ecx + 0x84]
jbe case.0x1011d2ee.14
mov eax, 1
mov dword [ecx + 0x60], eax
cmp dword [ecx + 0x88], eax
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
cmp dword [esp + 0x30], 0
mov ebp, dword [esp + 0x14]
mov edi, ebx
mov ebx, dword [esp + 0x16c]
je 0x1011b6ce
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebx
push edx
push ebp
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x1011b693
test al, 0x20
jne 0x1011b5cf
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x1011b693
test al, 0x10
jne 0x1011b5f5
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x1011b693
test al, 8
jne 0x1011b624
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x1011b693
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x1011b65f
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x1011b693
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp dword [esp + 0x2c], eax
je case.0x1011d2ee.14
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebx
push edx
push ebp
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011b591
jmp fcn.1011d593
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push ebx
push eax
push ebp
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
lea esp, [esp]
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x2c], ecx
je case.0x1011d2ee.14
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebx
push edx
push ebp
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011b700
jmp fcn.1011d593
cmp dword [ebx + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [ebx + 0x84]
jbe case.0x1011d2ee.14
mov eax, 1
mov dword [ebx + 0x60], eax
cmp dword [ebx + 0x88], eax
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
mov eax, dword [esp + 0x10]
cmp dword [ebx + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [ebx + 0x84]
jbe case.0x1011d2ee.14
mov dword [ebx + 0x60], ecx
cmp dword [ebx + 0x88], ecx
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
cmp dword [ecx + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [ecx + 0x84]
jbe case.0x1011d2ee.14
mov dword [ecx + 0x60], edx
cmp dword [ecx + 0x88], edx
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
cmp dword [edi + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [edi + 0x84]
jbe case.0x1011d2ee.14
mov dword [edi + 0x60], 1
cmp dword [edi + 0x88], 1
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
cmp dword [edx + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [edx + 0x84]
jbe case.0x1011d2ee.14
mov dword [edx + 0x60], 1
cmp dword [edx + 0x88], 1
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
test eax, eax
jl 0x1011c9e9
cmp eax, 9
ja case.default.0x10113180
jmp dword [eax*4 + 0x1011d9c4]
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push ebp
push eax
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebp
push edx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
jmp 0x1011b9b0
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x1011bac2
cmp ecx, 0xc0
jb 0x1011bac2
test cl, 0x20
jne 0x1011b9fb
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x1011bac2
test cl, 0x10
jne 0x1011ba22
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011bac2
test cl, 8
jne 0x1011ba52
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 7
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x1011bac2
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0x3f
and edx, 0x3f
test cl, 4
jne 0x1011ba8e
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x1011bac2
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x1011bae4
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx eax, byte [eax*8 + 0x10146d59]
cmp eax, 9
je 0x1011bb09
cmp eax, 5
je 0x1011bb09
cmp eax, 8
je 0x1011bb09
xor eax, eax
jmp 0x1011bb0e
mov eax, 1
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebp
push ecx
push ebx
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011b9b0
jmp fcn.1011d593
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebp
push edx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x1011bc95
cmp ecx, 0xc0
jb 0x1011bc95
test cl, 0x20
jne 0x1011bbce
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x1011bc95
test cl, 0x10
jne 0x1011bbf5
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011bc95
test cl, 8
jne 0x1011bc25
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 7
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x1011bc95
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0x3f
and edx, 0x3f
test cl, 4
jne 0x1011bc61
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x1011bc95
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x1011bcb7
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d59]
mov eax, dword [esp + 0x4c]
xor edx, edx
cmp dword [ecx*4 + 0x10156f90], eax
sete dl
cmp edx, dword [esp + 0x40]
je case.0x1011d2ee.14
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebp
push ecx
push ebx
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011bb83
jmp fcn.1011d593
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebp
push edx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov edi, edi
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x1011be62
cmp ecx, 0xc0
jb 0x1011be62
test cl, 0x20
jne 0x1011bd9b
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x1011be62
test cl, 0x10
jne 0x1011bdc2
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011be62
test cl, 8
jne 0x1011bdf2
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 7
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x1011be62
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0x3f
and edx, 0x3f
test cl, 4
jne 0x1011be2e
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x1011be62
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x1011be84
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d59]
xor edx, edx
cmp ecx, dword [esp + 0x4c]
sete dl
cmp edx, dword [esp + 0x40]
je case.0x1011d2ee.14
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push ebp
push eax
push ebx
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011bd50
jmp fcn.1011d593
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebp
push ecx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebp
push edx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
jmp 0x1011c0e0
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x1011c1f2
cmp ecx, 0xc0
jb 0x1011c1f2
test cl, 0x20
jne 0x1011c12b
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x1011c1f2
test cl, 0x10
jne 0x1011c152
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011c1f2
test cl, 8
jne 0x1011c182
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 7
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x1011c1f2
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0x3f
and edx, 0x3f
test cl, 4
jne 0x1011c1be
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x1011c1f2
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x1011c214
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d59]
mov eax, dword [ecx*4 + 0x10156f90]
cmp eax, 1
je 0x1011c23b
cmp eax, 3
je 0x1011c23b
xor eax, eax
jmp 0x1011c240
mov eax, 1
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebp
push edx
push ebx
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011c0e0
jmp fcn.1011d593
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push ebp
push eax
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x1011c3c7
cmp ecx, 0xc0
jb 0x1011c3c7
test cl, 0x20
jne 0x1011c300
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x1011c3c7
test cl, 0x10
jne 0x1011c327
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x1011c3c7
test cl, 8
jne 0x1011c357
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1011c3c7
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x1011c393
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x1011c3c7
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
mov edx, ecx
shl eax, 7
and edx, 0x8000007f
jns 0x1011c3eb
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x1014a2f8]
movzx edx, byte [eax*8 + 0x10146d59]
cmp dword [edx*4 + 0x10156f90], 6
je 0x1011c41f
cmp ecx, 9
je 0x1011c41f
cmp ecx, 0xa
je 0x1011c41f
cmp ecx, 0xc
je 0x1011c41f
cmp ecx, 0xd
je 0x1011c41f
xor eax, eax
jmp 0x1011c424
mov eax, 1
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push ebp
push eax
push ebx
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011c2b5
jmp fcn.1011d593
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebp
push ecx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
lea esp, [esp]
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x1011c5b2
cmp ecx, 0xc0
jb 0x1011c5b2
test cl, 0x20
jne 0x1011c4eb
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x1011c5b2
test cl, 0x10
jne 0x1011c512
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x1011c5b2
test cl, 8
jne 0x1011c542
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1011c5b2
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and edx, 0x3f
and eax, 0x3f
test cl, 4
jne 0x1011c57e
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x1011c5b2
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x101480f8]
mov edx, ecx
shl eax, 7
and edx, 0x8000007f
jns 0x1011c5d6
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x1014a2f8]
movzx edx, byte [eax*8 + 0x10146d59]
cmp dword [edx*4 + 0x10156f90], 6
je 0x1011c60f
cmp ecx, 9
je 0x1011c60f
cmp ecx, 0xa
je 0x1011c60f
cmp ecx, 0xb
je 0x1011c60f
cmp ecx, 0xc
je 0x1011c60f
cmp ecx, 0xd
je 0x1011c60f
xor eax, eax
jmp 0x1011c614
mov eax, 1
cmp eax, dword [esp + 0x40]
je case.0x1011d2ee.14
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push ebp
push eax
push ebx
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011c4a0
jmp fcn.1011d593
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebp
push ecx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
lea esp, [esp]
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x16c]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ebp
push ecx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
lea esp, [esp]
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x1011b789
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x1011c97d
cmp eax, 0xc0
jb 0x1011c97d
test al, 0x20
jne 0x1011c8b9
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x1011c97d
test al, 0x10
jne 0x1011c8df
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x1011c97d
test al, 8
jne 0x1011c90e
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x1011c97d
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x1011c949
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x1011c97d
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov edx, dword [esp + 0x4c]
mov ecx, dword [edx*4 + 0x10146c18]
lea edx, [edx*4 + 0x10146c18]
cmp eax, ecx
jb 0x1011c9a0
add edx, 4
cmp eax, ecx
je 0x1011c9ad
mov ecx, dword [edx]
cmp eax, ecx
jae 0x1011c993
cmp dword [esp + 0x40], 0
je case.0x1011d2ee.14
jmp 0x1011c9b8
cmp dword [esp + 0x40], 0
jne case.0x1011d2ee.14
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push ebp
push eax
push ebx
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011c870
jmp fcn.1011d593
cmp dword [esp + 0x2c], 0x16
jne 0x1011cd42
mov edx, dword [esp + 0x178]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
inc edx
push edx
mov edx, dword [esp + 0x170]
push eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x20]
push edx
push eax
push ecx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
mov edx, dword [esp + 0x38]
cmp edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
jge case.0x1011d2ee.14
mov ebp, dword [eax + 0x78]
cmp esi, ebp
jae 0x1011b789
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x30], 0
je 0x1011cb4a
cmp ecx, 0xc0
jb 0x1011cb4a
test cl, 0x20
jne 0x1011ca83
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x1011cb4a
test cl, 0x10
jne 0x1011caaa
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011cb4a
test cl, 8
jne 0x1011cada
movzx edx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 7
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x1011cb4a
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0x3f
and edx, 0x3f
test cl, 4
jne 0x1011cb16
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x1011cb4a
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x1011cb6c
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ebx, byte [eax*8 + 0x10146d5a]
cmp esi, ebp
jae 0x1011ccd3
jmp 0x1011cb90
cmp dword [esp + 0x30], 0
movzx ecx, byte [esi]
mov edi, 1
je 0x1011cc83
cmp ecx, 0xc0
jb 0x1011cc83
test cl, 0x20
jne 0x1011cbcb
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
mov edi, 2
jmp 0x1011cc81
test cl, 0x10
jne 0x1011cbf5
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov edi, 3
jmp 0x1011cc83
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x1011cc18
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
mov edi, 4
jmp 0x1011cc73
and eax, 0x3f
test cl, 4
jne 0x1011cc4e
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov edi, 5
jmp 0x1011cc83
and ecx, edi
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
mov edi, 6
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x1011cca5
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d5a]
mov edx, 1
shl edx, cl
test dword [ebx*4 + 0x10157008], edx
je 0x1011ccd3
add esi, edi
mov ebx, ecx
cmp esi, ebp
jb 0x1011cb90
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x1011cd02
cmp esi, ebp
jb 0x1011cd02
cmp esi, dword [eax + 0x84]
jbe 0x1011cd02
mov ecx, 1
mov dword [eax + 0x60], ecx
cmp dword [eax + 0x88], ecx
jg 0x1011d431
jmp 0x1011cd07
mov ecx, 1
add dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x24]
inc ecx
push ecx
mov ecx, dword [esp + 0x2c]
push edx
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x178]
push eax
push ecx
push edx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011ca32
jmp fcn.1011d593
cmp dword [esp + 0x30], 0
mov ebp, dword [esp + 0x16c]
je 0x1011d1ce
mov ecx, dword [esp + 0x178]
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
inc ecx
push ecx
push edx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x18]
push eax
push ebp
push ebx
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
jmp 0x1011cd90
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x38], ecx
jge case.0x1011d2ee.14
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x1011d404
cmp dword [esp + 0x2c], 0xc
jne 0x1011ce09
mov eax, dword [edx + 0x18]
test eax, eax
je 0x1011cde2
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
push edx
lea edx, [ecx + 0x1c]
mov ecx, dword [ecx + 0x78]
push edx
push ecx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
jne case.0x1011d2ee.14
mov edx, dword [esp + 0x10]
jmp 0x1011ce09
mov eax, dword [edx + 0x78]
sub eax, dword [edx + 0x1c]
cmp esi, eax
ja 0x1011ce09
mov cl, byte [esi]
cmp cl, byte [edx + 0x2c]
jne 0x1011ce09
cmp dword [edx + 0x1c], 1
je case.0x1011d2ee.14
mov al, byte [esi + 1]
cmp al, byte [edx + 0x2d]
je case.0x1011d2ee.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x1011cee9
movzx ecx, byte [esi]
and ecx, 0x3f
test al, 0x20
jne 0x1011ce30
and eax, 0x1f
shl eax, 6
or eax, ecx
inc esi
jmp 0x1011cee9
test al, 0x10
jne 0x1011ce50
and eax, 0xf
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x1011cee9
test al, 8
jne 0x1011ce79
and eax, 7
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x1011cee9
test al, 4
jne 0x1011ceae
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x1011cee9
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 1]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
mov ecx, dword [esp + 0x2c]
add ecx, 0xfffffffa
cmp ecx, 0xf
ja case.default.0x10113180
jmp dword [ecx*4 + 0x1011d9ec]
cmp dword [edx + 0x88], 0
je case.0x1011cef9.13
cmp esi, dword [edx + 0x78]
jb case.0x1011cef9.13
cmp dword [edx + 0x18], 0
jne case.0x1011cef9.13
cmp dword [edx + 0x1c], 2
jne case.0x1011cef9.13
movzx ecx, byte [edx + 0x2c]
cmp eax, ecx
jne case.0x1011cef9.13
mov eax, 1
mov dword [edx + 0x60], eax
cmp dword [edx + 0x88], eax
jg 0x1011d431
jmp case.0x1011cef9.13
cmp eax, 0xd
ja 0x1011cf82
je 0x1011cf6a
cmp eax, 0xa
je case.0x1011cef9.13
jbe case.0x1011d2ee.14
cmp eax, 0xc
jmp 0x1011cf99
cmp esi, dword [edx + 0x78]
jae case.0x1011cef9.13
cmp byte [esi], 0xa
jne case.0x1011cef9.13
inc esi
jmp case.0x1011cef9.13
cmp eax, 0x85
je 0x1011cf9f
cmp eax, 0x2027
jbe case.0x1011d2ee.14
cmp eax, 0x2029
ja case.0x1011d2ee.14
cmp dword [edx + 0x64], 0
jne case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x180e
ja 0x1011cfe3
je case.0x1011d2ee.14
cmp eax, 0xa0
ja 0x1011cfd9
je case.0x1011d2ee.14
cmp eax, 9
je case.0x1011d2ee.14
cmp eax, 0x20
jmp 0x1011d198
cmp eax, 0x1680
jmp 0x1011d198
cmp eax, 0x205f
ja 0x1011d010
je case.0x1011d2ee.14
cmp eax, 0x2000
jb case.0x1011cef9.13
cmp eax, 0x200a
jbe case.0x1011d2ee.14
cmp eax, 0x202f
jmp 0x1011d198
cmp eax, 0x3000
jmp 0x1011d198
cmp eax, 0x180e
ja 0x1011d05b
je case.0x1011cef9.13
cmp eax, 0xa0
ja 0x1011d04b
je case.0x1011cef9.13
cmp eax, 9
je case.0x1011cef9.13
cmp eax, 0x20
jne case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x1680
jne case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x205f
ja 0x1011d08e
je case.0x1011cef9.13
cmp eax, 0x2000
jb case.0x1011d2ee.14
cmp eax, 0x200a
jbe case.0x1011cef9.13
cmp eax, 0x202f
jne case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x3000
jne case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x85
ja 0x1011d0c2
je case.0x1011d2ee.14
cmp eax, 0xa
jb case.0x1011cef9.13
cmp eax, 0xd
jbe case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x2028
jb case.0x1011cef9.13
cmp eax, 0x2029
jbe case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x85
ja 0x1011d101
je case.0x1011cef9.13
cmp eax, 0xa
jb case.0x1011d2ee.14
cmp eax, 0xd
ja case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x2028
jb case.0x1011d2ee.14
cmp eax, 0x2029
ja case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x100
jae case.0x1011cef9.13
mov edx, dword [edx + 0x38]
test byte [eax + edx], 4
jne case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x100
jae case.0x1011d2ee.14
mov ecx, dword [edx + 0x38]
test byte [eax + ecx], 4
jmp 0x1011d198
cmp eax, 0x100
jae case.0x1011cef9.13
mov edx, dword [edx + 0x38]
test byte [eax + edx], 1
jne case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x100
jae case.0x1011d2ee.14
mov ecx, dword [edx + 0x38]
test byte [eax + ecx], 1
jmp 0x1011d198
cmp eax, 0x100
jae case.0x1011cef9.13
mov edx, dword [edx + 0x38]
test byte [eax + edx], 0x10
jne case.0x1011d2ee.14
jmp case.0x1011cef9.13
cmp eax, 0x100
jae case.0x1011d2ee.14
mov ecx, dword [edx + 0x38]
test byte [eax + ecx], 0x10
je case.0x1011d2ee.14
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc dword [esp + 0x38]
inc edx
push edx
push eax
push ecx
push ebp
push ebx
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011cd90
jmp fcn.1011d593
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
inc edx
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push ebp
push edx
push ebx
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
jne fcn.1011d593
cmp edi, dword [esp + 0x18]
jge case.0x1011d2ee.14
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x1011d404
cmp dword [esp + 0x2c], 0xc
jne 0x1011d271
mov eax, dword [edx + 0x18]
test eax, eax
je 0x1011d24a
mov ecx, edx
push 0
lea edx, [ecx + 0x1c]
mov ecx, dword [ecx + 0x78]
push edx
push ecx
push eax
push esi
call fcn.10126f40
add esp, 0x14
test eax, eax
jne case.0x1011d2ee.14
mov edx, dword [esp + 0x10]
jmp 0x1011d271
mov eax, dword [edx + 0x78]
sub eax, dword [edx + 0x1c]
cmp esi, eax
ja 0x1011d271
mov cl, byte [esi]
cmp cl, byte [edx + 0x2c]
jne 0x1011d271
cmp dword [edx + 0x1c], 1
je case.0x1011d2ee.14
mov al, byte [esi + 1]
cmp al, byte [edx + 0x2d]
je case.0x1011d2ee.14
mov ecx, dword [esp + 0x2c]
movzx eax, byte [esi]
add ecx, 0xfffffffa
inc esi
cmp ecx, 0xf
ja case.default.0x10113180
jmp dword [ecx*4 + 0x1011da2c]
cmp dword [edx + 0x88], 0
je case.0x1011d285.13
cmp esi, dword [edx + 0x78]
jb case.0x1011d285.13
cmp dword [edx + 0x18], 0
jne case.0x1011d285.13
cmp dword [edx + 0x1c], 2
jne case.0x1011d285.13
movzx ecx, byte [edx + 0x2c]
cmp eax, ecx
jne case.0x1011d285.13
mov eax, 1
mov dword [edx + 0x60], eax
cmp dword [edx + 0x88], eax
jg 0x1011d431
jmp case.0x1011d285.13
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x1011d2ee.14
movzx eax, byte [eax + 0x1011da7c]
jmp dword [eax*4 + 0x1011da6c]
cmp esi, dword [edx + 0x78]
jae case.0x1011d285.13
cmp byte [esi], 0xa
jne case.0x1011d285.13
inc esi
jmp case.0x1011d285.13
cmp dword [edx + 0x64], 0
jne case.0x1011d2ee.14
jmp case.0x1011d285.13
cmp eax, 9
je case.0x1011d2ee.14
cmp eax, 0x20
je case.0x1011d2ee.14
cmp eax, 0xa0
jmp 0x1011d3cd
cmp eax, 9
je case.0x1011d285.13
cmp eax, 0x20
je case.0x1011d285.13
cmp eax, 0xa0
jne case.0x1011d2ee.14
jmp case.0x1011d285.13
cmp eax, 0xa
jb case.0x1011d285.13
cmp eax, 0xd
jbe case.0x1011d2ee.14
cmp eax, 0x85
jmp 0x1011d3cd
cmp eax, 0xa
jb case.0x1011d2ee.14
cmp eax, 0xd
jbe case.0x1011d285.13
cmp eax, 0x85
jne case.0x1011d2ee.14
jmp case.0x1011d285.13
mov ecx, dword [edx + 0x38]
test byte [eax + ecx], 4
jne case.0x1011d2ee.14
jmp case.0x1011d285.13
mov edx, dword [edx + 0x38]
test byte [eax + edx], 4
jmp 0x1011d3cd
mov ecx, dword [edx + 0x38]
test byte [eax + ecx], 1
jne case.0x1011d2ee.14
jmp case.0x1011d285.13
mov edx, dword [edx + 0x38]
test byte [eax + edx], 1
jmp 0x1011d3cd
mov ecx, dword [edx + 0x38]
test byte [eax + ecx], 0x10
jne case.0x1011d2ee.14
jmp case.0x1011d285.13
mov edx, dword [edx + 0x38]
test byte [eax + edx], 0x10
je case.0x1011d2ee.14
mov eax, dword [esp + 0x178]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
inc eax
push eax
mov eax, dword [esp + 0x2c]
push ecx
push edx
push ebp
push eax
push ebx
push esi
inc edi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x1011d201
jmp fcn.1011d593
cmp dword [edx + 0x88], 0
je case.0x1011d2ee.14
cmp esi, dword [edx + 0x84]
jbe case.0x1011d2ee.14
mov eax, 1
mov dword [edx + 0x60], eax
cmp dword [edx + 0x88], eax
jle case.0x1011d2ee.14
mov eax, 0xfffffff4
jmp fcn.1011d593
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x1011d44f
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x1011d445
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x1011d51a
test cl, 0x20
jne 0x1011d475
movzx edx, byte [esi + 1]
and ecx, 0x1f
and edx, 0x3f
shl ecx, 6
jmp 0x1011d518
test cl, 0x10
jne 0x1011d49a
movzx eax, byte [esi + 1]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
jmp 0x1011d51a
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
and edx, 0x3f
test cl, 8
jne 0x1011d4b8
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
jmp 0x1011d50a
and eax, 0x3f
test cl, 4
jne 0x1011d4e9
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
jmp 0x1011d51a
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [esi + 3]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx edx, byte [eax + 0x101480f8]
shl edx, 7
and ecx, 0x8000007f
jns 0x1011d53c
dec ecx
or ecx, 0xffffff80
inc ecx
add edx, ecx
movzx eax, word [edx*2 + 0x1014a2f8]
movzx ecx, byte [eax*8 + 0x10146d59]
cmp dword [ecx*4 + 0x10156f90], 2
jne 0x1011d55e
dec esi
jmp 0x101187a0
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
inc edx
push edx
push eax
push ecx
push ebx
push ebp
push edi
push esi
call fcn.101109d0
add esp, 0x1c
test eax, eax
je 0x10118790
jmp fcn.1011d593
mov eax, 0xfffffff2
jmp fcn.1011d593
mov eax, 0xfffffffb