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

Disassembly:
sub esp, 0x154
mov eax, dword [0x101a7680]
xor eax, esp
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0x160]
mov edx, dword [esp + 0x15c]
mov ecx, dword [esp + 0x16c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x164]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x168]
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 0x20], ecx
push esi
mov esi, dword [esp + 0x15c]
mov dword [esp + 8], esi
test edx, edx
jne 0x1011d82f
lea eax, [esp + 0x174]
cmp dword [esp + 0x174], edx
jne 0x1011d810
push 1
push edx
push edx
push edx
push edx
push edx
push eax
call fcn.1011d780
add esp, 0x1c
pop esi
mov ecx, dword [esp + 0x150]
xor ecx, esp
call fcn.1012fb43
add esp, 0x154
ret
sub eax, esi
cdq
xor eax, edx
sub eax, edx
neg eax
pop esi
mov ecx, dword [esp + 0x150]
xor ecx, esp
call fcn.1012fb43
add esp, 0x154
ret
push ebx
push ebp
mov ebp, dword [eax + 0x4c]
mov eax, dword [eax]
push edi
mov edi, dword [esp + 0x10]
mov dword [esp + 0x50], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x20], ebp
cmp eax, dword [edi + 4]
jae 0x1012a70f
inc eax
mov dword [edi], eax
mov eax, dword [esp + 0x180]
cmp eax, dword [edi + 8]
jae 0x1012a708
nop dword [eax + eax]
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x98], 2
jne 0x1011d897
mov dword [esp + 0x70], ecx
lea ecx, [esp + 0x70]
mov dword [esp + 0x74], esi
mov dword [esp + 0x30], ecx
mov dword [eax + 0x98], 0
mov ebx, eax
jmp 0x1011d8c7
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8d0
mov edi, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
jmp 0x1011d8d0
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x1c]
nop dword [eax + eax]
mov cl, byte [edx]
movzx edx, cl
mov dword [esp + 0x40], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], edx
cmp edx, 0xa1
ja case.0x1011d8fc.98
movzx eax, byte [edx + 0x1012a87c]
jmp dword [eax*4 + 0x1012a730]
mov eax, dword [ebx + 0x28]
inc eax
mov dword [ebx + 0x28], eax
cmp eax, dword [ebx + 0x2c]
ja 0x10127828
mov edx, dword [esp + 0x18]
movzx eax, byte [edx]
movzx ecx, byte [eax + 0x1016c330]
movzx eax, byte [edx + 1]
add edx, eax
add edx, ecx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x10]
mov ebp, esi
mov edx, dword [esp + 0x18]
mov ebx, edx
mov dword [esp + 0x44], ebp
mov edi, dword [eax + 0xac]
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
lea eax, [edx + 3]
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push eax
push esi
call fcn.1011d780
add esp, 0x1c
cmp eax, 1
je 0x1011d9e4
mov ecx, eax
cmp eax, 0xfffffc20
jne 0x1011d9b0
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x10]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov eax, 0xfffffc20
add edx, ecx
mov ecx, eax
cmp dword [ebp + 0x7c], edx
mov ebp, dword [esp + 0x44]
jae 0x1011d9b0
mov ecx, dword [esp + 0x18]
cmp byte [ecx], 0x77
je 0x1011d9b8
cmp byte [edx], 0x77
mov ecx, eax
je 0x1011d9b8
test eax, eax
jne case.default.0x1011e071
mov edx, dword [esp + 0x18]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x10]
add edx, ecx
mov dword [esp + 0x18], edx
mov dword [eax + 0xac], edi
cmp byte [edx], 0x77
je 0x1011d945
jmp 0x1011d9f3
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 0x7c]
mov dword [esp + 0x2c], eax
mov al, byte [edx]
cmp al, 0x82
je 0x1011da01
cmp al, 0x77
jne case.default.0x1011fad5
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov cl, byte [edx]
cmp cl, 0x77
je 0x1011da01
mov eax, dword [esp + 0x10]
mov dword [esp + 0x18], edx
mov edi, dword [eax + 0x8c]
mov esi, dword [eax + 0x80]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x14], esi
cmp cl, 0x78
je 0x1011da40
cmp esi, ebp
jne 0x10126fa8
mov ebp, dword [esp + 0x20]
add edx, 3
mov dword [esp + 0x18], edx
mov ebx, eax
jmp 0x1011d8d0
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x24], 0
jmp 0x1011e5ca
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x24], 0
jmp 0x1011e5eb
mov edx, dword [esp + 0x18]
movzx ebp, byte [edx + 1]
movzx eax, byte [edx + 2]
add edx, 3
shl ebp, 8
or ebp, eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x4c], ebp
cmp byte [edx], 0x76
jne 0x1011db92
mov edi, dword [0x101acef0]
test edi, edi
je 0x1011db7f
mov dword [esp + 0x78], 2
movzx eax, byte [edx + 1]
mov dword [esp + 0x7c], eax
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x74]
mov dword [esp + 0x84], ecx
mov eax, dword [eax + 0x78]
sub eax, ecx
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x2c]
sub eax, ecx
mov dword [esp + 0x8c], eax
mov eax, esi
sub eax, ecx
mov dword [esp + 0x90], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0xa0], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x1c]
cdq
sub eax, edx
mov dword [esp + 0xa4], ecx
mov ecx, dword [esp + 0x10]
mov edx, 0xffffffff
sar eax, 1
mov dword [esp + 0x94], eax
mov eax, dword [ecx + 0x90]
and eax, 0xffff
cmove eax, edx
mov dword [esp + 0x98], eax
mov eax, dword [ecx + 0xa8]
mov dword [esp + 0x9c], eax
mov eax, dword [ecx + 0xb0]
mov dword [esp + 0xa8], eax
lea eax, [esp + 0x78]
push eax
call edi
add esp, 4
test eax, eax
jg case.default.0x1011fad5
js 0x1012a717
mov edx, dword [esp + 0x18]
movzx eax, byte [0x1016c3a6]
add edx, eax
sub ebp, eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x4c], ebp
movzx edi, byte [edx]
xor ebx, ebx
mov dword [esp + 0x44], edi
lea eax, [edi - 0x8d]
cmp eax, 0x10
ja case.0x1011dbb1.146
movzx eax, byte [eax + 0x1012a938]
jmp dword [eax*4 + 0x1012a920]
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0xa4]
test edx, edx
je case.0x1011dbb1.145
mov eax, dword [esp + 0x18]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x1011dbec
cmp ecx, dword [edx + 4]
jne case.0x1011dbb1.145
mov eax, dword [esp + 0x44]
mov ebx, 1
movzx ebp, byte [eax + 0x1016c330]
jmp case.0x1011dbb1.145
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xa4], ebx
je case.0x1011dbb1.145
movzx edi, byte [edx + 3]
movzx eax, byte [edx + 4]
movzx ecx, byte [edx + 1]
movzx edx, byte [edx + 2]
shl edi, 8
or edi, eax
shl ecx, 8
mov eax, dword [esp + 0x10]
or edx, ecx
imul edx, dword [eax + 0x24]
add edx, dword [eax + 0x30]
test edi, edi
je case.0x1011dbb1.145
mov eax, dword [eax + 0xa4]
mov esi, edx
mov ebp, dword [eax + 4]
nop dword [eax]
movzx eax, byte [edx]
xor ebx, ebx
movzx ecx, byte [edx + 1]
dec edi
shl eax, 8
or ecx, eax
cmp ecx, ebp
sete bl
je 0x1011dc75
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x24]
add edx, esi
mov esi, edx
test edi, edi
jg 0x1011dc50
mov esi, dword [esp + 0x14]
mov eax, ebx
mov ebp, dword [esp + 0x4c]
jmp 0x1011dd25
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [esp + 0x1c]
jge 0x1011dcae
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x1011dcae
mov ebx, 1
mov eax, ebx
jmp 0x1011dd25
xor ebx, ebx
mov eax, ebx
jmp 0x1011dd25
movzx edi, byte [edx + 3]
movzx eax, byte [edx + 4]
movzx edx, byte [edx + 1]
mov ecx, dword [esp + 0x18]
shl edi, 8
or edi, eax
shl edx, 8
movzx eax, byte [ecx + 2]
or edx, eax
mov eax, dword [esp + 0x10]
imul edx, dword [eax + 0x24]
add edx, dword [eax + 0x30]
test edi, edi
je case.0x1011dbb1.145
movzx ecx, byte [edx]
dec edi
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [esp + 0x1c]
jge 0x1011dd0e
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jl 0x1011dd0e
mov ebx, 1
jmp 0x1011dd10
xor ebx, ebx
mov eax, ebx
test ebx, ebx
jne 0x1011ddd6
mov ecx, dword [esp + 0x10]
add edx, dword [ecx + 0x24]
test edi, edi
jg 0x1011dce5
test eax, eax
je case.0x1011dbb1.145
mov eax, dword [esp + 0x44]
movzx ebp, byte [eax + 0x1016c330]
jmp case.0x1011dbb1.145
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x98], 1
mov eax, dword [esp + 0x180]
inc eax
push eax
push 0
push ecx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push edx
push esi
call fcn.1011d780
add esp, 0x1c
cmp eax, 1
jne 0x1011dde3
mov eax, dword [esp + 0x10]
mov ebx, 1
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 0x8c]
cmp eax, ecx
cmovg ecx, eax
cmp byte [edx], 0x92
mov dword [esp + 0x1c], ecx
jne 0x1011dd94
inc edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
cmp byte [eax], 0x77
jne 0x1011ddc6
nop word [eax + eax]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov eax, edx
cmp byte [eax], 0x77
je 0x1011ddb0
movzx eax, byte [edi + 0x1016c330]
sub edx, eax
add edx, 3
mov dword [esp + 0x18], edx
mov eax, dword [esp + 0x44]
movzx ebp, byte [eax + 0x1016c330]
jmp case.0x1011dbb1.145
test eax, eax
je case.0x1011dbb1.145
cmp eax, 0xfffffc20
jne 0x1012a717
mov edx, dword [esp + 0x18]
add edx, ebp
mov dword [esp + 0x18], edx
test ebx, ebx
jne 0x10127013
cmp byte [edx - 3], 0x77
je 0x10127013
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov eax, dword [esp + 0x18]
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
mov eax, dword [ebx + 0x90]
and eax, 0xffff0000
or eax, edx
mov dword [ebx + 0x90], eax
lea edi, [edx + edx]
cmp edi, dword [ebx + 0x14]
jl 0x1011de6a
mov edx, dword [esp + 0x18]
or eax, 0x10000
mov edi, dword [esp + 0x1c]
add edx, 3
mov ebp, dword [esp + 0x20]
mov dword [ebx + 0x90], eax
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, edx
mov eax, dword [ecx + eax*4]
mov dword [ecx + edi*4], eax
mov ecx, esi
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
mov dword [eax + edi*4 + 4], ecx
mov ecx, dword [esp + 0x1c]
cmp edi, ecx
jl 0x10120539
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0xc]
lea ecx, [eax + ecx*4]
lea edx, [eax + edi*4]
cmp ecx, edx
jae 0x1011debf
mov eax, ecx
nop dword [eax + eax]
mov dword [ecx], 0xffffffff
lea ecx, [eax + 4]
mov eax, ecx
cmp ecx, edx
jb 0x1011deb0
mov edx, dword [esp + 0x18]
add edi, 2
mov ebp, dword [esp + 0x20]
add edx, 3
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x98], 1
mov edi, dword [eax + 0xac]
jne 0x1011defe
mov dword [eax + 0x98], 0
mov ebx, 1
jmp 0x1011df00
xor ebx, ebx
mov edx, dword [esp + 0x18]
mov ebp, eax
mov eax, dword [esp + 0x180]
inc eax
push eax
push 0
push ebp
push dword [esp + 0x28]
lea eax, [edx + 3]
push dword [esp + 0x3c]
push eax
push esi
call fcn.1011d780
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x1011df9e
cmp edx, 0xfffffc19
je 0x1011df9e
mov dword [ebp + 0xac], edi
cmp edx, 0xfffffc20
jne 0x1011df74
mov eax, dword [esp + 0x18]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, edx
add ecx, dword [esp + 0x18]
cmp dword [ebp + 0x7c], ecx
jae 0x1011df74
mov eax, dword [esp + 0x18]
cmp byte [eax], 0x77
je 0x1011df70
cmp byte [ecx], 0x77
mov eax, edx
jne 0x1011df74
xor edx, edx
xor eax, eax
test edx, edx
jne 0x1012a717
mov edx, dword [esp + 0x18]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esp + 0x18], edx
cmp byte [edx], 0x77
je 0x1011df06
jmp 0x1011dfab
mov edx, dword [esp + 0x18]
mov eax, ebp
mov eax, dword [eax + 0x7c]
mov dword [esp + 0x2c], eax
cmp byte [edx], 0x78
je case.default.0x1011fad5
test ebx, ebx
jne 0x101279aa
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1011dfc0
mov eax, ebp
add edx, 3
mov ebp, dword [esp + 0x20]
mov ebx, eax
mov dword [esp + 0x18], edx
mov edi, dword [eax + 0x8c]
mov dword [esp + 0x1c], edi
jmp 0x1011d8d0
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x98], 1
mov edi, dword [eax + 0xac]
jne 0x1011e016
mov dword [eax + 0x98], 0
mov ebx, 1
jmp 0x1011e018
xor ebx, ebx
mov edx, dword [esp + 0x18]
nop dword [eax]
mov eax, dword [esp + 0x180]
inc eax
push eax
push 0
push dword [esp + 0x18]
lea eax, [edx + 3]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push eax
push esi
call fcn.1011d780
mov ecx, eax
add esp, 0x1c
mov eax, dword [esp + 0x10]
mov dword [eax + 0xac], edi
cmp ecx, 0xfffffc1c
jle 0x1011e0c2
test ecx, ecx
jg 0x10127873
je 0x1011e0a0
lea eax, [ecx + 0x3e3]
cmp eax, 3
ja case.default.0x1011e071
jmp dword [eax*4 + 0x1012a94c]
mov edx, dword [esp + 0x18]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
mov ecx, dword [esp + 0x10]
add eax, edx
cmp dword [ecx + 0x7c], eax
jae 0x1011e0d0
cmp byte [edx], 0x77
je 0x1011e0a4
cmp byte [eax], 0x77
jne 0x1011e0d0
jmp 0x1011e0a4
mov edx, dword [esp + 0x18]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esp + 0x18], edx
cmp byte [edx], 0x77
je 0x1011e020
jmp 0x1011e0e4
jne 0x1012787a
mov edx, dword [esp + 0x18]
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1011e0d0
test ebx, ebx
jne 0x101279aa
add edx, 3
mov dword [esp + 0x18], edx
jmp 0x1011d8c3
mov eax, dword [esp + 0x18]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
test ebp, ebp
je 0x1011e148
or ecx, eax
mov eax, dword [esp + 0x10]
jbe 0x1011e15d
mov edx, dword [eax + 0x74]
dec esi
dec ecx
mov dword [esp + 0x14], esi
cmp esi, edx
jb case.default.0x1011fad5
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x1011e13e
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x1011e130
mov dword [esp + 0x14], esi
test ecx, ecx
jg 0x1011e116
mov eax, dword [esp + 0x10]
jmp 0x1011e15d
or ecx, eax
mov eax, dword [esp + 0x10]
sub esi, ecx
mov dword [esp + 0x14], esi
cmp esi, dword [eax + 0x74]
jb case.default.0x1011fad5
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
cmp esi, dword [eax + 0x84]
jae 0x10120545
mov ebp, dword [esp + 0x20]
add edx, 3
mov dword [eax + 0x84], esi
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov edi, dword [0x101acef0]
test edi, edi
je 0x1011e276
mov edx, dword [esp + 0x18]
mov dword [esp + 0xac], 2
movzx eax, byte [edx + 1]
mov dword [esp + 0xb0], eax
mov eax, dword [ebx + 0xc]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x10]
mov ecx, dword [eax + 0x74]
mov dword [esp + 0xb8], ecx
mov eax, dword [eax + 0x78]
sub eax, ecx
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x2c]
sub eax, ecx
mov dword [esp + 0xc0], eax
mov eax, esi
sub eax, ecx
mov dword [esp + 0xc4], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0xd4], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x1c]
cdq
sub eax, edx
mov dword [esp + 0xd8], ecx
sar eax, 1
mov ecx, 0xffffffff
mov dword [esp + 0xc8], eax
mov eax, dword [ebx + 0x90]
and eax, 0xffff
cmove eax, ecx
mov dword [esp + 0xcc], eax
mov eax, dword [ebx + 0xa8]
mov dword [esp + 0xd0], eax
mov eax, dword [ebx + 0xb0]
mov dword [esp + 0xdc], eax
lea eax, [esp + 0xac]
push eax
call edi
add esp, 4
test eax, eax
jg case.default.0x1011fad5
js 0x1012a717
mov edx, dword [esp + 0x18]
add edx, 6
mov dword [esp + 0x18], edx
jmp 0x1011d8c7
mov edi, dword [esp + 0x18]
mov edx, dword [ebx + 0x70]
movzx ebx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ebx, 8
or ebx, eax
add ebx, edx
cmp ebx, edx
jne 0x1011e2a4
xor edx, edx
jmp 0x1011e2b1
movzx edx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl edx, 8
or edx, eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0xa4]
test ecx, ecx
je 0x1011e2da
nop
cmp edx, dword [ecx + 4]
jne 0x1011e2ce
cmp esi, dword [ecx + 0x14]
je 0x1012788d
mov eax, dword [ecx]
mov ecx, eax
test eax, eax
jne 0x1011e2c0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x5c], edx
lea ecx, [esp + 0x58]
mov eax, dword [eax + 0x90]
add edi, 3
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x6c], esi
mov dword [esp + 0x18], edi
mov eax, dword [eax + 0xa4]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0xa4], ecx
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x64], ecx
cmp ecx, 0x1e
jg 0x1011e328
lea eax, [esp + 0xe0]
mov dword [esp + 0x60], eax
jmp 0x1011e349
lea eax, [ecx*4]
push eax
call dword [0x101a7400]
add esp, 4
mov dword [esp + 0x60], eax
test eax, eax
je 0x101278b7
mov ecx, dword [esp + 0x64]
shl ecx, 2
push ecx
mov ecx, dword [esp + 0x14]
push dword [ecx + 0xc]
push eax
call fcn.10131920
mov edx, dword [esp + 0x1c]
add esp, 0xc
cmp byte [ebx], 0x88
sbb ebp, ebp
inc ebp
test ebp, ebp
je 0x1011e37b
mov eax, dword [esp + 0x10]
mov edx, eax
mov dword [eax + 0x98], 2
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ebx]
push edx
push dword [esp + 0x28]
movzx eax, byte [eax + 0x1016c330]
push dword [esp + 0x3c]
add eax, ebx
push eax
push esi
call fcn.1011d780
mov ecx, dword [esp + 0x80]
mov edi, eax
mov eax, dword [esp + 0x2c]
shl ecx, 2
push ecx
push dword [esp + 0x80]
push dword [eax + 0xc]
call fcn.10131920
mov edx, dword [esp + 0x38]
add esp, 0x28
mov eax, dword [esp + 0x68]
mov dword [edx + 0x90], eax
mov eax, dword [esp + 0x58]
mov dword [edx + 0xa4], eax
cmp edi, 1
je 0x1011e454
cmp edi, 0xfffffc19
je 0x1011e454
cmp edi, 0xfffffc1c
jl 0x1011e3fc
cmp edi, 0xfffffc20
jle 0x1011e430
test edi, edi
jne 0x10127897
lea eax, [esp + 0x58]
mov dword [edx + 0xa4], eax
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x1011e367
mov eax, dword [esp + 0x58]
mov dword [edx + 0xa4], eax
mov eax, dword [esp + 0x60]
lea ecx, [esp + 0xe0]
cmp eax, ecx
je case.default.0x1011fad5
push eax
call dword [0x101a7404]
add esp, 4
xor eax, eax
jmp 0x1012a717
mov eax, dword [esp + 0x60]
lea ecx, [esp + 0xe0]
cmp eax, ecx
je 0x1011e46d
push eax
call dword [0x101a7404]
add esp, 4
mov eax, dword [esp + 0x10]
mov esi, dword [eax + 0x80]
mov eax, dword [eax + 0x7c]
mov dword [esp + 0x14], esi
mov dword [esp + 0x2c], eax
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov edx, dword [esp + 0x18]
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1011e4a0
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x180]
mov edi, dword [esp + 0x18]
inc eax
push eax
push dword [esp + 0x34]
inc edi
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push edi
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edx, edi
nop dword [eax]
movzx ecx, byte [edi + 1]
movzx edi, byte [edi + 2]
shl ecx, 8
or edi, ecx
add edi, edx
mov edx, edi
cmp byte [edi], 0x77
je 0x1011e4f0
lea edx, [edi + 3]
mov dword [esp + 0x18], edx
jmp 0x1011d8c7
mov edx, dword [esp + 0x18]
inc edx
mov edi, edx
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx edx, byte [edx + 2]
shl ecx, 8
or edx, ecx
add edx, edi
mov edi, edx
cmp byte [edx], 0x77
je 0x1011e520
mov eax, dword [esp + 0x180]
mov edi, dword [esp + 0x1c]
inc eax
push eax
push dword [esp + 0x34]
lea eax, [edx + 3]
push ebx
push edi
push dword [esp + 0x3c]
push eax
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x18]
inc eax
mov edx, eax
nop dword [eax + eax]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
cmp byte [eax], 0x77
je 0x1011e580
lea edx, [eax + 3]
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov ecx, dword [esp + 0x18]
inc ecx
mov dword [esp + 0x24], 1
mov dword [esp + 0x18], ecx
movzx edx, byte [ecx]
mov dword [esp + 0x3c], edx
cmp edx, 0x86
je 0x1011e5ca
cmp edx, 0x8b
jne 0x1011e5eb
movzx ebx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
mov edi, dword [esp + 0x10]
shl ebx, 8
or ebx, eax
mov dword [esp + 0x44], ebx
lea eax, [ebx + ebx]
cmp eax, dword [edi + 0x14]
jl 0x1011e758
mov eax, dword [esp + 0x10]
mov edi, ecx
xor ebp, ebp
mov ebx, dword [eax + 0x90]
sub edi, dword [eax + 0x70]
mov dword [esp + 0x44], ebx
cmp edx, 0x88
jb 0x1011e612
mov dword [eax + 0x98], 2
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ecx]
push dword [esp + 0x18]
push dword [esp + 0x28]
movzx eax, byte [eax + 0x1016c330]
push dword [esp + 0x3c]
add eax, ecx
push eax
push esi
call fcn.1011d780
add esp, 0x1c
cmp eax, 0xfffffc1a
jne 0x1011e690
mov eax, dword [esp + 0x10]
mov ebp, 1
mov dword [esp + 0x4c], ebp
mov ecx, dword [eax + 0x8c]
mov edx, dword [eax + 0x7c]
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax + 0x70]
mov eax, dword [eax + 0x80]
add ecx, edi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x2c], edx
cmp esi, eax
je 0x1011e70d
mov edx, dword [esp + 0x3c]
mov esi, eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], esi
jmp 0x1011e600
mov ecx, eax
cmp eax, 0xfffffc20
jne 0x1011e6d0
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov eax, 0xfffffc20
add edx, ecx
mov ecx, eax
cmp dword [ebx + 0x7c], edx
mov ebx, dword [esp + 0x44]
jae 0x1011e6d0
mov eax, dword [esp + 0x18]
cmp byte [eax], 0x77
je 0x1011e6d8
cmp byte [edx], 0x77
mov eax, ecx
je 0x1011e6d8
test eax, eax
jne case.default.0x1011e071
mov edx, dword [esp + 0x18]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esp + 0x18], edx
mov eax, edx
cmp byte [edx], 0x77
jne 0x1011e734
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x18]
mov dword [eax + 0x90], ebx
jmp 0x1011e600
mov edx, ecx
nop
mov ebp, dword [esp + 0x18]
movzx ecx, byte [ecx + 1]
shl ecx, 8
movzx eax, byte [ebp + 2]
or ecx, eax
add ecx, edx
mov dword [esp + 0x18], ecx
mov eax, ecx
mov edx, ecx
cmp byte [ecx], 0x77
je 0x1011e710
mov ebp, dword [esp + 0x4c]
test ebp, ebp
jne 0x1011e744
mov edx, eax
cmp dword [esp + 0x24], ebp
je case.default.0x1011fad5
mov ebx, dword [esp + 0x10]
add edx, 3
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x18], edx
jmp 0x1011d8c7
mov ebp, ecx
xor edx, edx
mov ecx, dword [edi + 0xc]
sub ebp, dword [edi + 0x70]
mov dword [esp + 0x40], edx
mov edx, dword [ecx + eax*4]
mov eax, dword [ecx + eax*4 + 4]
mov dword [esp + 0x28], eax
mov eax, dword [edi + 0x10]
sub eax, ebx
mov dword [esp + 0x4c], edx
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x38], eax
mov eax, edi
mov edi, dword [eax + 0x90]
nop dword [eax]
mov ecx, dword [eax + 0x10]
mov edx, esi
sub edx, dword [eax + 0x74]
sub ecx, ebx
cmp dword [esp + 0x3c], 0x88
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], edx
jb 0x1011e7b8
mov eax, dword [esp + 0x10]
mov dword [eax + 0x98], 2
mov eax, dword [esp + 0x180]
mov ecx, dword [esp + 0x18]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
movzx eax, byte [ecx]
push dword [esp + 0x28]
push dword [esp + 0x3c]
movzx eax, byte [eax + 0x1016c330]
add eax, ecx
push eax
push esi
call fcn.1011d780
add esp, 0x1c
cmp eax, 0xfffffc1a
jne 0x1011e83b
mov eax, dword [esp + 0x10]
mov dword [esp + 0x40], 1
mov ecx, dword [eax + 0x8c]
mov edx, dword [eax + 0x7c]
mov edi, dword [eax + 0x90]
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax + 0x70]
mov eax, dword [eax + 0x80]
add ecx, ebp
mov dword [esp + 0x18], ecx
mov dword [esp + 0x2c], edx
cmp esi, eax
je 0x1011e8b2
mov esi, eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], esi
jmp 0x1011e790
mov ecx, eax
cmp eax, 0xfffffc20
jne 0x1011e87b
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov eax, 0xfffffc20
add edx, ecx
mov ecx, eax
cmp dword [ebx + 0x7c], edx
mov ebx, dword [esp + 0x44]
jae 0x1011e87b
mov eax, dword [esp + 0x18]
cmp byte [eax], 0x77
je 0x1011e883
cmp byte [edx], 0x77
mov eax, ecx
je 0x1011e883
test eax, eax
jne case.default.0x1011e071
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
mov dword [eax + 0x90], edi
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esp + 0x18], edx
cmp byte [edx], 0x77
jne 0x1011e8dc
mov eax, dword [esp + 0x10]
jmp 0x1011e790
mov edx, ecx
mov esi, dword [esp + 0x18]
movzx ecx, byte [ecx + 1]
shl ecx, 8
movzx eax, byte [esi + 2]
or ecx, eax
add ecx, edx
mov dword [esp + 0x18], ecx
mov edx, ecx
cmp byte [ecx], 0x77
je 0x1011e8b4
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x40]
jmp 0x1011e911
mov edx, dword [esp + 0x40]
test edx, edx
jne 0x1011e911
mov ebp, dword [esp + 0x10]
lea ecx, [ebx + ebx]
mov edi, dword [esp + 0x4c]
mov eax, dword [ebp + 0xc]
mov dword [eax + ecx*4], edi
mov eax, dword [ebp + 0xc]
mov edi, dword [esp + 0x28]
mov dword [eax + ecx*4 + 4], edi
mov eax, ebp
mov edi, dword [esp + 0x38]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
sub ecx, ebx
mov dword [eax + ecx*4], edi
cmp dword [esp + 0x24], 0
jne 0x10120539
test edx, edx
jmp 0x10120533
mov edx, dword [esp + 0x18]
mov ebx, edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub ebx, ecx
mov dword [esp + 0x24], ebx
mov cl, byte [ebx]
cmp cl, 0x88
jae 0x1011e94c
cmp cl, 0x81
je 0x1011e94c
xor ebp, ebp
jmp 0x1011e95c
mov ebp, dword [esp + 0x30]
lea eax, [ebp + 4]
mov ebp, dword [ebp]
mov dword [esp + 0x30], ebp
mov ebp, dword [eax]
cmp cl, 0x7d
jb 0x1011e96a
cmp cl, 0x80
jbe 0x10127993
cmp cl, 0x82
je 0x10127993
cmp cl, 0x85
je 0x1011e98b
cmp cl, 0x8a
je 0x1011e98b
cmp cl, 0x86
je 0x1011e98b
cmp cl, 0x8b
jne 0x1011ea4e
movzx edi, byte [ebx + 3]
movzx eax, byte [ebx + 4]
mov ecx, dword [esp + 0x10]
shl edi, 8
or edi, eax
mov eax, dword [ecx + 0xa4]
lea ebx, [edi + edi]
test eax, eax
je 0x1011e9b2
cmp dword [eax + 4], edi
je 0x101278c1
mov eax, dword [ecx + 0x90]
and eax, 0xffff0000
or eax, edi
mov dword [ecx + 0x90], eax
cmp ebx, dword [ecx + 0x14]
jl 0x1011e9df
mov ebx, dword [esp + 0x24]
or eax, 0x10000
mov edi, dword [esp + 0x1c]
mov dword [ecx + 0x90], eax
jmp 0x1011ea52
cmp ebx, dword [esp + 0x1c]
jle 0x1011ea13
mov eax, dword [ecx + 0xc]
mov ecx, dword [esp + 0x1c]
lea edx, [eax + ebx*4]
lea ecx, [eax + ecx*4]
cmp ecx, edx
jae 0x1011ea0f
mov eax, ecx
nop dword [eax + eax]
mov dword [ecx], 0xffffffff
lea ecx, [eax + 4]
mov eax, ecx
cmp ecx, edx
jb 0x1011ea00
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, edi
mov edi, dword [esp + 0x1c]
mov eax, dword [ecx + eax*4]
mov dword [ecx + ebx*4], eax
mov ecx, esi
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
mov dword [eax + ebx*4 + 4], ecx
mov ecx, dword [esp + 0x10]
cmp edi, ebx
jg 0x1011ea48
lea edi, [ebx + 2]
mov dword [esp + 0x1c], edi
mov ebx, dword [esp + 0x24]
jmp 0x1011ea52
mov ecx, dword [esp + 0x10]
mov al, byte [edx]
cmp al, 0x7b
je 0x10127976
cmp al, 0x78
je 0x1011ea68
cmp esi, ebp
jne 0x10127054
cmp byte [ebx], 0x81
je 0x1012793a
mov ebx, dword [esp + 0x10]
add edx, 3
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x44], 0
je 0x1011ea9e
cmp esi, dword [eax + 0x74]
je case.default.0x1011fad5
jmp 0x1011ea9e
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x74]
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
inc edx
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x44], 0
je 0x1011ead0
cmp esi, dword [eax + 0x74]
je case.default.0x1011fad5
mov edx, dword [eax + 0x74]
cmp esi, edx
je 0x10120822
cmp esi, dword [eax + 0x78]
je case.default.0x1011fad5
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x1011eb2a
cmp esi, edx
jbe 0x1011eb0a
push ebp
add eax, 0x1c
push eax
push edx
push ecx
push esi
call fcn.1012ca30
add esp, 0x14
test eax, eax
je 0x1011eb0a
mov eax, 1
jmp 0x1011eb0c
xor eax, eax
test eax, eax
je case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
inc edx
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov ecx, dword [eax + 0x1c]
lea eax, [ecx + edx]
cmp esi, eax
jb case.default.0x1011fad5
mov ebx, dword [esp + 0x10]
mov eax, esi
sub eax, ecx
mov al, byte [eax]
cmp al, byte [ebx + 0x34]
jne case.default.0x1011fad5
cmp ecx, 1
je case.0x1011fad5.10
mov eax, esi
sub eax, ecx
mov al, byte [eax + 1]
cmp al, byte [ebx + 0x35]
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [ebx + 0x94]
add eax, dword [ebx + 0x74]
cmp esi, eax
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov edx, dword [esp + 0x18]
inc edx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x1011ec27
mov edx, dword [eax + 0x18]
test edx, edx
je 0x1011ebf3
push ebp
add eax, 0x1c
push eax
push ecx
push edx
push esi
call fcn.1012c8a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
mov dword [esp + 0x44], eax
je 0x101279b4
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
inc edx
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov edx, dword [eax + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x101279b8
mov ebx, dword [esp + 0x10]
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x1011ec20
cmp edx, 1
je case.0x1011fad5.10
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je case.0x1011fad5.10
mov eax, ebx
jmp 0x101279b8
cmp dword [eax + 0x48], 0
jne case.default.0x1011fad5
mov eax, dword [eax + 0x88]
mov ebx, dword [esp + 0x10]
test eax, eax
je case.0x1011fad5.10
cmp esi, dword [ebx + 0x84]
jbe case.0x1011fad5.10
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x48], 0
jne case.default.0x1011fad5
cmp dword [eax + 0x58], 0
je 0x1011ec9a
jmp 0x1011ec8b
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jb case.default.0x1011fad5
jmp 0x1011ec31
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x1011ec31
mov edx, dword [eax + 0x18]
test edx, edx
je 0x1011ecce
push ebp
add eax, 0x1c
push eax
push ecx
push edx
push esi
call fcn.1012c8a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
mov dword [esp + 0x44], eax
je 0x101279b4
mov ecx, dword [esp + 0x10]
jmp 0x1011ecfb
mov edx, dword [eax + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x101279b8
mov ecx, dword [esp + 0x10]
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
jne 0x101279ed
cmp edx, 1
je 0x1011ecfb
mov al, byte [esi + 1]
cmp al, byte [ecx + 0x35]
jne 0x101279ed
mov eax, dword [ecx + 0x78]
sub eax, dword [ecx + 0x1c]
cmp esi, eax
mov eax, dword [esp + 0x10]
jne 0x101279b8
jmp 0x1011ec31
test ebp, ebp
je 0x1011f000
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x74]
je 0x1011ee79
mov al, byte [esi - 1]
lea edx, [esi - 1]
and al, 0xc0
mov ecx, edx
cmp al, 0x80
jne 0x1011ed41
mov al, byte [edx - 1]
dec edx
and al, 0xc0
mov ecx, edx
cmp al, 0x80
je 0x1011ed35
mov eax, dword [esp + 0x10]
cmp ecx, dword [eax + 0x84]
jae 0x1011ed53
mov dword [eax + 0x84], edx
movzx ebx, byte [edx]
mov eax, ebx
mov ecx, ebx
mov ebp, ebx
mov edi, ebx
cmp ebx, 0xc0
jb 0x1011ee0e
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x1011ed83
and eax, 0x1f
mov ebx, ecx
shl eax, 6
jmp 0x1011ee04
movzx eax, byte [edx + 2]
test bl, 0x10
jne 0x1011ed96
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x1011edfe
and eax, 0x3f
test bl, 8
jne 0x1011edb1
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x1011edfe
test bl, 4
jne 0x1011edd5
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
jmp 0x1011edfe
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
shl ebx, 6
and eax, 0x3f
or ebx, eax
mov eax, ebx
mov ecx, ebx
mov ebp, ebx
mov edi, ebx
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x54], 0
je 0x1011ee61
cmp ebp, 0x5f
je 0x1011ee5a
shr eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x1011ee37
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x1011ee5a
cmp eax, 3
jne 0x1011ee7b
mov ebp, 1
jmp 0x1011ee7d
cmp edi, 0x100
jae 0x1011ee7b
mov eax, dword [edx + 0x40]
test byte [ebx + eax], 0x10
je 0x1011ee7b
mov ebp, 1
jmp 0x1011ee7d
mov edx, eax
xor ebp, ebp
cmp esi, dword [edx + 0x78]
jb 0x1011eeb1
mov eax, dword [edx + 0x88]
test eax, eax
je 0x1011eea4
cmp esi, dword [edx + 0x84]
jbe 0x1011eea4
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov ebx, dword [esp + 0x10]
xor ecx, ecx
xor edx, edx
jmp 0x1011f0b3
movzx edx, byte [esi]
mov eax, edx
mov ecx, edx
mov edi, edx
cmp edx, 0xc0
jb 0x1011ef68
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x1011eedf
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x1011ef60
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x1011eef2
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x1011ef5a
and eax, 0x3f
test dl, 8
jne 0x1011ef0d
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x1011ef5a
test dl, 4
jne 0x1011ef31
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x1011ef5a
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
mov ecx, edx
mov edi, edx
mov ebx, dword [esp + 0x10]
cmp dword [ebx + 0x54], 0
mov ebx, edx
je 0x1011efd3
cmp ebx, 0x5f
je 0x1011efc3
shr eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x1011ef93
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x1011efc3
cmp eax, 3
je 0x1011efc3
mov ebx, dword [esp + 0x10]
xor edx, edx
xor ecx, ecx
jmp 0x1011f0b3
mov ebx, dword [esp + 0x10]
mov edx, 1
mov ecx, edx
jmp 0x1011f0b3
cmp edi, 0x100
jae 0x1011eea4
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
je 0x1011eea4
mov ebx, dword [esp + 0x10]
mov ecx, 1
mov edx, ecx
jmp 0x1011f0b3
cmp esi, dword [ebx + 0x74]
je 0x1011f086
cmp esi, dword [ebx + 0x84]
ja 0x1011f01a
lea eax, [esi - 1]
mov dword [ebx + 0x84], eax
cmp dword [ebx + 0x54], 0
movzx ecx, byte [esi - 1]
je 0x1011f076
cmp ecx, 0x5f
je 0x1011f06f
mov eax, ecx
test eax, eax
jns 0x1011f032
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x1011f04c
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x1011f06f
cmp eax, 3
jne 0x1011f086
mov ebp, 1
jmp 0x1011f088
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je 0x1011f086
mov ebp, 1
jmp 0x1011f088
xor ebp, ebp
cmp esi, dword [ebx + 0x78]
jb 0x1011f0d2
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x1011f0af
cmp esi, dword [ebx + 0x84]
jbe 0x1011f0af
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
xor ecx, ecx
xor edx, edx
mov edi, dword [esp + 0x18]
mov al, byte [edi]
inc edi
mov dword [esp + 0x18], edi
cmp al, 5
jne 0x1011f151
xor eax, eax
cmp ecx, ebp
sete al
jmp 0x1011f158
cmp dword [ebx + 0x54], 0
movzx ecx, byte [esi]
je 0x1011f138
cmp ecx, 0x5f
je 0x1011f12c
mov eax, ecx
test eax, eax
jns 0x1011f0e9
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x1011f103
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x1011f12c
cmp eax, 3
je 0x1011f12c
xor edx, edx
xor ecx, ecx
jmp 0x1011f0b3
mov edx, 1
mov ecx, edx
jmp 0x1011f0b3
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je 0x1011f0af
mov ecx, 1
mov edx, ecx
jmp 0x1011f0b3
xor eax, eax
cmp edx, ebp
setne al
test eax, eax
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x1011f1a2
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x1011f196
push ebp
lea eax, [ebx + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.1012c8a0
add esp, 0x14
test eax, eax
je 0x1011f196
mov eax, 1
jmp 0x1011f198
xor eax, eax
test eax, eax
jne case.default.0x1011fad5
jmp 0x1011f1ca
mov eax, dword [ebx + 0x78]
mov ecx, dword [ebx + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x1011f1ca
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x1011f1ca
cmp ecx, 1
je case.default.0x1011fad5
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je case.default.0x1011fad5
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je case.0x1011d8fc.13
mov eax, dword [ebx + 0x78]
dec eax
cmp esi, eax
jne case.0x1011d8fc.13
cmp dword [ebx + 0x18], 0
jne case.0x1011d8fc.13
cmp dword [ebx + 0x1c], 2
jne case.0x1011d8fc.13
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne case.0x1011d8fc.13
mov dword [ebx + 0x64], 1
cmp ecx, 1
jg 0x1012a342
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x101279f1
inc esi
mov dword [esp + 0x14], esi
test ebp, ebp
je case.0x1011fad5.10
cmp esi, edx
jae case.0x1011fad5.10
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne case.0x1011fad5.10
lea esi, [ecx + 1]
mov dword [esp + 0x14], esi
mov ecx, esi
cmp esi, edx
jb 0x1011f221
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
mov edx, dword [esp + 0x18]
inc esi
inc edx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x14], esi
mov eax, ecx
test ebp, ebp
je 0x1011f36a
cmp ecx, 0xc0
jb 0x1011f36a
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1011f2a8
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1011f364
test cl, 0x10
jne 0x1011f2c9
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011f364
test cl, 8
jne 0x1011f2f3
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1011f364
test cl, 4
jne 0x1011f329
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1011f364
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
cmp eax, 0x100
jae case.0x1011fad5.10
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x14], esi
mov eax, edx
test ebp, ebp
je 0x1011f4aa
cmp edx, 0xc0
jb 0x1011f4aa
test dl, 0x20
jne 0x1011f3d6
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, ecx
or edx, eax
inc esi
jmp 0x1011f4a4
test dl, 0x10
jne 0x1011f3fd
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x1011f4a4
test dl, 8
jne 0x1011f42d
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x1011f4a4
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x1011f469
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x1011f4a4
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
mov eax, edx
cmp eax, 0xff
ja case.default.0x1011fad5
mov eax, dword [ebx + 0x40]
test byte [edx + eax], 4
je case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x14], esi
mov eax, edx
test ebp, ebp
je 0x1011f5ea
cmp edx, 0xc0
jb 0x1011f5ea
test dl, 0x20
jne 0x1011f516
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, ecx
or edx, eax
inc esi
jmp 0x1011f5e4
test dl, 0x10
jne 0x1011f53d
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x1011f5e4
test dl, 8
jne 0x1011f56d
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x1011f5e4
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x1011f5a9
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x1011f5e4
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
mov eax, edx
cmp eax, 0x100
jae case.0x1011fad5.10
mov eax, dword [ebx + 0x40]
test byte [edx + eax], 1
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x14], esi
mov eax, edx
test ebp, ebp
je 0x1011f72a
cmp edx, 0xc0
jb 0x1011f72a
test dl, 0x20
jne 0x1011f656
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, ecx
or edx, eax
inc esi
jmp 0x1011f724
test dl, 0x10
jne 0x1011f67d
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x1011f724
test dl, 8
jne 0x1011f6ad
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x1011f724
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x1011f6e9
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x1011f724
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
mov eax, edx
cmp eax, 0xff
ja case.default.0x1011fad5
mov eax, dword [ebx + 0x40]
test byte [edx + eax], 1
je case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x14], esi
mov eax, ecx
test ebp, ebp
je 0x1011f856
cmp ecx, 0xc0
jb 0x1011f856
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1011f794
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1011f850
test cl, 0x10
jne 0x1011f7b5
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011f850
test cl, 8
jne 0x1011f7df
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1011f850
test cl, 4
jne 0x1011f815
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1011f850
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
cmp eax, 0x100
jae case.0x1011fad5.10
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x14], esi
mov eax, ecx
test ebp, ebp
je 0x1011f982
cmp ecx, 0xc0
jb 0x1011f982
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1011f8c0
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1011f97c
test cl, 0x10
jne 0x1011f8e1
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011f97c
test cl, 8
jne 0x1011f90b
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1011f97c
test cl, 4
jne 0x1011f941
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1011f97c
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
cmp eax, 0xff
ja case.default.0x1011fad5
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x14], esi
mov eax, ecx
mov edx, ecx
test ebp, ebp
je 0x1011fab2
cmp ecx, 0xc0
jb 0x1011fab2
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1011f9ee
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1011faaa
test cl, 0x10
jne 0x1011fa0f
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011faaa
test cl, 8
jne 0x1011fa39
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1011faaa
test cl, 4
jne 0x1011fa6f
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1011faaa
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
mov edx, ecx
cmp eax, 0x85
ja 0x1011fb3d
cmp edx, 0x85
je case.0x1011fad5.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x1011fad5
jmp dword [ecx*4 + 0x1012a95c]
cmp esi, dword [ebx + 0x78]
jb 0x1011fb1d
mov eax, dword [ebx + 0x88]
test eax, eax
je case.0x1011fad5.10
cmp esi, dword [ebx + 0x84]
jbe case.0x1011fad5.10
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp byte [esi], 0xa
jne case.0x1011fad5.10
mov edx, dword [esp + 0x18]
inc esi
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
sub ecx, 0x2028
je case.0x1011fad5.11
sub ecx, 1
jne case.default.0x1011fad5
cmp dword [ebx + 0x68], 0
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov eax, edx
mov dword [esp + 0x14], esi
mov edi, edx
mov ebp, edx
mov ecx, edx
mov ebx, edx
je 0x1011fc93
cmp edx, 0xc0
jb 0x1011fc93
test dl, 0x20
jne 0x1011fbb7
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, ecx
or edx, eax
inc esi
jmp 0x1011fc85
test dl, 0x10
jne 0x1011fbde
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x1011fc85
test dl, 8
jne 0x1011fc0e
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x1011fc85
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x1011fc4a
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x1011fc85
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
mov eax, edx
mov edi, edx
mov ebp, edx
mov ecx, edx
mov ebx, edx
cmp eax, 0x2000
ja 0x1011fcfa
cmp edi, 0x2000
je case.default.0x1011fad5
cmp ebp, 0xa0
ja 0x1011fce6
cmp edx, 0xa0
je case.default.0x1011fad5
cmp edx, 9
je case.default.0x1011fad5
cmp edx, 0x20
je case.default.0x1011fad5
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp edx, 0x1680
je case.default.0x1011fad5
cmp edx, 0x180e
jmp 0x1011fcc6
cmp ecx, 0x3000
ja case.0x1011fd20.8203
cmp ebx, 0x3000
je case.default.0x1011fad5
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1011fd20.8203
movzx eax, byte [edx + 0x1012a974]
jmp dword [eax*4 + 0x1012a96c]
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov eax, ecx
mov dword [esp + 0x14], esi
mov edi, ecx
mov ebp, ecx
mov edx, ecx
mov ebx, ecx
je 0x1011fe3c
cmp ecx, 0xc0
jb 0x1011fe3c
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1011fd72
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1011fe2e
test cl, 0x10
jne 0x1011fd93
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011fe2e
test cl, 8
jne 0x1011fdbd
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1011fe2e
test cl, 4
jne 0x1011fdf3
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1011fe2e
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
mov edi, ecx
mov ebp, ecx
mov edx, ecx
mov ebx, ecx
cmp eax, 0x2000
ja 0x1011fe97
cmp edi, 0x2000
je case.0x1011fd20.8203
cmp ebp, 0xa0
ja 0x1011fe7a
cmp ecx, 0xa0
je case.0x1011fd20.8203
cmp ecx, 9
je case.0x1011fd20.8203
cmp ecx, 0x20
jne case.default.0x1011fad5
jmp case.0x1011fd20.8203
cmp ecx, 0x1680
je case.0x1011fd20.8203
cmp ecx, 0x180e
jne case.default.0x1011fad5
jmp case.0x1011fd20.8203
cmp edx, 0x3000
ja case.default.0x1011fad5
cmp ebx, 0x3000
je case.0x1011fd20.8203
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x1011fad5
movzx eax, byte [ecx + 0x1012a9dc]
jmp dword [eax*4 + 0x1012a9d4]
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x14], esi
mov eax, ecx
mov edx, ecx
test ebp, ebp
je 0x1011ffd2
cmp ecx, 0xc0
jb 0x1011ffd2
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1011ff0e
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1011ffca
test cl, 0x10
jne 0x1011ff2f
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1011ffca
test cl, 8
jne 0x1011ff59
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1011ffca
test cl, 4
jne 0x1011ff8f
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1011ffca
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
mov edx, ecx
cmp eax, 0x85
ja 0x1011fff8
cmp edx, 0x85
je case.default.0x1011fad5
add ecx, 0xfffffff6
cmp ecx, 3
ja case.0x1011fad5.10
jmp dword [ecx*4 + 0x1012aa3c]
sub ecx, 0x2028
je case.default.0x1011fad5
sub ecx, 1
je case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x14], esi
mov eax, edx
mov ecx, edx
test ebp, ebp
je 0x10120139
cmp edx, 0xc0
jb 0x10120139
test dl, 0x20
jne 0x10120063
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, ecx
or edx, eax
inc esi
jmp 0x10120131
test dl, 0x10
jne 0x1012008a
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x10120131
test dl, 8
jne 0x101200ba
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10120131
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x101200f6
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x10120131
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
mov eax, edx
mov ecx, edx
cmp eax, 0x85
ja 0x1012015f
cmp ecx, 0x85
je case.0x1011fad5.10
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x1011fad5
jmp dword [edx*4 + 0x1012aa4c]
sub edx, 0x2028
je case.0x1011fad5.10
sub edx, 1
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov eax, edx
mov dword [esp + 0x14], esi
mov ecx, edx
mov edi, edx
mov dword [esp + 0x24], edx
mov ebx, edx
mov dword [esp + 0x40], edx
mov ebp, edx
mov dword [esp + 0x28], edx
mov dword [esp + 0x38], edx
je 0x101202df
mov dword [esp + 0x24], edx
mov dword [esp + 0x40], edx
mov dword [esp + 0x28], edx
mov dword [esp + 0x38], edx
cmp edx, 0xc0
jb 0x101202df
test dl, 0x20
jne 0x101201f3
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, ecx
or edx, eax
inc esi
jmp 0x101202c1
test dl, 0x10
jne 0x1012021a
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x101202c1
test dl, 8
jne 0x1012024a
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x101202c1
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x10120286
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x101202c1
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov eax, edx
mov dword [esp + 0x14], esi
mov ecx, eax
mov dword [esp + 0x24], edx
mov edi, edx
mov dword [esp + 0x40], eax
mov ebx, edx
mov dword [esp + 0x28], eax
mov ebp, edx
mov dword [esp + 0x38], eax
shr eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x101202f9
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx ecx, word [eax*2 + 0x10170330]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x4c], ecx
movzx eax, byte [eax + 1]
cmp eax, 0xa
ja case.default.0x10120324
mov dword [esp + 0x44], edi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x44], ebp
jmp dword [eax*4 + 0x1012aa5c]
cmp dword [esp + 0x3c], 0xf
jmp 0x10120533
mov al, byte [ecx*8 + 0x1016cab1]
cmp al, 9
je 0x10120522
cmp al, 5
je 0x10120522
cmp al, 8
je 0x10120522
xor ecx, ecx
jmp 0x10120527
mov eax, dword [esp + 0x18]
xor edx, edx
movzx ecx, byte [ecx*8 + 0x1016cab1]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x1016c448]
setne dl
xor eax, eax
cmp dword [esp + 0x3c], 0x10
sete al
cmp edx, eax
jmp 0x10120533
mov eax, dword [esp + 0x18]
xor ecx, ecx
mov edx, dword [esp + 0x4c]
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x1016cab1]
setne cl
xor eax, eax
cmp dword [esp + 0x3c], 0x10
jmp 0x1012052e
mov eax, dword [esp + 0x18]
xor ecx, ecx
mov edx, dword [esp + 0x4c]
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x1016cab0]
setne cl
xor eax, eax
cmp dword [esp + 0x3c], 0x10
jmp 0x1012052e
movzx eax, byte [ecx*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x10120522
cmp eax, 3
je 0x10120522
xor ecx, ecx
jmp 0x10120527
cmp edx, 0x20
ja 0x10120410
je case.0x10120324.0
add edx, 0xfffffff7
cmp edx, 4
ja case.0x1012048b.8203
jmp dword [edx*4 + 0x1012aa88]
cmp dword [esp + 0x24], 0x2000
ja 0x1012046b
cmp edx, 0x2000
je case.0x10120324.0
cmp edx, 0x1680
ja 0x10120463
je case.0x10120324.0
sub edx, 0x85
je case.0x10120324.0
sub edx, 0x1b
je case.0x10120324.0
movzx eax, byte [ecx*8 + 0x1016cab1]
xor ecx, ecx
cmp dword [eax*4 + 0x1016c448], 6
sete cl
jmp 0x10120527
cmp edx, 0x180e
jmp 0x10120443
cmp edx, 0x3000
ja case.0x1012048b.8203
je case.0x10120324.0
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1012048b.8203
movzx eax, byte [edx + 0x1012aaa4]
jmp dword [eax*4 + 0x1012aa9c]
movzx eax, byte [ecx*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x10120522
cmp eax, 3
je 0x10120522
cmp edx, 0x5f
je 0x10120522
xor ecx, ecx
jmp 0x10120527
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x40]
movzx eax, byte [eax + 2]
cmp ecx, dword [eax*4 + 0x1016c970]
lea eax, [eax*4 + 0x1016c970]
jb 0x101204df
mov ecx, dword [eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x101204e6
mov ecx, dword [eax]
cmp edx, ecx
jae 0x101204d2
cmp dword [esp + 0x3c], 0x10
jmp 0x10120533
cmp dword [esp + 0x3c], 0x10
jne case.default.0x1011fad5
jmp 0x10120539
cmp dword [esp + 0x28], 0x24
je 0x10120522
cmp dword [esp + 0x38], 0x40
je 0x10120522
cmp edx, 0x60
je 0x10120522
cmp edx, 0xa0
jb 0x10120516
cmp edx, 0xd7ff
jbe 0x10120522
cmp edx, 0xe000
jae 0x10120522
xor ecx, ecx
jmp 0x10120527
mov ecx, 1
xor eax, eax
cmp dword [esp + 0x3c], 0xf
sete al
cmp ecx, eax
je case.default.0x1011fad5
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
add edx, 3
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov ebp, dword [ebx + 0x78]
cmp esi, ebp
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov dword [esp + 0x14], esi
mov edx, eax
mov edi, esi
je 0x10120672
cmp eax, 0xc0
jb 0x10120672
test al, 0x20
jne 0x1012059c
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x1012066a
test al, 0x10
jne 0x101205c2
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1012066a
test al, 8
jne 0x101205f1
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1012066a
test al, 4
movzx eax, byte [esi]
jne 0x1012062c
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1012066a
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edi, esi
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x1012068c
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx ebx, byte [eax*8 + 0x1016cab2]
cmp edi, ebp
jae 0x101207d5
nop word [eax + eax]
cmp dword [esp + 0x20], 0
mov edi, 1
movzx edx, byte [esi]
mov ecx, edx
je 0x10120789
cmp edx, 0xc0
jb 0x10120789
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x101206f1
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x10120785
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x10120709
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x1012077f
and eax, 0x3f
test dl, 8
jne 0x10120729
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x1012077f
test dl, 4
jne 0x10120752
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x1012077f
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
movzx eax, byte [edx + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x101207a3
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx ecx, byte [eax*8 + 0x1016cab2]
mov eax, 1
shl eax, cl
test dword [ebx*4 + 0x1016c4c0], eax
je 0x101207d1
add esi, edi
mov ebx, ecx
cmp esi, ebp
jb 0x101206b0
mov dword [esp + 0x14], esi
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x1011fcd0
cmp esi, dword [ebx + 0x78]
jb 0x1011fcd0
cmp esi, dword [ebx + 0x84]
jbe 0x1011fcd0
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
inc edx
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov edx, dword [esp + 0x18]
mov ebx, eax
mov ebp, dword [esp + 0x20]
inc edx
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov ebp, dword [esp + 0x18]
xor eax, eax
cmp edx, 0x74
sete al
movzx edx, byte [ebp + 3]
movzx ecx, byte [ebp + 1]
mov dword [esp + 0x40], eax
movzx eax, byte [ebp + 4]
shl ecx, 8
shl edx, 8
or edx, eax
movzx eax, byte [ebp + 2]
or ecx, eax
add ebp, 5
imul ecx, dword [ebx + 0x24]
mov eax, dword [ebx + 0x30]
mov dword [esp + 0x18], ebp
add eax, ecx
mov ecx, dword [ebx + 0x50]
neg ecx
sbb ecx, ecx
xor edi, edi
neg ecx
dec ecx
mov dword [esp + 0x24], ecx
test edx, edx
je 0x101208bc
movzx ecx, byte [eax]
mov ebp, eax
shl ecx, 8
mov ebx, eax
movzx eax, byte [eax + 1]
dec edx
or ecx, eax
lea edi, [ecx + ecx]
mov ecx, dword [esp + 0x10]
cmp edi, dword [esp + 0x1c]
jge 0x101208ab
mov eax, dword [ecx + 0xc]
cmp dword [eax + edi*4], 0
jge 0x101208e4
mov eax, dword [ecx + 0x24]
add eax, ebx
test edx, edx
jg 0x10120884
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x40]
mov al, byte [ebp]
movzx ebx, al
add ebx, 0xffffff9e
mov byte [esp + 0x57], al
cmp ebx, 7
ja case.default.0x101208dd
movzx eax, byte [ebx + 0x1012ab0c]
jmp dword [eax*4 + 0x1012ab04]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esp + 0x24], ecx
jmp 0x101208b8
mov ebp, dword [esp + 0x18]
xor edx, edx
cmp dword [esp + 0x3c], 0x72
sete dl
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
add ebp, 3
shl ecx, 8
or ecx, eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x18], ebp
lea edi, [ecx + ecx]
cmp edi, dword [esp + 0x1c]
jge 0x10120936
mov ecx, dword [ebx + 0xc]
mov eax, dword [ecx + edi*4]
test eax, eax
js 0x10120936
mov ecx, dword [ecx + edi*4 + 4]
sub ecx, eax
mov dword [esp + 0x24], ecx
jmp 0x101208c0
mov ecx, dword [ebx + 0x50]
neg ecx
sbb ecx, ecx
neg ecx
dec ecx
mov dword [esp + 0x24], ecx
jmp 0x101208c0
mov eax, ebx
inc ebp
and eax, 1
mov dword [esp + 0x18], ebp
movsx ebp, byte [ebx + 0x1016b988]
mov dword [esp + 0x44], eax
movsx eax, byte [ebx + 0x1016b994]
mov ebx, closesocket
test eax, eax
cmove eax, ebx
mov dword [esp + 0x4c], eax
jmp 0x101209b6
movzx ebp, byte [ebp + 1]
xor eax, eax
cmp byte [esp + 0x57], 0x69
sete al
shl ebp, 8
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x18]
movzx eax, byte [eax + 2]
or ebp, eax
mov eax, dword [esp + 0x18]
movzx ebx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ebx, 8
or ebx, eax
mov eax, closesocket
cmove ebx, eax
add dword [esp + 0x18], 5
mov dword [esp + 0x4c], ebx
mov eax, ebp
test ecx, ecx
je 0x1011d8bb
jns 0x101209ca
test eax, eax
je 0x1011d8a9
cmp ebp, 1
jl 0x101209ff
mov ebx, 1
push edx
push dword [esp + 0x14]
push ecx
push esi
push edi
call fcn.1012b560
add esp, 0x14
test eax, eax
js 0x10127a1a
mov ecx, dword [esp + 0x24]
add esi, eax
mov edx, dword [esp + 0x40]
inc ebx
mov dword [esp + 0x14], esi
cmp ebx, ebp
jle 0x101209d4
mov ebx, dword [esp + 0x4c]
cmp ebp, ebx
je 0x1011d8bb
cmp dword [esp + 0x44], 0
je 0x10127a2f
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov ebx, dword [esp + 0x24]
mov ecx, ebp
nop word [eax + eax]
cmp ecx, dword [esp + 0x4c]
jge case.default.0x1011fad5
push dword [esp + 0x40]
push dword [esp + 0x14]
push ebx
push esi
push edi
call fcn.1012b560
add esp, 0x14
test eax, eax
js 0x10127a1a
add esi, eax
inc ebp
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
mov ecx, ebp
test eax, eax
je 0x10120a50
jmp 0x1012a717
mov ebx, dword [esp + 0x10]
push edx
push ebx
push ecx
push esi
push edi
call fcn.1012b560
add esp, 0x14
test eax, eax
js 0x10127ae9
mov edx, dword [esp + 0x18]
add esi, eax
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x14], esi
jmp 0x1011d8c7
mov edi, dword [esp + 0x18]
mov dl, byte [edi + 0x21]
lea ebx, [edi + 1]
add edi, 0x21
movzx ecx, dl
add ecx, 0xffffff9e
mov dword [esp + 0x34], ebx
mov dword [esp + 0x18], edi
cmp ecx, 0xb
ja case.default.0x10120b00
movzx eax, byte [ecx + 0x1012ab1c]
jmp dword [eax*4 + 0x1012ab14]
inc edi
mov dword [esp + 0x18], edi
cmp ecx, 8
jae 0x10120b1c
mov eax, ecx
and eax, 1
mov dword [esp + 0x38], eax
jmp 0x10120b24
mov dword [esp + 0x40], 1
movsx edx, byte [ecx + 0x1016b994]
mov eax, closesocket
movsx ebp, byte [ecx + 0x1016b988]
test edx, edx
mov ecx, ebp
cmove edx, eax
mov eax, ebp
mov dword [esp + 0x24], edx
jmp 0x10120b9e
movzx ebp, byte [edi + 1]
xor eax, eax
cmp dl, 0x69
sete al
mov dword [esp + 0x38], eax
xor eax, eax
cmp dl, 0x6d
movzx edx, byte [edi + 3]
sete al
shl ebp, 8
mov dword [esp + 0x40], eax
movzx eax, byte [edi + 2]
or ebp, eax
shl edx, 8
movzx eax, byte [edi + 4]
or edx, eax
mov eax, closesocket
cmove edx, eax
add edi, 5
mov dword [esp + 0x24], edx
mov dword [esp + 0x18], edi
jmp 0x10120b9a
mov dword [esp + 0x24], 1
mov ebp, 1
mov ecx, ebp
mov eax, ecx
mov edx, dword [esp + 0x20]
mov edi, 1
test edx, edx
je 0x10120cf4
cmp ecx, edi
jl 0x10120d39
mov ecx, dword [esp + 0x10]
mov ebx, dword [ecx + 0x78]
nop
cmp esi, ebx
jae 0x10127b0d
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x14], ecx
mov edx, ecx
mov dword [esp + 0x14], esi
mov eax, ecx
cmp ecx, 0xc0
jb 0x10120cc1
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10120bfd
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10120cb9
test cl, 0x10
jne 0x10120c1e
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10120cb9
test cl, 8
jne 0x10120c48
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10120cb9
test cl, 4
jne 0x10120c7e
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10120cb9
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edx, ecx
mov eax, ecx
cmp eax, 0xff
jbe 0x10120ccf
cmp dword [esp + 0x3c], 0x6e
jmp 0x10120ce3
and ecx, 7
shr edx, 3
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x34]
test byte [edx + ecx], al
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x10120bc0
jmp 0x10120d31
cmp eax, 1
jl 0x10120d39
mov ecx, dword [esp + 0x10]
mov ebx, dword [ecx + 0x78]
cmp esi, ebx
jae 0x10127b0d
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x14], esi
test byte [edx + ecx], al
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x10120d00
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
cmp ebp, eax
je 0x1011d89b
cmp dword [esp + 0x38], 0
jne 0x10127be6
mov edi, esi
mov dword [esp + 0x28], edi
test edx, edx
je 0x10120ed2
cmp ebp, eax
jge 0x10120e8e
nop word [eax + eax]
mov ebx, dword [esp + 0x10]
cmp esi, dword [ebx + 0x78]
jae 0x10120eaa
movzx edx, byte [esi]
mov ebx, 1
mov edi, edx
mov ecx, ebx
mov eax, edx
cmp edx, 0xc0
jb 0x10120e51
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10120db5
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ebx, 2
jmp 0x10120e49
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x10120dcd
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x10120e43
and eax, 0x3f
test dl, 8
jne 0x10120ded
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10120e43
test dl, 4
jne 0x10120e16
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10120e43
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, ebx
mov edi, edx
mov eax, edx
cmp eax, 0xff
jbe 0x10120e5f
cmp dword [esp + 0x3c], 0x6e
jmp 0x10120e77
and edx, 7
shr edi, 3
mov ebx, ecx
mov eax, 1
mov ecx, edx
shl eax, cl
mov ecx, dword [esp + 0x34]
test byte [edi + ecx], al
je 0x10120e8a
add esi, ebx
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x24]
jl 0x10120d70
mov edi, dword [esp + 0x28]
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x40], 0
je 0x10127b37
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10120ecc
cmp esi, dword [ebx + 0x84]
jbe 0x10120ecc
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov edi, dword [esp + 0x28]
jmp 0x10120e92
cmp ebp, eax
jge 0x10120f0b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x10120f27
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
shr edx, 3
and ecx, 7
shl eax, cl
test byte [edx + ebx], al
je 0x10120f07
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x24]
jl 0x10120ee0
mov edi, dword [esp + 0x28]
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x40], 0
je 0x10127ba9
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10120f4d
cmp esi, dword [ebx + 0x84]
jbe 0x10120f4d
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov edi, dword [esp + 0x28]
jmp 0x10120f0f
mov edi, dword [esp + 0x18]
movzx ecx, byte [edi + 1]
lea ebp, [edi + 3]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x44], ebp
add edi, ecx
mov dword [esp + 0x18], edi
mov dl, byte [edi]
movzx ecx, dl
add ecx, 0xffffff9e
cmp ecx, 0xb
ja case.default.0x10120f89
movzx eax, byte [ecx + 0x1012ab30]
jmp dword [eax*4 + 0x1012ab28]
inc edi
mov dword [esp + 0x18], edi
cmp ecx, 8
jae 0x10120fa5
mov eax, ecx
and eax, 1
mov dword [esp + 0x38], eax
jmp 0x10120fad
mov dword [esp + 0x40], 1
movsx eax, byte [ecx + 0x1016b994]
movsx ebx, byte [ecx + 0x1016b988]
test eax, eax
mov ecx, closesocket
cmove eax, ecx
mov dword [esp + 0x24], eax
jmp 0x10121010
movzx ebx, byte [edi + 1]
xor eax, eax
cmp dl, 0x69
sete al
mov dword [esp + 0x38], eax
xor eax, eax
cmp dl, 0x6d
movzx edx, byte [edi + 3]
sete al
shl ebx, 8
mov dword [esp + 0x40], eax
movzx eax, byte [edi + 2]
or ebx, eax
shl edx, 8
movzx eax, byte [edi + 4]
or edx, eax
mov eax, closesocket
cmove edx, eax
add edi, 5
mov dword [esp + 0x24], edx
mov dword [esp + 0x18], edi
mov ecx, ebx
mov edi, 1
cmp ecx, edi
jl 0x1012116c
jmp 0x10121030
mov ebx, 1
mov dword [esp + 0x24], 1
mov edi, ebx
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10127b11
movzx edx, byte [esi]
inc esi
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x14], esi
test ecx, ecx
je 0x10121150
cmp edx, 0xc0
jb 0x10121150
test dl, 0x20
jne 0x10121076
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x1012114c
test dl, 0x10
jne 0x101210a1
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ecx, dword [esp + 0x20]
shl edx, 6
or edx, eax
add esi, 2
jmp 0x1012114c
test dl, 8
jne 0x101210d5
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ecx, dword [esp + 0x20]
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x1012114c
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x10121111
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x1012114c
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
push ecx
push ebp
push edx
call fcn.1012cf10
add esp, 0xc
test eax, eax
je case.default.0x1011fad5
inc edi
cmp edi, ebx
jle 0x10121030
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
cmp ebx, eax
je 0x1011d89b
cmp dword [esp + 0x38], 0
jne 0x10127e93
mov ebp, esi
cmp ebx, eax
jge 0x101212bc
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x1012129a
mov ecx, dword [esp + 0x20]
mov edi, 1
movzx edx, byte [esi]
test ecx, ecx
je 0x10121275
cmp edx, 0xc0
jb 0x10121275
test dl, 0x20
jne 0x101211d4
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x1012126d
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x101211f3
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x10121269
and eax, 0x3f
test dl, 8
jne 0x10121213
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10121269
test dl, 4
jne 0x1012123c
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10121269
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
mov ecx, dword [esp + 0x20]
and eax, 0x3f
shl edx, 6
or edx, eax
push ecx
push dword [esp + 0x48]
push edx
call fcn.1012cf10
add esp, 0xc
test eax, eax
je 0x101212bc
add esi, edi
inc ebx
mov dword [esp + 0x14], esi
cmp ebx, dword [esp + 0x24]
jl 0x10121191
jmp 0x101212bc
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x101212bc
cmp esi, dword [ecx + 0x84]
jbe 0x101212bc
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x1012a342
cmp dword [esp + 0x40], 0
mov ebx, dword [esp + 0x10]
je 0x10127e1a
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
test ebp, ebp
je 0x1012135c
mov ebp, dword [esp + 0x18]
mov edx, 1
inc ebp
mov ecx, edx
movzx eax, byte [ebp]
cmp eax, 0xc0
jb 0x10121326
test al, 0x20
jne 0x10121300
lea edx, [ecx + 1]
jmp 0x10121324
test al, 0x10
jne 0x1012130b
mov edx, 3
jmp 0x10121324
test al, 8
jne 0x10121316
mov edx, 4
jmp 0x10121324
mov edx, 5
test al, 4
je 0x10121324
mov edx, 6
mov ecx, edx
mov edi, dword [ebx + 0x78]
mov eax, edi
sub eax, esi
cmp ecx, eax
jg 0x10128029
mov cl, byte [ebp]
dec edx
mov al, byte [esi]
inc ebp
inc esi
mov dword [esp + 0x18], ebp
mov dword [esp + 0x14], esi
cmp cl, al
jne case.default.0x1011fad5
test edx, edx
jg 0x10121335
mov edx, ebp
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov eax, dword [ebx + 0x78]
sub eax, esi
cmp eax, 1
jl 0x101279f1
mov edx, dword [esp + 0x18]
mov al, byte [esi]
inc esi
mov dword [esp + 0x14], esi
cmp byte [edx + 1], al
jne case.default.0x1011fad5
add edx, 2
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
test ebp, ebp
je 0x101215ed
mov ebp, dword [esp + 0x18]
mov edi, 1
inc ebp
mov dword [esp + 0x18], ebp
movzx ebx, byte [ebp]
mov eax, ebx
cmp ebx, 0xc0
jb 0x10121471
movzx ecx, byte [ebp + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x101213d9
and eax, 0x1f
mov ebx, ecx
shl eax, 6
mov edi, 2
jmp 0x1012146d
movzx eax, byte [ebp + 2]
test bl, 0x10
jne 0x101213f1
and ebx, 0xf
mov edi, 3
shl ebx, 6
or ebx, ecx
jmp 0x10121467
and eax, 0x3f
test bl, 8
jne 0x10121411
and ebx, 7
mov edi, 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [ebp + 3]
jmp 0x10121467
test bl, 4
jne 0x1012143a
and ebx, 3
mov edi, 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [ebp + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ebp + 4]
jmp 0x10121467
and ebx, edi
mov edi, 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [ebp + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ebp + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ebp + 5]
shl ebx, 6
and eax, 0x3f
or ebx, eax
mov eax, ebx
movzx ecx, byte [esi]
cmp eax, 0x80
jae 0x101214a1
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
mov al, byte [ebx + edx]
cmp al, byte [ecx + edx]
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
inc edx
inc esi
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], esi
jmp 0x1011d8bf
inc esi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x14], esi
mov edx, ecx
cmp ecx, 0xc0
jb 0x10121593
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x101214d1
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1012158d
test cl, 0x10
jne 0x101214f2
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1012158d
test cl, 8
jne 0x1012151c
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1012158d
test cl, 4
jne 0x10121552
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1012158d
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edx, ecx
add ebp, edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x18], ebp
mov ebp, dword [esp + 0x20]
cmp ebx, ecx
je 0x1011d8b1
mov eax, ebx
test eax, eax
jns 0x101215b2
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x1016e130]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x101215cd
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x10170330]
mov eax, dword [eax*8 + 0x1016cab4]
add eax, ebx
cmp edx, eax
jne case.default.0x1011fad5
jmp 0x1011d8bb
mov eax, dword [esp + 0x18]
mov edx, dword [ebx + 0x38]
movzx ecx, byte [esi]
movzx eax, byte [eax + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.default.0x1011fad5
mov edx, dword [esp + 0x18]
inc esi
add edx, 2
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov eax, dword [esp + 0x18]
movzx edi, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edi, 8
or edi, eax
mov eax, dword [esp + 0x18]
add eax, 3
mov ebp, edi
mov dword [esp + 0x24], ebp
mov ecx, eax
mov dword [esp + 0x18], eax
jmp 0x10121729
mov dword [esp + 0x40], 1
mov eax, dword [esp + 0x18]
xor ebp, ebp
mov dword [esp + 0x24], ebp
movzx edi, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edi, 8
or edi, eax
mov dword [esp + 0x28], edi
cmp cl, 0x28
je 0x10121676
mov dword [esp + 0x38], ebp
cmp cl, 0x35
jne 0x1012167e
mov dword [esp + 0x38], 1
mov eax, dword [esp + 0x18]
add eax, 3
mov dword [esp + 0x18], eax
mov ecx, eax
jmp 0x1012172d
mov eax, dword [esp + 0x18]
xor ebp, ebp
inc eax
mov dword [esp + 0x40], 1
mov dword [esp + 0x24], ebp
mov ecx, eax
mov dword [esp + 0x18], eax
jmp 0x10121724
mov eax, dword [esp + 0x18]
mov ebp, 1
inc eax
mov dword [esp + 0x40], 1
mov dword [esp + 0x24], ebp
mov ecx, eax
mov dword [esp + 0x18], eax
jmp 0x10121724
mov eax, dword [esp + 0x18]
xor ebp, ebp
inc eax
mov dword [esp + 0x40], 1
mov dword [esp + 0x24], ebp
mov ecx, eax
mov dword [esp + 0x18], eax
lea edi, [ebp + 1]
jmp 0x10121729
mov ecx, dword [esp + 0x18]
cmp edx, 0x2e
mov ebx, edx
sbb eax, eax
inc ecx
and eax, 0xfffffff3
mov dword [esp + 0x18], ecx
add eax, 0x2e
sub ebx, eax
mov eax, ebx
and ebx, 1
mov dword [esp + 0x38], ebx
movsx edi, byte [eax + 0x1016b994]
movsx ebp, byte [eax + 0x1016b988]
mov eax, ecx
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], edi
test edi, edi
jne 0x1012172d
mov edi, closesocket
mov dword [esp + 0x28], edi
cmp dword [esp + 0x20], 0
movzx ebx, byte [eax]
je 0x10121bba
mov dword [esp + 0x44], 1
mov dword [esp + 0x44], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x44], ebx
cmp ebx, 0xc0
jb 0x10121bb7
movzx ecx, byte [eax + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x10121787
and ebx, 0x1f
mov dword [esp + 0x34], 2
shl ebx, 6
or ecx, ebx
add eax, 2
mov dword [esp + 0x18], eax
jmp 0x1012184d
movzx eax, byte [eax + 2]
test bl, 0x10
jne 0x101217aa
and ebx, 0xf
mov dword [esp + 0x34], 3
shl ebx, 6
mov edi, 3
or ecx, ebx
jmp 0x10121841
and eax, 0x3f
test bl, 8
jne 0x101217d6
and ebx, 7
mov dword [esp + 0x34], 4
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
or ecx, eax
mov eax, dword [esp + 0x18]
movzx eax, byte [eax + 3]
jmp 0x10121841
mov edx, dword [esp + 0x18]
test bl, 4
jne 0x1012180b
and ebx, 3
mov dword [esp + 0x34], 5
shl ebx, 6
mov edi, 5
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x10121841
and ebx, 1
mov dword [esp + 0x34], 6
shl ebx, 6
mov edi, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
add dword [esp + 0x18], edi
cmp dword [esp + 0x3c], 0x2e
mov edx, ecx
mov dword [esp + 0x24], ecx
mov ebx, ecx
mov edi, ecx
jb 0x101218ab
mov eax, ecx
test eax, eax
jns 0x10121867
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10121881
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
mov eax, dword [eax*8 + 0x1016cab4]
add eax, edi
cmp eax, ebx
je 0x101218ab
lea ecx, [esp + 0x158]
push ecx
push eax
call fcn.1012cbd0
add esp, 8
jmp 0x101218ad
xor eax, eax
mov ebx, 1
mov dword [esp + 0x24], eax
cmp ebp, ebx
jl 0x101219d0
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x34]
mov ecx, dword [eax + 0x78]
mov eax, ecx
sub eax, edi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x44], eax
cmp esi, eax
ja 0x10121936
mov edx, dword [esp + 0x4c]
mov ecx, esi
sub edi, 4
jb 0x101218f5
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x101218fa
add ecx, 4
add edx, 4
sub edi, 4
jae 0x101218e4
cmp edi, 0xfffffffc
je 0x10121927
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x10121932
cmp edi, 0xfffffffd
je 0x10121927
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x10121932
cmp edi, 0xfffffffe
je 0x10121927
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x10121932
cmp edi, 0xffffffff
je 0x10121927
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x10121932
mov edi, dword [esp + 0x34]
add esi, edi
jmp 0x101219bb
mov ecx, dword [esp + 0x3c]
mov edi, dword [esp + 0x24]
test edi, edi
jle 0x10128044
mov eax, ecx
sub eax, edi
cmp esi, eax
ja 0x10128044
lea edx, [esp + 0x158]
mov ecx, esi
sub edi, 4
jb 0x10121971
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x10121976
add ecx, 4
add edx, 4
sub edi, 4
jae 0x10121960
cmp edi, 0xfffffffc
je 0x101219b3
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x10128044
cmp edi, 0xfffffffd
je 0x101219b3
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x10128044
cmp edi, 0xfffffffe
je 0x101219b3
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x10128044
cmp edi, 0xffffffff
je 0x101219b3
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x10128044
add esi, dword [esp + 0x24]
mov edi, dword [esp + 0x34]
mov eax, dword [esp + 0x44]
inc ebx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x14], esi
cmp ebx, ebp
jle 0x101218d5
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x1c]
cmp ebp, eax
je 0x1011d89b
cmp dword [esp + 0x38], 0
jne 0x10128064
mov ebx, esi
mov dword [esp + 0x38], ebx
cmp ebp, eax
jge 0x10121b0b
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x34]
mov ecx, dword [eax + 0x78]
mov eax, ecx
sub eax, ebx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x44], eax
cmp esi, eax
ja 0x10121a6f
mov edx, dword [esp + 0x4c]
mov edi, ebx
mov ecx, esi
sub edi, 4
jb 0x10121a32
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x10121a37
add ecx, 4
add edx, 4
sub edi, 4
jae 0x10121a21
cmp edi, 0xfffffffc
je 0x10121a64
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x10121a6b
cmp edi, 0xfffffffd
je 0x10121a64
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x10121a6b
cmp edi, 0xfffffffe
je 0x10121a64
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x10121a6b
cmp edi, 0xffffffff
je 0x10121a64
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x10121a6b
add esi, ebx
jmp 0x10121af0
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x24]
test ebx, ebx
jle 0x10121b83
mov eax, ecx
sub eax, ebx
cmp esi, eax
ja 0x10121b83
mov edi, ebx
lea edx, [esp + 0x158]
mov ecx, esi
sub edi, 4
jb 0x10121aa8
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x10121aad
add ecx, 4
add edx, 4
sub edi, 4
jae 0x10121a97
cmp edi, 0xfffffffc
je 0x10121aea
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x10121b83
cmp edi, 0xfffffffd
je 0x10121aea
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x10121b83
cmp edi, 0xfffffffe
je 0x10121aea
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x10121b83
cmp edi, 0xffffffff
je 0x10121aea
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x10121b83
add esi, ebx
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x44]
inc ebp
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x28]
jl 0x10121a10
mov ebx, dword [esp + 0x38]
mov ecx, dword [esp + 0x10]
cmp dword [esp + 0x40], 0
jne 0x1011d8bb
cmp esi, ebx
jbe 0x10127124
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov dword [esp + 0x14], esi
mov ecx, esi
cmp al, 0x80
jne 0x10121b70
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov ecx, esi
cmp al, 0x80
je 0x10121b60
mov dword [esp + 0x14], esi
cmp ecx, ebx
mov ecx, dword [esp + 0x10]
ja 0x10121b22
mov edx, dword [esp + 0x18]
mov edi, ecx
jmp 0x1012712c
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x10121bae
cmp esi, dword [ecx + 0x78]
jb 0x10121bae
cmp esi, dword [ecx + 0x84]
jbe 0x10121bae
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov ebx, dword [esp + 0x38]
jmp 0x10121b0f
inc eax
jmp 0x10121bbd
lea eax, [ecx + 1]
mov dword [esp + 0x18], eax
mov ecx, 1
cmp edx, 0x2e
jb 0x10121c8f
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x3c]
movzx edi, byte [eax + ebx]
cmp ebp, 1
jl 0x10121c0c
mov edx, dword [ecx + 0x78]
mov ecx, 1
cmp esi, edx
jae 0x10127b0d
movzx eax, byte [esi]
cmp ebx, eax
je 0x10121bfe
cmp edi, eax
jne case.default.0x1011fad5
inc esi
inc ecx
mov dword [esp + 0x14], esi
cmp ecx, ebp
jle 0x10121be7
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
cmp ebp, eax
je 0x1011d8bb
cmp dword [esp + 0x38], 0
jne 0x101281cf
mov edx, dword [esp + 0x24]
mov ebp, esi
cmp edx, eax
jge 0x10121c4b
mov ecx, dword [ecx + 0x78]
cmp esi, ecx
jae 0x10121c67
movzx eax, byte [esi]
cmp ebx, eax
je 0x10121c3f
cmp edi, eax
jne 0x10121c4b
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, dword [esp + 0x28]
jl 0x10121c30
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x40], 0
je 0x101270e4
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10121c4f
cmp esi, dword [ebx + 0x84]
jbe 0x10121c4f
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
jmp 0x10121c4f
cmp ebp, 1
jl 0x10121cbd
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
nop dword [eax + eax]
cmp esi, edx
jae 0x10127b0d
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x14], esi
cmp ebx, eax
jne case.default.0x1011fad5
inc ecx
cmp ecx, ebp
jle 0x10121ca0
cmp ebp, edi
je 0x1011d8bb
cmp dword [esp + 0x38], 0
jne 0x10128264
mov edx, dword [esp + 0x28]
mov edi, esi
cmp ebp, edx
jge 0x10121cf6
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x10121d12
movzx eax, byte [esi]
cmp ebx, eax
jne 0x10121cf6
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, edx
jl 0x10121ce1
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x40], 0
je 0x1012715a
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10121cfa
cmp esi, dword [ebx + 0x84]
jbe 0x10121cfa
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
jmp 0x10121cfa
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
mov eax, dword [esp + 0x18]
test ebp, ebp
je 0x10121fb9
movzx ebx, byte [eax + 1]
lea ecx, [eax + 2]
mov dword [esp + 0x18], ecx
cmp ebx, 0xc0
jb 0x10121e3f
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 0x20
jne 0x10121d7f
and ebx, 0x1f
shl ebx, 6
or ebx, eax
inc ecx
jmp 0x10121e3b
test bl, 0x10
jne 0x10121da0
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 2
jmp 0x10121e3b
test bl, 8
jne 0x10121dca
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 3
jmp 0x10121e3b
test bl, 4
jne 0x10121e00
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 4
jmp 0x10121e3b
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 5
mov dword [esp + 0x18], ecx
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x14], edx
mov ecx, edx
mov dword [esp + 0x14], esi
mov edi, edx
mov ebp, edx
mov eax, edx
cmp edx, 0xc0
jb 0x10121f40
movzx eax, byte [esi]
and eax, 0x3f
test dl, 0x20
jne 0x10121e78
and edx, 0x1f
shl edx, 6
or edx, eax
inc esi
jmp 0x10121f34
test dl, 0x10
jne 0x10121e99
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 2
jmp 0x10121f34
test dl, 8
jne 0x10121ec3
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10121f34
test dl, 4
jne 0x10121ef9
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x10121f34
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
mov ecx, edx
mov edi, edx
mov ebp, edx
mov eax, edx
cmp dword [esp + 0x3c], 0x1f
jne 0x10121f60
cmp ebx, eax
je case.default.0x1011fad5
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
cmp ebx, 0x7f
jbe 0x10121f9e
mov eax, ebx
test eax, eax
jns 0x10121f6e
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x1016e130]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x10121f89
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x10170330]
mov eax, dword [eax*8 + 0x1016cab4]
add eax, ebx
jmp 0x10121fad
mov eax, dword [esp + 0x10]
mov edx, ecx
mov edi, ebp
mov eax, dword [eax + 0x3c]
movzx eax, byte [eax + ebx]
cmp ebx, edx
je case.default.0x1011fad5
cmp eax, edi
jmp 0x10121f49
movzx edx, byte [esi]
inc esi
movzx ecx, byte [eax + 1]
mov dword [esp + 0x14], esi
cmp ecx, edx
je case.default.0x1011fad5
cmp dword [esp + 0x3c], 0x20
jne 0x10121fe3
mov eax, dword [ebx + 0x3c]
movzx eax, byte [eax + ecx]
cmp eax, edx
je case.default.0x1011fad5
mov edx, dword [esp + 0x18]
add edx, 2
mov dword [esp + 0x18], edx
jmp 0x1011d8d0
mov ebx, dword [esp + 0x18]
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, 3
mov ebp, ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], ebp
mov ecx, ebx
jmp 0x10122112
mov ebx, dword [esp + 0x18]
xor ebp, ebp
mov dword [esp + 0x24], ebp
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
mov dword [esp + 0x28], edx
cmp cl, 0x42
je 0x10122041
mov dword [esp + 0x38], ebp
cmp cl, 0x4f
jne 0x10122049
mov dword [esp + 0x38], 1
add ebx, 3
mov ecx, ebx
jmp 0x10122112
mov ebx, dword [esp + 0x18]
xor ebp, ebp
inc ebx
mov dword [esp + 0x40], 1
mov dword [esp + 0x24], ebp
mov ecx, ebx
jmp 0x1012210a
mov ebx, dword [esp + 0x18]
mov ebp, 1
inc ebx
mov dword [esp + 0x40], 1
mov dword [esp + 0x24], ebp
mov ecx, ebx
jmp 0x1012210a
mov ebx, dword [esp + 0x18]
xor ebp, ebp
inc ebx
mov dword [esp + 0x40], 1
mov dword [esp + 0x24], ebp
mov ecx, ebx
mov dword [esp + 0x28], 1
jmp 0x10122112
mov ebx, dword [esp + 0x18]
xor ebp, ebp
mov dword [esp + 0x40], 1
mov dword [esp + 0x24], ebp
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, 3
mov dword [esp + 0x28], ecx
mov ecx, ebx
jmp 0x10122112
mov ebx, dword [esp + 0x18]
cmp edx, 0x48
sbb eax, eax
inc ebx
and eax, 0xfffffff3
mov ecx, ebx
add eax, 0x48
sub edx, eax
mov eax, edx
and edx, 1
mov dword [esp + 0x38], edx
movsx ebp, byte [eax + 0x1016b988]
movsx eax, byte [eax + 0x1016b994]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], eax
test eax, eax
jne 0x10122112
mov dword [esp + 0x28], connect
cmp dword [esp + 0x20], 0
lea eax, [ecx + 1]
movzx ebx, byte [ebx]
mov dword [esp + 0x18], eax
mov ecx, ebx
mov dword [esp + 0x34], ebx
mov eax, ebx
mov edi, ebx
mov edx, ebx
je 0x10122257
cmp ebx, 0xc0
jb 0x10122257
test bl, 0x20
jne 0x10122162
mov edx, dword [esp + 0x18]
and eax, 0x1f
shl eax, 6
movzx ecx, byte [edx]
and ecx, 0x3f
mov ebx, ecx
or ebx, eax
inc edx
mov dword [esp + 0x18], edx
jmp 0x1012224b
test bl, 0x10
jne 0x10122191
mov edx, dword [esp + 0x18]
and ebx, 0xf
shl ebx, 6
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
or ebx, ecx
and eax, 0x3f
shl ebx, 6
or ebx, eax
add edx, 2
mov dword [esp + 0x18], edx
jmp 0x1012224b
test bl, 8
jne 0x101221cc
mov edx, dword [esp + 0x18]
and ebx, 7
shl ebx, 6
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
or ebx, ecx
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add edx, 3
mov dword [esp + 0x18], edx
jmp 0x1012224b
mov ecx, dword [esp + 0x18]
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 4
jne 0x1012220c
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 4
jmp 0x10122247
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 5
mov dword [esp + 0x18], ecx
mov eax, ebx
mov dword [esp + 0x34], ebx
mov ecx, eax
mov edi, eax
mov edx, eax
cmp dword [esp + 0x3c], 0x48
jb 0x101225f6
cmp dword [esp + 0x20], 0
je 0x101222a1
cmp edx, 0x7f
jbe 0x101222a1
shr eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x10122288
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
mov ecx, dword [esp + 0x10]
movzx eax, word [eax*2 + 0x10170330]
mov edx, dword [eax*8 + 0x1016cab4]
add edx, edi
jmp 0x101222ac
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x3c]
movzx edx, byte [eax + ebx]
cmp dword [esp + 0x20], 0
mov edi, 1
mov dword [esp + 0x3c], edx
je 0x101223e2
cmp ebp, edi
jl 0x10122415
nop dword [eax + eax]
cmp esi, dword [ecx + 0x78]
jae 0x10127b11
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x14], edx
mov eax, edx
mov dword [esp + 0x14], esi
cmp edx, 0xc0
jb 0x101223c3
test dl, 0x20
jne 0x1012230c
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x101223bd
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x10122333
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x101223b9
test dl, 8
jne 0x10122356
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x101223b9
test dl, 4
jne 0x10122385
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x101223b9
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], esi
mov eax, edx
cmp ebx, edx
je case.default.0x1011fad5
mov edx, dword [esp + 0x3c]
cmp edx, eax
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x101222d0
jmp 0x10122415
cmp ebp, 1
jl 0x10122415
mov ecx, dword [ecx + 0x78]
nop word [eax + eax]
cmp esi, ecx
jae 0x10127b0d
movzx eax, byte [esi]
cmp ebx, eax
je case.default.0x1011fad5
cmp edx, eax
je case.default.0x1011fad5
inc esi
inc edi
mov dword [esp + 0x14], esi
cmp edi, ebp
jle 0x101223f0
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x1c]
cmp ebp, eax
je 0x1011d8ad
cmp dword [esp + 0x38], 0
jne 0x101282e4
cmp dword [esp + 0x20], 0
mov edi, esi
mov dword [esp + 0x24], edi
je 0x1012258c
cmp ebp, eax
jge 0x10122544
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x10122560
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x10122525
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x1012248c
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x10122521
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x101224a4
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x1012251b
and eax, 0x3f
test dl, 8
jne 0x101224c4
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x1012251b
test dl, 4
jne 0x101224ed
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x1012251b
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp ebx, edx
je 0x10122540
cmp dword [esp + 0x3c], eax
je 0x10122540
add esi, ecx
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x28]
jl 0x10122450
mov edi, dword [esp + 0x24]
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x40], 0
je 0x10127196
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10122586
cmp esi, dword [ebx + 0x84]
jbe 0x10122586
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov edi, dword [esp + 0x24]
jmp 0x10122548
cmp ebp, eax
jge 0x101225b2
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x101225ce
movzx eax, byte [esi]
cmp ebx, eax
je 0x101225b2
cmp edx, eax
je 0x101225b2
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x28]
jl 0x10122597
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x40], 0
je 0x101271f9
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x101225b6
cmp esi, dword [ebx + 0x84]
jbe 0x101225b6
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
jmp 0x101225b6
mov edx, dword [esp + 0x20]
mov ecx, 1
mov dword [esp + 0x3c], ecx
test edx, edx
je 0x10122751
mov edi, dword [esp + 0x34]
cmp ebp, ecx
jl 0x10122786
mov edx, dword [esp + 0x10]
nop dword [eax + eax]
cmp esi, dword [edx + 0x78]
jae 0x101284cc
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x14], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x14], esi
cmp ebx, 0xc0
jb 0x1012273a
mov al, byte [esi]
test bl, 0x20
jne 0x1012265b
and ebx, 0x1f
movzx eax, al
inc esi
shl ebx, 6
jmp 0x10122731
lea ecx, [esi + 1]
test bl, 0x10
jne 0x1012267f
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x10122729
lea edx, [esi + 2]
test bl, 8
jne 0x101226ab
and ebx, 7
movzx edi, al
movzx eax, byte [ecx]
and edi, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edi
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x10122725
movzx eax, al
lea edi, [esi + 3]
and eax, 0x3f
test bl, 4
jne 0x101226e2
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x10122725
mov ebp, dword [esp + 0x4c]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edi]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [ebx]
shl ebp, 6
mov dword [esp + 0x4c], ebp
mov ebx, ebp
mov ebp, dword [esp + 0x24]
mov edi, dword [esp + 0x34]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x3c]
and eax, 0x3f
mov dword [esp + 0x14], esi
or ebx, eax
cmp edi, ebx
je case.default.0x1011fad5
inc ecx
mov dword [esp + 0x3c], ecx
cmp ecx, ebp
jle 0x10122620
jmp 0x10122782
cmp ebp, 1
jl 0x101227f7
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x10127d88
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x14], esi
cmp ebx, eax
je case.default.0x1011fad5
inc ecx
cmp ecx, ebp
jle 0x10122761
mov edi, dword [esp + 0x34]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x28]
cmp ebp, eax
je 0x1011d8bb
cmp dword [esp + 0x38], 0
jne 0x101284f2
mov ebx, esi
mov dword [esp + 0x24], ebx
test edx, edx
je 0x1012295e
cmp ebp, eax
jge 0x101228b6
mov ebx, dword [esp + 0x34]
nop word [eax + eax]
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x10122933
movzx edx, byte [esi]
mov edi, 1
cmp edx, 0xc0
jb 0x1012289f
test dl, 0x20
jne 0x101227fd
movzx eax, byte [esi + 1]
mov edi, 2
and edx, 0x1f
jmp 0x10122893
mov edi, dword [esp + 0x34]
jmp 0x10122786
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x1012281c
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x10122893
and eax, 0x3f
test dl, 8
jne 0x1012283c
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10122893
test dl, 4
jne 0x10122865
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10122893
and edx, 1
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [esp + 0x28]
cmp ebx, edx
je 0x101228b2
add esi, edi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, eax
jl 0x101227c0
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x40], 0
jne 0x1011d8bb
cmp esi, ebx
jbe 0x10127124
nop dword [eax]
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov dword [esp + 0x14], esi
mov ecx, esi
cmp al, 0x80
jne 0x10122920
nop dword [eax + eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov ecx, esi
cmp al, 0x80
je 0x10122910
mov dword [esp + 0x14], esi
mov edx, dword [esp + 0x10]
cmp ecx, ebx
ja 0x101228d0
mov edi, edx
mov edx, dword [esp + 0x18]
jmp 0x1012712c
mov eax, dword [edx + 0x88]
test eax, eax
je 0x10122955
cmp esi, dword [edx + 0x84]
jbe 0x10122955
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov ebx, dword [esp + 0x24]
jmp 0x101228ba
mov edx, dword [esp + 0x10]
cmp ebp, eax
jge 0x101229ab
mov ecx, dword [edx + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x10122989
movzx eax, byte [esi]
cmp edi, eax
je 0x101229ab
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x28]
jl 0x10122970
jmp 0x101229ab
mov eax, dword [edx + 0x88]
test eax, eax
je 0x101229ab
cmp esi, dword [edx + 0x84]
jbe 0x101229ab
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x1012a342
cmp dword [esp + 0x40], 0
jne 0x1011d8bb
cmp esi, ebx
je 0x10127124
nop
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edx, dword [esp + 0x10]
dec esi
mov dword [esp + 0x14], esi
cmp esi, ebx
jne 0x101229c0
mov edi, edx
mov edx, dword [esp + 0x18]
jmp 0x1012712c
mov edi, dword [esp + 0x18]
mov dword [esp + 0x38], 1
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, 3
mov ebp, ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x3c], ebp
mov ecx, edi
jmp 0x10122b13
mov edi, dword [esp + 0x18]
xor ebp, ebp
mov dword [esp + 0x3c], ebp
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
xor eax, eax
cmp cl, 0x5c
mov dword [esp + 0x34], edx
sete al
add edi, 3
mov dword [esp + 0x38], eax
mov ecx, edi
jmp 0x10122b13
mov edi, dword [esp + 0x18]
xor ebp, ebp
inc edi
mov dword [esp + 0x40], 1
mov dword [esp + 0x3c], ebp
mov ecx, edi
jmp 0x10122b0b
mov edi, dword [esp + 0x18]
mov ebp, 1
inc edi
mov dword [esp + 0x40], 1
mov dword [esp + 0x3c], ebp
mov ecx, edi
jmp 0x10122b0b
mov edi, dword [esp + 0x18]
xor ebp, ebp
inc edi
mov dword [esp + 0x40], 1
mov dword [esp + 0x3c], ebp
mov ecx, edi
mov dword [esp + 0x34], 1
jmp 0x10122b13
mov edi, dword [esp + 0x18]
xor ebp, ebp
mov dword [esp + 0x40], 1
mov dword [esp + 0x3c], ebp
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, 3
mov dword [esp + 0x34], ecx
mov ecx, edi
jmp 0x10122b13
mov edi, dword [esp + 0x18]
add edx, 0xffffffab
mov eax, edx
inc edi
and edx, 1
mov ecx, edi
mov dword [esp + 0x38], edx
movsx ebp, byte [eax + 0x1016b988]
movsx eax, byte [eax + 0x1016b994]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x34], eax
test eax, eax
jne 0x10122b13
mov dword [esp + 0x34], connect
movzx edi, byte [edi]
lea eax, [ecx + 1]
mov dword [esp + 0x28], edi
mov dword [esp + 0x18], eax
cmp edi, 0x10
je 0x10122b34
cmp edi, 0xf
je 0x10122b34
or edx, 0xffffffff
or eax, edx
or ecx, edx
jmp 0x10122b56
movzx edx, byte [eax]
xor ecx, ecx
cmp edi, 0xf
sete cl
mov dword [esp + 0x48], ecx
movzx ecx, byte [eax + 1]
add eax, 2
mov dword [esp + 0x50], ecx
mov ecx, edx
mov dword [esp + 0x18], eax
mov eax, edx
mov dword [esp + 0x4c], edx
test ebp, ebp
jle 0x10123727
test eax, eax
js 0x10123a31
cmp ecx, 0xa
ja case.default.0x10120324
jmp dword [edx*4 + 0x1012ab3c]
cmp dword [esp + 0x48], 0
jne case.default.0x1011fad5
mov ecx, 1
cmp ebp, ecx
jl 0x10123727
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov dword [esp + 0x14], esi
je 0x10122bdc
cmp eax, 0xc0
jb 0x10122bdc
test al, 0x20
jne 0x10122bba
inc esi
jmp 0x10122bd8
test al, 0x10
jne 0x10122bc3
add esi, 2
jmp 0x10122bd8
test al, 8
jne 0x10122bcc
add esi, 3
jmp 0x10122bd8
test al, 4
jne 0x10122bd5
add esi, 4
jmp 0x10122bd8
add esi, 5
mov dword [esp + 0x14], esi
inc ecx
cmp ecx, ebp
jle 0x10122b95
jmp 0x10123727
mov edi, 1
cmp ebp, edi
jl 0x10123723
mov ebx, dword [ebx + 0x78]
cmp esi, ebx
jae 0x10127b0d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov dword [esp + 0x14], esi
mov edx, eax
je 0x10122d0c
cmp eax, 0xc0
jb 0x10122d0c
test al, 0x20
jne 0x10122c38
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x10122d06
test al, 0x10
jne 0x10122c5e
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10122d06
test al, 8
jne 0x10122c8d
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10122d06
test al, 4
movzx eax, byte [esi]
jne 0x10122cc8
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10122d06
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10122d26
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp eax, 9
je 0x10122d4b
cmp eax, 5
je 0x10122d4b
cmp eax, 8
je 0x10122d4b
xor eax, eax
jmp 0x10122d50
mov eax, 1
cmp eax, dword [esp + 0x48]
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x10122bf6
jmp 0x10123723
mov edi, 1
cmp ebp, edi
jl 0x10123723
mov ebx, dword [ebx + 0x78]
cmp esi, ebx
jae 0x10127b0d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov dword [esp + 0x14], esi
mov edx, eax
je 0x10122e8e
cmp eax, 0xc0
jb 0x10122e8e
test al, 0x20
jne 0x10122dba
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x10122e88
test al, 0x10
jne 0x10122de0
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10122e88
test al, 8
jne 0x10122e0f
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10122e88
test al, 4
movzx eax, byte [esi]
jne 0x10122e4a
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10122e88
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10122ea8
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
mov edx, dword [esp + 0x50]
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp dword [eax*4 + 0x1016c448], edx
sete cl
cmp ecx, dword [esp + 0x48]
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x10122d78
jmp 0x10123723
mov edi, 1
cmp ebp, edi
jl 0x10123723
mov ebx, dword [ebx + 0x78]
cmp esi, ebx
jae 0x10127b0d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov dword [esp + 0x14], esi
mov edx, eax
je 0x1012300a
cmp eax, 0xc0
jb 0x1012300a
test al, 0x20
jne 0x10122f34
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
inc esi
jmp 0x10123004
test al, 0x10
jne 0x10122f5a
movzx ecx, byte [esi]
and eax, 0xf
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10123004
test al, 8
jne 0x10122f89
movzx ecx, byte [esi]
and eax, 7
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10123004
mov ecx, eax
test al, 4
movzx eax, byte [esi]
jne 0x10122fc6
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10123004
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10123024
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp eax, dword [esp + 0x50]
sete cl
cmp ecx, dword [esp + 0x48]
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x10122ef2
jmp 0x10123723
mov edi, 1
cmp ebp, edi
jl 0x10123723
mov ebx, dword [ebx + 0x78]
cmp esi, ebx
jae 0x10127b0d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov dword [esp + 0x14], esi
mov edx, eax
je 0x1012317f
cmp eax, 0xc0
jb 0x1012317f
test al, 0x20
jne 0x101230a9
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
inc esi
jmp 0x10123179
test al, 0x10
jne 0x101230cf
movzx ecx, byte [esi]
and eax, 0xf
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10123179
test al, 8
jne 0x101230fe
movzx ecx, byte [esi]
and eax, 7
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10123179
mov ecx, eax
test al, 4
movzx eax, byte [esi]
jne 0x1012313b
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10123179
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10123199
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab0]
cmp eax, dword [esp + 0x50]
sete cl
cmp ecx, dword [esp + 0x48]
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x10123067
jmp 0x10123723
mov edi, 1
cmp ebp, edi
jl 0x10123723
mov ebx, dword [ebx + 0x78]
nop dword [eax]
cmp esi, ebx
jae 0x10127b0d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov dword [esp + 0x14], esi
mov edx, eax
je 0x101232f6
cmp eax, 0xc0
jb 0x101232f6
test al, 0x20
jne 0x10123222
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x101232f0
test al, 0x10
jne 0x10123248
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x101232f0
test al, 8
jne 0x10123277
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x101232f0
test al, 4
movzx eax, byte [esi]
jne 0x101232b2
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x101232f0
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10123310
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x10123337
cmp eax, 3
je 0x10123337
xor eax, eax
jmp 0x1012333c
mov eax, 1
cmp eax, dword [esp + 0x48]
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x101231e0
jmp 0x10123723
mov dword [esp + 0x44], 1
cmp ebp, 1
jl 0x10123727
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov eax, ecx
mov dword [esp + 0x14], esi
mov edx, ecx
mov edi, ecx
mov dword [esp + 0x24], ecx
mov ebx, ecx
mov ebp, ecx
je 0x10123486
mov dword [esp + 0x24], ecx
cmp ecx, 0xc0
jb 0x10123486
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x101233b8
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10123474
test cl, 0x10
jne 0x101233d9
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10123474
test cl, 8
jne 0x10123403
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10123474
test cl, 4
jne 0x10123439
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10123474
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
mov edx, ecx
mov dword [esp + 0x24], ecx
mov edi, ecx
mov ebx, ecx
mov ebp, ecx
cmp eax, 0x20
ja 0x101234a3
cmp edx, 0x20
je case.0x1012357d.8193
lea eax, [ecx - 9]
cmp eax, 4
ja case.0x1012357d.8203
jmp dword [eax*4 + 0x1012ab68]
cmp edi, 0x2000
ja 0x10123555
cmp ebx, 0x2000
je case.0x1012357d.8193
cmp ecx, 0x1680
ja 0x1012354d
je case.0x1012357d.8193
mov eax, ecx
sub eax, 0x85
je case.0x1012357d.8193
sub eax, 0x1b
je case.0x1012357d.8193
mov eax, ecx
test eax, eax
jns 0x101234ec
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x10123506
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp dword [eax*4 + 0x1016c448], 6
sete cl
cmp ecx, dword [esp + 0x48]
je case.default.0x1011fad5
mov eax, dword [esp + 0x44]
mov ebp, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x44], eax
cmp eax, ebp
jle 0x10123365
jmp 0x10123723
cmp ecx, 0x180e
jmp 0x101234dd
cmp ebp, 0x3000
ja case.0x1012357d.8203
cmp dword [esp + 0x24], 0x3000
je case.0x1012357d.8193
lea eax, [ecx - 0x2001]
cmp eax, 0x5e
ja case.0x1012357d.8203
movzx eax, byte [eax + 0x1012ab84]
jmp dword [eax*4 + 0x1012ab7c]
cmp dword [esp + 0x48], 0
jne case.default.0x1011fad5
jmp 0x1012352f
mov ebx, 1
cmp ebp, ebx
jl 0x10123727
mov ecx, dword [esp + 0x10]
mov ebp, dword [ecx + 0x78]
cmp esi, ebp
jae 0x10127b0d
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov dword [esp + 0x14], esi
mov edx, eax
mov edi, eax
je 0x101236bf
cmp eax, 0xc0
jb 0x101236bf
test al, 0x20
jne 0x101235e9
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x101236b7
test al, 0x10
jne 0x1012360f
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x101236b7
test al, 8
jne 0x1012363e
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x101236b7
test al, 4
movzx eax, byte [esi]
jne 0x10123679
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x101236b7
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edx, ecx
mov edi, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x101236d9
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x10123705
cmp eax, 3
je 0x10123705
cmp edi, 0x5f
je 0x10123705
xor eax, eax
jmp 0x1012370a
mov eax, 1
cmp eax, dword [esp + 0x48]
je case.default.0x1011fad5
inc ebx
cmp ebx, dword [esp + 0x3c]
jle 0x101235a5
mov ebp, dword [esp + 0x3c]
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x34]
cmp ebp, edx
je 0x1011d8bb
cmp dword [esp + 0x38], 0
mov eax, dword [esp + 0x4c]
jne 0x10128714
mov edi, esi
mov dword [esp + 0x38], edi
test eax, eax
js 0x10125af9
cmp eax, 0xa
ja case.default.0x10120324
jmp dword [eax*4 + 0x1012abe4]
mov edi, 1
cmp ebp, edi
jl 0x10123723
mov ebx, dword [ebx + 0x78]
cmp esi, ebx
jae 0x10127b0d
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov edx, ecx
mov dword [esp + 0x14], esi
je 0x10123874
cmp ecx, 0xc0
jb 0x10123874
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x101237b2
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1012386e
test cl, 0x10
jne 0x101237d3
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1012386e
test cl, 8
jne 0x101237fd
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1012386e
test cl, 4
jne 0x10123833
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1012386e
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edx, ecx
mov eax, dword [esp + 0x50]
cmp edx, dword [eax*4 + 0x1016c970]
lea eax, [eax*4 + 0x1016c970]
jb 0x1012389d
mov edx, dword [eax]
nop word [eax + eax]
lea eax, [eax + 4]
cmp ecx, edx
je 0x101238b6
mov edx, dword [eax]
cmp ecx, edx
jae 0x10123890
cmp dword [esp + 0x48], 0
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x10123770
jmp 0x10123723
cmp dword [esp + 0x48], 0
jne case.default.0x1011fad5
jmp 0x101238a8
mov ebp, 1
cmp dword [esp + 0x3c], ebp
jl 0x10124c4f
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov eax, ecx
mov dword [esp + 0x14], esi
mov edx, ecx
mov edi, ecx
mov ebx, ecx
je 0x101239e3
cmp ecx, 0xc0
jb 0x101239e3
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1012391b
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x101239d7
test cl, 0x10
jne 0x1012393c
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x101239d7
test cl, 8
jne 0x10123966
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x101239d7
test cl, 4
jne 0x1012399c
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x101239d7
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov eax, ecx
mov dword [esp + 0x14], esi
mov edx, eax
mov edi, eax
mov ebx, eax
cmp eax, 0x24
je 0x10123a0e
cmp edx, 0x40
je 0x10123a0e
cmp edi, 0x60
je 0x10123a0e
cmp ebx, 0xa0
jb 0x10123a02
cmp ecx, 0xd7ff
jbe 0x10123a0e
cmp ecx, 0xe000
jae 0x10123a0e
xor eax, eax
jmp 0x10123a13
mov eax, 1
cmp eax, dword [esp + 0x48]
je case.default.0x1011fad5
mov ebx, dword [esp + 0x10]
inc ebp
cmp ebp, dword [esp + 0x3c]
jle 0x101238d2
jmp 0x1012371f
cmp edi, 0x16
jne 0x10123d1a
mov dword [esp + 0x44], 1
cmp ebp, 1
jl 0x10123727
nop dword [eax + eax]
mov ebp, dword [ebx + 0x78]
cmp esi, ebp
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov dword [esp + 0x14], esi
mov edx, eax
mov edi, esi
je 0x10123b72
cmp eax, 0xc0
jb 0x10123b72
test al, 0x20
jne 0x10123a97
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
inc esi
jmp 0x10123b6a
test al, 0x10
jne 0x10123abd
movzx ecx, byte [esi]
and eax, 0xf
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10123b6a
test al, 8
jne 0x10123aef
movzx ecx, byte [esi]
and eax, 7
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10123b6a
mov ecx, eax
test al, 4
movzx eax, byte [esi]
jne 0x10123b2c
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10123b6a
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edi, esi
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10123b8c
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx ebx, byte [eax*8 + 0x1016cab2]
cmp edi, ebp
jae 0x10123cd5
nop word [eax + eax]
cmp dword [esp + 0x20], 0
mov edi, 1
movzx edx, byte [esi]
mov ecx, edx
je 0x10123c89
cmp edx, 0xc0
jb 0x10123c89
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10123bf1
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x10123c85
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x10123c09
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x10123c7f
and eax, 0x3f
test dl, 8
jne 0x10123c29
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10123c7f
test dl, 4
jne 0x10123c52
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10123c7f
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
movzx eax, byte [edx + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x10123ca3
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx ecx, byte [eax*8 + 0x1016cab2]
mov eax, 1
shl eax, cl
test dword [ebx*4 + 0x1016c4c0], eax
je 0x10123cd1
add esi, edi
mov ebx, ecx
cmp esi, ebp
jb 0x10123bb0
mov dword [esp + 0x14], esi
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10123d00
cmp esi, dword [ebx + 0x78]
jb 0x10123d00
cmp esi, dword [ebx + 0x84]
jbe 0x10123d00
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov eax, dword [esp + 0x44]
mov ebp, dword [esp + 0x3c]
inc eax
mov dword [esp + 0x44], eax
cmp eax, ebp
jle 0x10123a50
jmp 0x10123723
mov ecx, dword [esp + 0x20]
lea eax, [edi - 6]
test ecx, ecx
je 0x101248b3
cmp eax, 0xf
ja case.default.0x10120324
jmp dword [eax*4 + 0x1012ac10]
mov edi, 1
cmp ebp, edi
jl 0x10124c58
nop word [eax + eax]
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x101279f1
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x10123d87
push dword [esp + 0x20]
lea eax, [ebx + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.1012c8a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
mov dword [esp + 0x44], eax
jne case.default.0x1011fad5
jmp 0x10123dac
mov edx, dword [ebx + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x10123dac
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x10123dac
cmp edx, 1
je case.default.0x1011fad5
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je case.default.0x1011fad5
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je 0x10123de1
lea eax, [esi + 1]
cmp eax, dword [ebx + 0x78]
jb 0x10123de1
cmp dword [ebx + 0x18], 0
jne 0x10123de1
cmp dword [ebx + 0x1c], 2
jne 0x10123de1
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x10123de1
mov dword [ebx + 0x64], 1
cmp ecx, 1
jg 0x1012a342
mov edx, dword [ebx + 0x78]
inc esi
mov dword [esp + 0x14], esi
cmp esi, edx
jae 0x10123e05
mov ecx, esi
nop
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10123e01
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x10123df0
mov dword [esp + 0x14], esi
inc edi
cmp edi, ebp
jle 0x10123d50
jmp 0x10123723
mov edi, 1
cmp ebp, edi
jl 0x10124c58
mov ebx, dword [ebx + 0x78]
cmp esi, ebx
jae 0x10127b0d
mov eax, dword [esp + 0x10]
inc esi
mov dword [esp + 0x14], esi
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x10123e55
mov ecx, esi
nop dword [eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10123e51
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x10123e40
mov dword [esp + 0x14], esi
inc edi
cmp edi, ebp
jle 0x10123e23
jmp 0x10123723
mov eax, dword [ebx + 0x78]
sub eax, ebp
cmp esi, eax
ja case.default.0x1011fad5
add esi, ebp
mov dword [esp + 0x14], esi
jmp 0x1012372b
mov ebx, 1
cmp ebp, ebx
jl 0x1012372b
mov ecx, dword [esp + 0x10]
mov ebp, dword [ecx + 0x78]
nop dword [eax + eax]
cmp esi, ebp
jae 0x10127b11
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x14], ecx
mov eax, ecx
mov dword [esp + 0x14], esi
mov edx, ecx
mov edi, esi
cmp ecx, 0xc0
jb 0x10123f95
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10123ecf
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10123f8b
test cl, 0x10
jne 0x10123ef0
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10123f8b
test cl, 8
jne 0x10123f1a
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10123f8b
test cl, 4
jne 0x10123f50
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10123f8b
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
mov edx, ecx
mov edi, esi
cmp eax, 0x85
ja 0x10123fcb
cmp edx, 0x85
je case.0x10123fb0.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x1011fad5
jmp dword [ecx*4 + 0x1012ac50]
cmp edi, ebp
jae case.0x10123fb0.10
cmp byte [esi], 0xa
mov ecx, dword [esp + 0x10]
jne 0x10123ff0
inc esi
mov dword [esp + 0x14], esi
jmp 0x10123ff0
sub ecx, 0x2028
je case.0x10123fb0.11
sub ecx, 1
jne case.default.0x1011fad5
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x68], 0
jne case.default.0x1011fad5
jmp 0x10123ff0
mov ecx, dword [esp + 0x10]
inc ebx
cmp ebx, dword [esp + 0x3c]
jle 0x10123e90
jmp 0x1012371f
mov dword [esp + 0x44], 1
cmp ebp, 1
jl 0x1012372b
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x14], ecx
mov eax, ecx
mov dword [esp + 0x14], esi
mov edi, ecx
mov ebp, ecx
mov edx, ecx
mov ebx, ecx
cmp ecx, 0xc0
jb 0x1012411f
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x10124055
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x10124111
test cl, 0x10
jne 0x10124076
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10124111
test cl, 8
jne 0x101240a0
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10124111
test cl, 4
jne 0x101240d6
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10124111
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
mov edi, ecx
mov ebp, ecx
mov edx, ecx
mov ebx, ecx
cmp eax, 0x2000
ja 0x10124190
cmp edi, 0x2000
je case.default.0x1011fad5
cmp ebp, 0xa0
ja 0x10124176
cmp ecx, 0xa0
je case.default.0x1011fad5
cmp ecx, 9
je case.default.0x1011fad5
cmp ecx, 0x20
je case.default.0x1011fad5
mov eax, dword [esp + 0x44]
mov ebp, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x44], eax
cmp eax, ebp
jle 0x10124011
jmp 0x10123723
cmp ecx, 0x1680
je case.default.0x1011fad5
cmp ecx, 0x180e
je case.default.0x1011fad5
jmp case.0x101241b6.8203
cmp edx, 0x3000
ja case.0x101241b6.8203
cmp ebx, 0x3000
je case.default.0x1011fad5
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x101241b6.8203
movzx eax, byte [ecx + 0x1012ac68]
jmp dword [eax*4 + 0x1012ac60]
mov dword [esp + 0x44], 1
cmp ebp, 1
jl 0x1012372b
nop
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x14], edx
mov eax, edx
mov dword [esp + 0x14], esi
mov edi, edx
mov ebp, edx
mov ecx, edx
mov ebx, edx
cmp edx, 0xc0
jb 0x101242cb
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x10124216
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
inc esi
jmp 0x101242bd
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x10124237
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x101242bd
test dl, 8
jne 0x1012425a
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x101242bd
test dl, 4
jne 0x10124289
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x101242bd
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
mov eax, edx
mov edi, edx
mov ebp, edx
mov ecx, edx
mov ebx, edx
cmp eax, 0x2000
ja 0x1012432c
cmp edi, 0x2000
je case.0x10124356.8193
cmp ebp, 0xa0
ja 0x10124316
cmp edx, 0xa0
je case.0x10124356.8193
cmp edx, 9
je case.0x10124356.8193
cmp edx, 0x20
jne case.default.0x1011fad5
mov eax, dword [esp + 0x44]
mov ebp, dword [esp + 0x3c]
inc eax
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x44], eax
cmp eax, ebp
jle 0x101241d0
jmp 0x10123723
cmp edx, 0x1680
je case.0x10124356.8193
cmp edx, 0x180e
jne case.default.0x1011fad5
jmp case.0x10124356.8193
cmp ecx, 0x3000
ja case.default.0x1011fad5
cmp ebx, 0x3000
je case.0x10124356.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.default.0x1011fad5
movzx eax, byte [edx + 0x1012acd0]
jmp dword [eax*4 + 0x1012acc8]
mov edi, 1
cmp ebp, edi
jl 0x10124c58
mov ebx, dword [ebx + 0x78]
nop dword [eax]
cmp esi, ebx
jae 0x10127b0d
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x14], edx
mov eax, edx
mov dword [esp + 0x14], esi
mov ecx, edx
cmp edx, 0xc0
jb 0x1012445e
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x101243af
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
inc esi
jmp 0x10124456
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x101243d0
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x10124456
test dl, 8
jne 0x101243f3
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10124456
test dl, 4
jne 0x10124422
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x10124456
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
mov eax, edx
mov ecx, edx
cmp eax, 0x85
ja 0x10124480
cmp ecx, 0x85
je case.default.0x1011fad5
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x10124479
jmp dword [edx*4 + 0x1012ad30]
sub edx, 0x2028
je case.default.0x1011fad5
sub edx, 1
je case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x10124370
jmp 0x10123723
mov edi, 1
cmp ebp, edi
jl 0x10124c58
mov ebx, dword [ebx + 0x78]
cmp esi, ebx
jae 0x10127b0d
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x14], edx
mov eax, edx
mov dword [esp + 0x14], esi
mov ecx, edx
cmp edx, 0xc0
jb 0x101245a1
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x101244f2
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
inc esi
jmp 0x10124599
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x10124513
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x10124599
test dl, 8
jne 0x10124536
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10124599
test dl, 4
jne 0x10124565
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x10124599
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov dword [esp + 0x14], esi
mov eax, edx
mov ecx, edx
cmp eax, 0x85
ja 0x101245c3
cmp ecx, 0x85
je case.0x101245bc.10
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x1011fad5
jmp dword [edx*4 + 0x1012ad40]
sub edx, 0x2028
je case.0x101245bc.10
sub edx, 1
jne case.default.0x1011fad5
inc edi
cmp edi, ebp
jle 0x101244b3
jmp 0x10123723
mov edx, 1
cmp ebp, edx
jl 0x1012372b
mov edi, dword [ebx + 0x78]
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
mov dword [esp + 0x14], ecx
mov eax, ecx
mov dword [esp + 0x14], esi
cmp ecx, 0xc0
jb 0x101246ef
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1012462d
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x101246e9
test cl, 0x10
jne 0x1012464e
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x101246e9
test cl, 8
jne 0x10124678
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x101246e9
test cl, 4
jne 0x101246ae
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x101246e9
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov eax, ecx
cmp eax, 0x80
jae 0x10124703
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
jne case.default.0x1011fad5
inc edx
cmp edx, ebp
jle 0x101245f2
jmp 0x10123723
cmp ebp, 1
jl 0x1012372b
mov edi, dword [ebx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.default.0x1011fad5
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
je case.default.0x1011fad5
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, ebp
jle 0x10124722
jmp 0x10123723
mov edi, 1
cmp ebp, edi
jl 0x10124c58
mov ebx, dword [ebx + 0x78]
cmp esi, ebx
jae 0x10127b0d
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x10124789
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne case.default.0x1011fad5
mov eax, dword [esp + 0x10]
inc esi
mov dword [esp + 0x14], esi
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x101247b5
mov ecx, esi
nop dword [eax + eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x101247b1
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x101247a0
mov dword [esp + 0x14], esi
inc edi
cmp edi, ebp
jle 0x10124765
jmp 0x10123723
cmp ebp, 1
jl 0x1012372b
mov edi, dword [ebx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.default.0x1011fad5
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
je case.default.0x1011fad5
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, ebp
jle 0x101247d0
jmp 0x10123723
mov edi, 1
cmp ebp, edi
jl 0x10124c58
mov ebx, dword [ebx + 0x78]
cmp esi, ebx
jae 0x10127b0d
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x10124837
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x1011fad5
mov eax, dword [esp + 0x10]
inc esi
mov dword [esp + 0x14], esi
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x10124865
mov ecx, esi
nop dword [eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10124861
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x10124850
mov dword [esp + 0x14], esi
inc edi
cmp edi, ebp
jle 0x10124813
jmp 0x10123723
cmp ebp, 1
jl 0x1012372b
mov edi, dword [ebx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.default.0x1011fad5
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x1011fad5
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, ebp
jle 0x10124880
jmp 0x10123723
cmp eax, 0xf
ja case.default.0x10120324
jmp dword [eax*4 + 0x1012ad50]
mov edi, 1
cmp ebp, edi
jl 0x10124c58
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x101279f1
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x10124905
push 0
lea eax, [ebx + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.1012c8a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
mov dword [esp + 0x44], eax
jne case.default.0x1011fad5
jmp 0x1012492a
mov edx, dword [ebx + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x1012492a
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x1012492a
cmp edx, 1
je case.default.0x1011fad5
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je case.default.0x1011fad5
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je 0x1012495f
lea eax, [esi + 1]
cmp eax, dword [ebx + 0x78]
jb 0x1012495f
cmp dword [ebx + 0x18], 0
jne 0x1012495f
cmp dword [ebx + 0x1c], 2
jne 0x1012495f
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x1012495f
mov dword [ebx + 0x64], 1
cmp ecx, 1
jg 0x1012a342
inc esi
inc edi
mov dword [esp + 0x14], esi
cmp edi, ebp
jle 0x101248d0
jmp 0x10123723
mov eax, dword [ebx + 0x78]
sub eax, ebp
cmp esi, eax
ja 0x101279f1
add esi, ebp
mov dword [esp + 0x14], esi
jmp 0x1012372b
mov ecx, 1
cmp ebp, ecx
jl 0x10123727
mov edx, dword [ebx + 0x78]
nop word [eax + eax]
cmp esi, edx
jae 0x101279f1
mov al, byte [esi]
inc esi
movzx eax, al
add eax, 0xfffffff6
mov dword [esp + 0x14], esi
cmp eax, 0x7b
ja case.default.0x1011fad5
movzx eax, byte [eax + 0x1012ada0]
jmp dword [eax*4 + 0x1012ad90]
cmp esi, edx
jae case.0x101249c5.10
cmp byte [esi], 0xa
jne case.0x101249c5.10
inc esi
mov dword [esp + 0x14], esi
jmp case.0x101249c5.10
cmp dword [ebx + 0x68], 0
jne case.default.0x1011fad5
inc ecx
cmp ecx, ebp
jle 0x101249a0
jmp 0x10123727
mov ecx, 1
cmp ebp, ecx
jl 0x10123727
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x101279f1
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x14], esi
cmp eax, 9
je case.default.0x1011fad5
cmp eax, 0x20
je case.default.0x1011fad5
cmp eax, 0xa0
je case.default.0x1011fad5
inc ecx
cmp ecx, ebp
jle 0x10124a00
jmp 0x10123727
mov ecx, 1
cmp ebp, ecx
jl 0x10123727
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x101279f1
movzx eax, byte [esi]
inc esi
mov dword [esp + 0x14], esi
cmp eax, 9
je 0x10124a6c
cmp eax, 0x20
je 0x10124a6c
cmp eax, 0xa0
jne case.default.0x1011fad5
inc ecx
cmp ecx, ebp
jle 0x10124a47
jmp 0x10123727
mov ecx, 1
cmp ebp, ecx
jl 0x10123727
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x101279f1
mov al, byte [esi]
inc esi
movzx eax, al
add eax, 0xfffffff6
mov dword [esp + 0x14], esi
cmp eax, 0x7b
ja case.0x10124aa7.14
movzx eax, byte [eax + 0x1012ae24]
jmp dword [eax*4 + 0x1012ae1c]
inc ecx
cmp ecx, ebp
jle 0x10124a86
jmp 0x10123727
mov ecx, 1
cmp ebp, ecx
jl 0x10123727
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x101279f1
mov al, byte [esi]
inc esi
movzx eax, al
add eax, 0xfffffff6
mov dword [esp + 0x14], esi
cmp eax, 0x7b
ja case.default.0x1011fad5
movzx eax, byte [eax + 0x1012aea8]
jmp dword [eax*4 + 0x1012aea0]
inc ecx
cmp ecx, ebp
jle 0x10124ac8
jmp 0x10123727
cmp ebp, 1
jl 0x1012372b
mov edi, dword [ebx + 0x78]
mov edx, 1
nop
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
jne case.default.0x1011fad5
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, ebp
jle 0x10124b10
jmp 0x10123723
cmp ebp, 1
jl 0x1012372b
mov edi, dword [ebx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
je case.default.0x1011fad5
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, ebp
jle 0x10124b48
jmp 0x10123723
cmp ebp, 1
jl 0x1012372b
mov edi, dword [ebx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
jne case.default.0x1011fad5
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, ebp
jle 0x10124b80
jmp 0x10123723
cmp ebp, 1
jl 0x1012372b
mov edi, dword [ebx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
je case.default.0x1011fad5
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, ebp
jle 0x10124bb8
jmp 0x10123723
cmp ebp, 1
jl 0x1012372b
mov edi, dword [ebx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x1011fad5
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, ebp
jle 0x10124bf0
jmp 0x10123723
cmp ebp, 1
jl 0x1012372b
mov edi, dword [ebx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x101279f1
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x1011fad5
inc esi
inc edx
mov dword [esp + 0x14], esi
cmp edx, ebp
jle 0x10124c28
jmp 0x10123723
mov ebp, dword [esp + 0x3c]
jmp 0x10123727
mov edi, dword [esp + 0x28]
jmp 0x1012372b
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge 0x10124e73
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x10124cda
cmp dword [esp + 0x20], 0
mov eax, 1
movzx ecx, byte [esi]
je 0x10124cbd
cmp ecx, 0xc0
jb 0x10124cbd
test cl, 0x20
jne 0x10124c97
mov eax, 2
jmp 0x10124cbd
test cl, 0x10
jne 0x10124ca3
mov eax, 3
jmp 0x10124cbd
test cl, 8
jne 0x10124caf
mov eax, 4
jmp 0x10124cbd
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esp + 0x48], 0
jne 0x10124e73
add esi, eax
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10124c70
jmp 0x10124e73
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10124e73
cmp esi, dword [ebx + 0x84]
jbe 0x10124e73
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
jmp 0x10124e73
cmp ebp, edx
jge 0x10125af0
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
nop dword [eax + eax]
mov edi, 1
cmp esi, ebx
jae 0x10124e8b
cmp dword [esp + 0x20], 0
movzx eax, byte [esi]
mov ecx, eax
mov edx, eax
je 0x10124e10
cmp eax, 0xc0
jb 0x10124e10
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10124d65
and eax, 0x1f
mov edi, 2
shl eax, 6
jmp 0x10124e0c
test al, 0x10
jne 0x10124d7f
and eax, 0xf
mov edi, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x10124e06
test al, 8
jne 0x10124da2
and eax, 7
mov edi, 4
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]
jmp 0x10124e06
test al, 4
jne 0x10124dd1
and eax, 3
mov edi, 5
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]
jmp 0x10124e06
and eax, 1
mov edi, 6
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]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10124e2a
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp eax, 9
je 0x10124e4f
cmp eax, 5
je 0x10124e4f
cmp eax, 8
je 0x10124e4f
xor eax, eax
jmp 0x10124e54
mov eax, 1
cmp eax, dword [esp + 0x48]
je 0x10124e6b
add esi, edi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10124d20
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x38]
cmp dword [esp + 0x40], 0
je 0x1012723a
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10124e6f
cmp esi, dword [ebx + 0x84]
jbe 0x10124e6f
mov dword [ebx + 0x64], edi
cmp eax, 1
jg 0x1012a342
jmp 0x10124e6f
cmp ebp, edx
jge 0x10125af0
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
nop
cmp esi, ebx
jae 0x1012500c
cmp dword [esp + 0x20], 0
mov edi, 1
movzx eax, byte [esi]
mov ecx, eax
mov edx, eax
je 0x10124fb0
cmp eax, 0xc0
jb 0x10124fb0
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10124f05
and eax, 0x1f
mov edi, 2
shl eax, 6
jmp 0x10124fac
test al, 0x10
jne 0x10124f1f
and eax, 0xf
mov edi, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x10124fa6
test al, 8
jne 0x10124f42
and eax, 7
mov edi, 4
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]
jmp 0x10124fa6
test al, 4
jne 0x10124f71
and eax, 3
mov edi, 5
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]
jmp 0x10124fa6
and eax, 1
mov edi, 6
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]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10124fca
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
mov edx, dword [esp + 0x50]
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp dword [eax*4 + 0x1016c448], edx
sete cl
cmp ecx, dword [esp + 0x48]
je 0x10124e6b
add esi, edi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10124ec0
jmp 0x10124e6b
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10124e6f
cmp esi, dword [ebx + 0x84]
jbe 0x10124e6f
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
jmp 0x10124e6f
cmp ebp, edx
jge 0x10125af0
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
nop
cmp esi, ebx
jae 0x1012500c
cmp dword [esp + 0x20], 0
mov edi, 1
movzx eax, byte [esi]
mov ecx, eax
mov edx, eax
je 0x1012513c
cmp eax, 0xc0
jb 0x1012513c
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10125091
and eax, 0x1f
mov edi, 2
shl eax, 6
jmp 0x10125138
test al, 0x10
jne 0x101250ab
and eax, 0xf
mov edi, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x10125132
test al, 8
jne 0x101250ce
and eax, 7
mov edi, 4
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]
jmp 0x10125132
test al, 4
jne 0x101250fd
and eax, 3
mov edi, 5
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]
jmp 0x10125132
and eax, 1
mov edi, 6
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]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10125156
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp eax, dword [esp + 0x50]
sete cl
cmp ecx, dword [esp + 0x48]
je 0x10124e6b
add esi, edi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10125050
jmp 0x10124e6b
cmp ebp, edx
jge 0x10125af0
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x1012500c
cmp dword [esp + 0x20], 0
mov edi, 1
movzx eax, byte [esi]
mov ecx, eax
mov edx, eax
je 0x10125290
cmp eax, 0xc0
jb 0x10125290
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x101251e5
and eax, 0x1f
mov edi, 2
shl eax, 6
jmp 0x1012528c
test al, 0x10
jne 0x101251ff
and eax, 0xf
mov edi, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x10125286
test al, 8
jne 0x10125222
and eax, 7
mov edi, 4
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]
jmp 0x10125286
test al, 4
jne 0x10125251
and eax, 3
mov edi, 5
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]
jmp 0x10125286
and eax, 1
mov edi, 6
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]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x101252aa
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab0]
cmp eax, dword [esp + 0x50]
sete cl
cmp ecx, dword [esp + 0x48]
je 0x10124e6b
add esi, edi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x101251a0
jmp 0x10124e6b
cmp ebp, edx
jge 0x10125af0
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
nop dword [eax]
nop dword [eax + eax]
mov edi, 1
cmp esi, ebx
jae 0x10124e8b
cmp dword [esp + 0x20], 0
movzx eax, byte [esi]
mov ecx, eax
mov edx, eax
je 0x101253f0
cmp eax, 0xc0
jb 0x101253f0
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x10125345
and eax, 0x1f
mov edi, 2
shl eax, 6
jmp 0x101253ec
test al, 0x10
jne 0x1012535f
and eax, 0xf
mov edi, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x101253e6
test al, 8
jne 0x10125382
and eax, 7
mov edi, 4
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]
jmp 0x101253e6
test al, 4
jne 0x101253b1
and eax, 3
mov edi, 5
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]
jmp 0x101253e6
and eax, 1
mov edi, 6
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]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x1012540a
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x10125431
cmp eax, 3
je 0x10125431
xor eax, eax
jmp 0x10125436
mov eax, 1
cmp eax, dword [esp + 0x48]
je 0x10124e6b
add esi, edi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10125300
jmp 0x10124e6b
cmp ebp, edx
jge 0x10125af0
nop
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x28], 1
cmp esi, dword [ebx + 0x78]
jae 0x10125010
cmp dword [esp + 0x20], 0
movzx edx, byte [esi]
mov eax, edx
mov dword [esp + 0x24], edx
mov ecx, edx
mov edi, edx
mov ebx, edx
mov ebp, edx
je 0x10125576
mov dword [esp + 0x24], edx
cmp edx, 0xc0
jb 0x10125576
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x101254c2
and eax, 0x1f
mov dword [esp + 0x28], 2
shl eax, 6
mov edx, ecx
jmp 0x10125566
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x101254e0
and edx, 0xf
mov dword [esp + 0x28], 3
shl edx, 6
or edx, ecx
jmp 0x10125560
and eax, 0x3f
test dl, 8
jne 0x10125503
and edx, 7
mov dword [esp + 0x28], 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10125560
test dl, 4
jne 0x1012552f
and edx, 3
mov dword [esp + 0x28], 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10125560
and edx, 1
mov dword [esp + 0x28], 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
mov dword [esp + 0x24], edx
mov ecx, edx
mov edi, edx
mov ebx, edx
mov ebp, edx
cmp eax, 0x20
ja 0x10125593
cmp ecx, 0x20
je case.0x1012566f.8193
lea eax, [edx - 9]
cmp eax, 4
ja case.0x1012566f.8203
jmp dword [eax*4 + 0x1012af24]
cmp edi, 0x2000
ja 0x10125647
cmp ebx, 0x2000
je case.0x1012566f.8193
cmp edx, 0x1680
ja 0x1012563f
je case.0x1012566f.8193
mov eax, edx
sub eax, 0x85
je case.0x1012566f.8193
sub eax, 0x1b
je case.0x1012566f.8193
mov eax, edx
test eax, eax
jns 0x101255dc
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x101255f6
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp dword [eax*4 + 0x1016c448], 6
sete cl
cmp ecx, dword [esp + 0x48]
je 0x10124e6b
mov eax, dword [esp + 0x3c]
add esi, dword [esp + 0x28]
inc eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x3c], eax
cmp eax, dword [esp + 0x34]
jl 0x10125460
jmp 0x10124e6b
cmp edx, 0x180e
jmp 0x101255cd
cmp ebp, 0x3000
ja case.0x1012566f.8203
cmp dword [esp + 0x24], 0x3000
je case.0x1012566f.8193
lea eax, [edx - 0x2001]
cmp eax, 0x5e
ja case.0x1012566f.8203
movzx eax, byte [eax + 0x1012af40]
jmp dword [eax*4 + 0x1012af38]
cmp dword [esp + 0x48], 0
jne 0x10124e6b
jmp 0x1012561f
cmp ebp, edx
jge 0x10125af0
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
mov ebx, 1
cmp esi, ebp
jae 0x1012500c
cmp dword [esp + 0x20], 0
movzx eax, byte [esi]
mov ecx, eax
mov edx, eax
mov edi, eax
je 0x10125786
cmp eax, 0xc0
jb 0x10125786
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x101256d9
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x10125780
test al, 0x10
jne 0x101256f3
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x1012577a
test al, 8
jne 0x10125716
and eax, 7
mov ebx, 4
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]
jmp 0x1012577a
test al, 4
jne 0x10125745
and eax, 3
mov ebx, 5
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]
jmp 0x1012577a
and eax, 1
mov ebx, 6
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]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edx, ecx
mov edi, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x101257a0
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x101257cc
cmp eax, 3
je 0x101257cc
cmp edi, 0x5f
je 0x101257cc
xor eax, eax
jmp 0x101257d1
mov eax, 1
cmp eax, dword [esp + 0x48]
je 0x10124e6b
mov eax, dword [esp + 0x3c]
add esi, ebx
inc eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x3c], eax
cmp eax, dword [esp + 0x34]
jl 0x10125692
jmp 0x10124e6b
cmp ebp, edx
jge 0x10125af0
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
nop dword [eax + eax]
mov edi, 1
cmp esi, ebx
jae 0x10124e8b
cmp dword [esp + 0x20], 0
movzx edx, byte [esi]
mov ecx, edx
je 0x101258f4
cmp edx, 0xc0
jb 0x101258f4
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10125859
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x101258f0
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x10125874
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x101258ea
and eax, 0x3f
test dl, 8
jne 0x10125894
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x101258ea
test dl, 4
jne 0x101258bd
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x101258ea
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov eax, dword [esp + 0x50]
cmp ecx, dword [eax*4 + 0x1016c970]
lea eax, [eax*4 + 0x1016c970]
jb 0x1012591d
mov ecx, dword [eax]
nop word [eax + eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x1012593e
mov ecx, dword [eax]
cmp edx, ecx
jae 0x10125910
cmp dword [esp + 0x48], 0
je 0x10124e6b
add esi, edi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10125810
jmp 0x10124e6b
cmp dword [esp + 0x48], 0
jne 0x10124e6b
jmp 0x10125928
cmp ebp, edx
jge 0x10125af0
mov ebx, dword [esp + 0x10]
mov ebp, 1
cmp esi, dword [ebx + 0x78]
jae 0x10125ac5
cmp dword [esp + 0x20], 0
movzx edx, byte [esi]
mov eax, edx
mov ecx, edx
mov edi, edx
mov ebx, edx
je 0x10125a6d
cmp edx, 0xc0
jb 0x10125a6d
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x101259af
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ebp, 2
or edx, eax
mov eax, edx
mov ecx, edx
mov edi, edx
mov ebx, edx
jmp 0x10125a6d
movzx eax, byte [esi + 2]
and eax, 0x3f
test dl, 0x10
jne 0x101259da
and edx, 0xf
mov ebp, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
mov eax, edx
mov ecx, edx
mov edi, edx
mov ebx, edx
jmp 0x10125a6d
test dl, 8
jne 0x10125a07
and edx, 7
mov ebp, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
mov ecx, edx
mov edi, edx
mov ebx, edx
jmp 0x10125a6d
test dl, 4
jne 0x10125a30
and edx, 3
mov ebp, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10125a5d
and edx, ebp
mov ebp, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
mov ebx, eax
mov edi, eax
mov ecx, eax
cmp eax, 0x24
je 0x10125a98
cmp ecx, 0x40
je 0x10125a98
cmp edi, 0x60
je 0x10125a98
cmp ebx, 0xa0
jb 0x10125a8c
cmp edx, 0xd7ff
jbe 0x10125a98
cmp edx, 0xe000
jae 0x10125a98
xor eax, eax
jmp 0x10125a9d
mov eax, 1
cmp eax, dword [esp + 0x48]
je 0x10124e6b
mov eax, dword [esp + 0x3c]
add esi, ebp
inc eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x3c], eax
cmp eax, dword [esp + 0x34]
jl 0x10125953
jmp 0x10124e6b
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10124e6f
cmp esi, dword [ebx + 0x84]
jbe 0x10124e6f
mov dword [ebx + 0x64], ebp
cmp eax, 1
jg 0x1012a342
jmp 0x10124e6f
mov ebx, dword [esp + 0x10]
jmp 0x10124e73
mov eax, dword [esp + 0x28]
cmp eax, 0x16
jne 0x10125e16
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge 0x10125dfe
mov ebp, dword [ebx + 0x78]
cmp esi, ebp
jae 0x10125dd8
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov dword [esp + 0x14], esi
mov edx, eax
mov edi, esi
je 0x10125c34
cmp eax, 0xc0
jb 0x10125c34
test al, 0x20
jne 0x10125b59
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
inc esi
jmp 0x10125c2c
test al, 0x10
jne 0x10125b7f
movzx ecx, byte [esi]
and eax, 0xf
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10125c2c
test al, 8
jne 0x10125bb1
movzx ecx, byte [esi]
and eax, 7
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10125c2c
mov ecx, eax
test al, 4
movzx eax, byte [esi]
jne 0x10125bee
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10125c2c
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x14], esi
mov edi, esi
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10125c4e
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx ebx, byte [eax*8 + 0x1016cab2]
cmp edi, ebp
jae 0x10125d98
nop dword [eax + eax]
cmp dword [esp + 0x20], 0
mov edi, 1
movzx edx, byte [esi]
mov ecx, edx
je 0x10125d4c
cmp edx, 0xc0
jb 0x10125d4c
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10125cb1
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x10125d48
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x10125ccc
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x10125d42
and eax, 0x3f
test dl, 8
jne 0x10125cec
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10125d42
test dl, 4
jne 0x10125d15
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10125d42
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
movzx eax, byte [edx + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x10125d66
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx ecx, byte [eax*8 + 0x1016cab2]
mov eax, 1
shl eax, cl
test dword [ebx*4 + 0x1016c4c0], eax
je 0x10125d94
add esi, edi
mov ebx, ecx
cmp esi, ebp
jb 0x10125c70
mov dword [esp + 0x14], esi
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10125dc3
cmp esi, dword [ebx + 0x78]
jb 0x10125dc3
cmp esi, dword [ebx + 0x84]
jbe 0x10125dc3
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov eax, dword [esp + 0x3c]
inc eax
mov dword [esp + 0x3c], eax
cmp eax, dword [esp + 0x34]
jl 0x10125b12
jmp 0x10125dfa
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10125dfa
cmp esi, dword [ebx + 0x84]
jbe 0x10125dfa
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov edi, dword [esp + 0x38]
cmp dword [esp + 0x40], 0
je 0x1012729b
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
add eax, 0xfffffffa
test ecx, ecx
je 0x10126bcd
cmp eax, 0xf
ja case.default.0x10120324
jmp dword [eax*4 + 0x1012afa0]
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge 0x10126137
nop dword [eax]
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x10125f5b
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x10125e73
push dword [esp + 0x20]
lea eax, [ebx + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.1012c8a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
jne 0x10126137
jmp 0x10125e98
mov edx, dword [ebx + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x10125e98
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x10125e98
cmp edx, 1
je 0x10126137
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je 0x10126137
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je 0x10125ecd
lea eax, [esi + 1]
cmp eax, dword [ebx + 0x78]
jb 0x10125ecd
cmp dword [ebx + 0x18], 0
jne 0x10125ecd
cmp dword [ebx + 0x1c], 2
jne 0x10125ecd
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x10125ecd
mov dword [ebx + 0x64], 1
cmp ecx, 1
jg 0x1012a342
mov edx, dword [ebx + 0x78]
inc esi
mov dword [esp + 0x14], esi
cmp esi, edx
jae 0x10125ef5
mov ecx, esi
nop dword [eax + eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10125ef1
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x10125ee0
mov dword [esp + 0x14], esi
inc ebp
cmp ebp, dword [esp + 0x34]
jl 0x10125e40
jmp 0x10126137
mov ebx, dword [esp + 0x10]
cmp edx, 0x7fffffff
jge 0x10125f54
cmp ebp, edx
jge 0x10126137
mov edi, dword [ebx + 0x78]
mov eax, dword [esp + 0x34]
cmp esi, edi
jae 0x10125f5b
inc esi
mov edx, edi
mov dword [esp + 0x14], esi
cmp esi, edx
jae 0x10125f4a
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10125f42
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x10125f31
mov eax, dword [esp + 0x34]
mov dword [esp + 0x14], esi
inc ebp
cmp ebp, eax
jl 0x10125f20
jmp 0x10126137
mov esi, dword [ebx + 0x78]
mov dword [esp + 0x14], esi
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10126137
cmp esi, dword [ebx + 0x84]
jbe 0x10126137
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
jmp 0x10126137
mov ebx, dword [esp + 0x10]
sub edx, ebp
mov ecx, dword [ebx + 0x78]
mov eax, ecx
sub eax, esi
cmp edx, eax
jbe 0x10125fb7
mov eax, dword [ebx + 0x88]
mov esi, ecx
mov dword [esp + 0x14], esi
test eax, eax
je 0x10126137
cmp ecx, dword [ebx + 0x84]
jmp 0x10125f6f
add esi, edx
mov dword [esp + 0x14], esi
jmp 0x10126137
cmp ebp, edx
jge 0x10126133
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x78]
mov dword [esp + 0x44], eax
nop word [eax + eax]
mov ebp, 1
cmp esi, eax
jae 0x1012614f
movzx edx, byte [esi]
mov eax, edx
mov ecx, edx
mov edi, edx
mov ebx, edx
cmp edx, 0xc0
jb 0x101260c3
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10126022
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ebp, 2
jmp 0x101260b9
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x1012603d
and edx, 0xf
mov ebp, 3
shl edx, 6
or edx, ecx
jmp 0x101260b3
and eax, 0x3f
test dl, 8
jne 0x1012605d
and edx, 7
mov ebp, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x101260b3
test dl, 4
jne 0x10126086
and edx, 3
mov ebp, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x101260b3
and edx, ebp
mov ebp, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
mov ecx, edx
mov edi, edx
mov ebx, edx
cmp eax, 0xd
jne 0x101260dd
mov eax, dword [esp + 0x44]
inc esi
mov dword [esp + 0x14], esi
cmp esi, eax
jae 0x10126133
cmp byte [esi], 0xa
jne 0x10126120
inc esi
jmp 0x1012611c
cmp ecx, 0xa
je 0x10126116
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x68], 0
jne 0x10126bc6
cmp edi, 0xb
je 0x10126116
cmp ebx, 0xc
je 0x10126116
cmp edx, 0x85
je 0x10126116
cmp edx, 0x2028
je 0x10126116
cmp edx, 0x2029
jne 0x10126bc6
mov eax, dword [esp + 0x44]
add esi, ebp
mov dword [esp + 0x14], esi
mov ecx, dword [esp + 0x3c]
inc ecx
mov dword [esp + 0x3c], ecx
cmp ecx, dword [esp + 0x34]
jl 0x10125fe0
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x40], 0
je 0x1012751d
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10126137
cmp esi, dword [ebx + 0x84]
jbe 0x10126137
mov dword [ebx + 0x64], ebp
cmp eax, 1
jg 0x1012a342
jmp 0x10126137
cmp ebp, edx
jge 0x10126133
nop word [eax + eax]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x24], 1
cmp esi, dword [ebx + 0x78]
jae 0x10125f5b
movzx edx, byte [esi]
mov eax, edx
mov edi, edx
mov ebp, edx
mov ecx, edx
mov ebx, edx
cmp edx, 0xc0
jb 0x10126282
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x101261cf
and eax, 0x1f
mov dword [esp + 0x24], 2
shl eax, 6
mov edx, ecx
jmp 0x10126276
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x101261ed
and edx, 0xf
mov dword [esp + 0x24], 3
shl edx, 6
or edx, ecx
jmp 0x10126270
and eax, 0x3f
test dl, 8
jne 0x10126213
and edx, 7
mov dword [esp + 0x24], 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10126270
test dl, 4
jne 0x1012623f
and edx, 3
mov dword [esp + 0x24], 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10126270
and edx, 1
mov dword [esp + 0x24], 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
mov edi, edx
mov ebp, edx
mov ecx, edx
mov ebx, edx
cmp eax, 0x2000
ja 0x10126303
cmp edi, 0x2000
je case.0x10126325.8193
cmp ebp, 0xa0
ja 0x101262f3
cmp edx, 0xa0
je case.0x10126325.8193
cmp edx, 9
je case.0x10126325.8193
cmp edx, 0x20
je case.0x10126325.8193
xor ecx, ecx
xor eax, eax
cmp dword [esp + 0x28], 0x12
sete al
cmp ecx, eax
je 0x10126133
mov eax, dword [esp + 0x3c]
add esi, dword [esp + 0x24]
inc eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x3c], eax
cmp eax, dword [esp + 0x34]
jl 0x10126180
jmp 0x10126133
cmp edx, 0x1680
je case.0x10126325.8193
cmp edx, 0x180e
jmp 0x101262b9
cmp ecx, 0x3000
ja case.0x10126325.8203
cmp ebx, 0x3000
je case.0x10126325.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x10126325.8203
movzx eax, byte [edx + 0x1012afe8]
jmp dword [eax*4 + 0x1012afe0]
mov ecx, 1
jmp 0x101262c1
cmp ebp, edx
jge 0x10126133
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
mov edi, 1
cmp esi, ebx
jae 0x10126479
movzx edx, byte [esi]
mov eax, edx
mov ecx, edx
cmp edx, 0xc0
jb 0x1012641d
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10126380
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov edi, 2
jmp 0x10126417
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x1012639b
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x10126411
and eax, 0x3f
test dl, 8
jne 0x101263bb
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10126411
test dl, 4
jne 0x101263e4
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10126411
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
mov ecx, edx
cmp eax, 0x85
ja 0x1012643b
cmp ecx, 0x85
je case.0x10126434.10
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x10126434
jmp dword [edx*4 + 0x1012b048]
sub edx, 0x2028
je case.0x10126434.10
sub edx, 1
je case.0x10126434.10
xor ecx, ecx
jmp 0x10126451
mov ecx, 1
xor eax, eax
cmp dword [esp + 0x28], 0x14
sete al
cmp ecx, eax
je 0x10126133
add esi, edi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126342
jmp 0x10126133
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10126137
cmp esi, dword [ebx + 0x84]
jbe 0x10126137
mov dword [ebx + 0x64], edi
cmp eax, 1
jg 0x1012a342
jmp 0x10126137
cmp ebp, edx
jge 0x10126133
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x101265da
movzx edx, byte [esi]
mov edi, 1
mov eax, edi
mov ecx, edx
cmp edx, 0xc0
jb 0x101265a9
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x101264f7
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x101265a3
test dl, 0x10
jne 0x10126512
movzx eax, byte [esi + 2]
and edx, 0xf
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x1012659d
test dl, 8
jne 0x10126539
movzx eax, byte [esi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x1012659d
test dl, 4
jne 0x10126569
movzx eax, byte [esi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x1012659d
and edx, eax
mov edi, 6
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edi
mov ecx, edx
cmp ecx, 0x100
jae 0x101265c4
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
jne 0x10126133
mov eax, edi
add esi, eax
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x101264b7
jmp 0x10126133
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x10126137
cmp esi, dword [ebx + 0x84]
jbe 0x10126137
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
jmp 0x10126137
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge 0x10126137
mov edi, dword [ebx + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x10125f5b
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x101266fb
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x1012665c
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x101266f7
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x10126677
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x101266f1
and eax, 0x3f
test dl, 8
jne 0x1012669a
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x101266f1
test dl, 4
jne 0x101266c3
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x101266f1
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x10126137
mov eax, dword [ebx + 0x40]
test byte [edx + eax], 4
je 0x10126137
add esi, ecx
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126620
jmp 0x10126137
cmp ebp, edx
jge 0x10126133
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x101265da
movzx edx, byte [esi]
mov edi, 1
mov eax, edi
mov ecx, edx
cmp edx, 0xc0
jb 0x1012682a
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10126778
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x10126824
test dl, 0x10
jne 0x10126793
movzx eax, byte [esi + 2]
and edx, 0xf
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x1012681e
test dl, 8
jne 0x101267ba
movzx eax, byte [esi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x1012681e
test dl, 4
jne 0x101267ea
movzx eax, byte [esi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x1012681e
and edx, eax
mov edi, 6
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edi
mov ecx, edx
cmp ecx, 0x100
jae 0x10126845
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 1
jne 0x10126133
mov eax, edi
add esi, eax
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126738
jmp 0x10126133
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge 0x10126137
mov edi, dword [ebx + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x10125f5b
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x1012694b
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x101268ac
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x10126947
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x101268c7
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x10126941
and eax, 0x3f
test dl, 8
jne 0x101268ea
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10126941
test dl, 4
jne 0x10126913
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10126941
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x10126137
mov eax, dword [ebx + 0x40]
test byte [edx + eax], 1
je 0x10126137
add esi, ecx
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126870
jmp 0x10126137
cmp ebp, edx
jge 0x10126133
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x101265da
movzx edx, byte [esi]
mov edi, 1
mov eax, edi
mov ecx, edx
cmp edx, 0xc0
jb 0x10126a7a
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x101269c8
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x10126a74
test dl, 0x10
jne 0x101269e3
movzx eax, byte [esi + 2]
and edx, 0xf
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x10126a6e
test dl, 8
jne 0x10126a0a
movzx eax, byte [esi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10126a6e
test dl, 4
jne 0x10126a3a
movzx eax, byte [esi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10126a6e
and edx, eax
mov edi, 6
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edi
mov ecx, edx
cmp ecx, 0x100
jae 0x10126a95
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
jne 0x10126133
mov eax, edi
add esi, eax
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126988
jmp 0x10126133
cmp ebp, edx
jge 0x10126133
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x10125f5b
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x10126b98
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10126afc
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x10126b94
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x10126b17
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x10126b8e
and eax, 0x3f
test dl, 8
jne 0x10126b37
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10126b8e
test dl, 4
jne 0x10126b60
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10126b8e
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x10126137
mov eax, dword [ebx + 0x40]
test byte [edx + eax], 0x10
je 0x10126137
add esi, ecx
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126ac0
jmp 0x10126137
mov ebx, eax
jmp 0x10126137
cmp eax, 0xf
ja case.default.0x10120324
jmp dword [eax*4 + 0x1012b058]
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
nop dword [eax]
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x10126f6e
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x10126c21
push 0
lea eax, [ebx + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.1012c8a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
jne case.0x10126dd2.10
jmp 0x10126c46
mov edx, dword [ebx + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x10126c46
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x10126c46
cmp edx, 1
je case.0x10126dd2.10
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je case.0x10126dd2.10
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je 0x10126c7b
lea eax, [esi + 1]
cmp eax, dword [ebx + 0x78]
jb 0x10126c7b
cmp dword [ebx + 0x18], 0
jne 0x10126c7b
cmp dword [ebx + 0x1c], 2
jne 0x10126c7b
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x10126c7b
mov dword [ebx + 0x64], 1
cmp ecx, 1
jg 0x1012a342
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126bf0
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
sub edx, ebp
mov ecx, dword [ebx + 0x78]
mov eax, ecx
sub eax, esi
cmp edx, eax
jbe 0x10126cc0
mov eax, dword [ebx + 0x88]
mov esi, ecx
mov dword [esp + 0x14], esi
test eax, eax
je case.0x10126dd2.10
cmp ecx, dword [ebx + 0x84]
jmp 0x10126f7e
add esi, edx
mov dword [esp + 0x14], esi
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov ecx, dword [ebx + 0x78]
nop word [eax + eax]
cmp esi, ecx
jae 0x10126f6e
mov al, byte [esi]
cmp al, 0xd
jne 0x10126d02
inc esi
mov dword [esp + 0x14], esi
cmp esi, ecx
jae case.0x10126dd2.10
cmp byte [esi], 0xa
jne 0x10126d25
jmp 0x10126d20
cmp al, 0xa
je 0x10126d20
cmp dword [ebx + 0x68], 0
jne case.0x10126dd2.10
cmp al, 0xb
je 0x10126d20
cmp al, 0xc
je 0x10126d20
cmp al, 0x85
jne case.0x10126dd2.10
inc esi
mov dword [esp + 0x14], esi
inc ebp
cmp ebp, edx
jl 0x10126ce0
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov ecx, dword [ebx + 0x78]
nop
cmp esi, ecx
jae 0x10126f6e
mov al, byte [esi]
cmp al, 9
je case.0x10126dd2.10
cmp al, 0x20
je case.0x10126dd2.10
cmp al, 0xa0
je case.0x10126dd2.10
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, edx
jl 0x10126d40
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x10126f6e
mov al, byte [esi]
cmp al, 9
je 0x10126d9a
cmp al, 0x20
je 0x10126d9a
cmp al, 0xa0
jne case.0x10126dd2.10
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, edx
jl 0x10126d80
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x10126f6e
movzx eax, byte [esi]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x10126dd2.14
movzx eax, byte [eax + 0x1012b0a0]
jmp dword [eax*4 + 0x1012b098]
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, edx
jl 0x10126db8
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x10126f6e
movzx eax, byte [esi]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x10126dd2.10
movzx eax, byte [eax + 0x1012b124]
jmp dword [eax*4 + 0x1012b11c]
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, edx
jl 0x10126df7
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov edx, dword [ebx + 0x78]
nop word [eax + eax]
cmp esi, edx
jae 0x10126f6e
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
jne case.0x10126dd2.10
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126e40
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x10126f6e
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
je case.0x10126dd2.10
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126e78
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x10126f6e
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
jne case.0x10126dd2.10
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126eb0
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x10126f6e
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
je case.0x10126dd2.10
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126ee8
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x10126f6e
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
jne case.0x10126dd2.10
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126f20
jmp case.0x10126dd2.10
mov ebx, dword [esp + 0x10]
cmp ebp, edx
jge case.0x10126dd2.10
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x10126f6e
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je case.0x10126dd2.10
inc esi
inc ebp
mov dword [esp + 0x14], esi
cmp ebp, dword [esp + 0x34]
jl 0x10126f50
jmp case.0x10126dd2.10
mov eax, dword [ebx + 0x88]
test eax, eax
je case.0x10126dd2.10
cmp esi, dword [ebx + 0x84]
jbe case.0x10126dd2.10
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
cmp dword [esp + 0x40], 0
je 0x101275a9
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
jmp 0x1011d8c7
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
cmp cl, 0x7a
jne 0x10126fe4
push dword [esp + 0x18]
mov ebp, dword [esp + 0x38]
lea eax, [edx + 3]
push edi
push ebp
push eax
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edx, ebx
mov dword [esp + 0x18], edx
jmp 0x10127128
mov edi, dword [esp + 0x18]
push edi
push dword [esp + 0x28]
push dword [esp + 0x3c]
push ebx
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edx, dword [esp + 0x18]
add edx, 3
mov dword [esp + 0x18], edx
jmp 0x1012712c
cmp dword [esp + 0x3c], 0x8c
jne 0x10127128
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x98], 2
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push edx
push esi
call fcn.1011d780
add esp, 0x1c
jmp 0x1012a717
mov ebp, dword [esp + 0x2c]
cmp al, 0x7a
mov eax, dword [esp + 0x180]
jne 0x1012709e
inc eax
push eax
push dword [esp + 0x34]
lea eax, [edx + 3]
push ecx
push edi
push ebp
push eax
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov al, byte [ebx]
cmp al, 0x81
je 0x101278fa
cmp al, 0x88
jae 0x101278d8
mov edx, ebx
mov dword [esp + 0x18], edx
jmp 0x10127128
inc eax
push eax
push dword [esp + 0x34]
push ecx
push edi
push ebp
push ebx
push esi
call fcn.1011d780
mov edx, dword [esp + 0x2c]
add esp, 0x1c
mov ecx, eax
cmp eax, 0xfffffc1b
jne 0x101270c6
cmp dword [edx + 0xb4], ebx
je 0x101270ce
test ecx, ecx
jne 0x1012a717
cmp byte [ebx], 0x81
je 0x10127910
mov edx, dword [esp + 0x18]
add edx, 3
mov dword [esp + 0x18], edx
jmp 0x10127128
cmp esi, ebp
je 0x10127124
nop dword [eax + eax]
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
dec esi
add esp, 0x1c
mov dword [esp + 0x14], esi
test eax, eax
jne 0x1012a717
cmp esi, ebp
jne 0x101270f0
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
mov eax, dword [edi]
mov ebp, dword [edi + 0x4c]
mov dword [esp + 0x20], ebp
cmp eax, dword [edi + 4]
jae 0x1012a70f
inc eax
mov dword [edi], eax
mov eax, dword [esp + 0x180]
cmp eax, dword [edi + 8]
jae 0x1012a708
mov ecx, dword [esp + 0x30]
jmp 0x1011d870
cmp esi, edi
je 0x10127124
nop
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
dec esi
add esp, 0x1c
mov dword [esp + 0x14], esi
test eax, eax
jne 0x1012a717
cmp esi, edi
jne 0x10127160
jmp 0x10127124
cmp esi, edi
jbe 0x10127124
nop word [eax + eax]
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov dword [esp + 0x14], esi
mov ecx, esi
cmp al, 0x80
jne 0x101271f0
nop dword [eax + eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov ecx, esi
cmp al, 0x80
je 0x101271e0
mov dword [esp + 0x14], esi
cmp ecx, edi
ja 0x101271a0
jmp 0x10127124
cmp esi, edi
je 0x10127124
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
dec esi
mov dword [esp + 0x14], esi
cmp esi, edi
jne 0x10127201
jmp 0x10127124
cmp esi, edi
jbe 0x10127124
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
dec esi
mov ecx, esi
mov dword [esp + 0x14], esi
cmp dword [esp + 0x20], eax
je 0x10127292
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10127292
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov ecx, esi
cmp al, 0x80
je 0x10127282
mov dword [esp + 0x14], esi
cmp ecx, edi
ja 0x10127242
jmp 0x10127124
cmp esi, edi
jbe 0x10127124
mov ebp, dword [esp + 0x20]
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
dec esi
mov dword [esp + 0x14], esi
test ebp, ebp
jne 0x101272e3
movzx edx, byte [esi]
jmp 0x101273b2
mov cl, byte [esi]
mov al, cl
and al, 0xc0
cmp al, 0x80
jne 0x10127300
nop dword [eax]
mov al, byte [esi - 1]
dec esi
mov cl, al
and al, 0xc0
cmp al, 0x80
je 0x101272f0
mov dword [esp + 0x14], esi
movzx edx, cl
mov ecx, edx
cmp edx, 0xc0
jb 0x101273b4
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x1012732c
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x101273b0
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x10127342
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x101273aa
and eax, 0x3f
test dl, 8
jne 0x1012735d
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x101273aa
test dl, 4
jne 0x10127381
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x101273aa
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
movzx eax, byte [edx + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x101273ce
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx ebx, byte [eax*8 + 0x1016cab2]
cmp esi, edi
jbe 0x10127124
lea edi, [esi - 1]
test ebp, ebp
jne 0x101273f7
movzx edx, byte [edi]
jmp 0x101274bf
mov cl, byte [edi]
mov al, cl
and al, 0xc0
cmp al, 0x80
jne 0x1012740d
mov al, byte [edi - 1]
dec edi
mov cl, al
and al, 0xc0
cmp al, 0x80
je 0x10127401
movzx edx, cl
mov ecx, edx
cmp edx, 0xc0
jb 0x101274c1
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10127439
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x101274bd
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x1012744f
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x101274b7
and eax, 0x3f
test dl, 8
jne 0x1012746a
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x101274b7
test dl, 4
jne 0x1012748e
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x101274b7
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
movzx eax, byte [edx + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x101274db
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
mov ecx, ebx
movzx eax, word [eax*2 + 0x10170330]
movzx edx, byte [eax*8 + 0x1016cab2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x1016c4c0], eax
je 0x10127510
mov esi, edi
mov ebx, edx
mov edi, dword [esp + 0x38]
mov dword [esp + 0x14], esi
jmp 0x101273e0
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x38]
jmp 0x101272a7
mov edi, dword [esp + 0x38]
cmp esi, edi
jbe 0x10127124
nop dword [eax]
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov cl, byte [esi - 1]
dec esi
mov al, cl
mov dword [esp + 0x14], esi
and al, 0xc0
mov edx, esi
cmp al, 0x80
jne 0x10127582
nop dword [eax]
mov cl, byte [esi - 1]
dec esi
mov al, cl
mov edx, esi
and al, 0xc0
cmp al, 0x80
je 0x10127570
mov dword [esp + 0x14], esi
cmp dword [esp + 0x28], 0x11
jne 0x101275a0
cmp edx, edi
jbe 0x101275a0
cmp cl, 0xa
jne 0x101275a0
cmp byte [esi - 1], 0xd
lea eax, [esi - 1]
cmove esi, eax
mov dword [esp + 0x14], esi
cmp esi, edi
ja 0x10127530
jmp 0x10127124
cmp esi, edi
je 0x10127124
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
dec esi
cmp dword [esp + 0x28], 0x11
mov dword [esp + 0x14], esi
mov eax, esi
jne 0x10127604
cmp esi, edi
jbe 0x10127604
cmp byte [esi], 0xa
jne 0x10127604
cmp byte [esi - 1], 0xd
lea ecx, [esi - 1]
jne 0x10127604
mov esi, ecx
mov eax, ecx
mov dword [esp + 0x14], esi
cmp eax, edi
jne 0x101275b1
jmp 0x10127124
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
movzx ebx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ebx, 8
or ebx, eax
lea eax, [ebx + ebx]
cmp eax, dword [edi + 0x14]
jge 0x10127713
mov edx, dword [edi + 0xc]
mov ebp, dword [edi + 0x90]
mov ecx, dword [edx + eax*4]
mov eax, dword [edx + eax*4 + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x4c], ecx
mov ecx, dword [edi + 0x10]
mov eax, ecx
sub eax, ebx
mov eax, dword [edx + eax*4]
mov dword [esp + 0x50], eax
mov eax, dword [edi + 0xac]
mov dword [esp + 0x44], eax
mov eax, esi
sub eax, dword [edi + 0x74]
sub ecx, ebx
mov dword [edx + ecx*4], eax
mov ecx, dword [esp + 0x18]
nop dword [eax]
cmp dword [esp + 0x3c], 0x88
jb 0x10127684
mov dword [edi + 0x98], 2
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ecx]
push edi
push dword [esp + 0x28]
movzx eax, byte [eax + 0x1016c330]
push dword [esp + 0x3c]
add eax, ecx
push eax
push esi
call fcn.1011d780
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc1b
je 0x1012a38d
mov ecx, edi
cmp edi, 0xfffffc20
jne 0x1012a34c
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov eax, edi
add edx, ecx
mov ecx, eax
cmp dword [esi + 0x7c], edx
mov esi, dword [esp + 0x14]
jae 0x1012a34c
mov eax, dword [esp + 0x18]
cmp byte [eax], 0x77
je 0x10127708
cmp byte [edx], 0x77
mov eax, ecx
jne 0x1012a34c
xor edi, edi
jmp 0x1012a354
mov edi, dword [esp + 0x10]
cmp edx, 0x88
jae 0x10127755
cmp edx, 0x81
je 0x10127755
cmp dword [edi + 0x6c], 0
mov edx, dword [esp + 0x18]
jne 0x10127763
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x77
je 0x10127763
movzx eax, byte [edx]
movzx eax, byte [eax + 0x1016c330]
add edx, eax
mov dword [esp + 0x18], edx
jmp 0x1012712c
mov edx, dword [esp + 0x18]
mov dword [edi + 0x98], 2
mov eax, dword [esp + 0x180]
mov ebx, dword [edi + 0xac]
inc eax
mov ebp, dword [edi + 0x90]
push eax
push dword [esp + 0x34]
movzx eax, byte [edx]
push edi
push dword [esp + 0x28]
movzx eax, byte [eax + 0x1016c330]
push dword [esp + 0x3c]
add eax, edx
push eax
push esi
call fcn.1011d780
mov edx, eax
add esp, 0x1c
mov ecx, edx
cmp edx, 0xfffffc20
jne 0x101277eb
mov esi, dword [esp + 0x18]
movzx edi, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edi, 8
or edi, eax
mov eax, edx
add edi, esi
mov esi, dword [esp + 0x10]
cmp dword [esi + 0x7c], edi
mov esi, dword [esp + 0x14]
jae 0x101277e7
mov eax, dword [esp + 0x18]
cmp byte [eax], 0x77
je 0x101277d9
cmp byte [edi], 0x77
mov eax, ecx
jne 0x101277e7
mov edi, dword [esp + 0x10]
mov dword [esp + 0x44], 0
jmp 0x101277f3
mov edi, dword [esp + 0x10]
test eax, eax
jne 0x1012a3c3
mov edx, dword [esp + 0x18]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov dword [edi + 0xac], ebx
add edx, ecx
mov dword [esp + 0x18], edx
cmp byte [edx], 0x77
jne case.default.0x1011fad5
mov edx, dword [esp + 0x3c]
mov dword [edi + 0x90], ebp
jmp 0x10127713
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push edi
mov edi, dword [esp + 0x28]
push dword [esp + 0x3c]
movzx eax, byte [edi]
movzx ecx, byte [edi + 1]
movzx eax, byte [eax + 0x1016c330]
add eax, edi
add ecx, eax
push ecx
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
lea eax, [edi + 2]
mov dword [ebx + 0x7c], eax
mov eax, 0xfffffc1f
jmp 0x1012a717
mov eax, ecx
sub eax, 1
jmp 0x10127880
cmp ecx, 0xfffffc19
je case.default.0x1011fad5
mov eax, ecx
jmp 0x1012a717
mov eax, 0xffffffe6
jmp 0x1012a717
mov eax, dword [esp + 0x60]
lea ecx, [esp + 0xe0]
cmp eax, ecx
je 0x101278b0
push eax
call dword [0x101a7404]
add esp, 4
mov eax, edi
jmp 0x1012a717
mov eax, 0xfffffffa
jmp 0x1012a717
mov eax, dword [esp + 0x2c]
mov dword [ecx + 0x80], esi
mov dword [ecx + 0x7c], eax
mov eax, 1
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push edi
push ebp
push ebx
push esi
call fcn.1011d780
add esp, 0x1c
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push edi
push ebp
push ebx
jmp 0x10127928
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
mov eax, dword [esp + 0x20]
push edx
push edi
push ebp
add eax, 3
push eax
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10127962
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
lea eax, [edx + 3]
push ecx
push edi
push dword [esp + 0x3c]
push eax
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov eax, dword [esp + 0x10]
mov dword [eax + 0xb4], ebx
mov eax, 0xfffffc1b
jmp 0x1012a717
mov eax, dword [esp + 0x2c]
mov dword [ecx + 0x7c], eax
mov eax, 0xfffffc1a
mov dword [ecx + 0x80], esi
mov dword [ecx + 0x8c], edi
jmp 0x1012a717
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x2c]
mov dword [eax + 0x80], esi
mov dword [eax + 0x8c], edi
mov dword [eax + 0x7c], ecx
mov eax, 1
jmp 0x1012a717
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x88]
test ecx, ecx
je case.default.0x1011fad5
mov edx, dword [esp + 0x10]
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb case.default.0x1011fad5
cmp dword [edx + 0x18], 0
jne case.default.0x1011fad5
cmp dword [edx + 0x1c], 2
jne case.default.0x1011fad5
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne case.default.0x1011fad5
mov dword [edx + 0x64], 1
cmp ecx, 1
jmp 0x10127a0d
mov eax, ecx
jmp 0x101279b8
mov eax, dword [ebx + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, dword [ebx + 0x84]
jbe case.default.0x1011fad5
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x1012a342
xor eax, eax
jmp 0x1012a717
mov ecx, dword [esp + 0x10]
cmp eax, 0xfffffffe
jne 0x10128048
mov esi, dword [ecx + 0x78]
jmp 0x10128048
mov dword [esp + 0x44], esi
cmp ebp, ebx
jge 0x10127aa0
nop dword [eax + eax]
push dword [esp + 0x40]
push dword [esp + 0x14]
push ecx
push esi
push edi
call fcn.1012b560
add esp, 0x14
test eax, eax
js 0x10127a64
mov ecx, dword [esp + 0x24]
inc ebp
add esi, eax
cmp ebp, ebx
jl 0x10127a40
jmp 0x10127a92
cmp eax, 0xfffffffe
jne 0x10127a92
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x88]
test ecx, ecx
je 0x10127a92
mov eax, dword [edx + 0x78]
cmp eax, dword [edx + 0x84]
jbe 0x10127a92
mov dword [edx + 0x64], 1
cmp ecx, 1
jg 0x1012a342
mov ebp, dword [esp + 0x44]
cmp esi, ebp
jb case.default.0x1011fad5
jmp 0x10127aa4
mov ebp, dword [esp + 0x44]
mov ebx, dword [esp + 0x24]
nop dword [eax + eax]
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
sub esi, ebx
cmp esi, ebp
jae 0x10127ab0
jmp 0x1012a717
cmp eax, 0xfffffffe
jne 0x10127af1
mov esi, dword [ebx + 0x78]
mov eax, dword [ebx + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jb case.default.0x1011fad5
jmp 0x101279fb
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, dword [ecx + 0x84]
jbe case.default.0x1011fad5
mov dword [ecx + 0x64], 1
jmp 0x10127a0a
mov eax, dword [esp + 0x180]
mov ebp, dword [esp + 0x18]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push ebp
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov eax, esi
dec esi
cmp eax, edi
jbe case.default.0x1011fad5
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10127b80
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10127b76
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push ebp
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10127b63
jmp 0x1012a717
cmp esi, edi
jb case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
dec esi
cmp esi, edi
jae 0x10127bb1
jmp 0x1012a717
mov eax, dword [esp + 0x180]
mov edi, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push edi
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
test edx, edx
je 0x10127dae
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x24]
jge case.default.0x1011fad5
cmp esi, dword [edi + 0x78]
jae 0x10127d88
movzx edx, byte [esi]
inc esi
mov edi, edx
mov eax, edx
cmp edx, 0xc0
jb 0x10127d23
test dl, 0x20
jne 0x10127c61
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
mov edi, edx
mov eax, edx
jmp 0x10127d23
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x10127c8c
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
mov edi, edx
mov eax, edx
jmp 0x10127d23
test dl, 8
jne 0x10127cb6
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
add esi, 3
mov edi, edx
mov eax, edx
jmp 0x10127d23
test dl, 4
jne 0x10127ce9
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
add esi, 4
mov edi, edx
mov eax, edx
jmp 0x10127d23
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 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
add esi, 5
mov edx, ecx
mov edi, ecx
mov eax, ecx
cmp eax, 0xff
jbe 0x10127d31
cmp dword [esp + 0x3c], 0x6e
jmp 0x10127d43
and edx, 7
shr edi, 3
mov eax, 1
mov ecx, edx
shl eax, cl
test byte [edi + ebx], al
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
mov edi, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push edi
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x24]
jl 0x10127c27
jmp 0x1012a717
mov eax, dword [edi + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, dword [edi + 0x84]
jbe case.default.0x1011fad5
mov dword [edi + 0x64], 1
jmp 0x10127a0a
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov ecx, ebp
cmp ecx, dword [esp + 0x24]
jge case.default.0x1011fad5
cmp esi, dword [edi + 0x78]
jae 0x10127d88
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
test byte [edx + ebx], al
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
push eax
push dword [esp + 0x34]
push edi
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
mov ecx, ebp
test eax, eax
je 0x10127dc0
jmp 0x1012a717
mov eax, dword [esp + 0x180]
mov edi, dword [esp + 0x18]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push edi
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov eax, esi
dec esi
cmp eax, ebp
jbe case.default.0x1011fad5
cmp dword [esp + 0x20], 0
je 0x10127e6a
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x10127e6a
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x10127e60
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push edi
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10127e46
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebx
cmp edi, dword [esp + 0x24]
jge case.default.0x1011fad5
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10127b11
movzx edx, byte [esi]
inc esi
mov edi, dword [esp + 0x20]
test edi, edi
je 0x10127fe0
cmp edx, 0xc0
jb 0x10127fe0
test dl, 0x20
jne 0x10127f0f
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x10127fe0
test dl, 0x10
jne 0x10127f36
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x10127fe0
test dl, 8
jne 0x10127f69
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10127fe0
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x10127fa5
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x10127fe0
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
push edi
push ebp
push edx
call fcn.1012cf10
add esp, 0xc
test eax, eax
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebx
inc eax
mov edi, ebx
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10127ec3
jmp 0x1012a717
mov eax, dword [ebx + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, edi
jb case.default.0x1011fad5
jmp 0x101279fb
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, dword [ecx + 0x78]
jb case.default.0x1011fad5
jmp 0x10127b1f
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebp
cmp edi, dword [esp + 0x28]
jge case.default.0x1011fad5
mov ebx, dword [ebx + 0x78]
mov eax, ebx
mov edi, dword [esp + 0x34]
sub eax, edi
cmp esi, eax
ja 0x1012810c
mov edx, dword [esp + 0x4c]
mov ecx, esi
sub edi, 4
jb 0x101280d1
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x101280d6
add ecx, 4
add edx, 4
sub edi, 4
jae 0x101280c0
cmp edi, 0xfffffffc
je 0x10128103
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x1012810c
cmp edi, 0xfffffffd
je 0x10128103
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x1012810c
cmp edi, 0xfffffffe
je 0x10128103
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x1012810c
cmp edi, 0xffffffff
je 0x10128103
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x1012810c
add esi, dword [esp + 0x34]
jmp 0x10128179
mov edi, dword [esp + 0x24]
test edi, edi
jle 0x101281b0
mov eax, ebx
sub eax, edi
cmp esi, eax
ja 0x101281b0
lea edx, [esp + 0x158]
mov ecx, esi
sub edi, 4
jb 0x10128143
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x10128148
add ecx, 4
add edx, 4
sub edi, 4
jae 0x10128132
cmp edi, 0xfffffffc
je 0x10128175
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x101281b0
cmp edi, 0xfffffffd
je 0x10128175
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x101281b0
cmp edi, 0xfffffffe
je 0x10128175
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x101281b0
cmp edi, 0xffffffff
je 0x10128175
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x101281b0
add esi, dword [esp + 0x24]
mov eax, dword [esp + 0x180]
inc ebp
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
mov edi, ebp
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10128095
jmp 0x1012a717
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, ebx
jb case.default.0x1011fad5
jmp 0x10127b1f
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x28]
jge case.default.0x1011fad5
nop dword [eax]
nop dword [eax + eax]
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10127b11
movzx eax, byte [esi]
cmp ebx, eax
je 0x1012822c
cmp edi, eax
jne case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc esi
inc eax
inc ebp
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x28]
jl 0x10128210
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov ecx, ebp
cmp ecx, edi
jge case.default.0x1011fad5
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10127b11
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
mov ecx, ebp
test eax, eax
je 0x10128294
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
cmp dword [esp + 0x20], 0
je 0x1012845d
test eax, eax
jne 0x1012a717
mov edi, ebp
nop
cmp edi, dword [esp + 0x28]
jge case.default.0x1011fad5
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10127b11
movzx edx, byte [esi]
inc esi
mov eax, edx
cmp edx, 0xc0
jb 0x10128418
test dl, 0x20
jne 0x10128362
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x10128416
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x10128389
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x10128412
test dl, 8
jne 0x101283af
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10128412
test dl, 4
jne 0x101283de
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x10128412
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov ecx, dword [esp + 0x10]
mov eax, edx
cmp ebx, edx
je case.default.0x1011fad5
cmp dword [esp + 0x3c], eax
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
mov edi, ebp
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10128320
jmp 0x1012a717
test eax, eax
jne 0x1012a717
mov edi, ebp
nop word [eax + eax]
cmp edi, dword [esp + 0x28]
jge case.default.0x1011fad5
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10127b11
movzx eax, byte [esi]
cmp ebx, eax
je case.default.0x1011fad5
cmp dword [esp + 0x3c], eax
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc esi
inc eax
inc ebp
push eax
push dword [esp + 0x34]
mov edi, ebp
push ecx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10128470
jmp 0x1012a717
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, dword [edx + 0x84]
jbe case.default.0x1011fad5
mov dword [edx + 0x64], 1
jmp 0x10127a0a
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
test edx, edx
je 0x101286a2
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov ebx, ebp
nop word [eax + eax]
cmp ebx, dword [esp + 0x28]
jge case.default.0x1011fad5
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x10127b11
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x44], ebx
cmp ebx, 0xc0
jb 0x10128663
mov al, byte [esi]
test bl, 0x20
jne 0x10128576
and ebx, 0x1f
movzx eax, al
shl ebx, 6
and eax, 0x3f
inc esi
or ebx, eax
jmp 0x10128663
lea ecx, [esi + 1]
test bl, 0x10
jne 0x1012859f
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edx
add esi, 2
shl ebx, 6
or ebx, eax
jmp 0x1012865f
lea edx, [esi + 2]
test bl, 8
jne 0x101285d3
and ebx, 7
movzx edi, al
movzx eax, byte [ecx]
and edi, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edi
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x1012865b
lea edi, [esi + 3]
test bl, 4
jne 0x10128613
movzx ebx, al
add esi, 4
mov eax, dword [esp + 0x44]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x1012865b
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x44]
and ebp, 0x3f
movzx ebx, byte [ebx]
and eax, 1
shl eax, 6
and ebx, 0x3f
or ebp, eax
add esi, 5
movzx eax, byte [ecx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edi]
shl ebp, 6
and eax, 0x3f
or ebp, eax
shl ebp, 6
or ebx, ebp
mov ebp, dword [esp + 0x24]
mov edi, dword [esp + 0x34]
mov ecx, dword [esp + 0x10]
cmp edi, ebx
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
mov dword [esp + 0x24], ebp
push eax
push dword [esp + 0x34]
mov ebx, ebp
push ecx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10128530
jmp 0x1012a717
mov ebx, dword [esp + 0x18]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov ecx, ebp
cmp ecx, dword [esp + 0x28]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp edi, eax
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
mov ecx, ebp
test eax, eax
je 0x101286c6
jmp 0x1012a717
test eax, eax
js 0x101298db
cmp eax, 0xa
ja case.default.0x10120324
jmp dword [eax*4 + 0x1012b1a0]
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebp
nop dword [eax]
cmp edi, dword [esp + 0x34]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
je 0x101287aa
cmp eax, 0xc0
jb 0x101287aa
test al, 0x20
jne 0x1012878c
inc esi
jmp 0x101287aa
test al, 0x10
jne 0x10128795
add esi, 2
jmp 0x101287aa
test al, 8
jne 0x1012879e
add esi, 3
jmp 0x101287aa
test al, 4
jne 0x101287a7
add esi, 4
jmp 0x101287aa
add esi, 5
cmp dword [esp + 0x48], 0
jne case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
mov edi, ebp
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10128760
jmp 0x1012a717
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebp
cmp edi, dword [esp + 0x34]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov edx, eax
je 0x10128931
cmp eax, 0xc0
jb 0x10128931
test al, 0x20
jne 0x1012885e
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x1012892f
test al, 0x10
jne 0x10128884
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1012892f
test al, 8
jne 0x101288b6
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1012892f
test al, 4
movzx eax, byte [esi]
jne 0x101288f1
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1012892f
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x1012894b
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp eax, 9
je 0x10128970
cmp eax, 5
je 0x10128970
cmp eax, 8
je 0x10128970
xor eax, eax
jmp 0x10128975
mov eax, 1
cmp eax, dword [esp + 0x48]
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
mov edi, ebp
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10128815
jmp 0x1012a717
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebp
cmp edi, dword [esp + 0x34]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov edx, eax
je 0x10128aff
cmp eax, 0xc0
jb 0x10128aff
test al, 0x20
jne 0x10128a2c
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x10128afd
test al, 0x10
jne 0x10128a52
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10128afd
test al, 8
jne 0x10128a84
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10128afd
test al, 4
movzx eax, byte [esi]
jne 0x10128abf
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10128afd
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10128b19
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
mov edx, dword [esp + 0x50]
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp dword [eax*4 + 0x1016c448], edx
sete cl
cmp ecx, dword [esp + 0x48]
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
mov edi, ebp
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x101289e3
jmp 0x1012a717
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebp
nop dword [eax]
cmp edi, dword [esp + 0x34]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov edx, eax
je 0x10128ccc
cmp eax, 0xc0
jb 0x10128ccc
test al, 0x20
jne 0x10128bf9
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x10128cca
test al, 0x10
jne 0x10128c1f
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10128cca
test al, 8
jne 0x10128c51
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10128cca
test al, 4
movzx eax, byte [esi]
jne 0x10128c8c
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10128cca
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10128ce6
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp eax, dword [esp + 0x50]
sete cl
cmp ecx, dword [esp + 0x48]
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
mov edi, ebp
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10128bb0
jmp 0x1012a717
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebp
nop
cmp edi, dword [esp + 0x34]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov edx, eax
je 0x10128e8c
cmp eax, 0xc0
jb 0x10128e8c
test al, 0x20
jne 0x10128db9
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x10128e8a
test al, 0x10
jne 0x10128ddf
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10128e8a
test al, 8
jne 0x10128e11
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10128e8a
test al, 4
movzx eax, byte [esi]
jne 0x10128e4c
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10128e8a
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10128ea6
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab0]
cmp eax, dword [esp + 0x50]
sete cl
cmp ecx, dword [esp + 0x48]
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
mov edi, ebp
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10128d70
jmp 0x1012a717
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebp
nop
cmp edi, dword [esp + 0x34]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov edx, eax
je 0x1012904c
cmp eax, 0xc0
jb 0x1012904c
test al, 0x20
jne 0x10128f79
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x1012904a
test al, 0x10
jne 0x10128f9f
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1012904a
test al, 8
jne 0x10128fd1
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1012904a
test al, 4
movzx eax, byte [esi]
jne 0x1012900c
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1012904a
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10129066
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x1012908d
cmp eax, 3
je 0x1012908d
xor eax, eax
jmp 0x10129092
mov eax, 1
cmp eax, dword [esp + 0x48]
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
mov edi, ebp
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10128f30
jmp 0x1012a717
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x34]
jge case.default.0x1011fad5
nop dword [eax + eax]
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov eax, ecx
mov dword [esp + 0x24], ecx
mov edx, ecx
mov ebx, ecx
mov edi, ecx
mov ebp, ecx
je 0x1012922c
mov dword [esp + 0x24], ecx
cmp ecx, 0xc0
jb 0x1012922c
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x1012915f
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x1012921e
test cl, 0x10
jne 0x10129180
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x1012921e
test cl, 8
jne 0x101291ad
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x1012921e
test cl, 4
jne 0x101291e3
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x1012921e
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov dword [esp + 0x24], ecx
mov eax, ecx
mov edx, ecx
mov ebx, ecx
mov edi, ecx
mov ebp, ecx
cmp dword [esp + 0x24], 0x20
ja 0x1012924b
cmp eax, 0x20
je case.0x10129359.8193
lea eax, [ecx - 9]
cmp eax, 4
ja case.0x10129359.8203
jmp dword [eax*4 + 0x1012b1cc]
cmp ecx, 0x2000
ja 0x1012932f
cmp edx, 0x2000
je case.0x10129359.8193
cmp ebx, 0x1680
ja 0x10129324
cmp ecx, 0x1680
je case.0x10129359.8193
mov eax, ecx
sub eax, 0x85
je case.0x10129359.8193
sub eax, 0x1b
je case.0x10129359.8193
mov eax, ecx
test eax, eax
jns 0x1012929a
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x101292b4
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
cmp dword [eax*4 + 0x1016c448], 6
sete cl
cmp ecx, dword [esp + 0x48]
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
mov ebp, dword [esp + 0x3c]
push eax
push dword [esp + 0x34]
inc ebp
push ebx
push dword [esp + 0x28]
mov dword [esp + 0x4c], ebp
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x34]
jl 0x10129110
jmp 0x1012a717
cmp ecx, 0x180e
jmp 0x1012928b
cmp edi, 0x3000
ja case.0x10129359.8203
cmp ebp, 0x3000
je case.0x10129359.8193
lea eax, [ecx - 0x2001]
cmp eax, 0x5e
ja case.0x10129359.8203
movzx eax, byte [eax + 0x1012b1e8]
jmp dword [eax*4 + 0x1012b1e0]
cmp dword [esp + 0x48], 0
jne case.default.0x1011fad5
jmp 0x101292dd
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebp
cmp edi, dword [esp + 0x34]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov edx, eax
mov edi, eax
je 0x101294c1
cmp eax, 0xc0
jb 0x101294c1
test al, 0x20
jne 0x101293ec
movzx eax, byte [esi]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
inc esi
jmp 0x101294bd
test al, 0x10
jne 0x10129412
movzx eax, byte [esi]
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x101294bd
test al, 8
jne 0x10129444
movzx eax, byte [esi]
and ecx, 7
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x101294bd
test al, 4
movzx eax, byte [esi]
jne 0x1012947f
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x101294bd
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov edx, ecx
mov edi, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x101294db
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx eax, byte [eax*8 + 0x1016cab1]
mov eax, dword [eax*4 + 0x1016c448]
cmp eax, 1
je 0x10129507
cmp eax, 3
je 0x10129507
cmp edi, 0x5f
je 0x10129507
xor eax, eax
jmp 0x1012950c
mov eax, 1
cmp eax, dword [esp + 0x48]
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
mov edi, ebp
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x101293a1
jmp 0x1012a717
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
mov edi, dword [esp + 0x18]
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push edi
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x34]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, edx
je 0x10129699
cmp edx, 0xc0
jb 0x10129699
test dl, 0x20
jne 0x101295c6
movzx ecx, byte [esi]
mov eax, edx
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
mov edx, ecx
or edx, eax
inc esi
jmp 0x10129697
test dl, 0x10
jne 0x101295ed
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x10129697
test dl, 8
jne 0x10129620
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10129697
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x1012965c
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x10129697
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov ecx, edx
mov eax, dword [esp + 0x50]
cmp ecx, dword [eax*4 + 0x1016c970]
lea eax, [eax*4 + 0x1016c970]
jb 0x101296bd
mov ecx, dword [eax]
nop
lea eax, [eax + 4]
cmp edx, ecx
je 0x10129700
mov ecx, dword [eax]
cmp edx, ecx
jae 0x101296b0
cmp dword [esp + 0x48], 0
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push edi
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x34]
jl 0x10129583
jmp 0x1012a717
cmp dword [esp + 0x48], 0
jne case.default.0x1011fad5
jmp 0x101296c8
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov edi, ebp
nop
cmp edi, dword [esp + 0x34]
jge case.default.0x1011fad5
cmp esi, dword [ebx + 0x78]
jae 0x101279f1
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov eax, edx
mov ecx, edx
mov edi, edx
mov ebx, edx
je 0x1012986a
cmp edx, 0xc0
jb 0x1012986a
test dl, 0x20
jne 0x10129791
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, ecx
or edx, eax
inc esi
jmp 0x10129862
test dl, 0x10
jne 0x101297b8
movzx ecx, byte [esi]
and edx, 0xf
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x10129862
test dl, 8
jne 0x101297eb
movzx ecx, byte [esi]
and edx, 7
movzx eax, byte [esi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10129862
movzx eax, byte [esi]
and eax, 0x3f
test dl, 4
jne 0x10129827
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x10129862
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov eax, edx
mov ecx, eax
mov edi, eax
mov ebx, eax
cmp eax, 0x24
je 0x10129895
cmp ecx, 0x40
je 0x10129895
cmp edi, 0x60
je 0x10129895
cmp ebx, 0xa0
jb 0x10129889
cmp edx, 0xd7ff
jbe 0x10129895
cmp edx, 0xe000
jae 0x10129895
xor eax, eax
jmp 0x1012989a
mov eax, 1
cmp eax, dword [esp + 0x48]
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
mov edi, ebp
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x10129740
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
cmp edi, 0x16
jne 0x10129c02
mov edi, dword [esp + 0x18]
push edi
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x34]
jge case.default.0x1011fad5
nop dword [eax]
mov ebp, dword [edi + 0x78]
cmp esi, ebp
jae 0x10127d88
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x20], 0
mov ecx, eax
mov edx, eax
mov edi, esi
je 0x10129a3a
cmp eax, 0xc0
jb 0x10129a3a
test al, 0x20
jne 0x10129963
movzx ecx, byte [esi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
inc esi
jmp 0x10129a36
test al, 0x10
jne 0x10129989
movzx ecx, byte [esi]
and eax, 0xf
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x10129a36
test al, 8
jne 0x101299bb
movzx ecx, byte [esi]
and eax, 7
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x10129a36
mov ecx, eax
test al, 4
movzx eax, byte [esi]
jne 0x101299f8
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 4
jmp 0x10129a36
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
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
add esi, 5
mov edi, esi
mov edx, ecx
shr ecx, 7
movzx eax, byte [ecx + 0x1016e130]
shl eax, 7
and edx, 0x8000007f
jns 0x10129a54
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x10170330]
movzx ebx, byte [eax*8 + 0x1016cab2]
cmp edi, ebp
jae 0x10129b94
nop
cmp dword [esp + 0x20], 0
mov edi, 1
movzx edx, byte [esi]
mov ecx, edx
je 0x10129b4c
cmp edx, 0xc0
jb 0x10129b4c
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x10129ab1
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x10129b48
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x10129acc
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x10129b42
and eax, 0x3f
test dl, 8
jne 0x10129aec
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x10129b42
test dl, 4
jne 0x10129b15
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x10129b42
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
movzx eax, byte [edx + 0x1016e130]
shl eax, 7
and ecx, 0x8000007f
jns 0x10129b66
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x10170330]
movzx ecx, byte [eax*8 + 0x1016cab2]
mov eax, 1
shl eax, cl
test dword [ebx*4 + 0x1016c4c0], eax
je 0x10129b94
add esi, edi
mov ebx, ecx
cmp esi, ebp
jb 0x10129a70
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 0x88]
test eax, eax
je 0x10129bbf
cmp esi, dword [edi + 0x78]
jb 0x10129bbf
cmp esi, dword [edi + 0x84]
jbe 0x10129bbf
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x1012a342
mov eax, dword [esp + 0x180]
mov ebx, dword [esp + 0x3c]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push edi
push dword [esp + 0x28]
mov dword [esp + 0x4c], ebx
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebx, dword [esp + 0x34]
jl 0x10129920
jmp 0x1012a717
test ecx, ecx
je 0x1012a0e4
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x34]
jge case.default.0x1011fad5
mov ebp, dword [esp + 0x10]
mov ecx, dword [ebp + 0x78]
cmp esi, ecx
jae 0x1012a0be
cmp edi, 0xc
jne 0x10129c9a
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x10129c75
push dword [esp + 0x20]
lea eax, [ebp + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.1012c8a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
mov dword [esp + 0x44], eax
jne case.default.0x1011fad5
jmp 0x10129c9a
mov edx, dword [ebp + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x10129c9a
mov al, byte [esi]
cmp al, byte [ebp + 0x34]
jne 0x10129c9a
cmp edx, 1
je case.default.0x1011fad5
mov al, byte [esi + 1]
cmp al, byte [ebp + 0x35]
je case.default.0x1011fad5
movzx edx, byte [esi]
inc esi
mov dword [esp + 0x40], edx
mov ecx, edx
mov dword [esp + 0x24], ecx
mov edi, edx
mov dword [esp + 0x50], edi
mov eax, edx
mov ebx, edx
mov ebp, edx
cmp edx, 0xc0
jb 0x10129d9b
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x10129cdb
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
inc esi
jmp 0x10129d85
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x10129cfc
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x10129d85
test dl, 8
jne 0x10129d22
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x10129d85
test dl, 4
jne 0x10129d51
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x10129d85
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov eax, edx
mov ecx, eax
mov dword [esp + 0x40], eax
mov edi, eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x50], edi
mov ebx, eax
mov ebp, eax
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffffa
cmp ecx, 0xf
ja case.default.0x10120324
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffffa
jmp dword [ecx*4 + 0x1012b248]
mov ebp, dword [esp + 0x10]
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x10129db2.13
cmp esi, dword [ebp + 0x78]
jb case.0x10129db2.13
cmp dword [ebp + 0x18], 0
jne case.0x10129db2.13
cmp dword [ebp + 0x1c], 2
jne case.0x10129db2.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x10129db2.13
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x1012a342
jmp case.0x10129db2.13
cmp edx, 0x85
ja 0x10129e42
je case.0x10129e1f.11
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x1011fad5
jmp dword [edx*4 + 0x1012b288]
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae case.0x10129db2.13
cmp byte [esi], 0xa
jne case.0x10129db2.13
inc esi
jmp case.0x10129db2.13
sub edx, 0x2028
je case.0x10129e1f.11
sub edx, 1
jne case.default.0x1011fad5
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x68], 0
jne case.default.0x1011fad5
jmp case.0x10129db2.13
cmp edx, 0x2000
ja 0x10129eaa
je case.default.0x1011fad5
cmp edx, 0xa0
ja 0x10129e93
je case.default.0x1011fad5
cmp edx, 9
je case.default.0x1011fad5
cmp edx, 0x20
jmp 0x1012a06e
cmp edx, 0x1680
je case.default.0x1011fad5
cmp edx, 0x180e
jmp 0x1012a06e
cmp edx, 0x3000
ja case.0x10129db2.13
je case.default.0x1011fad5
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x10129db2.13
movzx eax, byte [edx + 0x1012b2a0]
jmp dword [eax*4 + 0x1012b298]
cmp edx, 0x2000
ja 0x10129f29
je case.0x10129db2.13
cmp edx, 0xa0
ja 0x10129f0c
je case.0x10129db2.13
cmp edx, 9
je case.0x10129db2.13
cmp edx, 0x20
jne case.default.0x1011fad5
jmp case.0x10129db2.13
cmp edx, 0x1680
je case.0x10129db2.13
cmp edx, 0x180e
jne case.default.0x1011fad5
jmp case.0x10129db2.13
cmp edx, 0x3000
ja case.default.0x1011fad5
je case.0x10129db2.13
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.default.0x1011fad5
movzx eax, byte [edx + 0x1012b308]
jmp dword [eax*4 + 0x1012b300]
cmp edx, 0x85
ja 0x10129f79
je case.default.0x1011fad5
add edx, 0xfffffff6
cmp edx, 3
ja case.0x10129db2.13
jmp dword [edx*4 + 0x1012b368]
sub edx, 0x2028
je case.default.0x1011fad5
sub edx, 1
jmp 0x1012a06e
cmp edx, 0x85
ja 0x10129fae
je case.0x10129db2.13
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x1011fad5
jmp dword [edx*4 + 0x1012b378]
sub edx, 0x2028
je case.0x10129db2.13
sub edx, 1
jne case.default.0x1011fad5
jmp case.0x10129db2.13
cmp eax, 0x100
jae case.0x10129db2.13
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
jne case.default.0x1011fad5
jmp case.0x10129db2.13
cmp dword [esp + 0x24], 0x100
jae case.default.0x1011fad5
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
jmp 0x1012a06e
cmp dword [esp + 0x50], 0x100
jae case.0x10129db2.13
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 1
jne case.default.0x1011fad5
jmp case.0x10129db2.13
cmp ebx, 0x100
jae case.default.0x1011fad5
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 1
jmp 0x1012a06e
cmp ebp, 0x100
jae case.0x10129db2.13
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
jne case.default.0x1011fad5
jmp case.0x10129db2.13
cmp dword [esp + 0x40], 0x100
jae case.default.0x1011fad5
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
mov ebp, dword [esp + 0x3c]
inc eax
push eax
push dword [esp + 0x34]
inc ebp
push dword [esp + 0x18]
mov dword [esp + 0x48], ebp
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x34]
jge case.default.0x1011fad5
mov edi, dword [esp + 0x28]
jmp 0x10129c35
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, dword [ebp + 0x84]
jbe case.default.0x1011fad5
mov dword [ebp + 0x64], 1
jmp 0x10127a0a
mov ebx, dword [esp + 0x18]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x34]
jge case.default.0x1011fad5
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x1012a318
cmp edi, 0xc
jne 0x1012a16f
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x1012a14a
push 0
lea eax, [ebx + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.1012c8a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
mov dword [esp + 0x44], eax
jne case.default.0x1011fad5
jmp 0x1012a16f
mov edx, dword [ebx + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x1012a16f
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x1012a16f
cmp edx, 1
je case.default.0x1011fad5
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je case.default.0x1011fad5
movzx ecx, byte [esi]
lea eax, [edi - 6]
inc esi
cmp eax, 0xf
ja case.default.0x10120324
jmp dword [eax*4 + 0x1012b388]
mov edx, dword [ebx + 0x88]
test edx, edx
je case.0x1012a17f.13
cmp esi, dword [ebx + 0x78]
jb case.0x1012a17f.13
cmp dword [ebx + 0x18], 0
jne case.0x1012a17f.13
cmp dword [ebx + 0x1c], 2
jne case.0x1012a17f.13
movzx eax, byte [ebx + 0x34]
cmp ecx, eax
jne case.0x1012a17f.13
mov dword [ebx + 0x64], 1
cmp edx, 1
jg 0x1012a342
jmp case.0x1012a17f.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x1011fad5
movzx eax, byte [ecx + 0x1012b3d8]
jmp dword [eax*4 + 0x1012b3c8]
cmp esi, dword [ebx + 0x78]
jae case.0x1012a17f.13
cmp byte [esi], 0xa
jne case.0x1012a17f.13
inc esi
jmp case.0x1012a17f.13
cmp dword [ebx + 0x68], 0
jne case.default.0x1011fad5
jmp case.0x1012a17f.13
cmp ecx, 9
je case.default.0x1011fad5
cmp ecx, 0x20
je case.default.0x1011fad5
cmp ecx, 0xa0
jmp 0x1012a2cd
cmp ecx, 9
je case.0x1012a17f.13
cmp ecx, 0x20
je case.0x1012a17f.13
cmp ecx, 0xa0
jne case.default.0x1011fad5
jmp case.0x1012a17f.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x1012a17f.13
movzx eax, byte [ecx + 0x1012b45c]
jmp dword [eax*4 + 0x1012b454]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x1011fad5
movzx eax, byte [ecx + 0x1012b4e0]
jmp dword [eax*4 + 0x1012b4d8]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
jne case.default.0x1011fad5
jmp case.0x1012a17f.13
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
jmp 0x1012a2cd
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
jne case.default.0x1011fad5
jmp case.0x1012a17f.13
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
jmp 0x1012a2cd
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x1011fad5
jmp case.0x1012a17f.13
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x1011fad5
mov eax, dword [esp + 0x180]
inc ebp
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x28]
push dword [esp + 0x3c]
push dword [esp + 0x2c]
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
cmp ebp, dword [esp + 0x34]
jl 0x1012a110
jmp 0x1012a717
mov eax, 0xfffffff2
jmp 0x1012a717
mov eax, dword [ebx + 0x88]
test eax, eax
je case.default.0x1011fad5
cmp esi, dword [ebx + 0x84]
jbe case.default.0x1011fad5
mov dword [ebx + 0x64], 1
cmp eax, 1
jle case.default.0x1011fad5
mov eax, 0xfffffff4
jmp 0x1012a717
test eax, eax
jne case.default.0x1011e071
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov dword [edx + 0x90], ebp
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x44]
add dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x18]
mov dword [edx + 0xac], eax
cmp byte [ecx], 0x77
jne 0x1012a391
mov edi, edx
jmp 0x10127670
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0xc]
lea eax, [ebx + ebx]
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x4c]
mov dword [ecx + eax*4], edx
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x24]
mov dword [ecx + eax*4 + 4], edx
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 0xc]
sub edx, ebx
mov eax, dword [esp + 0x50]
mov dword [ecx + edx*4], eax
mov eax, edi
jmp 0x1012a717
cmp ecx, 0xfffffc1b
jne 0x1012a418
mov ebx, dword [esp + 0x18]
cmp byte [ebx], 0x81
je 0x1012a409
cmp byte [ebx], 0x77
mov edi, ebx
jne 0x1012a3f8
mov esi, ebx
nop dword [eax]
movzx ecx, byte [ebx + 1]
movzx ebx, byte [ebx + 2]
shl ecx, 8
or ebx, ecx
add ebx, esi
mov edi, ebx
mov esi, ebx
cmp byte [ebx], 0x77
je 0x1012a3e0
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
mov ebx, edi
shl ecx, 8
or ecx, eax
sub ebx, ecx
mov eax, dword [esp + 0x10]
xor ecx, ecx
cmp dword [eax + 0xb4], ebx
cmove edx, ecx
mov eax, edx
jmp 0x1012a717
mov edx, dword [esp + 0x18]
lea edi, [edx + 2]
mov dword [ebx + 0xb0], edi
mov dword [ebx + 0xac], 0
mov eax, dword [esp + 0x180]
movzx ecx, byte [edx + 1]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [edx]
push ebx
push dword [esp + 0x28]
movzx eax, byte [eax + 0x1016c330]
push dword [esp + 0x3c]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1011d780
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x1012a47f
cmp edx, 0xfffffc19
je 0x1012a47f
cmp edx, 0xfffffc1a
jne 0x1012a495
cmp dword [ebx + 0xac], 0
jne 0x1012a495
mov dword [ebx + 0xac], edi
mov eax, edx
jmp 0x1012a717
cmp edx, 0xfffffc1f
jne 0x1012a4cd
mov eax, dword [ebx + 0x7c]
mov cl, byte [edi]
cmp cl, byte [eax]
jne 0x1012a4c0
test cl, cl
je 0x1012a4bc
mov cl, byte [edi + 1]
cmp cl, byte [eax + 1]
jne 0x1012a4c0
add edi, 2
add eax, 2
test cl, cl
jne 0x1012a4a0
xor eax, eax
jmp 0x1012a4c5
sbb eax, eax
or eax, 1
test eax, eax
je 0x1012a5e8
mov eax, edx
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [edx + 0x1016c330]
add eax, dword [esp + 0x20]
push ebx
push edi
push dword [esp + 0x3c]
push eax
push esi
call fcn.1011d780
add esp, 0x1c
mov ecx, 0xfffffc1c
test eax, eax
cmovne ecx, eax
mov eax, ecx
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [edx + 0x1016c330]
add eax, dword [esp + 0x20]
push ebx
push edi
push dword [esp + 0x3c]
push eax
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x1012a5ae
jmp 0x1012a717
mov edx, dword [esp + 0x18]
lea edi, [edx + 2]
mov dword [ebx + 0xb0], edi
mov dword [ebx + 0xac], 0
mov eax, dword [esp + 0x180]
movzx ecx, byte [edx + 1]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [edx]
push ebx
push dword [esp + 0x28]
movzx eax, byte [eax + 0x1016c330]
push dword [esp + 0x3c]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1011d780
add esp, 0x1c
cmp eax, 1
je 0x1012a597
cmp eax, 0xfffffc19
jne 0x1012a5a6
cmp dword [ebx + 0xac], 0
jne 0x1012a5a6
mov dword [ebx + 0xac], edi
test eax, eax
jne 0x1012a717
mov eax, 0xfffffc1d
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [edx + 0x1016c330]
add eax, dword [esp + 0x20]
push ebx
push edi
push dword [esp + 0x3c]
push eax
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
jne 0x1012a717
mov dword [ebx + 0x7c], esi
mov eax, 0xfffffc1e
jmp 0x1012a717
mov eax, dword [esp + 0x180]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [edx + 0x1016c330]
add eax, dword [esp + 0x20]
push ebx
push edi
push dword [esp + 0x3c]
push eax
push esi
call fcn.1011d780
add esp, 0x1c
test eax, eax
je 0x1012a696
jmp 0x1012a717
mov edx, dword [esp + 0x18]
lea edi, [edx + 2]
mov dword [ebx + 0xb0], edi
mov dword [ebx + 0xac], 0
mov eax, dword [esp + 0x180]
movzx ecx, byte [edx + 1]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [edx]
push ebx
push dword [esp + 0x28]
movzx eax, byte [eax + 0x1016c330]
push dword [esp + 0x3c]
add eax, edx
add ecx, eax
push ecx
push esi
call fcn.1011d780
add esp, 0x1c
cmp eax, 1
je 0x1012a67f
cmp eax, 0xfffffc19
jne 0x1012a68e
cmp dword [ebx + 0xac], 0
jne 0x1012a68e
mov dword [ebx + 0xac], edi
test eax, eax
jne 0x1012a717
mov eax, dword [esp + 0x18]
mov dword [ebx + 0x7c], eax
mov eax, 0xfffffc20
jmp 0x1012a717
mov ecx, dword [esp + 0x2c]
cmp esi, ecx
jne 0x1012a6e1
cmp edx, 0x9f
je 0x1012a6e1
cmp dword [ebx + 0xa4], 0
jne 0x1012a6e1
cmp dword [ebx + 0x5c], 0
jne case.default.0x1011fad5
cmp dword [ebx + 0x60], 0
je 0x1012a6e1
mov eax, dword [ebx + 0x94]
add eax, dword [ebx + 0x74]
cmp ecx, eax
je case.default.0x1011fad5
mov dword [ebx + 0x80], esi
test edx, edx
mov dword [ebx + 0x8c], edi
mov eax, 0xfffffc19
mov dword [ebx + 0x7c], ecx
mov ecx, 1
cmove eax, ecx
jmp 0x1012a717
mov eax, 0xfffffffb
jmp 0x1012a717
mov eax, 0xffffffeb
jmp 0x1012a717
inc eax
mov dword [edi], eax
mov eax, 0xfffffff8
mov ecx, dword [esp + 0x160]
pop edi
pop ebp
pop ebx
pop esi
xor ecx, esp
call fcn.1012fb43
add esp, 0x154
ret