Function at 0x6717d404
Capabilities:
Check http status code
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x64
mov eax, dword [esp + 0x80]
xor edx, edx
push ebx
push ebp
mov ebp, dword [esp + 0x88]
inc edx
mov ecx, dword [eax + 0x8c]
xor ebx, ebx
mov eax, dword [eax + 0x10]
push esi
mov esi, dword [esp + 0x78]
shr ecx, 0x13
and ecx, edx
mov dword [eax + 0x18], ebx
push edi
mov edi, dword [esp + 0x8c]
or edx, 0xffffffff
mov dword [esp + 0x14], ecx
mov dword [eax + 0x48], ebx
mov dword [esp + 0x10], eax
lea ecx, [edi - 0x38]
mov dword [eax + 0x44], edx
mov eax, dword [esp + 0x78]
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x78], ebx
mov dword [ecx + 0x38], eax
mov dword [ecx + 0x3c], eax
mov eax, ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x24], 0xfc00
mov dword [esp + 0x20], 0xdc00
mov dword [eax + 0x40], ebx
mov dword [eax + 0x50], ebx
mov dword [eax + 0x4c], edx
mov dword [esp + 0x30], 0xa
mov dword [esp + 0x58], 0xc
mov dword [esp + 0x28], 0xd
mov dword [esp + 0x44], 0x85
mov dword [esp + 0x48], 0x2027
mov dword [esp + 0x34], 0x2000
mov dword [esp + 0x38], 0x200a
mov dword [esp + 0x3c], 0x202f
mov dword [esp + 0x40], 0x205f
mov dword [esp + 0x2c], ecx
mov dword [eax + 0x1c], ebx
mov dword [eax], esi
mov dword [eax + 0x10], edi
test ebx, ebx
je 0x6717d50a
sub eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x4c], eax
mov eax, ebx
and eax, 0xffff0000
cmp eax, 0x40000
jne 0x6717d504
movzx eax, bx
mov dword [ecx + 0x44], eax
xor eax, eax
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x90]
mov edi, dword [esp + 0x90]
mov edx, dword [eax + 0x28]
mov ecx, dword [eax + 0x20]
lea eax, [edx + 1]
mov dword [edi + 0x28], eax
cmp edx, ecx
jae 0x67185be7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x18]
cmp eax, dword [edi + 0x24]
jae 0x67185be3
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
xor ecx, ecx
mov esi, 0xfc00
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov bl, byte [eax]
mov eax, dword [esp + 0x10]
mov byte [eax + 0x31], bl
movzx eax, bl
cmp eax, 0xa6
ja case.0x67184ef3.15
movzx eax, byte [eax + 0x67185d50]
jmp dword [eax*4 + 0x67185bf4]
mov edi, dword [esp + 0x90]
mov ebp, dword [esp + 0x14]
jmp 0x6717d546
mov edx, dword [esp + 0x18]
mov ebp, ebx
jmp 0x6717d546
mov ebp, ebx
jmp 0x6717d54b
mov ebp, dword [esp + 0x14]
jmp 0x6717d54b
mov eax, dword [esp + 0x10]
or ecx, 0xffffffff
cmp dword [eax + 0x44], ecx
jne 0x6717d627
mov eax, dword [eax]
mov esi, dword [esp + 0x90]
movzx edi, word [eax + 2]
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x4c]
cmp eax, ecx
je case.0x67184ef3.15
mov ecx, dword [esi + 0x10]
add ecx, eax
mov eax, edi
mov edx, ecx
mov dword [esp + 0x18], ecx
sub edx, dword [esp + 0x8c]
or eax, 0x10000
cmp dword [ecx + 0x1c], eax
je 0x6717d5e7
mov eax, dword [edx + 0x4c]
or ecx, 0xffffffff
jmp 0x6717d5b9
mov eax, dword [esp + 0x10]
lea esi, [edi + edi]
mov ebx, dword [esp + 0x10]
lea ecx, [esi - 2]
mov dword [eax + 0x48], edi
mov edi, dword [esp + 0x90]
mov eax, dword [edx + 0x38]
sub eax, dword [edi + 0x5c]
sar eax, 1
mov dword [ebx + ecx*4 + 0x54], eax
mov eax, ebx
mov eax, dword [eax + 0x38]
sub eax, dword [edi + 0x5c]
sar eax, 1
mov dword [ebx + ecx*4 + 0x58], eax
mov eax, ebx
cmp ecx, dword [eax + 0x50]
jb 0x6717d623
mov dword [eax + 0x50], esi
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
lea eax, [ecx + eax*2]
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
jmp 0x6717ee0e
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x70]
jbe 0x6717d650
mov dword [edi + 0x70], eax
mov eax, dword [esp + 0x10]
mov esi, 0xfffffc19
mov dword [esp + 0x2c], eax
jmp 0x6717d86a
mov eax, dword [esp + 0x10]
or ecx, 0xffffffff
cmp dword [eax + 0x44], ecx
je 0x6717d6c4
mov eax, dword [eax + 0x4c]
cmp eax, ecx
je case.0x67184ef3.15
mov edx, dword [edi + 0x10]
add edx, eax
mov ecx, edx
mov dword [esp + 0x18], edx
sub ecx, dword [esp + 0x8c]
mov eax, dword [edx + 0x1c]
and eax, 0xffff0000
cmp eax, 0x40000
je 0x6717d6a2
mov eax, dword [ecx + 0x4c]
or ecx, 0xffffffff
jmp 0x6717d671
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
mov dword [ecx + 0x38], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], ecx
mov eax, dword [eax + 0x40]
mov dword [ecx + 0x40], eax
add dword [ecx], 4
xor ecx, ecx
jmp 0x6717d54b
mov edx, dword [eax + 0x38]
cmp edx, dword [eax + 0x3c]
jne 0x6717d707
mov eax, dword [edi + 0x88]
test al, 4
jne case.0x6717d56f.162
mov ebp, dword [esp + 0x10]
test al, 8
je 0x6717d70b
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + 0x44]
mov eax, dword [eax + 0x5c]
lea eax, [eax + ecx*2]
cmp dword [ebp + 0x3c], eax
jne 0x6717d70b
mov edi, dword [esp + 0x90]
xor edx, edx
mov eax, dword [esp + 0x10]
mov esi, edx
jmp 0x6717d86c
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x67185b40
mov edi, dword [esp + 0x90]
mov eax, dword [eax + 0x8c]
or eax, dword [edi + 0x88]
test eax, 0x20000000
je 0x67185b3e
test bl, bl
je case.0x6717d56f.162
xor eax, eax
jmp 0x67185bea
mov eax, dword [esp + 0x90]
mov edi, eax
mov edx, dword [eax + 0x98]
test edx, edx
je 0x6717d785
mov ecx, dword [eax + 0x64]
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x38], ecx
jae 0x6717d7ca
push ebp
lea eax, [edi + 0x9c]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
push dword [eax + 0x38]
call fcn.671a0fec
add esp, 0x14
test eax, eax
je 0x6717d7c6
jmp case.0x6717d56f.162
mov esi, dword [eax + 0x9c]
mov eax, dword [esp + 0x10]
mov ecx, dword [edi + 0x64]
mov edx, dword [eax + 0x38]
lea eax, [esi + esi]
sub ecx, eax
cmp edx, ecx
ja 0x6717d7c6
mov ax, word [edx]
cmp ax, word [edi + 0xa0]
jne 0x6717d7c6
xor eax, eax
inc eax
cmp esi, eax
je case.0x6717d56f.162
mov ax, word [edx + 2]
cmp ax, word [edi + 0xa2]
je case.0x6717d56f.162
mov eax, dword [esp + 0x10]
xor edx, edx
push 2
pop ebx
cmp word [edi + 0x4c], dx
je 0x6717d824
mov ecx, dword [eax + 0x38]
mov eax, dword [edi + 0x64]
sub eax, ebx
cmp ecx, eax
jne 0x6717d824
mov eax, dword [esp + 0x90]
cmp dword [eax + 0x98], edx
jne 0x6717d81d
cmp dword [eax + 0x9c], ebx
jne 0x6717d81d
mov edi, dword [esp + 0x90]
inc edx
mov ax, word [ecx]
cmp ax, word [edi + 0xa0]
jne 0x6717d827
mov eax, edi
mov dword [eax + 0x2c], edx
cmp word [eax + 0x4c], dx
ja 0x6717e2e8
jmp 0x6717d827
mov edi, eax
jmp 0x6717d824
push 2
pop ebx
xor edx, edx
inc edx
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x64]
jb 0x6717d8d1
mov eax, dword [esp + 0x90]
xor ebp, ebp
cmp word [eax + 0x4c], bp
je 0x6717d85d
cmp ecx, dword [eax + 0x6c]
ja 0x6717d850
cmp dword [eax + 0x34], ebp
je 0x6717d85d
mov dword [eax + 0x2c], edx
cmp word [eax + 0x4c], dx
ja 0x6717e2e8
mov edi, dword [esp + 0x90]
mov esi, ebp
mov eax, dword [esp + 0x10]
xor edx, edx
mov ebx, dword [esp + 0x14]
xor ecx, ecx
inc ecx
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x70]
jbe 0x6717d87e
mov dword [edi + 0x70], eax
mov ebp, dword [esp + 0x10]
cmp dword [ebp + 0x18], edx
je 0x67185bcf
sub ebp, dword [ebp + 0x10]
mov eax, dword [edi + 0xa8]
mov dword [esp + 0x10], ebp
or dword [eax + 0x3c], 2
movzx eax, byte [ebp + 0x30]
cmp eax, 0xc8
ja 0x671843d2
je 0x67184340
cmp eax, 0x14
ja 0x67183cc1
je 0x67183c71
dec eax
cmp eax, 0x12
ja case.0x67184ef3.15
jmp dword [eax*4 + 0x67185df8]
add ecx, 2
mov dword [eax + 0x38], ecx
test ebp, ebp
je 0x6717d903
cmp ecx, dword [edi + 0x64]
jae 0x6717d903
mov ax, word [ecx]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x6717d8ff
lea eax, [ecx + 2]
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x38], eax
mov eax, dword [esp + 0x10]
add dword [eax], ebx
jmp 0x6717ee0e
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jb 0x6717d951
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717d94a
cmp eax, dword [edi + 0x6c]
mov eax, dword [esp + 0x90]
ja 0x6717d92f
cmp dword [eax + 0x34], ebp
je 0x6717d948
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov edi, dword [esp + 0x90]
jmp 0x6717d94a
mov edi, eax
mov esi, ebp
jmp 0x6717d866
mov ecx, dword [esp + 0x10]
add eax, 2
push 2
mov dword [ecx + 0x38], eax
mov eax, ecx
pop ecx
add dword [eax], ecx
jmp 0x6717d6bd
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push 2
test ebx, ebx
je 0x6717da45
xor ecx, ecx
inc ecx
mov dword [eax + 0xc], ecx
pop ecx
add dword [eax], ecx
mov ecx, 0xd800
mov eax, dword [eax]
mov ax, word [eax]
and ax, si
cmp ax, cx
mov eax, dword [esp + 0x10]
jne 0x6717d9a0
inc dword [eax + 0xc]
mov ecx, dword [eax + 0xc]
jmp 0x6717d9a7
mov ecx, dword [eax + 0xc]
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
mov eax, dword [edi + 0x64]
sub eax, edx
sar eax, 1
cmp ecx, eax
jbe 0x6717d9f7
mov eax, dword [esp + 0x90]
xor ebp, ebp
cmp edx, dword [eax + 0x64]
jb 0x6717d9e3
cmp word [eax + 0x4c], bp
je 0x6717d9e3
cmp edx, dword [eax + 0x6c]
ja 0x6717d9d3
cmp dword [eax + 0x34], ebp
je 0x6717d9e3
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov esi, ebp
mov edi, dword [esp + 0x90]
mov eax, dword [esp + 0x10]
xor edx, edx
jmp 0x6717d870
mov edx, dword [esp + 0x18]
test ecx, ecx
push 0
pop ecx
je 0x6717d58b
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
mov eax, dword [eax]
push 2
movzx edx, word [ecx]
movzx esi, word [eax]
lea eax, [ecx + 2]
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x38], eax
mov eax, ecx
pop ecx
add dword [eax], ecx
cmp si, dx
jne 0x6717da38
sub dword [eax + 0xc], 1
jne 0x6717da0a
mov ebp, ebx
jmp 0x6717ee0e
xor edx, edx
mov esi, edx
mov eax, dword [esp + 0x10]
jmp 0x6717d870
mov esi, dword [eax + 0x38]
mov eax, dword [edi + 0x64]
sub eax, esi
and eax, 0xfffffffe
pop ecx
cmp eax, ecx
jge 0x6717da70
mov eax, dword [esp + 0x90]
xor ebp, ebp
cmp word [eax + 0x4c], bp
je 0x6717d9e3
cmp esi, dword [eax + 0x6c]
jmp 0x6717d9cc
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x10]
movzx ecx, word [esi]
mov eax, dword [eax]
movzx edx, word [eax + 2]
lea eax, [esi + 2]
mov dword [ebx + 0x38], eax
mov eax, ebx
cmp dx, cx
je 0x6717dd8d
xor edx, edx
mov esi, edx
jmp 0x6717d86c
mov eax, dword [esp + 0x10]
mov esi, dword [eax + 0x38]
cmp esi, dword [edi + 0x64]
jb 0x6717dad7
mov eax, dword [esp + 0x90]
xor ebp, ebp
cmp word [eax + 0x4c], bp
je 0x6717d85d
cmp esi, dword [eax + 0x6c]
ja 0x6717dac8
cmp dword [eax + 0x34], ebp
je 0x6717d85d
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
jmp 0x6717d857
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x6717dbf2
xor ecx, ecx
mov edx, 0xfc00
inc ecx
mov ebp, 0x3ff
mov dword [eax + 0xc], ecx
push 2
pop ecx
add dword [eax], ecx
mov ecx, dword [eax]
movzx esi, word [ecx]
mov eax, esi
and eax, edx
mov edx, 0xd800
cmp eax, edx
jne 0x6717db26
movzx eax, word [ecx + 2]
and esi, ebp
and eax, ebp
shl esi, 0xa
or esi, eax
mov eax, dword [esp + 0x10]
add esi, 0x10000
inc dword [eax + 0xc]
jmp 0x6717db2a
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
movzx edx, word [ecx]
cmp esi, 0x80
jae 0x6717db6a
mov eax, dword [edi + 0x38]
mov ebp, 0xff
cmp edx, ebp
ja 0x6717db48
movzx edx, byte [eax + edx]
movzx eax, byte [eax + esi]
cmp eax, edx
mov eax, dword [esp + 0x10]
je 0x6717db5d
xor edx, edx
mov esi, edx
jmp 0x6717d870
push 2
pop ecx
add dword [eax], ecx
add dword [eax + 0x38], ecx
jmp 0x6717da31
add ecx, 2
mov dword [eax + 0x38], ecx
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x6717db9a
movzx eax, word [ecx]
and edx, ebp
and eax, ebp
shl edx, 0xa
or edx, eax
lea eax, [ecx + 2]
mov ecx, dword [esp + 0x10]
add edx, 0x10000
mov dword [ecx + 0x38], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
push 0
mov eax, dword [eax + 0xc]
add eax, eax
add dword [ecx], eax
pop ecx
cmp edx, esi
je 0x6717d583
mov eax, esi
shr eax, 7
push 0
movzx ecx, word [eax*2 + 0x67392490]
mov eax, esi
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x67396890]
imul eax, eax, 0xc
pop ecx
mov eax, dword [eax + 0x6738f79c]
add eax, esi
cmp edx, eax
mov edx, dword [esp + 0x18]
je 0x6717d587
jmp 0x6717da38
mov eax, dword [eax]
mov ebp, 0xff
movzx eax, word [eax + 2]
cmp ax, bp
ja 0x6717dc0d
mov ecx, eax
mov eax, dword [edi + 0x38]
movzx edx, byte [eax + ecx]
jmp 0x6717dc0f
mov edx, eax
movzx eax, word [esi]
mov ecx, eax
cmp ax, bp
ja 0x6717dc20
mov eax, dword [edi + 0x38]
movzx ecx, byte [eax + ecx]
cmp edx, ecx
jne 0x6717da38
mov ecx, dword [esp + 0x10]
lea eax, [esi + 2]
mov dword [ecx + 0x38], eax
mov eax, ecx
add dword [eax], 4
jmp 0x6717da31
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jb 0x6717dc63
mov eax, dword [esp + 0x90]
xor ebp, ebp
cmp word [eax + 0x4c], bp
je 0x6717d85d
cmp edx, dword [eax + 0x6c]
jmp 0x6717dabd
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x6717dd50
push 2
pop ecx
add dword [eax], ecx
mov ebp, 0xd800
mov eax, dword [eax]
movzx edx, word [eax]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x10]
mov dword [eax], ecx
mov eax, edx
and eax, esi
cmp eax, ebp
mov ebp, 0x3ff
jne 0x6717dcaf
movzx eax, word [ecx]
and edx, ebp
and eax, ebp
shl edx, 0xa
or edx, eax
lea eax, [ecx + 2]
mov ecx, dword [esp + 0x10]
add edx, 0x10000
mov dword [ecx], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
movzx esi, word [eax]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x10]
mov dword [eax + 0x38], ecx
mov eax, esi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x6717dced
movzx eax, word [ecx]
and esi, ebp
and eax, ebp
shl esi, 0xa
or esi, eax
lea eax, [ecx + 2]
mov ecx, dword [esp + 0x10]
add esi, 0x10000
mov dword [ecx + 0x38], eax
mov eax, dword [esp + 0x10]
cmp edx, esi
je 0x6717db54
cmp byte [eax + 0x31], 0x20
push 0
pop ecx
jne 0x6717d583
cmp edx, 0x7f
jbe 0x6717dd35
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x67392490]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x67396890]
imul eax, eax, 0xc
add edx, dword [eax + 0x6738f79c]
jmp 0x6717dd3c
mov eax, dword [edi + 0x3c]
movzx edx, byte [eax + edx]
push 0
cmp edx, esi
mov edx, dword [esp + 0x1c]
pop ecx
jne 0x6717d587
jmp 0x6717da38
mov eax, dword [eax]
mov ebx, dword [esp + 0x10]
movzx esi, word [edx]
movzx ecx, word [eax + 2]
lea eax, [edx + 2]
mov dword [ebx + 0x38], eax
cmp ecx, esi
je case.0x6717d56f.162
mov eax, ebx
cmp byte [eax + 0x31], 0x20
jne 0x6717dd8d
mov edx, 0xff
cmp ecx, edx
ja 0x6717dd85
mov eax, dword [edi + 0x3c]
movzx ecx, byte [eax + ecx]
mov eax, ebx
cmp ecx, esi
je case.0x6717d56f.162
add dword [eax], 4
jmp 0x6717ee0a
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
mov dword [ecx + 0x20], eax
mov eax, ecx
add dword [eax], 4
jmp 0x6717de9a
mov eax, dword [esp + 0x10]
xor ebp, ebp
mov ecx, dword [esp + 0x10]
push 2
pop edx
mov dword [eax + 0x20], ebp
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
mov eax, ecx
add dword [eax], 4
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], edx
jmp 0x6717de9f
xor eax, eax
inc eax
xor ebp, ebp
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [eax + 0x20], ebp
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
mov eax, ecx
add dword [eax], 4
jmp 0x6717de9c
xor ebp, ebp
mov dword [esp + 0x1c], ebp
jmp 0x6717dde7
mov eax, dword [esp + 0x10]
xor ebp, ebp
push 2
or ecx, 0xffffffff
pop edx
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], ecx
add dword [eax], edx
jmp 0x6717ddd1
mov eax, dword [esp + 0x10]
xor ecx, ecx
inc ecx
or ebx, 0xffffffff
push 2
pop edx
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], ebx
add dword [eax], edx
xor ebp, ebp
mov dword [esp + 0x1c], edx
jmp 0x6717dea2
mov eax, dword [esp + 0x10]
xor ecx, ecx
xor ebp, ebp
inc ecx
push 2
pop edx
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], ecx
add dword [eax], edx
mov dword [esp + 0x1c], edx
jmp 0x6717dea2
mov eax, dword [esp + 0x10]
cmp bl, 0x2e
mov ecx, dword [eax]
sbb eax, eax
and eax, 0xfffffff3
add eax, 0x2e
movzx edx, word [ecx]
sub edx, eax
lea eax, [ecx + 2]
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov eax, dword [edx*4 + 0x6738d878]
mov dword [ecx + 0x20], eax
mov eax, dword [edx*4 + 0x6738d8a4]
mov dword [ecx + 0x24], eax
mov eax, dword [edx*4 + 0x6738d8d0]
mov dword [esp + 0x1c], eax
mov eax, ecx
xor ebp, ebp
push 2
pop edx
xor ecx, ecx
inc ecx
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x6717e1a3
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [ecx + 8], eax
mov eax, ecx
mov ecx, dword [eax]
movzx edx, word [ecx]
mov eax, edx
and eax, esi
cmp eax, 0xd800
jne 0x6717def1
movzx eax, word [ecx + 2]
mov ecx, 0x3ff
and edx, ecx
and eax, ecx
shl edx, 0xa
or edx, eax
mov eax, dword [esp + 0x10]
mov ecx, eax
add edx, 0x10000
inc dword [eax + 0xc]
mov ecx, dword [ecx]
jmp 0x6717def5
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
lea eax, [ecx + eax*2]
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov eax, ecx
xor ecx, ecx
inc ecx
cmp dword [eax + 0xc], ecx
jbe 0x6717e19e
cmp byte [eax + 0x31], 0x2e
jb 0x6717df55
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x67392490]
mov eax, edx
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x67396890]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x6738f79c]
add ecx, edx
cmp ecx, edx
je 0x6717df55
mov eax, dword [esp + 0x10]
add eax, 0x32
push eax
push ecx
call fcn.671a1181
pop ecx
pop ecx
jmp 0x6717df57
mov eax, ebp
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x14], eax
xor ecx, ecx
mov eax, dword [esp + 0x10]
inc ecx
mov esi, ecx
mov eax, dword [eax + 0x20]
cmp eax, ecx
jb 0x6717e016
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
jmp 0x6717df7f
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0xc]
mov eax, dword [edi + 0x64]
add ecx, ecx
sub eax, ecx
cmp edx, eax
ja 0x6717dfb9
mov eax, dword [esp + 0x10]
push ecx
push dword [eax + 8]
push edx
call fcn.671a4da4
add esp, 0xc
test eax, eax
jne 0x6717dfb9
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
add eax, eax
add dword [ecx + 0x38], eax
mov eax, ecx
mov edx, dword [eax + 0x38]
jmp 0x6717e00a
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
test eax, eax
je 0x6717e095
mov ebx, dword [esp + 0x10]
lea ecx, [eax + eax]
mov eax, dword [edi + 0x64]
sub eax, ecx
cmp dword [ebx + 0x38], eax
ja 0x6717e095
push ecx
mov eax, ebx
add eax, 0x32
push eax
mov eax, ebx
push dword [eax + 0x38]
call fcn.671a4da4
add esp, 0xc
test eax, eax
jne 0x6717e095
mov eax, ebx
mov ecx, ebx
mov eax, dword [eax + 0x14]
add eax, eax
add dword [ecx + 0x38], eax
mov eax, ebx
mov edx, dword [eax + 0x38]
mov eax, dword [eax + 0x20]
inc esi
cmp esi, eax
jbe 0x6717df7b
mov ebp, dword [esp + 0x10]
mov esi, 0xfc00
mov edx, dword [esp + 0x18]
push 0
pop ecx
cmp eax, dword [ebp + 0x24]
je 0x6717d58f
cmp dword [esp + 0x1c], ecx
je 0x671844a1
mov eax, ebp
mov ecx, ebp
mov eax, dword [eax + 0x38]
mov dword [ecx + 4], eax
mov eax, ebp
mov esi, dword [eax + 0x20]
cmp esi, dword [eax + 0x24]
jae 0x6717e17c
mov edx, dword [eax + 0x38]
mov ecx, dword [eax + 0xc]
mov eax, dword [edi + 0x64]
add ecx, ecx
sub eax, ecx
cmp edx, eax
ja 0x6717e0e7
mov eax, dword [esp + 0x10]
push ecx
push dword [eax + 8]
push edx
call fcn.671a4da4
add esp, 0xc
test eax, eax
jne 0x6717e0e7
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
add eax, eax
add dword [ecx + 0x38], eax
mov eax, ecx
mov edx, dword [eax + 0x38]
jmp 0x6717e12c
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jb 0x6717e0d3
cmp word [edi + 0x4c], bp
je 0x6717e0d3
cmp eax, dword [edi + 0x6c]
mov eax, dword [esp + 0x90]
ja 0x6717e0b8
cmp dword [eax + 0x34], ebp
je 0x6717e0d1
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov edi, dword [esp + 0x90]
jmp 0x6717e0d6
mov edi, eax
xor ecx, ecx
inc ecx
mov esi, ebp
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
xor edx, edx
jmp 0x6717d873
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
test eax, eax
je 0x6717e13c
mov ebx, dword [esp + 0x10]
lea ecx, [eax + eax]
mov eax, dword [edi + 0x64]
sub eax, ecx
cmp dword [ebx + 0x38], eax
ja 0x6717e13c
push ecx
mov eax, ebx
add eax, 0x32
push eax
mov eax, ebx
push dword [eax + 0x38]
call fcn.671a4da4
add esp, 0xc
test eax, eax
jne 0x6717e13c
mov eax, ebx
mov ecx, ebx
mov eax, dword [eax + 0x14]
add eax, eax
add dword [ecx + 0x38], eax
mov eax, ebx
mov edx, dword [eax + 0x38]
inc esi
cmp esi, dword [eax + 0x24]
mov eax, dword [esp + 0x10]
jb 0x6717e054
jmp 0x6717e178
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jb 0x6717e178
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x6717e178
cmp eax, dword [edi + 0x6c]
mov eax, dword [esp + 0x90]
ja 0x6717e161
cmp dword [eax + 0x34], ecx
je 0x6717e171
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov edi, dword [esp + 0x90]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov esi, 0xfc00
mov ebp, dword [esp + 0x14]
push 2
pop ecx
cmp dword [esp + 0x1c], ecx
je 0x6717d6bd
mov ecx, dword [eax + 0x38]
jmp 0x671844db
mov dword [eax + 0x28], edx
jmp 0x6717e1b6
mov eax, dword [eax]
mov ecx, dword [esp + 0x10]
movzx eax, word [eax]
mov dword [ecx + 0x28], eax
mov eax, ecx
xor ecx, ecx
add dword [eax], edx
inc ecx
cmp byte [eax + 0x31], 0x2e
jb 0x6717e360
test ebx, ebx
je 0x6717e208
mov edx, dword [eax + 0x28]
cmp edx, 0x7f
jbe 0x6717e208
mov eax, edx
test eax, eax
jns 0x6717e1d5
add eax, 0x7f
sar eax, 7
movzx ecx, word [eax*2 + 0x67392490]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x6717e1f1
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x67396890]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x6738f79c]
add ecx, edx
jmp 0x6717e21b
mov ecx, dword [eax + 0x28]
mov eax, 0xff
cmp ecx, eax
ja 0x6717e21b
mov eax, dword [edi + 0x3c]
movzx ecx, byte [eax + ecx]
mov eax, dword [esp + 0x10]
mov dword [eax + 0x2c], ecx
xor ecx, ecx
mov eax, dword [eax + 0x20]
inc ecx
mov edx, ecx
cmp eax, ecx
jb 0x6717e273
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
mov eax, dword [esp + 0x90]
cmp ecx, dword [eax + 0x64]
jae 0x6717e2cc
mov ebx, dword [esp + 0x10]
movzx eax, word [ecx]
cmp dword [ebx + 0x28], eax
je 0x6717e25a
cmp dword [ebx + 0x2c], eax
jne 0x6717d85d
mov eax, dword [esp + 0x10]
add ecx, 2
inc edx
mov dword [eax + 0x38], ecx
mov eax, dword [eax + 0x20]
cmp edx, eax
jbe 0x6717e235
mov edi, dword [esp + 0x90]
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
push 0
pop ecx
cmp eax, dword [ebp + 0x24]
je 0x6717d58f
mov esi, dword [esp + 0x1c]
test esi, esi
je 0x67183dd3
mov eax, ebp
mov ecx, ebp
mov eax, dword [eax + 0x38]
mov dword [ecx + 4], eax
mov eax, ebp
mov edx, dword [eax + 0x20]
cmp edx, dword [eax + 0x24]
jae 0x6717e325
mov eax, dword [eax + 0x38]
mov ebx, ebp
cmp eax, dword [edi + 0x64]
jae 0x6717e300
movzx ecx, word [eax]
cmp dword [ebx + 0x28], ecx
je 0x6717e2be
cmp dword [ebx + 0x2c], ecx
jne 0x6717e325
add eax, 2
inc edx
mov dword [ebx + 0x38], eax
cmp edx, dword [ebx + 0x24]
jb 0x6717e2ac
jmp 0x6717e325
cmp word [eax + 0x4c], bp
je 0x6717e2ef
cmp ecx, dword [eax + 0x6c]
ja 0x6717e2dc
cmp dword [eax + 0x34], ebp
je 0x6717e2ef
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
jbe 0x6717e2f2
push 0xfffffffffffffffe
jmp 0x67185be9
xor ecx, ecx
inc ecx
mov esi, ebp
mov edi, dword [esp + 0x90]
jmp 0x6717e0d8
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x6717e325
cmp eax, dword [edi + 0x6c]
mov eax, dword [esp + 0x90]
ja 0x6717e319
cmp dword [eax + 0x34], ecx
je 0x6717e325
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov edi, dword [esp + 0x90]
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
push 2
pop eax
cmp esi, eax
mov esi, 0xfc00
je 0x6717d6bd
mov ebp, dword [esp + 0x10]
mov eax, dword [ebp + 0x38]
cmp eax, dword [ebp + 4]
je 0x6717ee0a
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x1a
jmp 0x67185a5c
mov eax, dword [eax + 0x20]
mov esi, ecx
cmp eax, ecx
jb 0x6717e3a3
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x6717e415
mov ebx, dword [esp + 0x10]
movzx eax, word [edx]
add edx, 2
mov dword [ebx + 0x38], edx
cmp dword [ebx + 0x28], eax
mov eax, ebx
jne 0x6717e407
mov eax, dword [eax + 0x20]
inc esi
cmp esi, eax
jbe 0x6717e370
mov edi, dword [esp + 0x90]
mov ebp, dword [esp + 0x10]
mov esi, 0xfc00
mov edx, dword [esp + 0x18]
push 0
pop ecx
cmp eax, dword [ebp + 0x24]
je 0x6717d58f
mov ebx, dword [esp + 0x1c]
test ebx, ebx
je 0x67183e28
mov eax, ebp
mov ecx, ebp
mov eax, dword [eax + 0x38]
mov dword [ecx + 4], eax
mov eax, ebp
mov edx, dword [eax + 0x20]
cmp edx, dword [eax + 0x24]
jae 0x6717e449
mov ecx, dword [eax + 0x38]
mov eax, dword [esp + 0x90]
cmp ecx, dword [eax + 0x64]
jae 0x6717e427
mov ebp, dword [esp + 0x10]
movzx eax, word [ecx]
cmp dword [ebp + 0x28], eax
jne 0x6717e44d
mov eax, ebp
add ecx, 2
inc edx
mov dword [eax + 0x38], ecx
cmp edx, dword [eax + 0x24]
jb 0x6717e3df
jmp 0x6717e449
mov edi, dword [esp + 0x90]
mov esi, ebp
jmp 0x6717d86a
cmp word [eax + 0x4c], bp
je 0x6717e2ef
cmp edx, dword [eax + 0x6c]
jmp 0x6717e2d5
xor edx, edx
cmp word [eax + 0x4c], dx
je 0x6717e449
cmp ecx, dword [eax + 0x6c]
ja 0x6717e439
cmp dword [eax + 0x34], edx
je 0x6717e449
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov ebp, dword [esp + 0x10]
mov edi, dword [esp + 0x90]
mov edx, dword [esp + 0x18]
push 2
pop eax
cmp ebx, eax
je 0x671851bc
mov eax, dword [ebp + 0x38]
cmp eax, dword [ebp + 4]
jbe 0x6717ee0a
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x1c
jmp 0x67185a5c
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
mov dword [ecx + 0x20], eax
mov eax, ecx
add dword [eax], 4
jmp 0x6717e592
mov eax, dword [esp + 0x10]
xor ebp, ebp
mov ecx, dword [esp + 0x10]
mov dword [eax + 0x20], ebp
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
xor eax, eax
inc eax
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
add dword [eax], 4
jmp 0x6717e594
mov eax, dword [esp + 0x10]
xor ebp, ebp
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1c], ebp
mov dword [eax + 0x20], ebp
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
jmp 0x6717e4b6
mov eax, dword [esp + 0x10]
xor ebp, ebp
push 2
or edx, 0xffffffff
pop ecx
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], edx
add dword [eax], ecx
mov dword [esp + 0x1c], ecx
jmp 0x6717e594
mov eax, dword [esp + 0x10]
xor ecx, ecx
inc ecx
push 2
pop edx
mov dword [eax + 0x20], ecx
or ecx, 0xffffffff
mov dword [eax + 0x24], ecx
add dword [eax], edx
mov dword [esp + 0x1c], edx
jmp 0x6717e592
mov eax, dword [esp + 0x10]
xor ecx, ecx
xor ebp, ebp
inc ecx
push 2
pop edx
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], ecx
add dword [eax], edx
mov dword [esp + 0x1c], edx
jmp 0x6717e594
mov ecx, dword [esp + 0x10]
xor ebp, ebp
push 2
pop eax
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0x20], ebp
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
jmp 0x6717e4b6
mov eax, dword [esp + 0x10]
cmp bl, 0x48
mov ecx, dword [eax]
sbb eax, eax
and eax, 0xfffffff3
add eax, 0x48
movzx edx, word [ecx]
sub edx, eax
lea eax, [ecx + 2]
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov eax, dword [edx*4 + 0x6738d878]
mov dword [ecx + 0x20], eax
mov eax, dword [edx*4 + 0x6738d8a4]
mov dword [ecx + 0x24], eax
mov eax, dword [edx*4 + 0x6738d8d0]
mov dword [esp + 0x1c], eax
mov eax, ecx
xor ebp, ebp
mov eax, dword [eax]
mov ecx, dword [esp + 0x10]
movzx eax, word [eax]
mov ebx, dword [esp + 0x14]
mov dword [ecx + 0x28], eax
mov eax, ecx
mov edx, dword [eax]
add edx, 2
mov dword [eax], edx
test ebx, ebx
je 0x6717e5e9
mov ecx, dword [eax + 0x28]
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x6717e5e5
movzx eax, word [edx]
mov edx, 0x3ff
and ecx, edx
and eax, edx
shl ecx, 0xa
or eax, ecx
mov ecx, dword [esp + 0x10]
add eax, 0x10000
push 2
mov dword [ecx + 0x28], eax
mov eax, ecx
pop ecx
add dword [eax], ecx
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x31], 0x48
jb 0x6717e8df
test ebx, ebx
je 0x6717e63b
mov edx, dword [eax + 0x28]
cmp edx, 0x7f
jbe 0x6717e63b
mov eax, edx
test eax, eax
jns 0x6717e608
add eax, 0x7f
sar eax, 7
movzx ecx, word [eax*2 + 0x67392490]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x6717e624
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x67396890]
imul eax, eax, 0xc
mov ecx, dword [eax + 0x6738f79c]
add ecx, edx
jmp 0x6717e64e
mov ecx, dword [eax + 0x28]
mov eax, 0xff
cmp ecx, eax
ja 0x6717e64e
mov eax, dword [edi + 0x3c]
movzx ecx, byte [eax + ecx]
mov eax, dword [esp + 0x10]
mov dword [eax + 0x2c], ecx
xor ecx, ecx
mov eax, dword [eax + 0x20]
inc ecx
test ebx, ebx
je 0x6717e717
mov esi, ecx
cmp eax, ecx
jb 0x6717e768
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
jmp 0x6717e67a
mov eax, dword [esp + 0x10]
cmp edx, dword [edi + 0x64]
jae 0x6717e6dd
movzx ecx, word [edx]
add edx, 2
mov dword [eax + 0x38], edx
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x6717e6bb
movzx eax, word [edx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
add edx, 2
mov dword [eax + 0x38], edx
jmp 0x6717e6bf
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x28], ecx
je 0x6717e6d6
cmp dword [eax + 0x2c], ecx
je 0x6717e6d6
mov eax, dword [eax + 0x20]
inc esi
cmp esi, eax
jbe 0x6717e676
jmp 0x6717e768
mov esi, ebp
jmp 0x6717d9ec
mov eax, dword [esp + 0x90]
cmp word [eax + 0x4c], bp
je 0x6717e706
cmp edx, dword [eax + 0x6c]
ja 0x6717e6f4
cmp dword [eax + 0x34], ebp
je 0x6717e706
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
jmp 0x6717e709
xor ecx, ecx
inc ecx
mov edi, dword [esp + 0x90]
mov esi, ebp
jmp 0x6717e0dc
mov edx, ecx
cmp eax, ecx
jb 0x6717e768
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
mov eax, dword [esp + 0x90]
cmp ecx, dword [eax + 0x64]
jae 0x6717e2cc
mov ebx, dword [esp + 0x10]
movzx eax, word [ecx]
cmp dword [ebx + 0x28], eax
je 0x6717d85d
cmp dword [ebx + 0x2c], eax
je 0x6717d85d
mov eax, ebx
add ecx, 2
inc edx
mov dword [eax + 0x38], ecx
mov eax, dword [eax + 0x20]
cmp edx, eax
jbe 0x6717e724
mov edi, dword [esp + 0x90]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
push 0
pop ecx
cmp eax, dword [ebp + 0x24]
je 0x6717d57d
cmp dword [esp + 0x1c], ecx
je 0x671854e3
mov eax, ebp
mov ecx, ebp
mov eax, dword [eax + 0x38]
mov dword [ecx + 4], eax
mov eax, ebp
mov edi, dword [eax + 0x20]
test ebx, ebx
je 0x6717e854
cmp edi, dword [eax + 0x24]
jae 0x6717e82b
mov edx, dword [eax + 0x38]
xor ebx, ebx
inc ebx
mov eax, dword [esp + 0x90]
mov esi, ebx
cmp edx, dword [eax + 0x64]
jae 0x6717e808
movzx ecx, word [edx]
mov ebp, 0xfc00
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x6717e7ec
movzx eax, word [edx + 2]
mov ebp, 0x3ff
and ecx, ebp
and eax, ebp
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x28], ecx
je 0x6717e827
cmp dword [eax + 0x2c], ecx
je 0x6717e827
lea edx, [edx + esi*2]
inc edi
mov dword [eax + 0x38], edx
cmp edi, dword [eax + 0x24]
jb 0x6717e7ac
jmp 0x6717e827
xor ecx, ecx
cmp word [eax + 0x4c], cx
je 0x6717e827
cmp edx, dword [eax + 0x6c]
ja 0x6717e81a
cmp dword [eax + 0x34], ecx
je 0x6717e827
mov dword [eax + 0x2c], ebx
cmp word [eax + 0x4c], bx
ja 0x6717e2e8
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x90]
mov esi, 0xfc00
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
push 2
pop ecx
cmp dword [esp + 0x1c], ecx
je 0x6717d6bd
mov ecx, dword [eax + 0x38]
jmp 0x67184599
cmp edi, dword [eax + 0x24]
jae 0x6717e8b1
mov eax, dword [eax + 0x38]
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x90]
cmp eax, dword [esi + 0x64]
jae 0x6717e889
movzx ecx, word [eax]
cmp dword [edx + 0x28], ecx
je 0x6717e885
cmp dword [edx + 0x2c], ecx
je 0x6717e885
add eax, 2
inc edi
mov dword [edx + 0x38], eax
cmp edi, dword [edx + 0x24]
jb 0x6717e867
mov edi, esi
jmp 0x6717e8bc
mov edi, esi
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x6717e8bc
cmp eax, dword [edi + 0x6c]
mov eax, esi
ja 0x6717e89f
cmp dword [eax + 0x34], ecx
je 0x6717e8ba
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
jmp 0x6717e885
mov edi, dword [esp + 0x90]
jmp 0x6717e8bc
mov edi, eax
mov edx, dword [esp + 0x18]
mov esi, 0xfc00
mov ebp, dword [esp + 0x14]
push 2
pop eax
cmp dword [esp + 0x1c], eax
je 0x6717d6bd
mov ebp, dword [esp + 0x10]
jmp 0x67183e9e
mov eax, dword [eax + 0x20]
xor ecx, ecx
inc ecx
mov esi, ecx
test ebx, ebx
je 0x6717e95c
cmp eax, ecx
jb 0x6717e9a2
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
jmp 0x6717e900
mov eax, dword [esp + 0x10]
cmp edx, dword [edi + 0x64]
jae 0x6717e6dd
movzx ecx, word [edx]
add edx, 2
mov dword [eax + 0x38], edx
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x6717e945
movzx eax, word [edx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
add edx, 2
mov dword [eax + 0x38], edx
jmp 0x6717e949
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x28], ecx
je 0x6717e6d6
mov eax, dword [eax + 0x20]
inc esi
cmp esi, eax
jbe 0x6717e8fc
jmp 0x6717e9a2
cmp eax, ecx
jb 0x6717e9a2
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x6717e415
mov ebx, dword [esp + 0x10]
movzx eax, word [edx]
add edx, 2
mov dword [ebx + 0x38], edx
cmp dword [ebx + 0x28], eax
mov eax, ebx
je 0x6717e407
mov eax, dword [eax + 0x20]
inc esi
cmp esi, eax
jbe 0x6717e967
mov edi, dword [esp + 0x90]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
push 0
pop ecx
cmp eax, dword [ebp + 0x24]
je 0x6717d57d
cmp dword [esp + 0x1c], ecx
je 0x671854f0
mov eax, ebp
mov ecx, ebp
mov eax, dword [eax + 0x38]
mov dword [ecx + 4], eax
mov eax, ebp
mov edi, dword [eax + 0x20]
test ebx, ebx
je 0x6717ea89
cmp edi, dword [eax + 0x24]
jae 0x6717ea60
mov edx, dword [eax + 0x38]
xor ebx, ebx
inc ebx
mov eax, dword [esp + 0x90]
mov esi, ebx
cmp edx, dword [eax + 0x64]
jae 0x6717ea3d
movzx ecx, word [edx]
mov ebp, 0xfc00
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x6717ea26
movzx eax, word [edx + 2]
mov ebp, 0x3ff
and ecx, ebp
and eax, ebp
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x28], ecx
je 0x6717ea5c
lea edx, [edx + esi*2]
inc edi
mov dword [eax + 0x38], edx
cmp edi, dword [eax + 0x24]
jb 0x6717e9e6
jmp 0x6717ea5c
xor ecx, ecx
cmp word [eax + 0x4c], cx
je 0x6717ea5c
cmp edx, dword [eax + 0x6c]
ja 0x6717ea4f
cmp dword [eax + 0x34], ecx
je 0x6717ea5c
mov dword [eax + 0x2c], ebx
cmp word [eax + 0x4c], bx
ja 0x6717e2e8
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x90]
mov esi, 0xfc00
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
push 2
pop ecx
cmp dword [esp + 0x1c], ecx
je 0x6717d6bd
mov ecx, dword [eax + 0x38]
jmp 0x6718464e
cmp edi, dword [eax + 0x24]
jae 0x6717eadf
mov ecx, dword [eax + 0x38]
mov eax, dword [esp + 0x90]
cmp ecx, dword [eax + 0x64]
jae 0x6717eab9
mov ebx, dword [esp + 0x10]
movzx eax, word [ecx]
cmp dword [ebx + 0x28], eax
mov eax, ebx
je 0x6717eadf
add ecx, 2
inc edi
mov dword [eax + 0x38], ecx
cmp edi, dword [eax + 0x24]
jb 0x6717ea91
jmp 0x6717eadb
xor edx, edx
cmp word [eax + 0x4c], dx
je 0x6717eadb
cmp ecx, dword [eax + 0x6c]
ja 0x6717eacb
cmp dword [eax + 0x34], edx
je 0x6717eadb
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x90]
mov esi, 0xfc00
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
push 2
pop ecx
cmp dword [esp + 0x1c], ecx
je 0x6717d6bd
mov eax, dword [eax + 0x38]
mov ebp, dword [esp + 0x10]
jmp 0x67183f19
mov eax, dword [esp + 0x10]
push 2
pop ecx
mov eax, dword [eax]
add eax, ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx + 8], eax
mov eax, ecx
add dword [eax], 0x22
mov edx, dword [eax]
movzx eax, word [edx]
mov ecx, eax
cmp ecx, 0x62
jb 0x6717ebbf
cmp ecx, 0x67
jbe 0x6717eb8b
push 0x69
pop ebx
cmp ecx, ebx
jbe 0x6717eb4c
cmp ecx, 0x6c
jbe 0x6717eb8b
push 0x6d
pop ecx
cmp ax, cx
jne 0x6717ebbf
mov ecx, dword [esp + 0x10]
movzx eax, word [edx + 2]
push 0xffffffffffffffff
mov dword [ecx + 0x20], eax
mov eax, ecx
pop ecx
mov eax, dword [eax]
movzx eax, word [eax + 4]
test eax, eax
cmove eax, ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x24], eax
mov eax, ecx
mov ecx, dword [eax]
movzx eax, word [ecx]
mov edx, dword [eax*4 + 0x6738d748]
lea eax, [ecx + 6]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1c], edx
mov dword [ecx], eax
jmp 0x6717ebb3
lea eax, [edx + 2]
mov edx, dword [esp + 0x10]
mov dword [edx], eax
mov eax, dword [ecx*4 + 0x6738d6f0]
mov dword [edx + 0x20], eax
mov eax, dword [ecx*4 + 0x6738d71c]
mov dword [edx + 0x24], eax
mov eax, dword [ecx*4 + 0x6738d748]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
xor edx, edx
inc edx
mov eax, dword [eax + 0x20]
jmp 0x6717ebce
mov eax, dword [esp + 0x10]
xor edx, edx
inc edx
mov dword [eax + 0x24], edx
mov dword [eax + 0x20], edx
mov eax, edx
mov ebx, edx
test ebp, ebp
je 0x6717ecac
cmp eax, edx
jb 0x6717ed13
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x90]
mov edi, dword [eax + 0x38]
cmp edi, dword [ecx + 0x64]
jae 0x6717ec91
movzx esi, word [edi]
mov ebp, 0xfc00
add edi, 2
mov dword [eax + 0x38], edi
mov eax, esi
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x6717ec35
movzx eax, word [edi]
mov ebp, 0x3ff
and esi, ebp
and eax, ebp
shl esi, 0xa
or esi, eax
mov eax, dword [esp + 0x10]
add esi, 0x10000
add edi, 2
mov dword [eax + 0x38], edi
jmp 0x6717ec39
mov eax, dword [esp + 0x10]
mov ebp, 0xff
cmp esi, ebp
jbe 0x6717ec5c
cmp byte [eax + 0x31], 0x6e
jne 0x6717ec7c
mov eax, dword [esp + 0x10]
xor edx, edx
mov edi, dword [esp + 0x90]
mov esi, edx
jmp 0x6717d86c
mov eax, dword [eax + 8]
mov ecx, esi
and ecx, 7
shr esi, 3
shl edx, cl
test byte [esi + eax], dl
mov eax, dword [esp + 0x10]
je 0x6717ec4c
mov ecx, dword [esp + 0x90]
xor edx, edx
inc edx
mov eax, dword [eax + 0x20]
inc ebx
cmp ebx, eax
ja 0x6717ed13
mov eax, dword [esp + 0x10]
jmp 0x6717ebee
mov eax, dword [esp + 0x90]
xor ebp, ebp
cmp word [eax + 0x4c], bp
je 0x6717e2ef
cmp edi, dword [eax + 0x6c]
jmp 0x6717e2d5
cmp eax, edx
jb 0x6717ed13
mov eax, dword [esp + 0x10]
mov ebp, 0xff
mov ecx, dword [esp + 0x90]
mov edi, dword [eax + 0x38]
cmp edi, dword [ecx + 0x64]
jae 0x6717ec91
movzx esi, word [edi]
add edi, 2
mov dword [eax + 0x38], edi
cmp esi, ebp
jbe 0x6717ece1
cmp byte [eax + 0x31], 0x6e
je 0x6717ec48
jmp 0x6717ed05
mov eax, dword [eax + 8]
mov ecx, esi
and ecx, 7
shr esi, 3
shl edx, cl
test byte [esi + eax], dl
mov eax, dword [esp + 0x10]
je 0x6717ec4c
mov ecx, dword [esp + 0x90]
xor edx, edx
inc edx
mov eax, dword [eax + 0x20]
inc ebx
cmp ebx, eax
ja 0x6717ed13
mov eax, dword [esp + 0x10]
jmp 0x6717ecc3
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
push 0
pop ecx
cmp eax, dword [ebp + 0x24]
je 0x6717d576
cmp dword [esp + 0x1c], ecx
je 0x671854fd
mov ebx, dword [esp + 0x14]
mov eax, ebp
mov ecx, ebp
mov eax, dword [eax + 0x38]
mov dword [ecx + 4], eax
mov eax, ebp
mov ebp, dword [eax + 0x20]
test ebx, ebx
je 0x6717ee17
cmp ebp, dword [eax + 0x24]
jae 0x6717edf6
mov edi, dword [eax + 0x38]
xor edx, edx
inc edx
mov eax, dword [esp + 0x90]
mov ebx, edx
cmp edi, dword [eax + 0x64]
jae 0x6717edd7
movzx esi, word [edi]
mov ecx, 0xfc00
mov eax, esi
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x6717ed9b
movzx eax, word [edi + 2]
mov ecx, 0x3ff
and esi, ecx
and eax, ecx
shl esi, 0xa
or esi, eax
push 2
pop eax
add esi, 0x10000
mov ebx, eax
mov eax, 0xff
cmp esi, eax
mov eax, dword [esp + 0x10]
jbe 0x6717edb0
cmp byte [eax + 0x31], 0x6e
je 0x6717edf6
jmp 0x6717edc9
mov eax, dword [eax + 8]
mov ecx, esi
and ecx, 7
shr esi, 3
shl edx, cl
test byte [esi + eax], dl
je 0x6717edf6
mov eax, dword [esp + 0x10]
xor edx, edx
inc edx
lea edi, [edi + ebx*2]
inc ebp
mov dword [eax + 0x38], edi
cmp ebp, dword [eax + 0x24]
jb 0x6717ed5b
jmp 0x6717edf6
xor ecx, ecx
cmp word [eax + 0x4c], cx
je 0x6717edf6
cmp edi, dword [eax + 0x6c]
ja 0x6717ede9
cmp dword [eax + 0x34], ecx
je 0x6717edf6
mov dword [eax + 0x2c], edx
cmp word [eax + 0x4c], dx
ja 0x6717e2e8
push 2
pop eax
cmp dword [esp + 0x1c], eax
jne 0x6718565b
mov edi, dword [esp + 0x90]
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
jmp 0x6717d544
cmp ebp, dword [eax + 0x24]
jae 0x6717ee3d
mov edi, dword [eax + 0x38]
mov ecx, dword [esp + 0x90]
cmp edi, dword [ecx + 0x64]
jae 0x6717ee9d
movzx esi, word [edi]
mov edx, 0xff
cmp esi, edx
jbe 0x6717ee6f
cmp byte [eax + 0x31], 0x6e
jne 0x6717ee8f
xor edx, edx
mov edi, dword [esp + 0x90]
push 2
pop eax
cmp dword [esp + 0x1c], eax
je 0x6717da31
mov ebp, dword [esp + 0x10]
mov eax, dword [ebp + 0x38]
cmp eax, dword [ebp + 4]
jb 0x6717da3a
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x18
jmp 0x67185a5c
mov eax, dword [eax + 8]
xor edx, edx
mov ecx, esi
inc edx
and ecx, 7
shr esi, 3
shl edx, cl
test byte [esi + eax], dl
je 0x6717ee3d
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x90]
add edi, 2
inc ebp
mov dword [eax + 0x38], edi
cmp ebp, dword [eax + 0x24]
jb 0x6717ee26
jmp 0x6717ee3d
mov eax, dword [esp + 0x90]
xor edx, edx
cmp word [eax + 0x4c], dx
je 0x6717ee3f
cmp edi, dword [eax + 0x6c]
ja 0x6717eeb6
cmp dword [eax + 0x34], edx
je 0x6717ee3f
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
jmp 0x6717ee3f
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
add eax, 4
mov dword [ecx + 8], eax
mov eax, ecx
mov ecx, dword [eax]
movzx eax, word [ecx + 2]
lea edx, [ecx + eax*2]
mov eax, dword [esp + 0x10]
mov dword [eax], edx
movzx eax, word [edx]
mov ecx, eax
cmp ecx, 0x62
jb 0x6717ef86
cmp ecx, 0x67
jbe 0x6717ef52
push 0x69
pop ebx
cmp ecx, ebx
jbe 0x6717ef13
cmp ecx, 0x6c
jbe 0x6717ef52
push 0x6d
pop ecx
cmp ax, cx
jne 0x6717ef86
mov ecx, dword [esp + 0x10]
movzx eax, word [edx + 2]
push 0xffffffffffffffff
mov dword [ecx + 0x20], eax
mov eax, ecx
pop ecx
mov eax, dword [eax]
movzx eax, word [eax + 4]
test eax, eax
cmove eax, ecx
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x24], eax
mov eax, ecx
mov ecx, dword [eax]
movzx eax, word [ecx]
mov edx, dword [eax*4 + 0x6738d748]
lea eax, [ecx + 6]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1c], edx
mov dword [ecx], eax
jmp 0x6717ef7a
lea eax, [edx + 2]
mov edx, dword [esp + 0x10]
mov dword [edx], eax
mov eax, dword [ecx*4 + 0x6738d6f0]
mov dword [edx + 0x20], eax
mov eax, dword [ecx*4 + 0x6738d71c]
mov dword [edx + 0x24], eax
mov eax, dword [ecx*4 + 0x6738d748]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
xor ecx, ecx
inc ecx
mov eax, dword [eax + 0x20]
jmp 0x6717ef95
mov eax, dword [esp + 0x10]
xor ecx, ecx
inc ecx
mov dword [eax + 0x24], ecx
mov dword [eax + 0x20], ecx
mov eax, ecx
mov ebx, dword [esp + 0x14]
mov esi, ecx
cmp eax, ecx
jb 0x6717f01c
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f057
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717effb
mov ebp, 0xfc00
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x6717eff7
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push ebx
push dword [eax + 8]
push ecx
call fcn.671a29a2
add esp, 0xc
test eax, eax
mov eax, dword [esp + 0x10]
je 0x6717db54
mov eax, dword [eax + 0x20]
inc esi
cmp esi, eax
jbe 0x6717ef9f
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
push 0
pop ecx
cmp eax, dword [ebp + 0x24]
je 0x6717d57d
cmp dword [esp + 0x1c], ecx
je 0x671842e5
mov eax, ebp
mov ecx, ebp
mov eax, dword [eax + 0x38]
mov dword [ecx + 4], eax
mov eax, ebp
mov edi, dword [eax + 0x20]
cmp edi, dword [eax + 0x24]
jae 0x6717f130
mov edx, dword [eax + 0x38]
jmp 0x6717f099
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717f08b
cmp eax, dword [edi + 0x6c]
mov eax, dword [esp + 0x90]
ja 0x6717f070
cmp dword [eax + 0x34], ebp
je 0x6717f089
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov edi, dword [esp + 0x90]
jmp 0x6717f08e
mov edi, eax
xor ecx, ecx
inc ecx
mov esi, ebp
jmp 0x6717e0dc
mov eax, dword [esp + 0x10]
xor ecx, ecx
lea esi, [ecx + 1]
mov ecx, dword [esp + 0x90]
cmp edx, dword [ecx + 0x64]
jae 0x6717f10c
movzx ecx, word [edx]
test ebx, ebx
je 0x6717f0e4
mov ebp, 0xfc00
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x6717f0e0
movzx eax, word [edx + 2]
mov edx, 0x3ff
and ecx, edx
and eax, edx
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, dword [esp + 0x10]
push ebx
push dword [eax + 8]
push ecx
call fcn.671a29a2
add esp, 0xc
test eax, eax
je 0x6717f130
mov ecx, dword [esp + 0x10]
lea eax, [esi + esi]
add dword [ecx + 0x38], eax
mov eax, ecx
inc edi
mov edx, dword [eax + 0x38]
cmp edi, dword [eax + 0x24]
jb 0x6717f095
jmp 0x6717f130
mov eax, ecx
xor ecx, ecx
cmp word [eax + 0x4c], cx
je 0x6717f130
cmp edx, dword [eax + 0x6c]
ja 0x6717f120
cmp dword [eax + 0x34], ecx
je 0x6717f130
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
push 2
pop eax
cmp dword [esp + 0x1c], eax
je 0x6717ee03
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x65
jmp 0x67185a5c
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jb 0x6717f160
xor ebp, ebp
jmp 0x6717e0a1
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f1a7
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f1a7
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, 0xff
cmp ecx, eax
ja 0x6717f1bd
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
jne 0x6717da38
mov eax, dword [esp + 0x10]
push 2
pop ecx
add dword [eax], ecx
jmp 0x671851b8
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f21e
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f21e
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, 0xff
cmp ecx, eax
ja 0x6717da38
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
je 0x6717da38
jmp 0x6717f1bd
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f291
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f291
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, 0xff
cmp ecx, eax
ja 0x6717f1bd
mov eax, dword [edi + 0x40]
xor edx, edx
inc edx
test byte [ecx + eax], dl
jmp 0x6717f1b7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f303
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f303
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, 0xff
cmp ecx, eax
ja 0x6717da38
mov eax, dword [edi + 0x40]
xor edx, edx
inc edx
test byte [ecx + eax], dl
jmp 0x6717f232
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f375
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f375
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, 0xff
cmp ecx, eax
ja 0x6717f1bd
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jmp 0x6717f1b7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f3e5
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f3e5
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, 0xff
cmp ecx, eax
ja 0x6717da38
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jmp 0x6717f232
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jb 0x6717f418
mov eax, dword [esp + 0x90]
xor ebp, ebp
jmp 0x6717e415
movzx ecx, word [edx]
add edx, 2
mov ebx, dword [esp + 0x14]
mov esi, edx
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f45e
mov ebp, 0xfc00
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x6717f45e
movzx eax, word [edx]
lea esi, [edx + 2]
mov ebp, 0x3ff
and ecx, ebp
and eax, ebp
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
mov dword [eax + 0x38], esi
push 0xa
pop edx
cmp ecx, edx
je 0x6717f4f0
jbe 0x6717da38
push 0xc
pop eax
cmp ecx, eax
jbe 0x6717f49c
push 0xd
pop eax
cmp ecx, eax
je 0x6717f4c0
add eax, 0x78
cmp ecx, eax
je 0x6717f49c
mov eax, 0x2027
cmp ecx, eax
jbe 0x6717da38
add eax, 2
cmp ecx, eax
ja 0x6717da38
mov eax, dword [esp + 0x90]
push 2
pop ecx
cmp word [eax + 0x4e], cx
jne 0x6717f4ee
mov eax, dword [esp + 0x10]
xor edx, edx
mov edi, dword [esp + 0x90]
mov esi, edx
jmp 0x6717d870
mov eax, dword [esp + 0x90]
cmp esi, dword [eax + 0x64]
jb 0x6717f4fe
xor ecx, ecx
cmp word [eax + 0x4c], cx
je 0x6717f4ee
cmp esi, dword [eax + 0x6c]
ja 0x6717f4de
cmp dword [eax + 0x34], ecx
je 0x6717f4ee
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov edi, eax
mov eax, dword [esp + 0x10]
push 2
pop ebx
add dword [eax], ebx
jmp 0x6717ee0a
cmp word [esi], dx
jne 0x6717f4ee
mov ecx, dword [esp + 0x10]
lea eax, [esi + 2]
mov edi, dword [esp + 0x90]
mov dword [ecx + 0x38], eax
jmp 0x6717f4f0
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f571
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f56d
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ebp, 0x180e
cmp ecx, ebp
ja 0x6717f5b5
je 0x6717da38
push 9
pop edx
cmp ecx, edx
je 0x6717da38
push 0x20
pop edx
cmp ecx, edx
je 0x6717da38
mov edx, 0xa0
cmp ecx, edx
je 0x6717da38
mov edx, 0x1680
cmp ecx, edx
je 0x6717da38
jmp 0x6717f1c1
mov edx, 0x2000
cmp ecx, edx
jb 0x6717f1c1
add edx, 0xa
cmp ecx, edx
jbe 0x6717da38
mov edx, 0x202f
cmp ecx, edx
je 0x6717da38
add edx, 0x30
cmp ecx, edx
je 0x6717da38
mov edx, 0x3000
jmp 0x6717f5a8
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f647
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f643
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ebp, 0x180e
cmp ecx, ebp
ja 0x6717f68b
je 0x6717f1c1
push 9
pop edx
cmp ecx, edx
je 0x6717f1c1
push 0x20
pop edx
cmp ecx, edx
je 0x6717f1c1
mov edx, 0xa0
cmp ecx, edx
je 0x6717f1c1
mov edx, 0x1680
cmp ecx, edx
je 0x6717f1c1
jmp 0x6717da38
mov edx, 0x2000
cmp ecx, edx
jb 0x6717da38
add edx, 0xa
cmp ecx, edx
jbe 0x6717f1c1
mov edx, 0x202f
cmp ecx, edx
je 0x6717f1c1
add edx, 0x30
cmp ecx, edx
je 0x6717f1c1
mov edx, 0x3000
jmp 0x6717f67e
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f719
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f719
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
push 0xa
pop eax
cmp ecx, eax
jb 0x6717f1bd
push 0xd
pop eax
cmp ecx, eax
jbe 0x6717f745
add eax, 0x78
cmp ecx, eax
je 0x6717f745
lea eax, [ecx - 0x2028]
xor ecx, ecx
inc ecx
cmp eax, ecx
ja 0x6717f1bd
jmp 0x6717f748
xor ecx, ecx
inc ecx
xor edx, edx
mov esi, edx
jmp case.0x67183cdc.35
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6717f7a8
mov eax, ecx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f7a8
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
push 0xa
pop eax
cmp ecx, eax
jb 0x6717f745
push 0xd
pop eax
cmp ecx, eax
jbe 0x6717f1bd
add eax, 0x78
cmp ecx, eax
je 0x6717f1bd
lea eax, [ecx - 0x2028]
xor ecx, ecx
inc ecx
cmp eax, ecx
ja 0x6717f748
jmp 0x6717f1bd
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x6717f159
movzx edx, word [eax]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], ecx
test ebx, ebx
je 0x6717f82e
mov eax, edx
mov ebp, 0xd800
and eax, esi
cmp eax, ebp
jne 0x6717f82e
movzx eax, word [ecx]
mov ebp, 0x3ff
and edx, ebp
and eax, ebp
shl edx, 0xa
or edx, eax
lea eax, [ecx + 2]
mov ecx, dword [esp + 0x10]
add edx, 0x10000
mov dword [ecx + 0x38], eax
mov eax, edx
shr eax, 7
push 0xa
pop ebp
movzx ecx, word [eax*2 + 0x67392490]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x67396890]
imul ecx, eax, 0xc
mov eax, dword [esp + 0x10]
mov esi, dword [eax]
add ecx, 0x6738f798
movzx eax, word [esi + 2]
cmp eax, ebp
ja case.0x67184ef3.15
jmp dword [eax*4 + 0x67185e44]
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x31], 0xf
je 0x6717da38
add dword [eax], 6
jmp 0x6717ee0a
mov al, byte [ecx + 1]
push 9
pop ecx
cmp al, cl
je 0x6717f8a3
push 5
pop ecx
cmp al, cl
je 0x6717f8a3
cmp al, 8
je 0x6717f8a3
xor ebp, ebp
mov ecx, ebp
jmp 0x6717f8aa
xor eax, eax
lea ecx, [eax + 1]
xor ebp, ebp
mov ebx, dword [esp + 0x10]
xor eax, eax
cmp byte [ebx + 0x31], 0xf
sete al
cmp ecx, eax
mov eax, ebx
jne 0x6717f880
mov esi, ebp
jmp 0x6717d86a
movzx ecx, byte [ecx + 1]
xor edx, edx
movzx eax, word [esi + 4]
cmp eax, dword [ecx*4 + 0x673a8440]
mov ecx, dword [esp + 0x10]
setne dl
xor eax, eax
cmp byte [ecx + 0x31], 0x10
sete al
cmp edx, eax
mov eax, dword [esp + 0x10]
jne 0x6717f880
jmp 0x6717db54
movzx eax, byte [ecx + 1]
mov ebx, dword [esp + 0x10]
xor ecx, ecx
cmp word [esi + 4], ax
setne cl
xor eax, eax
cmp byte [ebx + 0x31], 0x10
sete al
cmp ecx, eax
mov eax, dword [esp + 0x10]
jne 0x6717f880
jmp 0x6717da92
movzx eax, byte [ecx]
jmp 0x6717f8f6
movzx eax, byte [ecx + 1]
xor ecx, ecx
inc ecx
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ecx
je 0x6717f8a8
cmp eax, 3
je 0x6717f8a8
jmp 0x6717f89d
mov ebp, 0x180e
cmp edx, ebp
ja 0x6717f9a3
je 0x6717f9da
push 9
pop eax
cmp edx, eax
jb 0x6717f983
push 0xd
pop eax
cmp edx, eax
jbe 0x6717f9da
push 0x20
pop eax
cmp edx, eax
je 0x6717f9da
add eax, 0x65
cmp edx, eax
je 0x6717f9da
mov eax, 0xa0
cmp edx, eax
je 0x6717f9da
mov eax, 0x1680
cmp edx, eax
je 0x6717f9da
movzx eax, byte [ecx + 1]
xor ecx, ecx
mov ebx, dword [esp + 0x10]
cmp dword [eax*4 + 0x673a8440], 6
sete cl
xor eax, eax
cmp byte [ebx + 0x31], 0xf
jmp 0x6717f909
mov eax, 0x2000
cmp edx, eax
jb 0x6717f983
add eax, 0xa
cmp edx, eax
jbe 0x6717f9da
mov eax, 0x2027
cmp edx, eax
jbe 0x6717f983
add eax, 2
cmp edx, eax
jbe 0x6717f9da
mov eax, 0x202f
cmp edx, eax
je 0x6717f9da
add eax, 0x30
cmp edx, eax
je 0x6717f9da
mov eax, 0x3000
jmp 0x6717f97f
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x31], 0xf
jmp 0x6717f8e7
movzx eax, byte [ecx + 1]
xor ecx, ecx
inc ecx
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ecx
je 0x6717f8a8
cmp eax, 3
je 0x6717f8a8
cmp edx, 0x5f
jmp 0x6717f93b
movzx eax, word [esi + 4]
lea eax, [eax*4 + 0x6738f3c0]
jmp 0x6717fa22
lea eax, [eax + 4]
cmp edx, ecx
je 0x6717fa35
mov ecx, dword [eax]
cmp edx, ecx
jae 0x6717fa1b
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x31], 0x10
jmp 0x6717f8e7
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x31], 0x10
je 0x6717f880
jmp 0x6717db54
cmp edx, 0x24
je 0x6717f8a3
cmp edx, 0x40
je 0x6717f8a3
cmp edx, 0x60
je 0x6717f8a3
mov eax, 0xa0
cmp edx, eax
jb 0x6717fa78
cmp edx, 0xd7ff
jbe 0x6717f8a3
cmp edx, 0xe000
jae 0x6717f8a3
jmp 0x6717f89d
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6717f40a
movzx ecx, word [edx]
add edx, 2
mov dword [eax + 0x38], edx
mov esi, edx
test ebp, ebp
je 0x6717fadb
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x6717fadb
movzx eax, word [edx]
lea esi, [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
mov dword [eax + 0x38], esi
xor ebx, ebx
push ebx
push ebp
push dword [edi + 0x64]
push dword [edi + 0x5c]
push esi
push ecx
call fcn.671a2307
mov ecx, dword [esp + 0x28]
add esp, 0x18
mov dword [ecx + 0x38], eax
cmp eax, dword [edi + 0x64]
jb 0x6717fb2d
cmp word [edi + 0x4c], bx
je 0x6717fb2d
cmp eax, dword [edi + 0x6c]
mov eax, dword [esp + 0x90]
ja 0x6717fb12
cmp dword [eax + 0x34], ebx
je 0x6717fb2b
xor ecx, ecx
inc ecx
mov dword [eax + 0x2c], ecx
cmp word [eax + 0x4c], cx
ja 0x6717e2e8
mov edi, dword [esp + 0x90]
jmp 0x6717fb2d
mov edi, eax
mov eax, dword [esp + 0x10]
push 2
pop ecx
add dword [eax], ecx
jmp 0x6717ee0e
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
mov dword [ecx + 0x20], eax
mov eax, ecx
add dword [eax], 4
jmp 0x6717fc4a
mov eax, dword [esp + 0x10]
xor edx, edx
mov dword [eax + 0x20], ecx
mov eax, dword [eax]
mov ecx, dword [esp + 0x10]
mov ebx, ecx
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
mov eax, ecx
mov eax, dword [eax]
cmp word [eax], 0x5c
setne dl
add eax, 4
mov dword [esp + 0x1c], edx
mov dword [ebx], eax
jmp 0x6717fc50
mov eax, dword [esp + 0x10]
xor edx, edx
mov ebx, dword [esp + 0x10]
or ebp, 0xffffffff
push 2
pop ecx
mov dword [eax + 0x20], edx
mov dword [eax + 0x24], ebp
add dword [eax], ecx
mov eax, dword [eax]
mov dword [esp + 0x1c], ecx
jmp 0x6717fc55
mov eax, dword [esp + 0x10]
xor ecx, ecx
mov ebx, dword [esp + 0x10]
inc ecx
push 2
pop edx
mov dword [eax + 0x20], ecx
or ebp, 0xffffffff
mov dword [eax + 0x24], ebp
add dword [eax], edx
mov eax, dword [eax]
mov dword [esp + 0x1c], edx
xor edx, edx
jmp 0x6717fc55
mov eax, dword [esp + 0x10]
xor ecx, ecx
xor edx, edx
inc ecx
push 2
pop ebx
mov dword [eax + 0x20], edx
mov dword [eax + 0x24], ecx
add dword [eax], ebx
mov dword [esp + 0x1c], ebx
mov eax, dword [eax]
mov ebx, dword [esp + 0x10]
jmp 0x6717fc52
mov ecx, dword [esp + 0x10]
xor edx, edx
push 2
pop eax
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0x20], edx
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov dword [ecx + 0x24], eax
mov eax, ecx
add dword [eax], 4
jmp 0x6717fbeb
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
mov eax, dword [eax]
movzx ecx, word [eax]
add eax, 2
mov dword [edx], eax
mov eax, dword [ecx*4 + 0x6738d724]
mov dword [edx + 0x20], eax
mov eax, dword [ecx*4 + str.UTF16_]
mov dword [edx + 0x24], eax
mov eax, dword [ecx*4 + 0x6738d77c]
mov dword [esp + 0x1c], eax
mov eax, edx
mov ebx, dword [esp + 0x10]
mov eax, dword [eax]
xor edx, edx
or ebp, 0xffffffff
movzx eax, word [eax]
mov ecx, dword [esp + 0x10]
mov dword [ebx + 0x28], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
add eax, 2
mov dword [ecx], eax
cmp dword [ecx + 0x28], 0x10
je 0x6717fc7a
cmp dword [ecx + 0x28], 0xf
je 0x6717fc7a
mov eax, ecx
jmp 0x6717fc91
movzx ebp, word [eax]
add eax, 2
mov dword [ecx], eax
push 2
movzx eax, word [eax]
mov dword [ecx + 0x2c], eax
mov eax, dword [esp + 0x14]
pop ecx
add dword [eax], ecx
mov eax, dword [eax + 0x20]
test eax, eax
je 0x6717fe0a
test ebp, ebp
js 0x67180582
push 0xa
pop esi
cmp ebp, esi
ja case.0x67184ef3.15
jmp dword [ebp*4 + 0x67185e70]
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x28], 0xf
je 0x6717d6fc
mov ebx, dword [esp + 0x14]
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x6717fd31
mov ebx, dword [esp + 0x10]
lea eax, [edx + 2]
movzx ecx, word [edx]
mov edx, eax
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x6717fd1b
mov edi, 0xfc00
and ecx, edi
mov edi, 0xd800
cmp ecx, edi
jne 0x6717fd1b
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov dword [eax + 0x38], edx
jmp 0x6717fd1f
mov eax, dword [esp + 0x10]
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x6717fcdc
mov edi, dword [esp + 0x90]
jmp 0x6717fe12
xor ebp, ebp
jmp 0x6717e6e4
xor ebx, ebx
inc ebx
cmp eax, ebx
mov edi, ebx
mov eax, dword [esp + 0x10]
jb 0x67181456
mov esi, dword [eax + 0x38]
mov ecx, dword [esp + 0x90]
cmp esi, dword [ecx + 0x64]
jae 0x6717fe53
cmp dword [esp + 0x14], 0
lea edx, [esi + 2]
movzx ecx, word [esi]
mov esi, edx
mov dword [eax + 0x38], edx
je 0x6717fd9d
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x6717fd9d
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
lea esi, [edx + 2]
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
mov dword [eax + 0x38], esi
mov eax, ecx
and ecx, 0x7f
shr eax, 7
push 9
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
pop ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
mov al, byte [eax + 0x6738f799]
cmp al, cl
je 0x6717fddb
push 5
pop ecx
cmp al, cl
je 0x6717fddb
cmp al, 8
je 0x6717fddb
xor edx, edx
mov ecx, edx
jmp 0x6717fddf
mov ecx, ebx
xor edx, edx
mov ebx, dword [esp + 0x10]
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x6717ec4e
inc edi
push 1
pop ebx
cmp edi, dword [eax + 0x20]
jbe 0x6717fd4c
mov edi, dword [esp + 0x90]
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push 0xa
pop esi
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
mov edx, dword [esp + 0x18]
cmp eax, dword [ecx + 0x24]
je 0x6717d540
cmp dword [esp + 0x1c], 0
je 0x6718550d
mov eax, ecx
mov eax, dword [eax + 0x38]
mov dword [ecx + 4], eax
test ebp, ebp
js 0x67181d3a
cmp ebp, esi
ja case.0x67184ef3.15
jmp dword [ebp*4 + 0x67185e9c]
mov edi, ecx
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717e0d3
cmp esi, dword [edi + 0x6c]
ja 0x6717fe6f
cmp dword [edi + 0x34], ebp
je 0x6717e0d3
xor ecx, ecx
inc ecx
mov dword [edi + 0x2c], ecx
cmp word [edi + 0x4c], cx
ja 0x6717e2e8
jmp 0x6717e0d6
xor ecx, ecx
inc ecx
cmp eax, ecx
mov edi, ecx
mov eax, dword [esp + 0x10]
jb 0x67181456
mov esi, dword [eax + 0x38]
mov ecx, dword [esp + 0x90]
cmp esi, dword [ecx + 0x64]
jae 0x6717fe53
cmp dword [esp + 0x14], 0
lea edx, [esi + 2]
movzx ecx, word [esi]
mov esi, edx
mov dword [eax + 0x38], edx
je 0x6717fee9
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x6717fee9
movzx eax, word [edx]
lea esi, [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
mov dword [eax + 0x38], esi
mov eax, ecx
mov ebx, dword [esp + 0x10]
shr eax, 7
and ecx, 0x7f
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
mov ecx, dword [eax*4 + 0x673a8440]
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x2c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x6717ec4c
inc edi
cmp edi, dword [eax + 0x20]
jbe 0x6717fe98
jmp 0x6717fe03
xor ecx, ecx
inc ecx
cmp eax, ecx
mov edi, ecx
mov eax, dword [esp + 0x10]
jb 0x67181456
mov esi, dword [eax + 0x38]
mov ecx, dword [esp + 0x90]
cmp esi, dword [ecx + 0x64]
jae 0x6717fe53
cmp dword [esp + 0x14], 0
lea edx, [esi + 2]
movzx ecx, word [esi]
mov esi, edx
mov dword [eax + 0x38], edx
je 0x6717ffb2
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x6717ffb2
movzx eax, word [edx]
lea esi, [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
mov dword [eax + 0x38], esi
mov eax, ecx
mov ebx, dword [esp + 0x10]
shr eax, 7
and ecx, 0x7f
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx ecx, byte [eax + 0x6738f799]
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x2c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x6717ec4c
inc edi
cmp edi, dword [eax + 0x20]
jbe 0x6717ff5d
jmp 0x6717fe03
xor ecx, ecx
inc ecx
cmp eax, ecx
mov edi, ecx
mov eax, dword [esp + 0x10]
jb 0x67181456
mov esi, dword [eax + 0x38]
mov ecx, dword [esp + 0x90]
cmp esi, dword [ecx + 0x64]
jae 0x6717fe53
cmp dword [esp + 0x14], 0
lea edx, [esi + 2]
movzx ecx, word [esi]
mov esi, edx
mov dword [eax + 0x38], edx
je 0x67180074
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x67180074
movzx eax, word [edx]
lea esi, [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
mov dword [eax + 0x38], esi
mov eax, ecx
mov ebx, dword [esp + 0x10]
shr eax, 7
and ecx, 0x7f
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx ecx, byte [eax + 0x6738f798]
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x2c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x6717ec4c
inc edi
cmp edi, dword [eax + 0x20]
jbe 0x6718001f
jmp 0x6717fe03
xor ebx, ebx
inc ebx
cmp eax, ebx
mov edi, ebx
mov eax, dword [esp + 0x10]
jb 0x67181456
mov esi, dword [eax + 0x38]
mov ecx, dword [esp + 0x90]
cmp esi, dword [ecx + 0x64]
jae 0x6717fe53
cmp dword [esp + 0x14], 0
lea edx, [esi + 2]
movzx ecx, word [esi]
mov esi, edx
mov dword [eax + 0x38], edx
je 0x67180132
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67180132
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
lea esi, [edx + 2]
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
mov dword [eax + 0x38], esi
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ebx
je 0x6718016f
cmp eax, 3
je 0x6718016f
xor edx, edx
mov ecx, edx
jmp 0x67180173
mov ecx, ebx
xor edx, edx
mov ebx, dword [esp + 0x10]
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x6717ec4e
inc edi
push 1
pop ebx
cmp edi, dword [eax + 0x20]
jbe 0x671800e1
jmp 0x6717fe03
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6718144d
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x671802fa
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x67180205
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67180201
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov edx, 0x180e
cmp ecx, edx
ja 0x671802b4
je 0x671802ee
push 9
pop edx
cmp ecx, edx
jb 0x6718025a
push 0xd
pop edx
cmp ecx, edx
jbe 0x671802ee
push 0x20
pop edx
cmp ecx, edx
je 0x671802ee
add edx, 0x65
cmp ecx, edx
je 0x671802ee
mov edx, 0xa0
cmp ecx, edx
je 0x671802ee
mov edx, 0x1680
cmp ecx, edx
je 0x671802ee
mov eax, ecx
mov ebx, dword [esp + 0x10]
shr eax, 7
and ecx, 0x7f
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
cmp dword [eax*4 + 0x673a8440], 6
sete cl
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x6717da92
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x671801ad
jmp 0x6717fe0a
mov edx, 0x2000
cmp ecx, edx
jb 0x6718025a
add edx, 0xa
cmp ecx, edx
jbe 0x671802ee
mov edx, 0x2027
cmp ecx, edx
jbe 0x6718025a
add edx, 2
cmp ecx, edx
jbe 0x671802ee
mov edx, 0x202f
cmp ecx, edx
je 0x671802ee
add edx, 0x30
cmp ecx, edx
je 0x671802ee
mov edx, 0x3000
jmp 0x67180252
cmp dword [eax + 0x28], 0xf
je 0x6717da38
jmp 0x671802a5
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717e0d3
cmp eax, dword [edi + 0x6c]
jmp 0x6717fe64
xor ebx, ebx
inc ebx
cmp eax, ebx
mov edi, ebx
mov eax, dword [esp + 0x10]
jb 0x67181456
mov esi, dword [eax + 0x38]
mov ecx, dword [esp + 0x90]
cmp esi, dword [ecx + 0x64]
jae 0x6717fe53
cmp dword [esp + 0x14], 0
lea ecx, [esi + 2]
movzx edx, word [esi]
mov esi, ecx
mov dword [eax + 0x38], ecx
je 0x67180373
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67180373
movzx eax, word [ecx]
mov esi, 0x3ff
and edx, esi
and eax, esi
shl edx, 0xa
lea esi, [ecx + 2]
or edx, eax
mov eax, dword [esp + 0x10]
add edx, 0x10000
mov dword [eax + 0x38], esi
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x67392490]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ebx
je 0x671803b7
cmp eax, 3
je 0x671803b7
cmp edx, 0x5f
je 0x671803b7
xor edx, edx
mov ecx, edx
jmp 0x671803bb
mov ecx, ebx
xor edx, edx
mov ebx, dword [esp + 0x10]
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x6717ec4e
inc edi
push 1
pop ebx
cmp edi, dword [eax + 0x20]
jbe 0x67180322
jmp 0x6717fe03
xor ecx, ecx
inc ecx
mov esi, ecx
cmp eax, ecx
jb 0x6717fe0a
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x671802fa
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x6718044d
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67180449
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
mov ebx, dword [esp + 0x10]
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x2c]
lea eax, [eax*4 + 0x6738f3c0]
jmp 0x67180460
lea eax, [eax + 4]
cmp ecx, edx
je 0x67180483
mov edx, dword [eax]
cmp ecx, edx
jae 0x67180459
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x28], 0xf
jne 0x6717db54
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x671803f1
jmp 0x6717fe0e
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x28], 0xf
je 0x6717da38
jmp 0x67180474
mov ebx, dword [esp + 0x14]
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov dword [eax + 0x38], edx
test ebx, ebx
je 0x671804f8
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x671804f8
movzx eax, word [edx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
mov edx, dword [esp + 0x10]
add ecx, 0x10000
mov dword [edx + 0x38], eax
jmp 0x671804fc
mov edx, dword [esp + 0x10]
cmp ecx, 0x24
je 0x6718052a
cmp ecx, 0x40
je 0x6718052a
cmp ecx, 0x60
je 0x6718052a
mov eax, 0xa0
cmp ecx, eax
jb 0x6718051c
cmp ecx, 0xd7ff
jbe 0x6718052a
cmp ecx, 0xe000
jae 0x6718052a
xor eax, eax
mov ecx, eax
jmp 0x6718052f
xor eax, eax
lea ecx, [eax + 1]
xor eax, eax
cmp dword [edx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, dword [esp + 0x10]
je 0x6717db54
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x671804a8
jmp 0x6717fe0e
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717f08b
cmp eax, dword [edi + 0x6c]
ja 0x6718056d
cmp dword [edi + 0x34], ebp
je 0x6717f08b
xor ecx, ecx
inc ecx
mov dword [edi + 0x2c], ecx
cmp word [edi + 0x4c], cx
ja 0x6717e2e8
jmp 0x6717f08e
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + 0x28]
cmp ecx, 0x16
jne 0x6718067f
xor ecx, ecx
inc ecx
cmp eax, ecx
mov edi, ecx
mov eax, dword [esp + 0x10]
jb 0x67181446
mov ebx, dword [esp + 0x90]
mov eax, dword [eax + 0x38]
cmp eax, dword [ebx + 0x64]
jae 0x6718065a
cmp dword [esp + 0x14], 0
lea edx, [eax + 2]
movzx ecx, word [eax]
mov esi, edx
mov eax, dword [esp + 0x10]
mov dword [eax + 0x38], edx
je 0x671805fb
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x671805fb
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
lea esi, [edx + 2]
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
mov dword [eax + 0x38], esi
xor eax, eax
push eax
push dword [esp + 0x18]
push dword [ebx + 0x64]
push dword [ebx + 0x5c]
push esi
push ecx
call fcn.671a2307
mov ecx, dword [esp + 0x28]
add esp, 0x18
mov dword [ecx + 0x38], eax
cmp eax, dword [ebx + 0x64]
jb 0x67180642
xor edx, edx
cmp word [ebx + 0x4c], dx
je 0x67180642
cmp eax, dword [ebx + 0x6c]
ja 0x67180630
cmp dword [ebx + 0x34], edx
je 0x67180642
xor ecx, ecx
inc ecx
mov dword [ebx + 0x2c], ecx
cmp word [ebx + 0x4c], cx
ja 0x6717e2e8
jmp 0x67180645
xor ecx, ecx
inc ecx
mov eax, dword [esp + 0x10]
inc edi
cmp edi, dword [eax + 0x20]
jbe 0x671805aa
mov edi, ebx
jmp 0x6717fe0a
mov edi, ebx
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717e0d6
cmp eax, dword [edi + 0x6c]
ja 0x6717fe72
cmp dword [edi + 0x34], ebp
je 0x6717e0d6
jmp 0x6717fe72
add ecx, 0xfffffffa
cmp ecx, 0xf
ja case.0x67184ef3.15
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x67180e61
jmp dword [ecx*4 + 0x67185ec8]
xor ecx, ecx
inc ecx
cmp eax, ecx
mov ebx, ecx
mov eax, dword [esp + 0x10]
jb 0x6718144d
mov edx, dword [eax + 0x38]
mov ecx, dword [edi + 0x64]
cmp edx, ecx
jae 0x671807bf
mov eax, dword [edi + 0x98]
add edi, 0x9c
test eax, eax
je 0x671806e7
push dword [esp + 0x14]
push edi
push ecx
push eax
push edx
call fcn.671a0fec
add esp, 0x14
test eax, eax
jne 0x6717ec48
jmp 0x67180721
mov esi, dword [edi]
lea eax, [esi + esi]
sub ecx, eax
cmp edx, ecx
ja 0x67180721
mov ecx, dword [esp + 0x90]
mov ax, word [edx]
cmp ax, word [ecx + 0xa0]
jne 0x67180721
xor eax, eax
inc eax
cmp esi, eax
je 0x6717ec48
mov ax, word [edx + 2]
cmp ax, word [ecx + 0xa2]
je 0x6717ec48
mov eax, dword [esp + 0x90]
xor edx, edx
cmp word [eax + 0x4c], dx
je 0x6718077b
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x90]
mov ecx, dword [eax + 0x38]
lea eax, [ecx + 2]
cmp eax, dword [esi + 0x64]
jb 0x67180777
mov eax, esi
cmp dword [eax + 0x98], edx
jne 0x6718077b
push 2
pop eax
cmp dword [edi], eax
mov edi, esi
jne 0x6718077d
mov ax, word [ecx]
cmp ax, word [edi + 0xa0]
jne 0x6718077d
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
jmp 0x6718077d
mov edi, esi
jmp 0x6718077d
mov edi, eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
add ecx, 2
mov edx, ecx
mov dword [eax + 0x38], ecx
cmp edx, dword [edi + 0x64]
jae 0x671807b0
mov ax, word [ecx]
mov esi, 0xfc00
and ax, si
mov esi, 0xdc00
cmp ax, si
mov eax, dword [esp + 0x10]
jne 0x671807b0
lea edx, [ecx + 2]
mov dword [eax + 0x38], edx
inc ebx
cmp ebx, dword [eax + 0x20]
jbe 0x671806b2
jmp 0x6717fe0a
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717e0d3
cmp edx, dword [edi + 0x6c]
jmp 0x6717fe64
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
lea ecx, [edx + 2]
mov dword [eax + 0x38], ecx
mov edx, ecx
cmp ecx, dword [edi + 0x64]
jae 0x67180812
mov ax, word [ecx]
and ax, word [esp + 0x24]
cmp ax, word [esp + 0x20]
mov eax, dword [esp + 0x10]
jne 0x67180812
lea edx, [ecx + 2]
mov dword [eax + 0x38], edx
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x671807e7
jmp 0x6717fe0e
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717f08b
cmp edx, dword [edi + 0x6c]
jmp 0x67180562
lea ecx, [eax + eax]
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
mov eax, dword [edi + 0x64]
sub eax, ecx
cmp edx, eax
ja 0x6717da38
lea eax, [edx + ecx]
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x38], eax
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx ecx, word [edx]
add edx, 2
mov dword [eax + 0x38], edx
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x671808aa
movzx eax, word [edx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
add edx, 2
mov dword [eax + 0x38], edx
push 0xa
pop eax
cmp ecx, eax
je 0x671808f1
jbe 0x6717da38
push 0xc
pop eax
cmp ecx, eax
jbe 0x671808e4
push 0xd
pop eax
cmp ecx, eax
je 0x67180904
add eax, 0x78
cmp ecx, eax
je 0x671808e4
mov eax, 0x2027
cmp ecx, eax
jbe 0x6717da38
add eax, 2
cmp ecx, eax
ja 0x6717da38
push 2
pop eax
cmp word [edi + 0x4e], ax
je 0x6717da38
mov eax, dword [esp + 0x10]
inc esi
cmp esi, dword [eax + 0x20]
ja 0x6717fe12
jmp 0x6718086b
mov eax, edx
cmp edx, dword [edi + 0x64]
jae 0x6718091d
push 0xa
pop ecx
cmp word [edx], cx
jne 0x6718091d
mov ecx, dword [esp + 0x10]
lea eax, [edx + 2]
mov dword [ecx + 0x38], eax
mov edx, eax
jmp 0x671808f1
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx ecx, word [edx]
add edx, 2
mov dword [eax + 0x38], edx
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x6718097a
movzx eax, word [edx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
add edx, 2
mov dword [eax + 0x38], edx
jmp 0x6718097e
mov eax, dword [esp + 0x10]
cmp ecx, 0x180e
ja 0x671809b2
je 0x6717da38
cmp ecx, 9
je 0x6717da38
cmp ecx, 0x20
je 0x6717da38
cmp ecx, 0xa0
je 0x6717da38
cmp ecx, 0x1680
jmp 0x671809e4
cmp ecx, 0x2000
jb 0x671809ea
cmp ecx, 0x200a
jbe 0x6717da38
cmp ecx, 0x202f
je 0x6717da38
cmp ecx, 0x205f
je 0x6717da38
cmp ecx, 0x3000
je 0x6717da38
inc esi
cmp esi, dword [eax + 0x20]
mov eax, dword [esp + 0x10]
ja 0x6717fe12
jmp 0x67180935
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx ecx, word [edx]
add edx, 2
mov dword [eax + 0x38], edx
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67180a56
movzx eax, word [edx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
add edx, 2
mov dword [eax + 0x38], edx
jmp 0x67180a5a
mov eax, dword [esp + 0x10]
cmp ecx, 0x180e
ja 0x67180a7e
je 0x67180aae
cmp ecx, 9
je 0x67180aae
cmp ecx, 0x20
je 0x67180aae
cmp ecx, 0xa0
je 0x67180aae
cmp ecx, 0x1680
jmp 0x67180aa8
cmp ecx, 0x2000
jb 0x6717da38
cmp ecx, 0x200a
jbe 0x67180aae
cmp ecx, 0x202f
je 0x67180aae
cmp ecx, 0x205f
je 0x67180aae
cmp ecx, 0x3000
jne 0x6717da38
inc esi
cmp esi, dword [eax + 0x20]
mov eax, dword [esp + 0x10]
jbe 0x67180a11
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx ecx, word [edx]
add edx, 2
mov dword [eax + 0x38], edx
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67180b1a
movzx eax, word [edx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
add edx, 2
mov dword [eax + 0x38], edx
jmp 0x67180b1e
mov eax, dword [esp + 0x10]
cmp ecx, 0xa
jb 0x67180b4c
cmp ecx, 0xd
jbe 0x6717da38
cmp ecx, 0x85
je 0x6717da38
cmp ecx, 0x2027
jbe 0x67180b4c
cmp ecx, 0x2029
jbe 0x6717da38
inc esi
cmp esi, dword [eax + 0x20]
mov eax, dword [esp + 0x10]
ja 0x6717fe12
jmp 0x67180ad5
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x67180bf0
movzx ecx, word [edx]
add edx, 2
mov dword [eax + 0x38], edx
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67180bb2
movzx eax, word [edx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
add edx, 2
mov dword [eax + 0x38], edx
push 0xa
pop eax
cmp ecx, eax
jb 0x6717f745
push 0xd
pop eax
cmp ecx, eax
jbe 0x67180bde
add eax, 0x78
cmp ecx, eax
je 0x67180bde
lea eax, [ecx - 0x2028]
xor ecx, ecx
inc ecx
cmp eax, ecx
ja 0x6717f748
jmp 0x67180be1
xor ecx, ecx
inc ecx
mov eax, dword [esp + 0x10]
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x67180b73
jmp 0x6717fe0e
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717f08e
cmp edx, dword [edi + 0x6c]
ja 0x67180570
cmp dword [edi + 0x34], ebp
je 0x6717f08e
jmp 0x67180570
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx ecx, word [edx]
add edx, 2
mov dword [eax + 0x38], edx
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67180c6a
movzx eax, word [edx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
add edx, 2
mov dword [eax + 0x38], edx
mov eax, 0x80
cmp ecx, eax
jae 0x67180c80
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
jne 0x6717da38
mov eax, dword [esp + 0x10]
inc esi
cmp esi, dword [eax + 0x20]
ja 0x6717fe12
jmp 0x67180c27
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x64]
jae 0x67180cdb
movzx edx, word [ecx]
mov eax, 0x80
cmp edx, eax
jae 0x6717da38
mov eax, dword [edi + 0x40]
test byte [edx + eax], 8
je 0x6717da38
mov eax, dword [esp + 0x10]
add ecx, 2
inc esi
mov dword [eax + 0x38], ecx
cmp esi, dword [eax + 0x20]
jbe 0x67180ca4
jmp 0x6717fe0e
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717f08b
cmp ecx, dword [edi + 0x6c]
jmp 0x67180562
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx ecx, word [edx]
cmp ecx, 0x80
jae 0x67180d28
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
mov eax, dword [esp + 0x10]
jne 0x6717db54
lea ecx, [edx + 2]
mov dword [eax + 0x38], ecx
mov edx, ecx
cmp ecx, dword [edi + 0x64]
jae 0x67180d4e
mov ax, word [ecx]
and ax, word [esp + 0x24]
cmp ax, word [esp + 0x20]
mov eax, dword [esp + 0x10]
jne 0x67180d4e
lea edx, [ecx + 2]
mov dword [eax + 0x38], edx
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x67180d03
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x64]
jae 0x67180cdb
movzx edx, word [ecx]
mov eax, 0x80
cmp edx, eax
jae 0x6717da38
mov eax, dword [edi + 0x40]
test byte [edx + eax], 1
je 0x6717da38
mov eax, dword [esp + 0x10]
add ecx, 2
inc esi
mov dword [eax + 0x38], ecx
cmp esi, dword [eax + 0x20]
jbe 0x67180d6d
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx ecx, word [edx]
cmp ecx, 0x80
jae 0x67180de1
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
mov eax, dword [esp + 0x10]
jne 0x6717db54
lea ecx, [edx + 2]
mov dword [eax + 0x38], ecx
mov edx, ecx
cmp ecx, dword [edi + 0x64]
jae 0x67180e07
mov ax, word [ecx]
and ax, word [esp + 0x24]
cmp ax, word [esp + 0x20]
mov eax, dword [esp + 0x10]
jne 0x67180e07
lea edx, [ecx + 2]
mov dword [eax + 0x38], edx
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x67180dbc
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x64]
jae 0x67180cdb
movzx edx, word [ecx]
mov eax, 0x80
cmp edx, eax
jae 0x6717da38
mov eax, dword [edi + 0x40]
test byte [edx + eax], 0x10
je 0x6717da38
mov eax, dword [esp + 0x10]
add ecx, 2
inc esi
mov dword [eax + 0x38], ecx
cmp esi, dword [eax + 0x20]
jbe 0x67180e26
jmp 0x6717fe0e
jmp dword [ecx*4 + 0x67185f08]
xor edx, edx
inc edx
cmp eax, edx
mov ebx, edx
mov eax, dword [esp + 0x10]
jb 0x6718144d
mov esi, dword [eax + 0x38]
mov ecx, dword [edi + 0x64]
cmp esi, ecx
jae 0x6717fe55
mov eax, dword [edi + 0x98]
add edi, 0x9c
test eax, eax
je 0x67180eb1
push dword [esp + 0x14]
push edi
push ecx
push eax
push esi
call fcn.671a0fec
add esp, 0x14
test eax, eax
jne 0x6717ec48
jmp 0x67180eeb
mov edx, dword [edi]
lea eax, [edx + edx]
sub ecx, eax
cmp esi, ecx
ja 0x67180eeb
mov ecx, dword [esp + 0x90]
mov ax, word [esi]
cmp ax, word [ecx + 0xa0]
jne 0x67180eeb
xor eax, eax
inc eax
cmp edx, eax
je 0x6717ec48
mov ax, word [esi + 2]
cmp ax, word [ecx + 0xa2]
je 0x6717ec48
mov eax, dword [esp + 0x90]
xor edx, edx
cmp word [eax + 0x4c], dx
je 0x67180f45
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x90]
mov ecx, dword [eax + 0x38]
lea eax, [ecx + 2]
cmp eax, dword [esi + 0x64]
jb 0x67180f41
mov eax, esi
cmp dword [eax + 0x98], edx
jne 0x67180f45
push 2
pop eax
cmp dword [edi], eax
mov edi, esi
jne 0x67180f47
mov ax, word [ecx]
cmp ax, word [edi + 0xa0]
jne 0x67180f47
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
jmp 0x67180f47
mov edi, esi
jmp 0x67180f47
mov edi, eax
mov eax, dword [esp + 0x10]
push 2
pop ecx
add dword [eax + 0x38], ecx
inc ebx
mov esi, dword [eax + 0x38]
cmp ebx, dword [eax + 0x20]
jbe 0x67180e7c
jmp 0x6717fe0a
lea edx, [eax + eax]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
mov eax, dword [edi + 0x64]
sub eax, edx
cmp ecx, eax
ja 0x67180cdb
lea eax, [ecx + edx]
jmp 0x6718084b
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x671807bf
movzx eax, word [edx]
add edx, 2
mov ebx, dword [esp + 0x10]
mov ecx, eax
mov dword [ebx + 0x38], edx
cmp cx, word [esp + 0x30]
je 0x67180ffa
jbe case.0x6717d56f.162
cmp cx, word [esp + 0x58]
jbe 0x67180fed
cmp cx, word [esp + 0x28]
je 0x67181009
mov ebx, 0x85
cmp cx, bx
je 0x67180fed
mov ebx, 0x2027
cmp cx, bx
jbe case.0x6717d56f.162
lea ecx, [ebx + 2]
cmp ax, cx
ja case.0x6717d56f.162
push 2
pop eax
cmp word [edi + 0x4e], ax
je case.0x6717d56f.162
mov eax, dword [esp + 0x10]
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x67180f96
jmp 0x6717fe0a
mov eax, edx
cmp edx, dword [edi + 0x64]
jae 0x6718101e
push 0xa
pop ecx
cmp word [edx], cx
jne 0x6718101e
lea eax, [edx + 2]
mov dword [ebx + 0x38], eax
mov edx, eax
jmp 0x67180ffa
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x671807bf
mov ebx, dword [esp + 0x10]
movzx eax, word [edx]
add edx, 2
mov ecx, eax
mov dword [ebx + 0x38], edx
mov ebx, 0x180e
cmp cx, bx
ja 0x6718108e
je case.0x6717d56f.162
push 9
pop eax
cmp cx, ax
je case.0x6717d56f.162
push 0x20
pop eax
cmp cx, ax
je case.0x6717d56f.162
mov eax, 0xa0
cmp cx, ax
je case.0x6717d56f.162
mov eax, 0x1680
cmp cx, ax
jmp 0x671810c6
mov ebx, 0x2000
cmp cx, bx
jb 0x671810cc
add ebx, 0xa
cmp cx, bx
jbe case.0x6717d56f.162
mov ebx, 0x202f
cmp cx, bx
je case.0x6717d56f.162
add ebx, 0x30
cmp cx, bx
je case.0x6717d56f.162
mov ecx, 0x3000
cmp ax, cx
je case.0x6717d56f.162
mov eax, dword [esp + 0x10]
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x67181036
jmp 0x6717fe0a
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x671807bf
mov ebx, dword [esp + 0x10]
movzx eax, word [edx]
add edx, 2
mov ecx, eax
mov dword [ebx + 0x38], edx
mov ebx, 0x180e
cmp cx, bx
ja 0x6718113b
je 0x67181171
push 9
pop eax
cmp cx, ax
je 0x67181171
push 0x20
pop eax
cmp cx, ax
je 0x67181171
mov eax, 0xa0
cmp cx, ax
je 0x67181171
mov eax, 0x1680
cmp cx, ax
jmp 0x6718116b
mov ebx, 0x2000
cmp cx, bx
jb case.0x6717d56f.162
add ebx, 0xa
cmp cx, bx
jbe 0x67181171
mov ebx, 0x202f
cmp cx, bx
je 0x67181171
add ebx, 0x30
cmp cx, bx
je 0x67181171
mov ecx, 0x3000
cmp ax, cx
jne case.0x6717d56f.162
mov eax, dword [esp + 0x10]
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x671810f3
jmp 0x6717fe0a
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x671807bf
mov ebx, dword [esp + 0x10]
movzx eax, word [edx]
add edx, 2
push 0xa
mov ecx, eax
mov dword [ebx + 0x38], edx
pop ebx
cmp cx, bx
jb 0x671811e6
push 0xd
pop ebx
cmp cx, bx
jbe case.0x6717d56f.162
add ebx, 0x78
cmp cx, bx
je case.0x6717d56f.162
mov ebx, 0x2027
cmp cx, bx
jbe 0x671811e6
lea ecx, [ebx + 2]
cmp ax, cx
jbe case.0x6717d56f.162
mov eax, dword [esp + 0x10]
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x67181198
jmp 0x6717fe0a
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x671807bf
mov ebx, dword [esp + 0x10]
movzx eax, word [edx]
add edx, 2
push 0xa
mov ecx, eax
mov dword [ebx + 0x38], edx
pop ebx
cmp cx, bx
jb case.0x6717d56f.162
push 0xd
pop ebx
cmp cx, bx
jbe 0x67181257
add ebx, 0x78
cmp cx, bx
je 0x67181257
mov ebx, 0x2027
cmp cx, bx
jbe case.0x6717d56f.162
lea ecx, [ebx + 2]
cmp ax, cx
ja case.0x6717d56f.162
mov eax, dword [esp + 0x10]
inc esi
cmp esi, dword [eax + 0x20]
jbe 0x67181209
jmp 0x6717fe0a
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x6718129f
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
jne 0x6717da38
mov eax, dword [esp + 0x10]
add edx, 2
inc esi
mov dword [eax + 0x38], edx
cmp esi, dword [eax + 0x20]
jbe 0x6718127a
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x6717da38
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
je 0x6717da38
mov eax, dword [esp + 0x10]
add edx, 2
inc esi
mov dword [eax + 0x38], edx
cmp esi, dword [eax + 0x20]
jbe 0x671812c8
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x6718133f
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jne 0x6717da38
mov eax, dword [esp + 0x10]
add edx, 2
inc esi
mov dword [eax + 0x38], edx
cmp esi, dword [eax + 0x20]
jbe 0x6718131a
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x6717da38
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
je 0x6717da38
mov eax, dword [esp + 0x10]
add edx, 2
inc esi
mov dword [eax + 0x38], edx
cmp esi, dword [eax + 0x20]
jbe 0x67181368
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
cmp eax, ecx
mov esi, ecx
mov eax, dword [esp + 0x10]
jb 0x6717fe12
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x671813df
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne 0x6717da38
mov eax, dword [esp + 0x10]
add edx, 2
inc esi
mov dword [eax + 0x38], edx
cmp esi, dword [eax + 0x20]
jbe 0x671813ba
jmp 0x6717fe0e
xor ecx, ecx
inc ecx
mov esi, ecx
cmp eax, ecx
jb 0x6717fe0e
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x6717da38
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je 0x6717da38
mov eax, dword [esp + 0x10]
add edx, 2
inc esi
mov dword [eax + 0x38], edx
cmp esi, dword [eax + 0x20]
jbe 0x67181408
jmp 0x6717fe0e
mov edi, dword [esp + 0x90]
mov ebx, dword [esp + 0x14]
jmp 0x6717fe12
mov edi, dword [esp + 0x90]
mov ebx, dword [esp + 0x14]
jmp 0x6717fe15
mov eax, dword [esp + 0x10]
mov esi, dword [eax + 0x20]
cmp esi, dword [eax + 0x24]
jae 0x671815c0
mov edx, dword [eax + 0x38]
xor ecx, ecx
inc ecx
cmp edx, dword [edi + 0x64]
jae 0x671814ba
test ebx, ebx
je 0x6718149f
mov eax, 0xfc00
mov ebp, 0xd800
and ax, word [edx]
cmp ax, bp
push 2
pop eax
cmove ecx, eax
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x28], 0xf
je 0x671815c0
lea edx, [edx + ecx*2]
inc esi
mov dword [eax + 0x38], edx
cmp esi, dword [eax + 0x24]
jb 0x67181479
jmp 0x671815c0
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x671815c0
cmp edx, dword [edi + 0x6c]
ja 0x671814d4
cmp dword [edi + 0x34], ecx
je 0x671815c0
xor ecx, ecx
inc ecx
mov dword [edi + 0x2c], ecx
cmp word [edi + 0x4c], cx
ja 0x6717e2e8
jmp 0x671815c0
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x20]
cmp edi, dword [eax + 0x24]
jae 0x671815b5
mov edx, dword [eax + 0x38]
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x671815e2
movzx ecx, word [edx]
test ebx, ebx
je 0x67181547
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x67181547
movzx eax, word [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
push 9
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
pop ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
mov al, byte [eax + 0x6738f799]
cmp al, cl
je 0x67181585
push 5
pop ecx
cmp al, cl
je 0x67181585
cmp al, 8
je 0x67181585
xor eax, eax
mov ecx, eax
jmp 0x6718158a
xor eax, eax
lea ecx, [eax + 1]
mov ebx, dword [esp + 0x10]
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x67181d2e
mov ebx, dword [esp + 0x14]
lea edx, [edx + esi*2]
inc edi
mov dword [eax + 0x38], edx
cmp edi, dword [eax + 0x24]
jb 0x671814fc
mov edi, dword [esp + 0x90]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov esi, 0xfc00
mov ebp, dword [esp + 0x14]
push 2
pop ecx
cmp dword [esp + 0x1c], ecx
je 0x6717d6bd
mov ecx, dword [eax + 0x38]
jmp 0x67185493
mov edi, eax
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x671815bc
cmp edx, dword [edi + 0x6c]
ja 0x671815f6
cmp dword [edi + 0x34], ecx
je 0x671815bc
xor ecx, ecx
inc ecx
mov dword [edi + 0x2c], ecx
cmp word [edi + 0x4c], cx
ja 0x6717e2e8
jmp 0x671815bc
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x20]
cmp edi, dword [eax + 0x24]
jae 0x671815b5
mov edx, dword [eax + 0x38]
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x671815e2
movzx ecx, word [edx]
test ebx, ebx
je 0x6718165e
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x6718165e
movzx eax, word [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, ecx
mov ebx, dword [esp + 0x10]
shr eax, 7
and ecx, 0x7f
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
mov ecx, dword [eax*4 + 0x673a8440]
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x2c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x67181d2e
mov ebx, dword [esp + 0x14]
lea edx, [edx + esi*2]
inc edi
mov dword [eax + 0x38], edx
cmp edi, dword [eax + 0x24]
jb 0x67181617
jmp 0x671815b5
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x20]
cmp edi, dword [eax + 0x24]
jae 0x671815b5
mov edx, dword [eax + 0x38]
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x671815e2
movzx ecx, word [edx]
test ebx, ebx
je 0x67181726
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x67181726
movzx eax, word [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, ecx
mov ebx, dword [esp + 0x10]
shr eax, 7
and ecx, 0x7f
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx ecx, byte [eax + 0x6738f799]
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x2c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x67181d2e
mov ebx, dword [esp + 0x14]
lea edx, [edx + esi*2]
inc edi
mov dword [eax + 0x38], edx
cmp edi, dword [eax + 0x24]
jb 0x671816db
jmp 0x671815b5
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x20]
cmp edi, dword [eax + 0x24]
jae 0x671815b5
mov edx, dword [eax + 0x38]
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x671815e2
movzx ecx, word [edx]
test ebx, ebx
je 0x671817e7
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x671817e7
movzx eax, word [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, ecx
mov ebx, dword [esp + 0x10]
shr eax, 7
and ecx, 0x7f
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx ecx, byte [eax + 0x6738f798]
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x2c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x67181d2e
mov ebx, dword [esp + 0x14]
lea edx, [edx + esi*2]
inc edi
mov dword [eax + 0x38], edx
cmp edi, dword [eax + 0x24]
jb 0x6718179c
jmp 0x671815b5
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x20]
cmp edi, dword [eax + 0x24]
jae 0x671815b5
mov edx, dword [eax + 0x38]
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x671815e2
movzx ecx, word [edx]
test ebx, ebx
je 0x671818a8
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x671818a8
movzx eax, word [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
xor ecx, ecx
inc ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ecx
je 0x671818e6
cmp eax, 3
je 0x671818e6
xor eax, eax
mov ecx, eax
mov ebx, dword [esp + 0x10]
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x67181d2e
mov ebx, dword [esp + 0x14]
lea edx, [edx + esi*2]
inc edi
mov dword [eax + 0x38], edx
cmp edi, dword [eax + 0x24]
jb 0x6718185d
jmp 0x671815b5
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x20]
cmp ebp, dword [eax + 0x24]
jae 0x671815bc
mov edi, dword [eax + 0x38]
mov esi, edi
xor eax, eax
lea ebx, [eax + 1]
mov eax, dword [esp + 0x90]
cmp edi, dword [eax + 0x64]
jae 0x67181a8a
cmp dword [esp + 0x14], 0
mov edx, esi
movzx ecx, word [edi]
je 0x67181979
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67181979
movzx eax, word [edi + 2]
mov edx, 0x3ff
and ecx, edx
and eax, edx
shl ecx, 0xa
mov edx, esi
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov ebx, eax
mov esi, 0x180e
cmp ecx, esi
ja 0x67181a38
mov eax, edx
je 0x67181a7a
push 9
pop eax
cmp ecx, eax
jb 0x671819d2
push 0xd
pop esi
mov eax, edx
cmp ecx, esi
jbe 0x67181a7a
push 0x20
pop esi
cmp ecx, esi
je 0x67181a7a
add esi, 0x65
cmp ecx, esi
je 0x67181a7a
mov esi, 0xa0
cmp ecx, esi
je 0x67181a7a
mov edx, 0x1680
cmp ecx, edx
je 0x67181a7a
mov eax, ecx
mov edx, dword [esp + 0x10]
shr eax, 7
and ecx, 0x7f
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
cmp dword [eax*4 + 0x673a8440], 6
sete cl
xor eax, eax
cmp dword [edx + 0x28], 0xf
sete al
cmp ecx, eax
je 0x671815b5
mov eax, edi
lea edi, [eax + ebx*2]
inc ebp
mov eax, dword [esp + 0x10]
mov esi, edi
mov dword [eax + 0x38], edi
cmp ebp, dword [eax + 0x24]
jb 0x6718192b
jmp 0x671815b5
mov eax, 0x2000
cmp ecx, eax
jb 0x671819d2
mov esi, 0x200a
mov eax, edx
cmp ecx, esi
jbe 0x67181a7a
lea eax, [esi + 0x1d]
cmp ecx, eax
jbe 0x671819d2
add esi, 0x1f
mov eax, edx
cmp ecx, esi
jbe 0x67181a7a
mov esi, 0x202f
cmp ecx, esi
je 0x67181a7a
add esi, 0x30
cmp ecx, esi
je 0x67181a7a
mov edx, 0x3000
jmp 0x671819ca
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x28], 0xf
je 0x671815b5
jmp 0x67181a1d
xor ecx, ecx
cmp word [eax + 0x4c], cx
je 0x671815b5
cmp edi, dword [eax + 0x6c]
mov edi, eax
jmp 0x671815ef
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x20]
cmp ebx, dword [eax + 0x24]
jae 0x671815bc
mov esi, dword [eax + 0x38]
xor eax, eax
lea edi, [eax + 1]
mov eax, dword [esp + 0x90]
cmp esi, dword [eax + 0x64]
jae 0x67181b72
cmp dword [esp + 0x14], 0
movzx edx, word [esi]
je 0x67181b01
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x67181b01
movzx eax, word [esi + 2]
mov ecx, 0x3ff
and edx, ecx
and eax, ecx
shl edx, 0xa
or edx, eax
push 2
pop eax
add edx, 0x10000
mov edi, eax
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x67392490]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x67396890]
xor ecx, ecx
imul eax, eax, 0xc
inc ecx
movzx eax, byte [eax + 0x6738f799]
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ecx
je 0x67181b46
cmp eax, 3
je 0x67181b46
cmp edx, 0x5f
je 0x67181b46
xor eax, eax
mov ecx, eax
mov edx, dword [esp + 0x10]
xor eax, eax
cmp dword [edx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, edx
je 0x67181d2e
lea esi, [esi + edi*2]
inc ebx
mov dword [eax + 0x38], esi
cmp ebx, dword [eax + 0x24]
jb 0x67181ab3
jmp 0x671815b5
mov edi, eax
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x671815bc
cmp esi, dword [edi + 0x6c]
jmp 0x671815ef
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x20]
cmp edi, dword [eax + 0x24]
jae 0x671815b5
mov edx, dword [eax + 0x38]
xor ecx, ecx
lea esi, [ecx + 1]
mov ecx, dword [esp + 0x90]
cmp edx, dword [ecx + 0x64]
jae 0x67181c3f
movzx ecx, word [edx]
test ebx, ebx
je 0x67181bea
mov ebp, 0xfc00
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x67181be6
movzx eax, word [edx + 2]
mov edx, 0x3ff
and ecx, edx
and eax, edx
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x2c]
lea eax, [eax*4 + 0x6738f3c0]
jmp 0x67181bfd
lea eax, [eax + 4]
cmp ecx, edx
je 0x67181c2f
mov edx, dword [eax]
cmp ecx, edx
jae 0x67181bf6
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x28], 0xf
jne 0x671815b5
mov ecx, dword [esp + 0x10]
lea eax, [esi + esi]
add dword [ecx + 0x38], eax
mov eax, ecx
inc edi
mov edx, dword [eax + 0x38]
cmp edi, dword [eax + 0x24]
jb 0x67181b9b
jmp 0x671815b5
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x28], 0xf
je 0x671815b5
jmp 0x67181c11
mov edi, ecx
jmp 0x671815e4
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x20]
cmp edi, dword [eax + 0x24]
jae 0x671815b5
mov edx, dword [eax + 0x38]
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x67181d03
movzx ecx, word [edx]
test ebx, ebx
je 0x67181ca4
mov ebx, 0xfc00
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x67181ca4
movzx eax, word [edx + 2]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
cmp ecx, 0x24
je 0x67181cd2
cmp ecx, 0x40
je 0x67181cd2
cmp ecx, 0x60
je 0x67181cd2
mov eax, 0xa0
cmp ecx, eax
jb 0x67181cc4
cmp ecx, 0xd7ff
jbe 0x67181cd2
cmp ecx, 0xe000
jae 0x67181cd2
xor eax, eax
mov ecx, eax
jmp 0x67181cd7
xor eax, eax
lea ecx, [eax + 1]
mov ebx, dword [esp + 0x10]
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
mov eax, ebx
je 0x67181d2e
mov ebx, dword [esp + 0x14]
lea edx, [edx + esi*2]
inc edi
mov dword [eax + 0x38], edx
cmp edi, dword [eax + 0x24]
jb 0x67181c59
jmp 0x671815b5
mov edi, eax
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x671815bc
cmp edx, dword [edi + 0x6c]
ja 0x67181d1f
cmp dword [edi + 0x34], ecx
je 0x671815bc
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
jmp 0x67181600
mov edi, dword [esp + 0x90]
jmp 0x671815c0
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x28]
cmp eax, 0x16
jne 0x67181e5a
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x20]
cmp edi, dword [eax + 0x24]
jae 0x67181e31
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x14]
mov eax, dword [eax + 0x38]
cmp eax, dword [ebx + 0x64]
jae 0x67181e07
movzx ecx, word [eax]
lea edx, [eax + 2]
mov eax, dword [esp + 0x10]
mov esi, edx
mov dword [eax + 0x38], edx
test ebp, ebp
je 0x67181db3
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67181db3
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
lea esi, [edx + 2]
or ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x10000
mov dword [eax + 0x38], esi
xor eax, eax
push eax
push ebp
push dword [ebx + 0x64]
push dword [ebx + 0x5c]
push esi
push ecx
call fcn.671a2307
mov ecx, dword [esp + 0x28]
add esp, 0x18
mov dword [ecx + 0x38], eax
cmp eax, dword [ebx + 0x64]
jb 0x67181df5
xor ecx, ecx
cmp word [ebx + 0x4c], cx
je 0x67181df5
cmp eax, dword [ebx + 0x6c]
ja 0x67181de5
cmp dword [ebx + 0x34], ecx
je 0x67181df5
xor eax, eax
inc eax
mov dword [ebx + 0x2c], eax
cmp word [ebx + 0x4c], ax
ja 0x6717e2e8
mov eax, dword [esp + 0x10]
inc edi
cmp edi, dword [eax + 0x24]
jb 0x67181d65
mov edi, ebx
jmp 0x67181e38
mov edi, ebx
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x67181e2b
cmp eax, dword [edi + 0x6c]
ja 0x67181e1b
cmp dword [edi + 0x34], ecx
je 0x67181e2b
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
mov eax, dword [esp + 0x10]
jmp 0x67181e38
mov edi, dword [esp + 0x90]
mov edx, dword [esp + 0x18]
mov esi, 0xfc00
mov ebp, dword [esp + 0x14]
push 2
pop ecx
cmp dword [esp + 0x1c], ecx
je 0x6717d6bd
mov esi, dword [eax + 4]
jmp 0x6718547b
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x67184ef3.15
test ebx, ebx
je 0x671825d7
jmp dword [eax*4 + 0x67185f48]
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x20]
cmp ebx, dword [eax + 0x24]
jae 0x67181f97
mov edx, dword [eax + 0x38]
mov ecx, dword [edi + 0x64]
cmp edx, ecx
jae 0x67181fbd
mov eax, dword [edi + 0x98]
add edi, 0x9c
test eax, eax
je 0x67181f12
mov ebp, dword [esp + 0x14]
push ebp
push edi
push ecx
push eax
push edx
call fcn.671a0fec
add esp, 0x14
test eax, eax
jne 0x671825c7
mov ebp, dword [esp + 0x90]
xor edx, edx
cmp word [ebp + 0x4c], dx
je 0x67181f51
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
lea eax, [ecx + 2]
cmp eax, dword [ebp + 0x64]
jb 0x67181f51
cmp dword [ebp + 0x98], edx
jne 0x67181f51
push 2
pop eax
cmp dword [edi], eax
mov edi, dword [esp + 0x90]
jne 0x67181f58
mov ax, word [ecx]
cmp ax, word [edi + 0xa0]
jne 0x67181f58
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
jmp 0x67181f58
mov esi, dword [edi]
lea eax, [esi + esi]
sub ecx, eax
cmp edx, ecx
ja 0x67181ebc
mov ebp, dword [esp + 0x90]
mov ax, word [edx]
cmp ax, word [ebp + 0xa0]
jne 0x67181ec3
xor eax, eax
inc eax
cmp esi, eax
je 0x67182330
mov ax, word [edx + 2]
cmp ax, word [ebp + 0xa2]
je 0x67182330
jmp 0x67181ec3
mov edi, dword [esp + 0x90]
mov eax, dword [esp + 0x10]
mov esi, eax
mov ecx, dword [eax + 0x38]
add ecx, 2
mov edx, ecx
mov dword [esi + 0x38], ecx
cmp edx, dword [edi + 0x64]
jae 0x67181f89
mov ax, word [ecx]
mov ebp, 0xfc00
and ax, bp
mov ebp, 0xdc00
cmp ax, bp
jne 0x67181f89
lea edx, [ecx + 2]
mov dword [esi + 0x38], edx
inc ebx
cmp ebx, dword [esi + 0x24]
jb 0x67181e88
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, 0xfc00
push 2
pop ecx
cmp dword [esp + 0x1c], ecx
je 0x6717d6bd
mov eax, dword [eax + 0x38]
mov ebp, dword [esp + 0x10]
jmp 0x671851af
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x67181f93
cmp edx, dword [edi + 0x6c]
ja 0x67181fcf
cmp dword [edi + 0x34], ecx
je 0x67181f93
xor ecx, ecx
inc ecx
mov dword [edi + 0x2c], ecx
cmp word [edi + 0x4c], cx
ja 0x6717e2e8
jmp 0x67181f93
mov ebx, dword [esp + 0x10]
or eax, 0xffffffff
cmp dword [ebx + 0x24], eax
jae 0x67182030
mov esi, dword [ebx + 0x20]
cmp esi, dword [ebx + 0x24]
jae 0x67181f93
mov edx, dword [ebx + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x67181fbd
lea ecx, [edx + 2]
mov dword [ebx + 0x38], ecx
mov edx, ecx
cmp ecx, dword [edi + 0x64]
jae 0x67182025
mov ax, word [ecx]
mov ebp, 0xfc00
and ax, bp
mov ebp, 0xdc00
cmp ax, bp
jne 0x67182025
lea edx, [ecx + 2]
mov dword [ebx + 0x38], edx
inc esi
cmp esi, dword [ebx + 0x24]
jb 0x67181ff8
jmp 0x67181f93
mov eax, dword [edi + 0x64]
xor ecx, ecx
mov dword [ebx + 0x38], eax
cmp word [edi + 0x4c], cx
je 0x67181f93
cmp eax, dword [edi + 0x6c]
jmp 0x67181fc8
mov ebx, dword [esp + 0x10]
mov edx, dword [edi + 0x64]
mov eax, edx
mov esi, dword [ebx + 0x38]
sub eax, esi
mov ecx, dword [ebx + 0x24]
sub ecx, dword [ebx + 0x20]
sar eax, 1
cmp ecx, eax
jbe 0x67182069
mov dword [ebx + 0x38], edx
jmp 0x67181fbd
lea eax, [esi + ecx*2]
mov dword [ebx + 0x38], eax
jmp 0x67181f93
mov ebx, dword [esp + 0x10]
mov esi, dword [ebx + 0x20]
cmp esi, dword [ebx + 0x24]
jae 0x67181f93
mov edx, dword [ebx + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x67181fbd
movzx ecx, word [edx]
mov ebp, 0xfc00
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x671820c5
movzx eax, word [edx + 2]
mov ebp, 0x3ff
and ecx, ebp
and eax, ebp
shl ecx, 0xa
push 4
or ecx, eax
pop eax
push 2
add ecx, 0x10000
pop ebp
jmp 0x671820ca
push 2
pop ebp
mov eax, ebp
cmp ecx, 0xd
jne 0x671820eb
add edx, 2
mov dword [ebx + 0x38], edx
cmp edx, dword [edi + 0x64]
jae 0x67181f93
push 0xa
pop eax
cmp word [edx], ax
jne 0x67182126
add edx, 2
jmp 0x67182123
cmp ecx, 0xa
je 0x67182121
cmp word [edi + 0x4e], bp
je 0x67181f93
push 0xb
pop ebp
cmp ecx, ebp
je 0x67182121
push 0xc
pop ebp
cmp ecx, ebp
je 0x67182121
add ebp, 0x79
cmp ecx, ebp
je 0x67182121
mov ebp, 0x2028
cmp ecx, ebp
je 0x67182121
inc ebp
cmp ecx, ebp
jne 0x67181f93
add edx, eax
mov dword [ebx + 0x38], edx
inc esi
cmp esi, dword [ebx + 0x24]
jb 0x67182087
jmp 0x67181f93
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x20]
cmp edi, dword [ebx + 0x24]
jae 0x671821db
mov edx, dword [ebx + 0x38]
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x67182215
movzx ecx, word [edx]
mov ebp, 0xfc00
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x6718218f
movzx eax, word [edx + 2]
mov ebp, 0x3ff
and ecx, ebp
and eax, ebp
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
mov eax, 0x180e
cmp ecx, eax
ja 0x671821e7
je 0x6718220e
push 9
pop eax
cmp ecx, eax
je 0x6718220e
push 0x20
pop eax
cmp ecx, eax
je 0x6718220e
mov eax, 0xa0
cmp ecx, eax
je 0x6718220e
mov eax, 0x1680
cmp ecx, eax
je 0x6718220e
xor eax, eax
mov ecx, eax
xor eax, eax
cmp dword [ebx + 0x28], 0x12
sete al
cmp ecx, eax
je 0x671821db
lea edx, [edx + esi*2]
inc edi
mov dword [ebx + 0x38], edx
cmp edi, dword [ebx + 0x24]
jb 0x67182148
mov edi, dword [esp + 0x90]
jmp 0x67181f93
mov eax, 0x2000
cmp ecx, eax
jb 0x671821ba
add eax, 0xa
cmp ecx, eax
jbe 0x6718220e
mov eax, 0x202f
cmp ecx, eax
je 0x6718220e
add eax, 0x30
cmp ecx, eax
je 0x6718220e
mov eax, 0x3000
jmp 0x671821b6
xor eax, eax
lea ecx, [eax + 1]
jmp 0x671821be
mov edi, eax
jmp 0x67181fbd
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x20]
cmp edi, dword [ebx + 0x24]
jae 0x671821db
mov edx, dword [ebx + 0x38]
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x67182215
movzx ecx, word [edx]
mov ebp, 0xfc00
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x6718226e
movzx eax, word [edx + 2]
mov ebp, 0x3ff
and ecx, ebp
and eax, ebp
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
push 0xa
pop eax
cmp ecx, eax
jb 0x67182297
push 0xd
pop eax
cmp ecx, eax
jbe 0x67182290
add eax, 0x78
cmp ecx, eax
je 0x67182290
lea eax, [ecx - 0x2028]
xor ecx, ecx
inc ecx
cmp eax, ecx
ja 0x67182297
xor eax, eax
lea ecx, [eax + 1]
jmp 0x6718229b
xor eax, eax
mov ecx, eax
xor eax, eax
cmp dword [ebx + 0x28], 0x14
sete al
cmp ecx, eax
je 0x671821db
lea edx, [edx + esi*2]
inc edi
mov dword [ebx + 0x38], edx
cmp edi, dword [ebx + 0x24]
jb 0x6718222b
jmp 0x671821db
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x20]
cmp edi, dword [ebx + 0x24]
jae 0x671821db
mov edx, dword [ebx + 0x38]
mov ebp, dword [esp + 0x90]
xor eax, eax
lea esi, [eax + 1]
cmp edx, dword [ebp + 0x64]
jae 0x67182337
movzx ecx, word [edx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67182313
movzx eax, word [edx + 2]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
cmp ecx, 0x100
jae 0x67182324
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 8
jne 0x67182330
lea edx, [edx + esi*2]
inc edi
mov dword [ebx + 0x38], edx
cmp edi, dword [ebx + 0x24]
jb 0x671822db
mov edi, ebp
jmp 0x67181f93
mov edi, ebp
jmp 0x67181fbd
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x20]
cmp edi, dword [ebx + 0x24]
jae 0x671821db
mov edx, dword [ebx + 0x38]
mov ebp, dword [esp + 0x90]
xor eax, eax
lea esi, [eax + 1]
cmp edx, dword [ebp + 0x64]
jae 0x67182337
movzx ecx, word [edx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67182390
movzx eax, word [edx + 2]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
cmp ecx, 0x100
jae 0x67182330
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 8
je 0x67182330
lea edx, [edx + esi*2]
inc edi
mov dword [ebx + 0x38], edx
cmp edi, dword [ebx + 0x24]
jb 0x67182358
jmp 0x67182330
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x20]
cmp edi, dword [ebx + 0x24]
jae 0x671821db
mov edx, dword [ebx + 0x38]
mov ebp, dword [esp + 0x90]
xor eax, eax
lea esi, [eax + 1]
cmp edx, dword [ebp + 0x64]
jae 0x67182337
movzx ecx, word [edx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67182405
movzx eax, word [edx + 2]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
cmp ecx, 0x100
jae 0x6718241a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x67182330
lea edx, [edx + esi*2]
inc edi
mov dword [ebx + 0x38], edx
cmp edi, dword [ebx + 0x24]
jb 0x671823c9
jmp 0x67182330
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x20]
cmp edi, dword [ebx + 0x24]
jae 0x671821db
mov edx, dword [ebx + 0x38]
mov ebp, dword [esp + 0x90]
xor eax, eax
lea esi, [eax + 1]
cmp edx, dword [ebp + 0x64]
jae 0x67182337
movzx ecx, word [edx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67182481
movzx eax, word [edx + 2]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
cmp ecx, 0x100
jae 0x67182330
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x67182330
lea edx, [edx + esi*2]
inc edi
mov dword [ebx + 0x38], edx
cmp edi, dword [ebx + 0x24]
jb 0x67182445
jmp 0x67182330
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x20]
cmp edi, dword [ebx + 0x24]
jae 0x671821db
mov edx, dword [ebx + 0x38]
mov ebp, dword [esp + 0x90]
xor eax, eax
inc eax
mov esi, eax
cmp edx, dword [ebp + 0x64]
jae 0x67182523
movzx ecx, word [edx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x671824fd
movzx eax, word [edx + 2]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
cmp ecx, 0x100
jae 0x67182512
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x67182330
lea edx, [edx + esi*2]
inc edi
mov dword [ebx + 0x38], edx
cmp edi, dword [ebx + 0x24]
jb 0x671824c5
jmp 0x67182330
mov edi, ebp
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x67181f93
cmp edx, dword [edi + 0x6c]
ja 0x6718253f
cmp dword [edi + 0x34], ecx
je 0x67181f93
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
jmp 0x67181fd9
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x20]
cmp edi, dword [ebx + 0x24]
jae 0x671821db
mov edx, dword [ebx + 0x38]
mov ebp, dword [esp + 0x90]
xor eax, eax
inc eax
mov esi, eax
cmp edx, dword [ebp + 0x64]
jae 0x67182523
movzx ecx, word [edx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x6718259d
movzx eax, word [edx + 2]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
push 2
pop eax
add ecx, 0x10000
mov esi, eax
cmp ecx, 0x100
jae 0x67182330
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x67182330
lea edx, [edx + esi*2]
inc edi
mov dword [ebx + 0x38], edx
cmp edi, dword [ebx + 0x24]
jb 0x67182565
jmp 0x67182330
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x90]
jmp 0x67181f9b
jmp dword [eax*4 + 0x67185f88]
mov ebp, dword [esp + 0x10]
mov ebx, dword [ebp + 0x20]
cmp ebx, dword [ebp + 0x24]
jae 0x6718272a
mov esi, dword [ebp + 0x38]
mov ecx, dword [edi + 0x64]
cmp esi, ecx
jae 0x671826cd
mov eax, dword [edi + 0x98]
add edi, 0x9c
test eax, eax
je 0x67182626
push dword [esp + 0x14]
push edi
push ecx
push eax
push esi
call fcn.671a0fec
add esp, 0x14
test eax, eax
jne 0x6718272a
jmp 0x67182660
mov edx, dword [edi]
lea eax, [edx + edx]
sub ecx, eax
cmp esi, ecx
ja 0x67182660
mov ecx, dword [esp + 0x90]
mov ax, word [esi]
cmp ax, word [ecx + 0xa0]
jne 0x67182660
xor eax, eax
inc eax
cmp edx, eax
je 0x6718272a
mov ax, word [esi + 2]
cmp ax, word [ecx + 0xa2]
je 0x6718272a
mov eax, dword [esp + 0x90]
xor edx, edx
cmp word [eax + 0x4c], dx
je 0x671826b6
mov ecx, dword [ebp + 0x38]
mov esi, dword [esp + 0x90]
lea eax, [ecx + 2]
cmp eax, dword [esi + 0x64]
jb 0x671826b2
mov eax, esi
cmp dword [eax + 0x98], edx
jne 0x671826b6
push 2
pop eax
cmp dword [edi], eax
mov edi, esi
jne 0x671826b8
mov ax, word [ecx]
cmp ax, word [edi + 0xa0]
jne 0x671826b8
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
jmp 0x671826b8
mov edi, esi
jmp 0x671826b8
mov edi, eax
push 2
pop ecx
add dword [ebp + 0x38], ecx
inc ebx
mov esi, dword [ebp + 0x38]
cmp ebx, dword [ebp + 0x24]
jb 0x671825f1
jmp 0x6718272a
xor eax, eax
cmp word [edi + 0x4c], ax
je 0x6718272a
cmp esi, dword [edi + 0x6c]
ja 0x671826df
cmp dword [edi + 0x34], eax
je 0x6718272a
xor ebx, ebx
inc ebx
mov dword [edi + 0x2c], ebx
cmp word [edi + 0x4c], bx
jmp 0x67182724
mov ebp, dword [esp + 0x10]
mov edx, dword [edi + 0x64]
mov eax, edx
mov esi, dword [ebp + 0x38]
sub eax, esi
mov ecx, dword [ebp + 0x24]
sub ecx, dword [ebp + 0x20]
sar eax, 1
cmp ecx, eax
jbe 0x6718274f
mov dword [ebp + 0x38], edx
xor eax, eax
cmp word [edi + 0x4c], ax
je 0x6718272a
cmp edx, dword [edi + 0x6c]
ja 0x6718271a
cmp dword [edi + 0x34], eax
je 0x6718272a
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
mov edi, dword [esp + 0x90]
mov esi, 0xfc00
push 2
pop edx
cmp dword [esp + 0x1c], edx
mov edx, dword [esp + 0x18]
je 0x671851bc
mov ecx, dword [ebp + 0x38]
jmp 0x67184259
lea eax, [esi + ecx*2]
mov dword [ebp + 0x38], eax
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
mov edx, dword [ebp + 0x20]
cmp edx, dword [ebp + 0x24]
jae 0x6718272a
mov ecx, dword [ebp + 0x38]
cmp ecx, dword [edi + 0x64]
jae 0x671827d3
movzx eax, word [ecx]
push 0xd
pop ebx
cmp ax, bx
jne 0x67182788
add ecx, 2
mov dword [ebp + 0x38], ecx
cmp ecx, dword [edi + 0x64]
jae 0x6718272a
cmp word [ecx], si
jne 0x671827c8
jmp 0x671827c2
cmp ax, si
je 0x671827c2
push 2
pop ebx
cmp word [edi + 0x4e], bx
je 0x6718272a
push 0xb
pop ebx
cmp ax, bx
je 0x671827c2
push 0xc
pop ebx
cmp ax, bx
je 0x671827c2
add ebx, 0x79
cmp ax, bx
je 0x671827c2
mov ebx, 0x2028
cmp ax, bx
je 0x671827c2
inc ebx
cmp ax, bx
jne 0x6718272a
add ecx, 2
mov dword [ebp + 0x38], ecx
inc edx
cmp edx, dword [ebp + 0x24]
jb 0x67182766
jmp 0x6718272a
xor eax, eax
cmp word [edi + 0x4c], ax
je 0x6718272a
cmp ecx, dword [edi + 0x6c]
jmp 0x67182713
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov edx, dword [ebp + 0x38]
mov ebx, 0x180e
cmp edx, dword [edi + 0x64]
jae 0x67182708
movzx ecx, word [edx]
mov eax, ecx
cmp ax, bx
ja 0x67182848
je 0x6718272a
push 9
pop ecx
cmp ax, cx
je 0x6718272a
push 0x20
pop ecx
cmp ax, cx
je 0x6718272a
mov ecx, 0xa0
cmp ax, cx
je 0x6718272a
mov ecx, 0x1680
cmp ax, cx
jmp 0x67182878
cmp ax, word [esp + 0x34]
jb 0x6718287e
cmp ax, word [esp + 0x38]
jbe 0x6718272a
cmp ax, word [esp + 0x3c]
je 0x6718272a
cmp ax, word [esp + 0x40]
je 0x6718272a
mov eax, 0x3000
cmp cx, ax
je 0x6718272a
add edx, 2
inc esi
mov dword [ebp + 0x38], edx
cmp esi, dword [ebp + 0x24]
jb 0x671827ff
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov edx, dword [ebp + 0x38]
mov ebx, 0x180e
cmp edx, dword [edi + 0x64]
jae 0x67182708
movzx ecx, word [edx]
mov eax, ecx
cmp ax, bx
ja 0x671828e4
je 0x67182912
push 9
pop ecx
cmp ax, cx
je 0x67182912
push 0x20
pop ecx
cmp ax, cx
je 0x67182912
mov ecx, 0xa0
cmp ax, cx
je 0x67182912
mov ecx, 0x1680
cmp ax, cx
jmp 0x6718290c
cmp ax, word [esp + 0x34]
jb 0x6718272a
cmp ax, word [esp + 0x38]
jbe 0x67182912
cmp ax, word [esp + 0x3c]
je 0x67182912
cmp ax, word [esp + 0x40]
je 0x67182912
mov eax, 0x3000
cmp cx, ax
jne 0x6718272a
add edx, 2
inc esi
mov dword [ebp + 0x38], edx
cmp esi, dword [ebp + 0x24]
jb 0x671828ab
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov ecx, dword [ebp + 0x38]
push 0xa
pop ebx
cmp ecx, dword [edi + 0x64]
jae 0x671827d3
movzx edx, word [ecx]
mov eax, edx
cmp ax, bx
jb 0x67182977
cmp ax, word [esp + 0x28]
jbe 0x6718272a
cmp ax, word [esp + 0x44]
je 0x6718272a
cmp ax, word [esp + 0x48]
jbe 0x67182977
mov eax, 0x2029
cmp dx, ax
jbe 0x6718272a
add ecx, 2
inc esi
mov dword [ebp + 0x38], ecx
cmp esi, dword [ebp + 0x24]
jb 0x67182939
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov ecx, dword [ebp + 0x38]
push 0xa
pop ebx
cmp ecx, dword [edi + 0x64]
jae 0x671827d3
movzx edx, word [ecx]
mov eax, edx
cmp ax, bx
jb 0x6718272a
cmp ax, word [esp + 0x28]
jbe 0x671829dc
cmp ax, word [esp + 0x44]
je 0x671829dc
cmp ax, word [esp + 0x48]
jbe 0x6718272a
mov eax, 0x2029
cmp dx, ax
ja 0x6718272a
add ecx, 2
inc esi
mov dword [ebp + 0x38], ecx
cmp esi, dword [ebp + 0x24]
jb 0x6718299e
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov edx, dword [ebp + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x67182708
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x67182a25
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
jne 0x6718272a
add edx, 2
inc esi
mov dword [ebp + 0x38], edx
cmp esi, dword [ebp + 0x24]
jb 0x67182a00
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov edx, dword [ebp + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x67182708
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x6718272a
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
je 0x6718272a
add edx, 2
inc esi
mov dword [ebp + 0x38], edx
cmp esi, dword [ebp + 0x24]
jb 0x67182a49
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov edx, dword [ebp + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x67182708
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x67182abd
mov ecx, eax
xor ebx, ebx
mov eax, dword [edi + 0x40]
inc ebx
test byte [ecx + eax], bl
jne 0x6718272a
add edx, 2
inc esi
mov dword [ebp + 0x38], edx
cmp esi, dword [ebp + 0x24]
jb 0x67182a96
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov edx, dword [ebp + 0x38]
xor ebx, ebx
inc ebx
cmp edx, dword [edi + 0x64]
jae 0x67182b19
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x6718272a
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], bl
je 0x6718272a
add edx, 2
inc esi
mov dword [ebp + 0x38], edx
cmp esi, dword [ebp + 0x24]
jb 0x67182ae4
jmp 0x6718272a
xor eax, eax
cmp word [edi + 0x4c], ax
je 0x6718272a
cmp edx, dword [edi + 0x6c]
ja 0x671826e2
cmp dword [edi + 0x34], eax
je 0x6718272a
jmp 0x671826e2
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov edx, dword [ebp + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x67182708
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x67182b74
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne 0x6718272a
add edx, 2
inc esi
mov dword [ebp + 0x38], edx
cmp esi, dword [ebp + 0x24]
jb 0x67182b4f
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebp + 0x24]
jae 0x6718272a
mov edx, dword [ebp + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x67182708
movzx eax, word [edx]
mov ecx, 0xff
cmp ax, cx
ja 0x6718272a
mov ecx, eax
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je 0x6718272a
add edx, 2
inc esi
mov dword [ebp + 0x38], edx
cmp esi, dword [ebp + 0x24]
jb 0x67182b98
jmp 0x6718272a
mov ebp, dword [esp + 0x10]
xor eax, eax
cmp bl, 0x74
sete al
mov dword [ebp + 0x28], eax
mov edx, dword [ebp]
movzx eax, word [edi + 0x52]
movzx ecx, word [edx + 2]
movzx esi, word [edx + 4]
imul ecx, eax
mov eax, dword [edi + 0x54]
lea ecx, [eax + ecx*2]
lea eax, [edx + 6]
mov dword [ebp], eax
test esi, esi
je 0x67182c50
movzx eax, word [ecx]
dec esi
lea eax, [eax*2 - 2]
mov dword [ebp + 0x14], eax
cmp eax, dword [ebp + 0x50]
jae 0x67182c1f
or edx, 0xffffffff
cmp dword [ebp + eax*4 + 0x54], edx
jne 0x67182c50
movzx eax, word [edi + 0x52]
lea ecx, [ecx + eax*2]
test esi, esi
jg 0x67182c03
jmp 0x67182c50
mov ebp, dword [esp + 0x10]
xor eax, eax
cmp bl, 0x72
sete al
mov dword [ebp + 0x28], eax
mov eax, dword [ebp]
movzx eax, word [eax + 2]
lea eax, [eax*2 - 2]
mov dword [ebp + 0x14], eax
add dword [ebp], 4
mov edx, dword [ebp]
movzx eax, word [edx]
mov ecx, eax
cmp ecx, 0x62
jb 0x67182e06
cmp ecx, 0x67
jbe 0x67182ca6
push 0x69
pop ecx
cmp ax, cx
ja 0x67182e06
movzx eax, word [edx + 2]
mov dword [ebp + 0x20], eax
mov eax, dword [ebp]
movzx ecx, word [eax + 4]
mov dword [ebp + 0x24], ecx
mov edx, dword [ebp]
movzx eax, word [edx]
mov ebx, dword [eax*4 + 0x6738d748]
mov dword [esp + 0x1c], ebx
test ecx, ecx
jne 0x67182c9e
or eax, 0xffffffff
mov dword [ebp + 0x24], eax
lea eax, [edx + 6]
mov dword [ebp], eax
jmp 0x67182ccb
mov ebx, dword [ecx*4 + 0x6738d748]
lea eax, [edx + 2]
mov dword [ebp], eax
mov eax, dword [ecx*4 + 0x6738d6f0]
mov dword [ebp + 0x20], eax
mov eax, dword [ecx*4 + 0x6738d71c]
mov dword [ebp + 0x24], eax
mov dword [esp + 0x1c], ebx
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp + 0x50]
jae 0x67182cf9
mov ecx, dword [ebp + eax*4 + 0x54]
or edx, 0xffffffff
cmp ecx, edx
je 0x67182cf9
cmp ecx, dword [ebp + eax*4 + 0x58]
mov esi, 0xfc00
mov edx, dword [esp + 0x18]
push 0
pop ecx
je 0x6717d58f
mov eax, dword [ebp + 0x20]
jmp 0x67182d20
mov eax, dword [ebp + 0x20]
mov esi, 0xfc00
mov edx, dword [esp + 0x18]
push 0
pop ecx
test eax, eax
je 0x6717d58f
test dword [edi + 0x8c], 0x200
jne 0x6717d58f
xor ecx, ecx
inc ecx
mov esi, ecx
cmp eax, ecx
jb 0x67182d57
lea eax, [esp + 0x5c]
push eax
push edi
push ebp
push dword [ebp + 0x28]
push dword [ebp + 0x14]
call fcn.6718613c
add esp, 0x14
test eax, eax
jne 0x67182e1f
mov eax, dword [esp + 0x5c]
add eax, eax
add dword [ebp + 0x38], eax
inc esi
mov eax, dword [ebp + 0x20]
cmp esi, eax
jbe 0x67182d29
mov esi, 0xfc00
mov edx, dword [esp + 0x18]
push 0
pop ecx
cmp eax, dword [ebp + 0x24]
je 0x6717d58f
test ebx, ebx
je 0x671855b8
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [ebp + 0x38]
mov dword [ebp + 4], eax
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp + ecx*4 + 0x58]
sub eax, dword [ebp + ecx*4 + 0x54]
mov dword [ebp + 0xc], eax
mov edi, dword [ebp + 0x20]
cmp edi, dword [ebp + 0x24]
jae 0x67182df8
mov ebx, dword [esp + 0x90]
lea eax, [esp + 0x60]
push eax
push ebx
push ebp
push dword [ebp + 0x28]
push dword [ebp + 0x14]
call fcn.6718613c
add esp, 0x14
test eax, eax
jne 0x67182dce
mov eax, dword [esp + 0x60]
xor ecx, ecx
cmp eax, dword [ebp + 0xc]
cmovne esi, ecx
add eax, eax
add dword [ebp + 0x38], eax
inc edi
cmp edi, dword [ebp + 0x24]
jb 0x67182d9c
jmp 0x67182df0
jle 0x67182df0
xor eax, eax
cmp word [ebx + 0x4c], ax
je 0x67182df0
mov eax, dword [ebx + 0x64]
cmp eax, dword [ebx + 0x6c]
jbe 0x67182df0
xor eax, eax
inc eax
mov dword [ebx + 0x2c], eax
cmp word [ebx + 0x4c], ax
ja 0x6717e2e8
test esi, esi
je 0x6718553b
mov edi, dword [esp + 0x90]
xor edx, edx
jmp 0x67183cf1
lea eax, [esp + 0x7c]
push eax
push edi
push ebp
push dword [ebp + 0x28]
push dword [ebp + 0x14]
call fcn.6718613c
add esp, 0x14
test eax, eax
je 0x67182e3c
jle 0x67182e29
mov eax, dword [edi + 0x64]
mov dword [ebp + 0x38], eax
jmp 0x67182e2c
mov eax, dword [ebp + 0x38]
xor ebp, ebp
cmp eax, dword [edi + 0x64]
jb 0x6717e0d3
jmp 0x671802fc
mov eax, dword [esp + 0x7c]
add eax, eax
add dword [ebp + 0x38], eax
jmp 0x6717ee0a
mov edx, dword [esp + 0x10]
push 2
pop eax
push 0x78
add dword [edx], eax
mov ecx, dword [edx]
pop edi
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
mov dword [edx], ecx
cmp word [ecx], di
je 0x67182e58
mov edi, dword [esp + 0x90]
lea eax, [ecx + 4]
mov dword [edx], eax
jmp 0x671854da
mov ebp, dword [esp + 0x10]
xor edx, edx
cmp dword [edi + 0x30], edx
jne 0x67185543
cmp dword [ebp + 0x18], edx
je 0x67185543
mov ecx, dword [ebp]
jmp 0x6718390d
mov ebx, dword [esp + 0x10]
lea eax, [esp + 0x7c]
push eax
push edi
push ebx
call fcn.6717d324
mov esi, eax
add esp, 0xc
test esi, esi
jg case.0x6717d56f.162
js 0x6717d866
mov eax, dword [esp + 0x7c]
add eax, eax
add dword [ebx], eax
jmp 0x6717ee0e
mov ebp, dword [esp + 0x10]
push 0x78
pop ebx
mov eax, dword [ebp]
movzx eax, word [eax + 2]
mov dword [ebp + 0xc], eax
mov ecx, dword [ebp]
cmp word [ecx + eax*2], bx
je 0x67182ee7
add eax, 0xfffffffe
mov dword [ebp + 0xc], eax
lea esi, [ecx + 4]
mov dword [ebp], esi
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x76
je 0x67182efc
cmp eax, 0x77
jne 0x67182f2e
lea eax, [esp + 0x7c]
push eax
push edi
push ebp
call fcn.6717d324
mov esi, eax
add esp, 0xc
test esi, esi
jg case.0x6717d56f.162
js 0x6717d866
mov ecx, dword [esp + 0x7c]
lea eax, [ecx + ecx]
add dword [ebp], eax
sub dword [ebp + 0xc], ecx
mov esi, dword [ebp]
movzx ecx, word [esi]
movzx eax, cx
movzx edx, cx
sub eax, 0x90
je 0x67183076
sub eax, 1
je 0x67183004
sub eax, 1
je 0x67182fe2
sub eax, 1
je 0x67182f8f
sub eax, 1
je 0x6718304f
sub eax, 1
je 0x671852fb
push 0xd
pop ecx
sub eax, ecx
je 0x6718304f
cmp edx, 0x7e
je 0x6718554a
lea eax, [ecx + 0x73]
cmp dx, ax
je 0x6718554a
xor eax, eax
jmp 0x6718554d
or eax, 0xffffffff
cmp dword [ebp + 0x44], eax
je 0x6718304f
movzx ecx, word [esi + 2]
movzx edi, word [edi + 0x52]
mov eax, dword [esp + 0x90]
movzx edx, word [esi + 4]
imul ecx, edi
mov eax, dword [eax + 0x54]
lea esi, [eax + ecx*2]
test edx, edx
je 0x67183048
movzx eax, word [esi]
xor ecx, ecx
dec edx
cmp eax, dword [ebp + 0x44]
sete cl
je 0x67182fd4
lea esi, [esi + edi*2]
test edx, edx
jg 0x67182fbf
mov edi, dword [esp + 0x90]
test ecx, ecx
jmp 0x6718308d
or eax, 0xffffffff
cmp dword [ebp + 0x44], eax
je 0x6718304f
movzx eax, word [esi + 2]
cmp eax, 0xffff
je 0x671852fb
cmp eax, dword [ebp + 0x44]
je 0x671852fb
jmp 0x6718304f
movzx edi, word [edi + 0x52]
movzx ecx, word [esi + 2]
mov eax, dword [esp + 0x90]
movzx edx, word [esi + 4]
imul ecx, edi
mov eax, dword [eax + 0x54]
lea ecx, [eax + ecx*2]
test edx, edx
je 0x67183048
movzx eax, word [ecx]
dec edx
lea eax, [eax*2 - 2]
cmp eax, dword [ebp + 0x50]
jae 0x67183041
or ebx, 0xffffffff
cmp dword [ebp + eax*4 + 0x54], ebx
jne 0x671852f4
lea ecx, [ecx + edi*2]
test edx, edx
jg 0x67183024
mov edi, dword [esp + 0x90]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp]
lea esi, [ecx + eax*2]
mov dword [ebp], esi
cmp byte [ebp + 0x31], 0x8f
jne 0x6717ee0a
mov dword [esp + 0x78], 0x2008f
mov byte [ebp + 0x30], 0x23
jmp 0x67185a5c
movzx eax, word [esi + 2]
lea eax, [eax*2 - 2]
cmp eax, dword [ebp + 0x50]
jae 0x6718304f
or ecx, 0xffffffff
cmp dword [ebp + eax*4 + 0x54], ecx
je 0x6718304f
jmp 0x671852fb
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx]
movzx edx, word [eax + 2]
test ebp, ebp
je 0x671830d5
test edx, edx
je 0x671830d0
mov ecx, dword [ebx + 0x38]
dec edx
cmp ecx, dword [edi + 0x60]
jbe case.0x6717d56f.162
add ecx, 0xfffffffe
mov dword [ebx + 0x38], ecx
mov ax, word [ecx]
and ax, si
cmp ax, word [esp + 0x20]
jne 0x671830cc
add ecx, 0xfffffffe
mov dword [ebx + 0x38], ecx
test edx, edx
jne 0x671830a9
mov ecx, dword [ebx + 0x38]
jmp 0x671830ef
mov ecx, dword [ebx + 0x38]
mov eax, ecx
sub eax, dword [edi + 0x5c]
sar eax, 1
cmp edx, eax
jg case.0x6717d56f.162
lea eax, [edx + edx]
sub ecx, eax
mov dword [ebx + 0x38], ecx
cmp ecx, dword [edi + 0x6c]
jae 0x671830f7
mov dword [edi + 0x6c], ecx
add dword [ebx], 4
jmp 0x671854da
mov edx, dword [esp + 0x10]
push 0x78
pop edi
mov ecx, dword [edx]
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
mov dword [edx], ecx
cmp word [ecx], di
je 0x67183108
mov edi, dword [esp + 0x90]
jmp 0x671854da
mov ebp, dword [esp + 0x10]
mov ecx, 0x86
mov esi, dword [ebp]
movzx eax, word [esi + 2]
add eax, eax
sub esi, eax
movzx eax, word [esi]
cmp ax, cx
je 0x671831a9
add ecx, 4
cmp ax, cx
je 0x671831a9
mov edx, dword [edi + 0x10]
add edx, dword [ebp + 0x4c]
mov ecx, dword [esp + 0x8c]
mov edi, edx
sub edi, ecx
mov dword [esp + 0x18], edx
mov eax, dword [edi + 0x4c]
mov dword [ebp + 0x4c], eax
mov eax, dword [edx + 0x1c]
and eax, 0xffff0000
cmp eax, 0x30000
jne 0x671831a4
mov eax, dword [ebp + 0x50]
shl eax, 2
push eax
lea eax, [ebp + 0x54]
push eax
lea eax, [edi + 0x54]
push eax
call fcn.671a4d7a
mov eax, dword [ebp + 0x50]
add esp, 0xc
mov dword [edi + 0x50], eax
mov eax, dword [ebp + 0x40]
mov dword [edi + 0x40], eax
mov eax, ebp
sub eax, edi
mov dword [ebp + 0x10], eax
xor ecx, ecx
inc ecx
mov esi, ecx
jmp 0x6717e2f4
movzx eax, word [esi]
jmp 0x671831b2
mov ecx, dword [esp + 0x8c]
xor edi, edi
movzx eax, ax
add eax, 0xffffff82
cmp eax, 0x10
ja case.0x6717fe4c.81
movzx eax, byte [eax + 0x67185fe4]
jmp dword [eax*4 + 0x67185fc8]
mov ecx, dword [esp + 0x90]
mov eax, dword [ebp + 0x38]
cmp eax, dword [ecx + 0x70]
jbe 0x671831e1
mov dword [ecx + 0x70], eax
mov eax, dword [edi + 0x38]
mov dword [ebp + 0x38], eax
jmp case.0x6717fe4c.81
mov ecx, dword [esp + 0x90]
mov eax, dword [ebp + 0x38]
cmp eax, dword [ecx + 0x70]
jbe 0x671831fe
mov dword [ecx + 0x70], eax
mov eax, dword [edi + 0x38]
mov dword [ebp + 0x38], eax
mov eax, ebp
sub eax, edi
push 0x78
mov dword [ebp + 0x10], eax
mov ecx, dword [edi]
pop edx
jmp 0x67183214
mov dword [edi], ecx
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
cmp word [ecx], dx
je 0x67183212
jmp case.0x6717fe4c.81
mov ebx, dword [esp + 0x14]
push ebx
push dword [ebp + 0x38]
push dword [edi + 0x38]
call fcn.671a2504
add esp, 0xc
test eax, eax
jne 0x671832b8
jmp 0x6717f4ac
movzx eax, word [esi + 4]
cmp dword [ebp + 0x44], eax
jne 0x67183284
mov esi, edx
sub esi, ecx
mov eax, dword [esi + 0x50]
shl eax, 2
push eax
lea eax, [esi + 0x54]
push eax
lea eax, [ebp + 0x54]
push eax
call fcn.671a4d7a
mov eax, dword [esi + 0x50]
add esp, 0xc
mov dword [ebp + 0x50], eax
mov eax, dword [esi + 0x48]
mov dword [ebp + 0x48], eax
mov eax, dword [esi + 0x44]
mov dword [ebp + 0x44], eax
mov eax, dword [esi]
add eax, 4
mov dword [ebp], eax
jmp 0x6717ee03
mov ebx, dword [esp + 0x90]
lea edx, [eax + eax]
mov dword [ebp + 0x48], eax
lea ecx, [edx - 2]
mov eax, dword [edi + 0x38]
sub eax, dword [ebx + 0x5c]
sar eax, 1
mov dword [ebp + ecx*4 + 0x54], eax
mov eax, dword [ebp + 0x38]
sub eax, dword [ebx + 0x5c]
sar eax, 1
mov dword [ebp + ecx*4 + 0x58], eax
cmp ecx, dword [ebp + 0x50]
jb case.0x6717fe4c.81
mov dword [ebp + 0x50], edx
mov ebx, dword [esp + 0x14]
mov edx, dword [ebp]
cmp word [edx], 0x7c
jne 0x671832df
push dword [esp + 0x64]
lea eax, [ebp + 0x38]
push eax
lea eax, [edi + 0x38]
push eax
call fcn.671a4d7a
add esp, 0xc
mov esi, 0xfffffc1a
jmp 0x6717d9e5
mov cl, byte [ebp + 0x31]
cmp cl, 0x79
je 0x671832fb
test edi, edi
je 0x6718557b
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x38]
jne 0x6718557b
mov edi, dword [esp + 0x90]
add dword [ebp], 4
jmp 0x6717ee0a
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x38]
cmp eax, dword [edi + 0x5c]
jne case.0x6717d56f.162
xor eax, eax
inc eax
test byte [edi + 0x88], al
jne case.0x6717d56f.162
push 2
pop eax
add dword [ecx], eax
jmp 0x6717d6bd
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x38]
cmp eax, dword [edi + 0x5c]
je 0x6718332a
jmp case.0x6717d56f.162
test byte [edi + 0x88], 2
jne case.0x6717d56f.162
test byte [edi + 0x8c], 0x10
je case.0x6717d56f.23
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x38]
cmp eax, dword [edi + 0x64]
jb case.0x6717d56f.162
xor eax, eax
cmp word [edi + 0x4c], ax
je 0x6718332a
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
jmp 0x6718332a
mov ebp, dword [esp + 0x10]
mov esi, dword [edi + 0x64]
mov edx, dword [ebp + 0x38]
cmp edx, esi
jae 0x67183410
mov eax, dword [edi + 0x98]
lea ebx, [edi + 0x9c]
test eax, eax
je 0x671833ca
push dword [esp + 0x14]
push ebx
push esi
push eax
push edx
call fcn.671a0fec
add esp, 0x14
test eax, eax
je 0x67183440
mov eax, dword [esp + 0x90]
mov edi, dword [ebx]
mov edx, dword [ebp + 0x38]
mov esi, dword [eax + 0x64]
jmp 0x671833fe
mov edi, dword [ebx]
mov ecx, esi
lea eax, [edi + edi]
sub ecx, eax
cmp edx, ecx
ja 0x67183439
mov ecx, dword [esp + 0x90]
mov ax, word [edx]
cmp ax, word [ecx + 0xa0]
jne 0x67183435
xor eax, eax
inc eax
cmp edi, eax
je 0x671833fe
mov ax, word [edx + 2]
cmp ax, word [ecx + 0xa2]
jne 0x67183435
lea eax, [edi + edi]
mov edi, dword [esp + 0x90]
sub esi, eax
cmp edx, esi
jne 0x67183440
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x67183426
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
push 2
pop eax
add dword [ebp], eax
mov edx, dword [esp + 0x18]
jmp 0x6717d57d
mov edi, ecx
jmp 0x67183440
mov edi, dword [esp + 0x90]
xor eax, eax
cmp word [edi + 0x4c], ax
je 0x67183488
mov ecx, dword [ebp + 0x38]
xor ebp, ebp
lea eax, [ecx + 2]
cmp eax, dword [edi + 0x64]
jb 0x6717e0d3
cmp dword [edi + 0x98], ebp
jne 0x6717e0d3
push 2
pop eax
cmp dword [ebx], eax
jne 0x6717e0d3
mov ax, word [ecx]
xor ecx, ecx
inc ecx
cmp ax, word [edi + 0xa0]
jne 0x6717e0d6
jmp 0x6717fe72
xor ebp, ebp
jmp 0x6717e0d3
mov ebx, dword [esp + 0x10]
xor ecx, ecx
inc ecx
test byte [edi + 0x88], cl
je 0x671834b7
mov eax, dword [ebx + 0x38]
cmp eax, dword [edi + 0x5c]
jne 0x671834b7
xor edx, edx
mov eax, dword [esp + 0x10]
mov esi, edx
mov ebx, dword [esp + 0x14]
jmp 0x6717d873
mov ecx, dword [ebx + 0x38]
mov esi, dword [edi + 0x5c]
cmp ecx, esi
je 0x67183503
cmp ecx, dword [edi + 0x64]
jne 0x671834d6
test dword [edi + 0x8c], 0x200000
je case.0x6717d56f.162
mov edx, dword [edi + 0x98]
test edx, edx
je 0x6718350b
cmp ecx, esi
jbe case.0x6717d56f.162
push ebp
lea eax, [edi + 0x9c]
push eax
push esi
push edx
push ecx
call fcn.671a10a0
add esp, 0x14
test eax, eax
je case.0x6717d56f.162
push 2
pop eax
jmp 0x67182ec0
mov edi, dword [edi + 0x9c]
lea edx, [edi + edi]
lea eax, [esi + edx]
cmp ecx, eax
jb 0x6717d6f3
mov esi, dword [esp + 0x90]
sub ecx, edx
mov ax, word [ecx]
cmp ax, word [esi + 0xa0]
jne 0x6718354f
xor eax, eax
inc eax
cmp edi, eax
mov edi, esi
je 0x67183503
mov ax, word [ecx + 2]
cmp ax, word [edi + 0xa2]
je 0x67183503
jmp case.0x6717d56f.162
mov edi, esi
jmp case.0x6717d56f.162
mov ebx, dword [esp + 0x10]
mov ecx, dword [edi + 0x64]
mov edx, dword [ebx + 0x38]
cmp edx, ecx
jae 0x67183636
mov eax, dword [edi + 0x98]
add edi, 0x9c
test eax, eax
je 0x67183592
push ebp
push edi
push ecx
push eax
push edx
call fcn.671a0fec
add esp, 0x14
test eax, eax
je 0x671835d2
mov edi, dword [esp + 0x90]
jmp 0x671835c6
mov esi, dword [edi]
mov ebp, dword [esp + 0x90]
lea eax, [esi + esi]
sub ecx, eax
cmp edx, ecx
ja 0x671835d9
mov ax, word [edx]
cmp ax, word [ebp + 0xa0]
jne 0x671835d9
xor eax, eax
inc eax
cmp esi, eax
je 0x671835c4
mov ax, word [edx + 2]
cmp ax, word [ebp + 0xa2]
jne 0x671835d9
mov edi, ebp
xor ecx, ecx
push 2
pop eax
add dword [ebx], eax
jmp 0x6718342c
mov ebp, dword [esp + 0x90]
xor edx, edx
cmp word [ebp + 0x4c], dx
je 0x67183627
mov ecx, dword [ebx + 0x38]
lea eax, [ecx + 2]
cmp eax, dword [ebp + 0x64]
jb 0x67183627
cmp dword [ebp + 0x98], edx
jne 0x67183627
push 2
pop eax
cmp dword [edi], eax
mov edi, dword [esp + 0x90]
jne 0x6718362e
mov ax, word [ecx]
xor ecx, ecx
inc ecx
cmp ax, word [edi + 0xa0]
jne 0x671834a8
mov dword [edi + 0x2c], ecx
cmp word [edi + 0x4c], cx
ja 0x6717e2e8
jmp 0x671834a8
mov edi, dword [esp + 0x90]
xor ecx, ecx
inc ecx
jmp 0x671834a8
xor ecx, ecx
test byte [edi + 0x88], 2
je 0x67183652
mov eax, dword [esp + 0x10]
xor edx, edx
mov ebx, dword [esp + 0x14]
mov esi, edx
jmp 0x6717d872
cmp word [edi + 0x4c], cx
je 0x671835c8
cmp edx, dword [edi + 0x6c]
ja 0x6718366a
cmp dword [edi + 0x34], ecx
je 0x671835c8
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
jmp 0x671835c8
mov ecx, dword [edi + 0x44]
mov eax, dword [edi + 0x5c]
lea eax, [eax + ecx*2]
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x38], eax
jmp 0x6718333e
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x38]
mov dword [ecx + 0x3c], eax
jmp 0x6718332a
mov ebp, dword [esp + 0x10]
mov esi, dword [esp + 0x90]
mov edi, dword [ebp + 0x38]
cmp edi, dword [esi + 0x60]
je 0x671837a1
cmp dword [esp + 0x14], 0
lea edx, [edi - 2]
je 0x67183719
movzx eax, word [edx]
mov ebx, 0xfc00
mov ecx, eax
and ecx, ebx
movzx esi, cx
cmp cx, word [esp + 0x20]
jne 0x671836de
movzx eax, word [edx - 2]
mov ecx, 0xdc00
cmp si, cx
movzx ecx, ax
mov eax, ecx
cmovne edx, edi
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x67183710
movzx eax, word [edx]
mov ebx, 0x3ff
and ecx, ebx
and eax, ebx
shl ecx, 0xa
or ecx, eax
add ecx, 0x10000
mov esi, dword [esp + 0x90]
jmp 0x6718371e
movzx ecx, word [edx]
mov edx, edi
add edx, 0xfffffffe
cmp edx, dword [esi + 0x6c]
jae 0x6718372c
mov dword [esi + 0x6c], edx
mov edi, dword [ebp + 0x38]
test dword [esi + 0x8c], 0x20000
je 0x67183784
cmp ecx, 0x5f
jne 0x67183744
xor eax, eax
lea ebx, [eax + 1]
jmp 0x67183780
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
xor ecx, ecx
inc ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ecx
je 0x6718377e
cmp eax, 3
jne 0x6718379f
mov ebx, ecx
xor ecx, ecx
jmp 0x671837a3
mov eax, 0xff
cmp ecx, eax
ja 0x6718379f
mov eax, dword [esi + 0x40]
test byte [ecx + eax], 0x10
je 0x6718379f
xor eax, eax
inc eax
xor ecx, ecx
mov ebx, eax
jmp 0x671837a6
xor ecx, ecx
mov ebx, ecx
xor eax, eax
inc eax
cmp edi, dword [esi + 0x64]
jb 0x671837e4
cmp word [esi + 0x4c], cx
je 0x671837d8
cmp edi, dword [esi + 0x6c]
mov edi, dword [esp + 0x90]
ja 0x671837c6
cmp dword [edi + 0x34], ecx
je 0x671838a1
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
jmp 0x671838a1
mov edi, dword [esp + 0x90]
jmp 0x671838a1
cmp dword [esp + 0x14], 0
lea esi, [edi + 2]
mov edx, esi
je 0x67183844
mov eax, dword [esp + 0x90]
cmp edx, dword [eax + 0x64]
jae 0x67183816
mov ax, word [edx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x67183816
push 2
pop eax
add edx, eax
movzx ecx, word [edi]
mov edi, 0xfc00
mov eax, ecx
and eax, edi
mov edi, 0xd800
cmp eax, edi
jne 0x67183847
movzx eax, word [esi]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
add ecx, 0x10000
jmp 0x67183847
movzx ecx, word [edi]
mov edi, dword [esp + 0x90]
cmp edx, dword [edi + 0x70]
jbe 0x67183856
mov dword [edi + 0x70], edx
test dword [edi + 0x8c], 0x20000
je 0x671838a5
cmp ecx, 0x5f
je 0x671838b7
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
xor ecx, ecx
inc ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ecx
je 0x671838a1
cmp eax, 3
jne 0x671838be
mov edx, ecx
jmp 0x671838c2
mov eax, 0xff
cmp ecx, eax
ja 0x671838be
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je 0x671838be
xor eax, eax
lea edx, [eax + 1]
jmp 0x671838c2
xor eax, eax
mov edx, eax
mov eax, dword [ebp]
xor edx, ebx
push 5
movzx ecx, word [eax]
add eax, 2
mov dword [ebp], eax
pop eax
cmp cx, ax
jne 0x671838dd
xor eax, eax
inc eax
xor edx, eax
mov ebp, dword [esp + 0x14]
test edx, edx
mov edx, dword [esp + 0x18]
push 0
pop ecx
je 0x6717d546
mov eax, dword [esp + 0x10]
xor edx, edx
mov esi, edx
mov ebx, ebp
jmp 0x6717d870
test esi, esi
jne case.0x67183cdc.35
mov ecx, dword [ebp + 4]
mov dword [ebp], ecx
movzx eax, word [ecx + 2]
push 0x78
lea edx, [ecx + eax*2]
mov dword [ebp + 4], edx
mov ecx, dword [ebp]
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
lea esi, [ecx + eax*2]
pop eax
cmp word [edx], ax
je 0x67185599
mov dword [ebp], esi
jmp 0x6717ee0a
cmp esi, 0xfffffc1f
jne 0x67183973
mov ecx, dword [ebp]
movzx eax, word [ecx + 2]
lea eax, [ecx + eax*2]
cmp dword [edi + 0x7c], eax
jae 0x6717da3c
push 0x78
pop ebx
cmp word [ecx], bx
mov ebx, dword [esp + 0x14]
je 0x67183971
push 0x78
pop ecx
cmp word [eax], cx
push 1
pop ecx
jne case.0x67183cdc.35
mov esi, edx
push 1
pop ecx
test esi, esi
jne case.0x67183cdc.35
mov ecx, dword [ebp]
push 0x78
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
pop eax
mov dword [ebp], ecx
cmp word [ecx], ax
je 0x67185864
jmp 0x6717da3a
cmp esi, 0xfffffc19
je 0x67185208
test esi, esi
je 0x671839b8
cmp esi, 0xfffffc1f
jne case.0x67183cdc.35
mov ecx, dword [ebp]
push 0x78
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
pop eax
mov dword [ebp], ecx
cmp word [ecx], ax
je 0x67185906
jmp 0x6717da3a
cmp esi, 0xfffffc19
je 0x6717f74a
cmp esi, 0xfffffc1a
jle case.0x67183cdc.35
cmp esi, 0xfffffc1d
jle 0x67185267
cmp esi, 0xfffffc1f
je 0x67185249
test esi, esi
je 0x67185249
mov eax, dword [esp + 0x10]
cmp esi, ecx
jne 0x6717d873
jmp 0x6717f74a
cmp esi, 0xfffffc19
je 0x671852ae
cmp esi, 0xfffffc1a
jle case.0x67183cdc.35
cmp esi, 0xfffffc1d
jle 0x671852a4
cmp esi, 0xfffffc1f
je 0x67185281
test esi, esi
je 0x67185281
cmp esi, ecx
je 0x671852cf
jmp case.0x67183cdc.35
test esi, esi
jne case.0x67183cdc.35
mov ecx, dword [ebp]
movzx eax, word [ecx + 2]
add eax, eax
sub ecx, eax
mov dword [ebp], ecx
jmp 0x6717ee0a
test esi, esi
je 0x67183302
jmp case.0x67183cdc.35
cmp esi, 0xfffffc1a
jne 0x67183abe
mov dword [ebp + 0x24], ecx
mov eax, dword [ebp + 0x38]
cmp eax, dword [ebp + 4]
jne 0x671855a4
mov ecx, dword [ebp]
push 0x78
pop ebx
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
mov dword [ebp], ecx
cmp word [ecx], bx
je 0x67183aa9
mov ebx, dword [esp + 0x14]
jmp 0x67183b1a
cmp esi, 0xfffffc1f
jne 0x67183af6
mov ecx, dword [ebp]
movzx eax, word [ecx + 2]
lea eax, [ecx + eax*2]
cmp dword [edi + 0x7c], eax
jae 0x6717da3c
push 0x78
pop ebx
cmp word [ecx], bx
mov ebx, dword [esp + 0x14]
je 0x67183af4
push 0x78
pop ecx
cmp word [eax], cx
push 1
pop ecx
jne case.0x67183cdc.35
mov esi, edx
push 1
pop ecx
test esi, esi
jne case.0x67183cdc.35
mov ecx, dword [ebp]
push 0x78
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
pop eax
mov dword [ebp], ecx
cmp word [ecx], ax
je 0x6718581a
cmp dword [ebp + 0x24], edx
jne 0x67183b4d
cmp dword [ebp + 0x28], edx
jne 0x67183b4d
jmp 0x6717da3a
test esi, esi
jne case.0x67183cdc.35
mov ecx, dword [ebp + 4]
push 0x78
pop edi
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
mov dword [ebp + 4], ecx
cmp word [ecx], di
je 0x67183b37
mov edi, dword [esp + 0x90]
lea eax, [ecx + 4]
mov dword [ebp], eax
jmp 0x6717ee0a
test esi, esi
jne case.0x67183cdc.35
push 2
pop eax
add dword [ebp], eax
jmp 0x6717ee0a
mov edx, dword [ebp + 4]
movzx eax, word [edx + 2]
lea ecx, [edx + eax*2]
lea eax, [esi + 0x3e5]
cmp eax, 4
ja 0x67183bb7
mov eax, dword [ebp + 0x20]
xor eax, 0x40000
cmp dword [edi + 0x84], eax
jne 0x67183bb7
cmp esi, 0xfffffc1f
jne 0x6717da38
cmp dword [edi + 0x7c], ecx
jae 0x6717da38
push 0x78
pop eax
cmp word [edx], ax
je 0x67183bc5
cmp word [ecx], ax
je 0x67183bc5
jmp 0x6717da38
push 0
pop edx
test esi, esi
jne 0x6717da3c
push 0x78
pop eax
mov dword [ebp + 4], ecx
cmp word [ecx], ax
je 0x671858e6
jmp 0x6717da38
cmp esi, 0xfffffc1e
jne case.0x67183cdc.35
mov eax, dword [ebp]
push dword [edi + 0x80]
add eax, 4
push eax
call fcn.6719fbb9
pop ecx
pop ecx
push 0
pop edx
push 1
pop ecx
test eax, eax
jne case.0x67183cdc.35
mov eax, dword [ebp + 0x38]
dec esi
mov dword [edi + 0x80], eax
jmp 0x6717da3c
test esi, esi
jne case.0x67183cdc.35
mov esi, 0xfffffc1b
jmp 0x67183c5f
test esi, esi
jne case.0x67183cdc.35
mov esi, 0xfffffc1c
jmp 0x67183c5f
test esi, esi
jne case.0x67183cdc.35
mov eax, dword [ebp + 0x38]
mov esi, 0xfffffc1d
mov dword [edi + 0x80], eax
jmp 0x67183c5f
test esi, esi
jne case.0x67183cdc.35
mov eax, dword [ebp]
mov esi, 0xfffffc1e
add eax, 4
mov dword [edi + 0x80], eax
jmp 0x67183c5f
test esi, esi
jne case.0x67183cdc.35
mov eax, dword [ebp]
mov esi, 0xfffffc1f
mov dword [edi + 0x7c], eax
mov eax, dword [ebp + 0x44]
mov dword [edi + 0x84], eax
mov eax, dword [esp + 0x10]
jmp 0x6717d873
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
lea eax, [esp + 0x6c]
push eax
push edi
push ebp
push dword [ebp + 0x28]
push dword [ebp + 0x14]
call fcn.6718613c
add esp, 0x14
test eax, eax
je 0x671855af
jle 0x67183cae
mov eax, dword [edi + 0x64]
mov dword [ebp + 0x38], eax
jmp 0x67183cb1
mov eax, dword [ebp + 0x38]
xor ebp, ebp
cmp eax, dword [edi + 0x64]
jb 0x6717f08b
jmp 0x67180555
cmp eax, 0x64
ja 0x671842f1
je 0x6718426e
sub eax, 0x15
cmp eax, 0xf
ja case.0x67184ef3.15
jmp dword [eax*4 + 0x67185ff8]
test esi, esi
jne case.0x67183cdc.35
mov eax, dword [ebp + 0xc]
neg eax
add eax, eax
add dword [ebp + 0x38], eax
mov eax, dword [ebp + 0x38]
cmp eax, dword [ebp + 4]
jb 0x67183d19
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x15
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
mov eax, dword [ebp + 4]
cmp dword [ebp + 0x38], eax
jne 0x671855c4
mov ebx, dword [esp + 0x14]
jmp 0x6717da3a
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
add eax, 2
mov dword [ebp + 0x38], eax
mov eax, 0xff
cmp ecx, eax
jbe 0x67183d60
cmp byte [ebp + 0x31], 0x6e
jmp 0x67183d73
mov edx, dword [ebp + 8]
mov esi, ecx
xor eax, eax
shr esi, 3
and ecx, 7
inc eax
shl eax, cl
test byte [esi + edx], al
je 0x6717da38
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x17
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
add dword [ebp + 0x38], 0xfffffffe
jmp 0x6717ee57
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
cmp dword [ebp + 0x28], ecx
je 0x67183dcd
cmp dword [ebp + 0x2c], ecx
jne 0x6717da38
add eax, 2
mov dword [ebp + 0x38], eax
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x19
jmp 0x67185a5c
add dword [ebp + 0x38], 0xfffffffe
test esi, esi
je 0x6717e348
jmp case.0x67183cdc.35
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov esi, dword [ebp + 0x38]
cmp esi, dword [edi + 0x64]
jae 0x67183ed8
movzx ecx, word [esi]
lea eax, [esi + 2]
mov dword [ebp + 0x38], eax
cmp dword [ebp + 0x28], ecx
jne 0x6717da38
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x1b
jmp 0x67185a5c
add dword [ebp + 0x38], 0xfffffffe
test esi, esi
je 0x6717e463
jmp case.0x67183cdc.35
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
cmp dword [ebp + 0x28], ecx
je 0x6717da38
cmp dword [ebp + 0x2c], ecx
je 0x6717da38
add eax, 2
mov dword [ebp + 0x38], eax
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x1d
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
add dword [ebp + 0x38], 0xfffffffe
mov eax, dword [ebp + 0x38]
cmp eax, dword [ebp + 4]
je 0x6717ee0a
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x1e
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov esi, dword [ebp + 0x38]
cmp esi, dword [edi + 0x64]
jb 0x67183eec
xor ebp, ebp
cmp word [edi + 0x4c], bp
je 0x6717f08b
cmp esi, dword [edi + 0x6c]
jmp 0x67180562
movzx ecx, word [esi]
lea eax, [esi + 2]
mov dword [ebp + 0x38], eax
cmp dword [ebp + 0x28], ecx
je 0x6717da38
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x1f
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
add dword [ebp + 0x38], 0xfffffffe
mov eax, dword [ebp + 0x38]
cmp eax, dword [ebp + 4]
je 0x6717ee0a
mov esi, dword [ebp]
push 0x20
jmp 0x67185578
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov edx, dword [ebp + 0x38]
mov ecx, dword [edi + 0x64]
cmp edx, ecx
jae 0x6718081d
push 0xc
pop esi
cmp dword [ebp + 0x28], esi
jne 0x67183fbc
mov eax, dword [edi + 0x98]
lea esi, [edi + 0x9c]
test eax, eax
je 0x67183f86
push ebx
push esi
push ecx
push eax
push edx
call fcn.671a0fec
add esp, 0x14
test eax, eax
jne 0x6717f745
mov edx, dword [ebp + 0x38]
jmp 0x67183fb9
mov esi, dword [esi]
lea eax, [esi + esi]
sub ecx, eax
cmp edx, ecx
ja 0x67183fb9
mov ax, word [edx]
cmp ax, word [edi + 0xa0]
jne 0x67183fb9
xor ecx, ecx
inc ecx
cmp esi, ecx
je 0x6717f748
mov ax, word [edx + 2]
cmp ax, word [edi + 0xa2]
je 0x6717f748
push 0xc
pop esi
movzx ecx, word [edx]
add edx, 2
mov dword [ebp + 0x38], edx
mov eax, dword [ebp + 0x28]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x67184ef3.15
jmp dword [eax*4 + 0x67186038]
push 0xa
pop eax
cmp ecx, eax
je case.0x67183fd4.13
jbe 0x6717f745
cmp ecx, esi
jbe 0x67184015
push 0xd
pop esi
cmp ecx, esi
je 0x67185602
add eax, 0x7b
cmp ecx, eax
je 0x67184015
lea eax, [ecx - 0x2028]
xor ecx, ecx
inc ecx
cmp eax, ecx
ja 0x6717f748
jmp 0x67184018
xor ecx, ecx
inc ecx
push 2
pop eax
cmp word [edi + 0x4e], ax
jne case.0x67183fd4.13
jmp 0x6717f748
mov eax, 0x180e
cmp ecx, eax
ja 0x67184068
je 0x6717da38
push 9
pop eax
cmp ecx, eax
je 0x6717da38
push 0x20
pop eax
cmp ecx, eax
je 0x6717da38
mov eax, 0xa0
cmp ecx, eax
je 0x6717da38
mov eax, 0x1680
cmp ecx, eax
jmp 0x67184218
mov eax, 0x2000
cmp ecx, eax
jb case.0x67183fd4.13
add eax, 0xa
cmp ecx, eax
jbe 0x6717da38
mov eax, 0x202f
cmp ecx, eax
je 0x6717da38
add eax, 0x30
cmp ecx, eax
je 0x6717da38
mov eax, 0x3000
jmp 0x67184061
mov eax, 0x180e
cmp ecx, eax
ja 0x671840dd
je case.0x67183fd4.13
push 9
pop eax
cmp ecx, eax
je case.0x67183fd4.13
push 0x20
pop eax
cmp ecx, eax
je case.0x67183fd4.13
mov eax, 0xa0
cmp ecx, eax
je case.0x67183fd4.13
mov eax, 0x1680
cmp ecx, eax
jmp 0x671841f9
mov eax, 0x2000
cmp ecx, eax
jb 0x6717da38
add eax, 0xa
cmp ecx, eax
jbe case.0x67183fd4.13
mov eax, 0x202f
cmp ecx, eax
je case.0x67183fd4.13
add eax, 0x30
cmp ecx, eax
je case.0x67183fd4.13
mov eax, 0x3000
jmp 0x671840d6
push 0xa
pop eax
cmp ecx, eax
jb case.0x67183fd4.13
push 0xd
pop eax
cmp ecx, eax
jbe 0x6717f745
add eax, 0x78
cmp ecx, eax
je 0x6717f745
lea eax, [ecx - 0x2028]
xor ecx, ecx
inc ecx
cmp eax, ecx
ja case.0x67183fd4.13
jmp 0x6717f748
push 0xa
pop eax
cmp ecx, eax
jb 0x6717da38
push 0xd
pop eax
cmp ecx, eax
jbe case.0x67183fd4.13
add eax, 0x78
cmp ecx, eax
je case.0x67183fd4.13
mov eax, 0x2027
cmp ecx, eax
jbe 0x6717da38
add eax, 2
cmp ecx, eax
jbe case.0x67183fd4.13
jmp 0x6717da38
mov eax, 0xff
cmp ecx, eax
ja case.0x67183fd4.13
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
jmp 0x671841f9
mov eax, 0xff
cmp ecx, eax
ja 0x6717da38
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
jmp 0x67184218
mov eax, 0xff
cmp ecx, eax
ja case.0x67183fd4.13
mov eax, dword [edi + 0x40]
xor edx, edx
inc edx
test byte [ecx + eax], dl
jmp 0x671841f9
mov eax, 0xff
cmp ecx, eax
ja 0x6717da38
mov eax, dword [edi + 0x40]
xor edx, edx
inc edx
test byte [ecx + eax], dl
jmp 0x67184218
mov eax, 0xff
cmp ecx, eax
ja case.0x67183fd4.13
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je case.0x67183fd4.13
jmp 0x6717da38
mov eax, 0xff
cmp ecx, eax
ja 0x6717da38
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne case.0x67183fd4.13
jmp 0x6717da38
test esi, esi
jne case.0x67183cdc.35
mov eax, dword [ebp + 0x38]
add eax, 0xfffffffe
mov dword [ebp + 0x38], eax
mov ecx, eax
cmp dword [ebp + 0x28], 0x11
jne 0x67184259
cmp eax, dword [ebp + 4]
jbe 0x67184259
push 0xa
pop edx
cmp word [eax], dx
jne 0x67184259
lea edx, [eax - 2]
push 0xd
pop eax
cmp word [edx], ax
jne 0x67184259
mov dword [ebp + 0x38], edx
mov ecx, edx
cmp ecx, dword [ebp + 4]
je 0x6717ee0a
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x22
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov dword [ebp + 0x38], edx
test ebx, ebx
je 0x671842d0
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x671842d0
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
push ebx
push dword [ebp + 8]
push ecx
call fcn.671a29a2
add esp, 0xc
test eax, eax
je 0x6717da38
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x64
jmp 0x67185a5c
cmp eax, 0x65
jne case.0x67184ef3.15
test esi, esi
jne case.0x67183cdc.35
mov ecx, dword [ebp + 0x38]
lea edx, [ecx - 2]
mov dword [ebp + 0x38], edx
cmp ecx, dword [ebp + 4]
jbe 0x6717da38
test ebx, ebx
je 0x6717f141
mov ax, word [edx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x6717f141
lea eax, [edx - 2]
mov dword [ebp + 0x38], eax
jmp 0x6717f141
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov esi, 0xfc00
mov dword [ebp + 0x38], edx
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x6718439e
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
mov eax, 0xff
cmp ecx, eax
jbe 0x671843ad
cmp byte [ebp + 0x31], 0x6e
jmp 0x671843c0
mov edx, dword [ebp + 8]
mov esi, ecx
xor eax, eax
shr esi, 3
and ecx, 7
inc eax
shl eax, cl
test byte [esi + edx], al
je 0x6717da38
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xc8
jmp 0x67185a5c
sub eax, 0xc9
cmp eax, 0x15
ja case.0x67184ef3.15
jmp dword [eax*4 + 0x67186078]
test esi, esi
jne case.0x67183cdc.35
mov ecx, dword [ebp + 0x38]
lea edx, [ecx - 2]
mov dword [ebp + 0x38], edx
cmp ecx, dword [ebp + 4]
jbe 0x6717da38
mov ax, word [edx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x6718565f
lea eax, [edx - 2]
mov dword [ebp + 0x38], eax
jmp 0x6718565f
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov ecx, dword [ebp + 0xc]
mov eax, dword [edi + 0x64]
add ecx, ecx
sub eax, ecx
cmp dword [ebp + 0x38], eax
ja 0x67184465
push ecx
push dword [ebp + 8]
push dword [ebp + 0x38]
call fcn.671a4da4
add esp, 0xc
test eax, eax
je 0x6718566b
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x67183cae
lea ecx, [eax + eax]
mov eax, dword [edi + 0x64]
sub eax, ecx
cmp dword [ebp + 0x38], eax
ja 0x67183cae
push ecx
lea eax, [ebp + 0x32]
push eax
push dword [ebp + 0x38]
call fcn.671a4da4
add esp, 0xc
test eax, eax
jne 0x67183cae
mov eax, dword [ebp + 0x14]
add eax, eax
add dword [ebp + 0x38], eax
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xca
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
add dword [ebp + 0x38], 0xfffffffe
mov esi, 0xfc00
mov ecx, dword [ebp + 0x38]
mov edx, 0xdc00
mov ax, word [ecx]
and ax, si
cmp ax, dx
mov eax, dword [esp + 0x10]
jne 0x671844db
add ecx, 0xfffffffe
mov dword [ebp + 0x38], ecx
cmp ecx, dword [eax + 4]
jbe 0x671851b8
mov esi, dword [eax]
mov byte [eax + 0x30], 0xcb
jmp 0x67185a60
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov esi, 0xfc00
mov dword [ebp + 0x38], edx
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x6718454d
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
cmp dword [ebp + 0x28], ecx
je 0x6717da38
cmp dword [ebp + 0x2c], ecx
je 0x6717da38
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xcc
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
add dword [ebp + 0x38], 0xfffffffe
mov esi, 0xfc00
mov ecx, dword [ebp + 0x38]
mov edx, 0xdc00
mov ax, word [ecx]
and ax, si
cmp ax, dx
mov eax, dword [esp + 0x10]
jne 0x67184599
add ecx, 0xfffffffe
mov dword [ebp + 0x38], ecx
cmp ecx, dword [eax + 4]
jbe 0x671851b8
mov esi, dword [eax]
mov byte [eax + 0x30], 0xcd
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov esi, 0xfc00
mov dword [ebp + 0x38], edx
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x6718460b
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
cmp dword [ebp + 0x28], ecx
je 0x6717da38
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xce
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
add dword [ebp + 0x38], 0xfffffffe
mov esi, 0xfc00
mov ecx, dword [ebp + 0x38]
mov edx, 0xdc00
mov ax, word [ecx]
and ax, si
cmp ax, dx
mov eax, dword [esp + 0x10]
jne 0x6718464e
add ecx, 0xfffffffe
mov dword [ebp + 0x38], ecx
cmp ecx, dword [eax + 4]
jbe 0x671851b8
mov esi, dword [eax]
mov byte [eax + 0x30], 0xcf
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
add eax, 2
mov dword [ebp + 0x38], eax
test ebx, ebx
je 0x671846ab
mov edx, 0xfc00
and ecx, edx
mov edx, 0xd800
cmp ecx, edx
jne 0x671846ab
add eax, 2
mov dword [ebp + 0x38], eax
cmp dword [ebp + 0x28], 0xf
jne 0x67185677
jmp 0x6717da38
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov dword [ebp + 0x38], edx
test ebx, ebx
je 0x6718471c
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x6718471c
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
push 9
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
pop ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
mov al, byte [eax + 0x6738f799]
cmp al, cl
je 0x6718475a
push 5
pop ecx
cmp al, cl
je 0x6718475a
cmp al, 8
je 0x6718475a
xor edx, edx
mov ecx, edx
jmp 0x67184761
xor eax, eax
xor edx, edx
lea ecx, [eax + 1]
xor eax, eax
cmp dword [ebp + 0x28], 0xf
sete al
cmp ecx, eax
jne 0x67185687
jmp 0x6717da3a
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov dword [ebp + 0x38], edx
test ebx, ebx
je 0x671847d9
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x671847d9
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
mov ecx, dword [eax*4 + 0x673a8440]
sub ecx, dword [ebp + 0x2c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebp + 0x28], 0xf
sete al
cmp ecx, eax
jne 0x67185697
jmp 0x6717da38
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov dword [ebp + 0x38], edx
test ebx, ebx
je 0x67184887
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x67184887
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx ecx, byte [eax + 0x6738f799]
sub ecx, dword [ebp + 0x2c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebp + 0x28], 0xf
sete al
cmp ecx, eax
jne 0x671856a7
jmp 0x6717da38
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov dword [ebp + 0x38], edx
test ebx, ebx
je 0x6718492e
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x6718492e
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx ecx, byte [eax + 0x6738f798]
sub ecx, dword [ebp + 0x2c]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp dword [ebp + 0x28], 0xf
sete al
cmp ecx, eax
jne 0x671856b7
jmp 0x6717da38
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov dword [ebp + 0x38], edx
test ebx, ebx
je 0x671849d5
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x671849d5
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
xor ecx, ecx
inc ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ecx
je 0x67184a15
cmp eax, 3
je 0x67184a15
xor edx, edx
mov ecx, edx
jmp 0x67184a17
xor edx, edx
xor eax, eax
cmp dword [ebp + 0x28], 0xf
sete al
cmp ecx, eax
jne 0x671856c7
jmp 0x6717da3a
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov dword [ebp + 0x38], edx
test ebx, ebx
je 0x67184a8f
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x67184a8f
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
mov eax, 0x180e
cmp ecx, eax
ja 0x67184b2e
je 0x67184b68
push 9
pop eax
cmp ecx, eax
jb 0x67184ae4
push 0xd
pop eax
cmp ecx, eax
jbe 0x67184b68
push 0x20
pop eax
cmp ecx, eax
je 0x67184b68
add eax, 0x65
cmp ecx, eax
je 0x67184b68
mov eax, 0xa0
cmp ecx, eax
je 0x67184b68
mov eax, 0x1680
cmp ecx, eax
je 0x67184b68
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx eax, byte [eax + 0x6738f799]
cmp dword [eax*4 + 0x673a8440], 6
sete cl
xor eax, eax
cmp dword [ebp + 0x28], 0xf
sete al
cmp ecx, eax
jne 0x671856d7
jmp 0x6717da38
mov eax, 0x2000
cmp ecx, eax
jb 0x67184ae4
add eax, 0xa
cmp ecx, eax
jbe 0x67184b68
mov eax, 0x2027
cmp ecx, eax
jbe 0x67184ae4
add eax, 2
cmp ecx, eax
jbe 0x67184b68
mov eax, 0x202f
cmp ecx, eax
je 0x67184b68
add eax, 0x30
cmp ecx, eax
je 0x67184b68
mov eax, 0x3000
jmp 0x67184adc
cmp dword [ebp + 0x28], 0xf
jmp 0x67184b23
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx edx, word [eax]
lea ecx, [eax + 2]
mov dword [ebp + 0x38], ecx
test ebx, ebx
je 0x67184bd0
mov esi, 0xfc00
mov eax, edx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x67184bd0
movzx eax, word [ecx]
mov esi, 0x3ff
and edx, esi
and eax, esi
shl edx, 0xa
or edx, eax
lea eax, [ecx + 2]
add edx, 0x10000
mov dword [ebp + 0x38], eax
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x67392490]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x67396890]
xor ecx, ecx
imul eax, eax, 0xc
inc ecx
movzx eax, byte [eax + 0x6738f799]
mov eax, dword [eax*4 + 0x673a8440]
cmp eax, ecx
je 0x67184c17
cmp eax, 3
je 0x67184c17
cmp edx, 0x5f
je 0x67184c17
xor edx, edx
mov ecx, edx
jmp 0x67184c19
xor edx, edx
xor eax, eax
cmp dword [ebp + 0x28], 0xf
sete al
cmp ecx, eax
jne 0x671856e7
jmp 0x6717da3a
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov dword [ebp + 0x38], edx
test ebx, ebx
je 0x67184c91
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x67184c91
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
mov eax, dword [ebp + 0x2c]
lea eax, [eax*4 + 0x6738f3c0]
jmp 0x67184ca4
lea eax, [eax + 4]
cmp ecx, edx
je 0x67184cb9
mov edx, dword [eax]
cmp ecx, edx
jae 0x67184c9d
cmp dword [ebp + 0x28], 0xf
je 0x671856f7
jmp 0x6717da38
cmp dword [ebp + 0x28], 0xf
jne 0x671856f7
jmp 0x6717da38
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov eax, dword [ebp + 0x38]
cmp eax, dword [edi + 0x64]
jae 0x67180553
movzx ecx, word [eax]
lea edx, [eax + 2]
mov dword [ebp + 0x38], edx
test ebx, ebx
je 0x67184d2a
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, 0xd800
cmp eax, esi
jne 0x67184d2a
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
lea eax, [edx + 2]
add ecx, 0x10000
mov dword [ebp + 0x38], eax
cmp ecx, 0x24
je 0x67184d58
cmp ecx, 0x40
je 0x67184d58
cmp ecx, 0x60
je 0x67184d58
mov eax, 0xa0
cmp ecx, eax
jb 0x67184d4a
cmp ecx, 0xd7ff
jbe 0x67184d58
cmp ecx, 0xe000
jae 0x67184d58
xor edx, edx
mov ecx, edx
jmp 0x67184d5f
xor eax, eax
xor edx, edx
lea ecx, [eax + 1]
xor eax, eax
cmp dword [ebp + 0x28], 0xf
sete al
cmp ecx, eax
jne 0x67185707
jmp 0x6717da3a
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov edx, dword [ebp + 0x38]
cmp edx, dword [edi + 0x64]
jae 0x6718081d
movzx ecx, word [edx]
add edx, 2
mov dword [ebp + 0x38], edx
mov esi, edx
test ebx, ebx
je 0x67184dd5
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x67184dd5
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
lea esi, [edx + 2]
or ecx, eax
mov dword [ebp + 0x38], esi
add ecx, 0x10000
xor eax, eax
push eax
push ebx
push dword [edi + 0x64]
push dword [edi + 0x5c]
push esi
push ecx
call fcn.671a2307
add esp, 0x18
mov dword [ebp + 0x38], eax
cmp eax, dword [edi + 0x64]
jb 0x67184e13
xor ecx, ecx
cmp word [edi + 0x4c], cx
je 0x67184e13
cmp eax, dword [edi + 0x6c]
ja 0x67184e03
cmp dword [edi + 0x34], ecx
je 0x67184e13
xor ecx, ecx
inc ecx
mov dword [edi + 0x2c], ecx
cmp word [edi + 0x4c], cx
ja 0x6717e2e8
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xda
jmp 0x67185a5c
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x20]
lea eax, [edx + 1]
mov dword [ebp + 0x20], eax
cmp edx, dword [ebp + 0x24]
jae 0x6717da38
mov edx, dword [ebp + 0x38]
mov ecx, dword [edi + 0x64]
cmp edx, ecx
jae 0x6718081d
push 0xc
pop eax
cmp dword [ebp + 0x28], eax
jne 0x67184eac
mov eax, dword [edi + 0x98]
lea esi, [edi + 0x9c]
test eax, eax
je 0x67184e79
push ebx
push esi
push ecx
push eax
push edx
call fcn.671a0fec
add esp, 0x14
test eax, eax
jne 0x6717f745
mov edx, dword [ebp + 0x38]
jmp 0x67184eac
mov esi, dword [esi]
lea eax, [esi + esi]
sub ecx, eax
cmp edx, ecx
ja 0x67184eac
mov ax, word [edx]
cmp ax, word [edi + 0xa0]
jne 0x67184eac
xor ecx, ecx
inc ecx
cmp esi, ecx
je 0x6717f748
mov ax, word [edx + 2]
cmp ax, word [edi + 0xa2]
je 0x6717f748
movzx ecx, word [edx]
mov esi, 0xfc00
mov eax, ecx
add edx, 2
and eax, esi
mov dword [ebp + 0x38], edx
mov esi, 0xd800
cmp eax, esi
jne 0x67184ee4
movzx eax, word [edx]
mov esi, 0x3ff
and ecx, esi
and eax, esi
shl ecx, 0xa
or ecx, eax
add ecx, 0x10000
add edx, 2
mov dword [ebp + 0x38], edx
mov eax, dword [ebp + 0x28]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x67184ef3.15
jmp dword [eax*4 + 0x671860d0]
push 0xa
pop eax
cmp ecx, eax
je case.0x67184ef3.13
jbe 0x6717f745
push 0xc
pop esi
cmp ecx, esi
jbe 0x67184f37
push 0xd
pop esi
cmp ecx, esi
je 0x67185713
add eax, 0x7b
cmp ecx, eax
je 0x67184f37
lea eax, [ecx - 0x2028]
xor ecx, ecx
inc ecx
cmp eax, ecx
ja 0x6717f748
jmp 0x67184f3a
xor ecx, ecx
inc ecx
push 2
pop eax
cmp word [edi + 0x4e], ax
jne case.0x67184ef3.13
jmp 0x6717f748
mov eax, 0x180e
cmp ecx, eax
ja 0x67184f8a
je 0x6717da38
push 9
pop eax
cmp ecx, eax
je 0x6717da38
push 0x20
pop eax
cmp ecx, eax
je 0x6717da38
mov eax, 0xa0
cmp ecx, eax
je 0x6717da38
mov eax, 0x1680
cmp ecx, eax
jmp 0x67185134
mov eax, 0x2000
cmp ecx, eax
jb case.0x67184ef3.13
add eax, 0xa
cmp ecx, eax
jbe 0x6717da38
mov eax, 0x202f
cmp ecx, eax
je 0x6717da38
add eax, 0x30
cmp ecx, eax
je 0x6717da38
mov eax, 0x3000
jmp 0x67184f83
mov eax, 0x180e
cmp ecx, eax
ja 0x67184fff
je case.0x67184ef3.13
push 9
pop eax
cmp ecx, eax
je case.0x67184ef3.13
push 0x20
pop eax
cmp ecx, eax
je case.0x67184ef3.13
mov eax, 0xa0
cmp ecx, eax
je case.0x67184ef3.13
mov eax, 0x1680
cmp ecx, eax
jmp 0x67185116
mov eax, 0x2000
cmp ecx, eax
jb 0x6717da38
add eax, 0xa
cmp ecx, eax
jbe case.0x67184ef3.13
mov eax, 0x202f
cmp ecx, eax
je case.0x67184ef3.13
add eax, 0x30
cmp ecx, eax
je case.0x67184ef3.13
mov eax, 0x3000
jmp 0x67184ff8
push 0xa
pop eax
cmp ecx, eax
jb case.0x67184ef3.13
push 0xd
pop eax
cmp ecx, eax
jbe 0x6717f745
add eax, 0x78
cmp ecx, eax
je 0x6717f745
lea eax, [ecx - 0x2028]
xor ecx, ecx
inc ecx
cmp eax, ecx
ja case.0x67184ef3.13
jmp 0x6717f748
push 0xa
pop eax
cmp ecx, eax
jb 0x6717da38
push 0xd
pop eax
cmp ecx, eax
jbe case.0x67184ef3.13
add eax, 0x78
cmp ecx, eax
je case.0x67184ef3.13
mov eax, 0x2027
cmp ecx, eax
jbe 0x6717da38
add eax, 2
cmp ecx, eax
jbe case.0x67184ef3.13
jmp 0x6717da38
cmp ecx, 0x100
jae case.0x67184ef3.13
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
jmp 0x67185116
cmp ecx, 0x100
jae 0x6717da38
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 8
jmp 0x67185134
cmp ecx, 0x100
jae case.0x67184ef3.13
mov eax, dword [edi + 0x40]
xor edx, edx
inc edx
test byte [ecx + eax], dl
jmp 0x67185116
cmp ecx, 0x100
jae 0x6717da38
mov eax, dword [edi + 0x40]
xor edx, edx
inc edx
test byte [ecx + eax], dl
jmp 0x67185134
cmp ecx, 0x100
jae case.0x67184ef3.13
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je case.0x67184ef3.13
jmp 0x6717da38
cmp ecx, 0x100
jae 0x6717da38
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne case.0x67184ef3.13
jmp 0x6717da38
test esi, esi
jne case.0x67183cdc.35
mov edx, dword [ebp + 0x38]
add edx, 0xfffffffe
mov dword [ebp + 0x38], edx
test ebx, ebx
jne 0x6718530d
movzx ecx, word [edx]
jmp 0x6718535a
test esi, esi
jne case.0x67183cdc.35
add dword [ebp + 0x38], 0xfffffffe
mov esi, 0xfc00
mov ecx, dword [ebp + 0x38]
mov edx, 0xdc00
mov ax, word [ecx]
and ax, si
cmp ax, dx
jne 0x6718518a
add ecx, 0xfffffffe
mov dword [ebp + 0x38], ecx
cmp dword [ebp + 0x28], 0x11
mov eax, ecx
jne 0x671851af
cmp ecx, dword [ebp + 4]
jbe 0x671851af
push 0xa
pop edx
cmp word [ecx], dx
jne 0x671851af
lea edx, [ecx - 2]
push 0xd
pop ecx
cmp word [edx], cx
jne 0x671851af
mov dword [ebp + 0x38], edx
mov eax, edx
cmp eax, dword [ebp + 4]
ja 0x6718576c
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
jmp 0x6717d6bd
test esi, esi
jne case.0x67183cdc.35
mov ecx, dword [ebp + 0x38]
mov esi, 0xfc00
add ecx, 0xfffffffe
mov dword [ebp + 0x38], ecx
mov edx, ecx
test ebx, ebx
je 0x6718548f
mov ax, word [edx]
mov ebx, 0xdc00
and ax, si
cmp ax, bx
mov eax, dword [esp + 0x10]
jne 0x67185493
lea ecx, [edx - 2]
mov dword [ebp + 0x38], ecx
jmp 0x67185493
mov ebx, dword [esp + 0x2c]
mov eax, dword [ebx + 0x50]
shl eax, 2
push eax
lea eax, [ebx + 0x54]
push eax
lea eax, [ebp + 0x54]
push eax
call fcn.671a4d7a
mov eax, dword [ebx + 0x50]
add esp, 0xc
mov dword [ebp + 0x50], eax
mov eax, dword [ebx + 0x40]
mov dword [ebp + 0x40], eax
mov ecx, dword [ebp]
movzx eax, word [ecx + 2]
push 0x78
lea ecx, [ecx + eax*2]
pop eax
mov dword [ebp], ecx
cmp word [ecx], ax
je 0x67185232
jmp 0x67183b4d
mov ecx, dword [ebp]
push 0x78
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
pop eax
mov dword [ebp], ecx
cmp word [ecx], ax
je 0x67185935
jmp 0x67183b4d
mov ecx, dword [ebp]
push 0x78
pop edi
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
mov dword [ebp], ecx
cmp word [ecx], di
je 0x6718526d
jmp 0x67183b46
mov ecx, dword [ebp + 4]
push 0x78
pop ebx
movzx eax, word [ecx + 2]
lea eax, [ecx + eax*2]
mov dword [ebp + 4], eax
cmp word [eax], bx
je 0x67185556
xor ecx, ecx
cmp dword [ebp + 0x20], edx
sete cl
jmp 0x671852d5
xor ecx, ecx
cmp dword [ebp + 0x20], edx
sete cl
jmp 0x671852d2
mov ebx, dword [esp + 0x2c]
mov eax, dword [ebx + 0x50]
shl eax, 2
push eax
lea eax, [ebx + 0x54]
push eax
lea eax, [ebp + 0x54]
push eax
call fcn.671a4d7a
mov eax, dword [ebx + 0x50]
add esp, 0xc
mov dword [ebp + 0x50], eax
mov ecx, dword [ebp + 0x20]
push 0x78
pop ebx
test ecx, ecx
je 0x6718304f
mov edx, dword [ebp]
movzx eax, word [edx + 2]
lea edx, [edx + eax*2]
mov dword [ebp], edx
cmp word [edx], bx
je 0x671852e0
jmp 0x67182fdb
mov edi, dword [esp + 0x90]
mov ecx, dword [ebp]
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
jmp 0x67183055
movzx eax, word [edx]
mov ebx, 0xfc00
mov ecx, eax
mov edi, 0xdc00
and eax, ebx
mov esi, edx
cmp ax, di
jne 0x6718532e
lea esi, [edx - 2]
mov dword [ebp + 0x38], esi
movzx ecx, word [esi]
movzx ecx, cx
mov edx, esi
mov eax, ecx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x6718535a
movzx eax, word [esi + 2]
mov edx, 0x3ff
and ecx, edx
and eax, edx
shl ecx, 0xa
mov edx, esi
or ecx, eax
add ecx, 0x10000
mov esi, dword [ebp + 4]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx edi, byte [eax + 0x6738f79a]
mov dword [esp + 0x4c], edi
cmp edx, esi
jbe 0x67185477
mov ebx, esi
mov dword [esp + 0x50], esi
mov ebp, esi
mov dword [esp + 0x54], esi
mov eax, esi
mov dword [esp + 0x68], edx
mov esi, eax
add edx, 0xfffffffe
cmp dword [esp + 0x14], 0
movzx ecx, word [edx]
je 0x6718541a
mov esi, 0xfc00
mov eax, ecx
and eax, esi
mov esi, ebx
mov ebx, 0xdc00
movzx edi, ax
cmp ax, bx
jne 0x671853d5
movzx ecx, word [edx - 2]
mov esi, ebp
mov ebx, dword [esp + 0x54]
jmp 0x671853d9
mov ebx, dword [esp + 0x50]
mov eax, 0xdc00
movzx ecx, cx
cmp di, ax
mov ebp, 0xfc00
push 2
cmovne edx, dword [esp + 0x6c]
pop eax
sub edx, eax
mov eax, ecx
and eax, ebp
mov ebp, 0xd800
cmp eax, ebp
jne 0x6718541a
movzx eax, word [edx + 2]
mov ebp, 0x3ff
and ecx, ebp
and eax, ebp
shl ecx, 0xa
mov esi, ebx
or ecx, eax
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, word [eax*2 + 0x67392490]
shl eax, 7
add eax, ecx
mov ecx, dword [esp + 0x4c]
movzx eax, word [eax*2 + 0x67396890]
imul eax, eax, 0xc
movzx edi, byte [eax + 0x6738f79a]
xor eax, eax
inc eax
shl eax, cl
test dword [edi*4 + 0x673a8400], eax
je 0x67185477
mov eax, dword [esp + 0x10]
mov dword [esp + 0x4c], edi
mov dword [eax + 0x38], edx
mov esi, dword [eax + 4]
mov ebx, esi
mov dword [esp + 0x50], esi
mov ebp, esi
mov dword [esp + 0x54], esi
mov eax, esi
cmp edx, esi
ja 0x6718539e
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x38], esi
jbe 0x6717ee03
mov esi, dword [eax]
mov byte [eax + 0x30], 0xdc
jmp 0x67185a5c
mov eax, dword [esp + 0x10]
cmp ecx, dword [eax + 4]
jbe 0x671851b8
mov esi, dword [eax]
mov byte [eax + 0x30], 0xde
jmp 0x67185a5c
inc dword [edi + 0x90]
mov ebx, dword [esp + 0x10]
mov eax, dword [edi + 0x90]
cmp eax, dword [edi + 0x94]
mov edx, dword [ebx]
movzx eax, word [edx]
movzx ecx, byte [eax + 0x673a82a0]
movzx eax, word [edx + 2]
ja 0x67185778
add ecx, eax
lea eax, [edx + ecx*2]
mov dword [ebx], eax
mov edx, dword [esp + 0x18]
jmp 0x6717d6bd
test ebx, ebx
jne 0x6718455f
jmp 0x67183e86
test ebx, ebx
jne 0x67184614
jmp 0x67183efe
cmp dword [esp + 0x14], 0
jne 0x671843c6
jmp 0x67183d79
test ebp, ebp
js 0x67185520
cmp ebp, esi
ja case.0x67184ef3.15
jmp dword [ebp*4 + 0x67186110]
mov ebp, dword [esp + 0x10]
cmp dword [ebp + 0x28], 0x16
je 0x67184e13
test ebx, ebx
jne case.0x67184ef3.13
jmp case.0x67183fd4.13
mov dword [ebp + 0x24], edi
jmp 0x671855f6
mov eax, edx
jmp 0x6718585e
xor eax, eax
inc eax
mov dword [ebp + 0x20], eax
mov eax, dword [ebp]
mov dword [ebp + 4], eax
mov eax, dword [ebp]
push 5
movzx edx, word [eax]
or edx, 0x30000
mov dword [esp + 0x7c], edx
mov ecx, dword [ebp + 4]
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
lea esi, [ecx + eax*2]
pop eax
jmp 0x6718559c
mov eax, dword [esp + 0x10]
cmp cl, 0x7b
jne 0x67185590
lea esi, [edx + 4]
mov byte [ebp + 0x30], 6
jmp 0x67185a60
mov byte [ebp + 0x30], 7
jmp 0x67185a60
xor eax, eax
inc eax
mov byte [ebp + 0x30], al
jmp 0x67185a5c
mov eax, dword [ebp + 8]
mov dword [ebp], eax
jmp 0x6718581a
mov eax, dword [esp + 0x6c]
add eax, eax
add dword [ebp + 0x38], eax
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x14
jmp 0x67185a5c
mov dword [ebp + 0x38], eax
dec dword [ebp + 0x24]
mov esi, dword [ebp + 0x20]
jmp 0x671855f1
lea eax, [esp + 0x70]
push eax
push edi
push ebp
push dword [ebp + 0x28]
push dword [ebp + 0x14]
call fcn.6718613c
mov eax, dword [esp + 0x84]
add esp, 0x14
add eax, eax
add dword [ebp + 0x38], eax
inc esi
cmp esi, dword [ebp + 0x24]
jb 0x671855cf
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x16
jmp 0x67185a5c
cmp edx, dword [edi + 0x64]
jae case.0x67183fd4.13
cmp word [edx], ax
jne case.0x67183fd4.13
lea eax, [edx + 2]
mov dword [ebp + 0x38], eax
jmp case.0x67183fd4.13
xor eax, eax
cmp word [edi + 0x4c], ax
je case.0x67183fd4.13
cmp edx, dword [edi + 0x64]
jb case.0x67183fd4.13
cmp dword [edi + 0x98], eax
jne case.0x67183fd4.13
push 2
pop eax
cmp dword [edi + 0x9c], eax
jne case.0x67183fd4.13
movzx eax, word [edi + 0xa0]
cmp ecx, eax
jne case.0x67183fd4.13
xor ecx, ecx
inc ecx
mov dword [edi + 0x2c], ecx
cmp word [edi + 0x4c], cx
ja 0x6717e2e8
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0x21
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xc9
jmp 0x67185a5c
mov eax, dword [ebp + 0xc]
jmp 0x6718449c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd0
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd1
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd2
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd3
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd4
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd5
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd6
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd7
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd8
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xd9
jmp 0x67185a5c
cmp edx, dword [edi + 0x64]
jae case.0x67184ef3.13
cmp word [edx], ax
jne case.0x67184ef3.13
lea eax, [edx + 2]
mov dword [ebp + 0x38], eax
jmp case.0x67184ef3.13
xor eax, eax
cmp word [edi + 0x4c], ax
je case.0x67184ef3.13
cmp edx, dword [edi + 0x64]
jb case.0x67184ef3.13
cmp dword [edi + 0x98], eax
jne case.0x67184ef3.13
push 2
pop eax
cmp dword [edi + 0x9c], eax
jne case.0x67184ef3.13
movzx eax, word [edi + 0xa0]
cmp ecx, eax
jne case.0x67184ef3.13
xor eax, eax
inc eax
mov dword [edi + 0x2c], eax
cmp word [edi + 0x4c], ax
ja 0x6717e2e8
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xdb
jmp 0x67185a5c
mov esi, dword [ebp]
mov byte [ebp + 0x30], 0xdd
jmp 0x67185a5c
mov byte [ebx + 0x30], 0x11
jmp 0x67185a57
mov ecx, dword [esp + 0x10]
push 9
mov esi, dword [ecx]
add esi, 2
mov dword [ecx + 4], esi
pop eax
mov byte [ecx + 0x30], al
jmp 0x67185a5c
mov ecx, dword [esp + 0x10]
mov esi, dword [ecx]
add esi, 2
mov dword [ecx + 4], esi
movzx eax, word [esi + 2]
push 0x78
lea esi, [esi + eax*2]
pop eax
mov dword [ecx + 4], esi
cmp word [esi], ax
je 0x671857a4
add esi, 4
push 0xa
jmp 0x6718578f
mov ebp, dword [esp + 0x10]
xor eax, eax
inc eax
mov edx, 0x89
mov dword [ebp + 0x28], eax
mov eax, dword [ebp]
add eax, 2
mov dword [ebp], eax
movzx ecx, word [eax]
cmp cx, dx
je 0x671857e5
add edx, 5
cmp cx, dx
jne 0x671857f2
xor ecx, ecx
jmp 0x67185805
mov ebp, dword [esp + 0x10]
mov dword [ebp + 0x28], ecx
jmp 0x671857f4
xor ecx, ecx
mov eax, 0x20000
jmp 0x6718580e
mov ebp, dword [esp + 0x10]
mov dword [ebp + 0x28], ecx
mov eax, dword [ebp]
movzx eax, word [eax + 4]
or eax, 0x10000
mov dword [ebp + 0x20], eax
mov dword [ebp + 0x24], ecx
mov eax, dword [ebp]
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0x38]
mov dword [ebp + 4], eax
mov ecx, dword [ebp]
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x78], eax
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
mov byte [ebp + 0x30], 8
lea esi, [ecx + eax*2]
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
mov eax, dword [ebp]
movzx eax, word [eax + 4]
or eax, 0x10000
jmp 0x6718585e
mov ebp, dword [esp + 0x10]
movzx eax, bl
or eax, 0x20000
mov dword [ebp + 0x20], eax
mov ecx, dword [ebp]
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x78], eax
push 2
jmp 0x6718556b
mov ebp, dword [esp + 0x10]
mov ecx, dword [edi + 0x58]
mov eax, dword [ebp]
movzx eax, word [eax + 2]
lea ebx, [ecx + eax*2]
cmp ebx, ecx
jne 0x6718588d
xor eax, eax
mov edi, eax
jmp 0x67185891
movzx edi, word [ebx + 4]
or ecx, 0xffffffff
cmp dword [ebp + 0x44], ecx
je 0x671858da
mov eax, dword [ebp + 0x4c]
cmp eax, ecx
je 0x671858da
mov ecx, dword [esp + 0x90]
mov edx, edi
or edx, 0x40000
mov esi, dword [ecx + 0x10]
add eax, esi
mov ecx, eax
sub ecx, dword [esp + 0x8c]
cmp dword [eax + 0x1c], edx
je 0x671858ce
mov eax, dword [ecx + 0x4c]
or ecx, 0xffffffff
cmp eax, ecx
jne 0x671858b2
jmp 0x671858da
mov eax, dword [ebp + 0x38]
cmp eax, dword [ecx + 0x38]
je 0x67185bd3
or edi, 0x40000
mov dword [ebp + 4], ebx
mov dword [ebp + 0x20], edi
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x78], eax
push 0xb
jmp 0x67185568
mov ebp, dword [esp + 0x10]
movzx eax, bl
or eax, 0x20000
mov dword [ebp + 0x20], eax
mov ecx, dword [ebp]
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x78], eax
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
mov byte [ebp + 0x30], 3
lea esi, [ecx + eax*2]
jmp 0x67185a5c
mov ebp, dword [esp + 0x10]
movzx eax, bl
or eax, 0x20000
mov dword [ebp + 0x20], eax
mov ecx, dword [ebp]
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x78], eax
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
mov byte [ebp + 0x30], 4
lea esi, [ecx + eax*2]
jmp 0x67185a5c
mov ebx, dword [esp + 0x10]
push 0xc
mov eax, dword [ebx]
add eax, 4
mov dword [edi + 0x78], eax
mov dword [ebx + 0x40], eax
mov edx, dword [ebx]
movzx eax, word [edx]
movzx ecx, byte [eax + 0x673a82a0]
movzx eax, word [edx + 2]
add ecx, eax
pop eax
mov byte [ebx + 0x30], al
jmp 0x67185a59
mov edx, dword [esp + 0x10]
push 0xd
mov ecx, dword [edx]
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
lea esi, [ecx + eax*2]
pop eax
mov byte [edx + 0x30], al
jmp 0x67185a5c
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx]
add eax, 4
mov dword [edi + 0x78], eax
mov dword [ebx + 0x40], eax
mov edx, dword [ebx]
movzx eax, word [edx]
movzx ecx, byte [eax + 0x673a82a0]
movzx eax, word [edx + 2]
mov byte [ebx + 0x30], 0x24
jmp 0x67185a57
mov edx, dword [esp + 0x10]
mov ecx, dword [edx]
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
mov byte [edx + 0x30], 0xe
lea esi, [ecx + eax*2]
jmp 0x67185a5c
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx]
add eax, 4
mov dword [edi + 0x78], eax
mov dword [ebx + 0x40], eax
mov edx, dword [ebx]
movzx eax, word [edx]
movzx ecx, byte [eax + 0x673a82a0]
movzx eax, word [edx + 2]
mov byte [ebx + 0x30], 0xf
jmp 0x67185a57
mov edx, dword [esp + 0x10]
mov ecx, dword [edx]
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
mov byte [edx + 0x30], 0x10
lea esi, [ecx + eax*2]
jmp 0x67185a5c
mov edx, dword [esp + 0x10]
mov ecx, dword [edx]
movzx eax, word [ecx]
movzx eax, byte [eax + 0x673a82a0]
mov byte [edx + 0x30], 0x12
lea esi, [ecx + eax*2]
jmp 0x67185a5c
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx]
add eax, 4
mov dword [edi + 0x78], eax
mov dword [ebx + 0x40], eax
mov edx, dword [ebx]
movzx eax, word [edx]
movzx ecx, byte [eax + 0x673a82a0]
movzx eax, word [edx + 2]
mov byte [ebx + 0x30], 0x13
add ecx, eax
lea esi, [edx + ecx*2]
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x8c]
mov ebp, dword [esp + 0x90]
lea ebx, [eax + edi]
mov dword [esp + 0x18], ebx
cmp ebx, dword [ebp + 0x14]
jb 0x67185b10
mov ecx, dword [ebp + 0xc]
lea edi, [ecx + ecx]
mov eax, edi
shr eax, 0xa
cmp eax, dword [ebp + 0x1c]
jbe 0x67185aa9
mov edi, dword [ebp + 0x1c]
xor edx, edx
shl edi, 0xa
mov eax, edi
div dword [esp + 0x8c]
sub edi, edx
cmp ecx, edi
jae 0x67185bd7
push dword [ebp + 8]
push edi
call dword [ebp]
mov ebx, eax
pop ecx
pop ecx
test ebx, ebx
je 0x67185bdb
push dword [ebp + 0xc]
push dword [ebp + 0x10]
push ebx
call fcn.671a4d7a
mov ecx, dword [ebp + 0x10]
mov eax, ebx
mov edx, dword [esp + 0x1c]
sub eax, ecx
add edx, eax
add esp, 0xc
mov dword [esp + 0x10], edx
add edx, dword [esp + 0x8c]
mov dword [esp + 0x18], edx
cmp ecx, dword [ebp + 0x18]
je 0x67185af5
push dword [ebp + 8]
push ecx
call dword [ebp + 4]
pop ecx
pop ecx
lea eax, [ebx + edi]
mov dword [ebp + 0x10], ebx
mov ebx, dword [esp + 0x18]
mov dword [ebp + 0x14], eax
mov eax, dword [esp + 0x10]
mov dword [ebp + 0xc], edi
mov edi, dword [esp + 0x8c]
lea ecx, [edi - 0x38]
add eax, 0x38
push ecx
push eax
lea eax, [ebx + 0x38]
push eax
call fcn.671a4d7a
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x10], ebx
mov eax, dword [eax + 0x18]
inc eax
mov dword [ebx + 0x18], eax
mov eax, ebx
mov ebx, dword [esp + 0x78]
jmp 0x6717d4da
mov eax, edi
mov ecx, dword [esp + 0x90]
mov dword [eax + 0x68], edx
mov eax, dword [ebp + 0x50]
mov dword [ecx + 0x48], eax
mov eax, dword [ebp + 0x40]
mov dword [ecx + 0x74], eax
mov eax, dword [ebp + 0x38]
cmp eax, dword [ecx + 0x70]
jbe 0x67185b61
mov dword [ecx + 0x70], eax
mov eax, dword [ebp + 0x3c]
sub eax, dword [ecx + 0x5c]
mov edi, dword [esp + 0x80]
movzx esi, word [esp + 0x88]
sar eax, 1
inc esi
mov dword [edi], eax
mov eax, dword [ebp + 0x38]
sub eax, dword [ecx + 0x5c]
movzx ecx, word [esp + 0x84]
sar eax, 1
cmp esi, ecx
mov dword [edi + 4], eax
cmova esi, ecx
add esi, esi
lea eax, [esi*4 - 8]
push eax
lea eax, [ebp + 0x54]
push eax
lea eax, [edi + 8]
push eax
call fcn.671a4d7a
mov eax, dword [ebp + 0x50]
add esp, 0xc
dec esi
push 2
pop edx
add eax, edx
cmp esi, eax
jb 0x67185bca
or eax, 0xffffffff
mov dword [edi + esi*4], eax
dec esi
mov ecx, dword [ebp + 0x50]
add ecx, edx
cmp esi, ecx
jae 0x67185bbd
xor eax, eax
inc eax
jmp 0x67185bea
mov eax, esi
jmp 0x67185bea
push 0xffffffffffffffcc
jmp 0x67185be9
push 0xffffffffffffffc1
jmp 0x67185be9
push 0xffffffffffffffd0
jmp 0x67185be9
push 0xffffffffffffffd4
jmp 0x67185be9
push 0xffffffffffffffcb
jmp 0x67185be9
push 0xffffffffffffffd1
pop eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret