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

Disassembly:
mov qword [rsp + 0x20], r9
mov word [rsp + 0x18], r8w
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x98
mov rdi, qword [rsp + 0x100]
mov rsi, r9
mov r13, qword [rsp + 0x108]
xor r9d, r9d
mov rbx, rdx
mov qword [rsp + 0x30], r9
xor edx, edx
mov qword [rsp + 0x40], r9
mov r8, qword [rdi + 0x38]
lea rax, [rsi - 0x50]
mov r11d, dword [r13 + 0xd0]
mov ebp, r9d
mov r12, qword [rdi + 0x30]
mov r14d, r11d
mov qword [rsp + 0x78], rax
mov r15d, r9d
mov rax, r8
shr r14d, 0x13
div rsi
mov dword [r12 + 0x30], r9d
and r14d, 1
mov dword [r12 + 0x6c], r9d
mov dword [r12 + 0x68], 0xffffffff
mov qword [r12 + 0x50], rcx
mov qword [r12 + 0x58], rcx
shr r11d, 0x11
and r11d, 1
mov qword [r12 + 0x60], r9
sub r8, rdx
mov qword [r12 + 0x78], r9
mov qword [rsp + 0x58], r8
mov dword [rsp + 0x108], r9d
mov dword [rsp + 0x38], r14d
lea rax, [r8 + r12]
mov dword [rsp + 0xe0], r11d
mov qword [rsp + 0x60], rax
mov r8d, r9d
mov qword [r12 + 0x70], 0xffffffffffffffff
mov dword [rsp + 0xe8], r9d
mov dword [rsp + 0x50], 0xdc00
nop dword [rax]
nop word [rax + rax]
mov dword [r12 + 0x34], r8d
mov qword [r12], rbx
mov qword [r12 + 0x20], rsi
test r8d, r8d
je 0x1401d07cf
mov rax, r12
sub rax, qword [rdi + 0x30]
mov qword [r12 + 0x70], rax
mov eax, r8d
and eax, 0xffff0000
cmp eax, 0x40000
jne 0x1401d07c7
movzx eax, r8w
mov dword [r12 + 0x68], eax
mov dword [rsp + 0xe8], r9d
mov edx, dword [r13 + 0x28]
lea eax, [rdx + 1]
mov dword [r13 + 0x28], eax
cmp edx, dword [r13 + 0x20]
jae 0x1401da902
mov eax, dword [r13 + 0x24]
cmp dword [r12 + 0x30], eax
jb 0x1401d0833
mov eax, 0xffffffcb
jmp 0x1401da907
mov rbp, qword [rsp + 0x30]
jmp 0x1401d0840
mov rdi, qword [rsp + 0x100]
mov rsi, qword [rsp + 0xf8]
mov r11d, dword [rsp + 0xe0]
jmp 0x1401d0833
mov rdi, qword [rsp + 0x100]
jmp 0x1401d0840
mov rsi, qword [rsp + 0xf8]
lea r8, [0x140000000]
nop word [rax + rax]
mov rbx, qword [r12]
movzx r10d, byte [rbx]
mov byte [r12 + 0x49], r10b
mov edx, r10d
cmp r10d, 0xa6
ja case.0x1401d8285.15
movzx eax, byte [r8 + r10 + 0x1daa78]
mov ecx, dword [r8 + rax*4 + 0x1da91c]
add rcx, r8
jmp rcx
cmp dword [r12 + 0x68], 0xffffffff
jne 0x1401d0909
movzx r8d, word [rbx + 2]
mov rcx, qword [r12 + 0x70]
nop dword [rax]
cmp rcx, 0xffffffffffffffff
je case.0x1401d8285.15
mov rbp, qword [rdi + 0x30]
mov eax, r8d
add rbp, rcx
bts eax, 0x10
mov rcx, rbp
mov qword [rsp + 0x30], rbp
sub rcx, rsi
cmp dword [rbp + 0x34], eax
je 0x1401d08be
mov rcx, qword [rcx + 0x70]
jmp 0x1401d0890
mov dword [r12 + 0x6c], r8d
lea edx, [r8*2 - 2]
mov rax, qword [rcx + 0x50]
lea r8, [0x140000000]
sub rax, qword [r13 + 0x78]
sar rax, 1
mov qword [r12 + rdx*8 + 0x80], rax
mov rax, qword [r12 + 0x50]
sub rax, qword [r13 + 0x78]
sar rax, 1
mov qword [r12 + rdx*8 + 0x88], rax
cmp rdx, qword [r12 + 0x78]
jb 0x1401d0909
lea rax, [rdx + 2]
mov qword [r12 + 0x78], rax
mov rcx, qword [r12]
movzx eax, word [rcx]
movzx eax, byte [rax + r8 + 0x32f340]
lea rcx, [rcx + rax*2]
mov qword [r12], rcx
jmp 0x1401d0840
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0xa0]
jbe 0x1401d093b
mov qword [r13 + 0xa0], rax
mov qword [rsp + 0x40], r12
mov ebx, 0xfffffc19
xor edi, edi
lea r10, [0x140000000]
mov r15d, 0xff
mov r8d, 0x2000
mov esi, 0xfc00
mov ebp, 0xd800
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0xa0]
jbe 0x1401d0979
mov qword [r13 + 0xa0], rax
cmp dword [r12 + 0x30], 0
je 0x1401da8e2
sub r12, qword [r12 + 0x20]
mov rax, qword [r13 + 0xf0]
or dword [rax + 0x68], 2
movzx eax, byte [r12 + 0x48]
dec eax
cmp eax, 0xe0
ja case.0x1401d8285.15
cdqe
movzx eax, byte [r10 + rax + 0x1dac18]
mov ecx, dword [r10 + rax*4 + 0x1dab20]
add rcx, r10
jmp rcx
cmp dword [r12 + 0x68], 0xffffffff
je 0x1401d0a28
mov rcx, qword [r12 + 0x70]
nop dword [rax]
cmp rcx, 0xffffffffffffffff
je case.0x1401d8285.15
mov rbp, qword [rdi + 0x30]
add rbp, rcx
mov rcx, rbp
mov qword [rsp + 0x30], rbp
sub rcx, rsi
mov eax, dword [rbp + 0x34]
and eax, 0xffff0000
cmp eax, 0x40000
je 0x1401d0a01
mov rcx, qword [rcx + 0x70]
jmp 0x1401d09d0
mov rax, qword [r12 + 0x50]
mov qword [rcx + 0x50], rax
mov rax, qword [r12 + 0x60]
mov qword [rcx + 0x60], rax
mov rax, qword [r12 + 0x58]
mov r12, rcx
mov qword [rcx + 0x58], rax
add qword [rcx], 4
jmp 0x1401d0840
mov r8, qword [r12 + 0x58]
mov rdx, qword [r12 + 0x50]
cmp rdx, r8
jne 0x1401d0a60
mov eax, dword [r13 + 0xcc]
test al, 4
jne case.0x1401d0871.82
test al, 8
je 0x1401d0a60
mov rcx, qword [r13 + 0x50]
mov rax, qword [r13 + 0x78]
lea rcx, [rax + rcx*2]
cmp r8, rcx
jne 0x1401d0a60
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
cmp rdx, qword [r13 + 0x88]
jae 0x1401da82c
mov eax, dword [r13 + 0xd0]
or eax, dword [r13 + 0xcc]
bt eax, 0x1d
jae 0x1401da82c
test r10b, r10b
jne 0x1401da825
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
mov edx, dword [r13 + 0xdc]
mov rcx, qword [r12 + 0x50]
test edx, edx
je 0x1401d0b84
lea rbx, [r13 + 0x88]
mov r8, qword [rbx]
cmp rcx, r8
jae 0x1401d0ad6
lea r9, [r13 + 0xe0]
mov dword [rsp + 0x20], r14d
call fcn.14020ec20
test eax, eax
je 0x1401d0ad6
mov eax, 1
jmp 0x1401d0ad8
xor eax, eax
test eax, eax
jne case.0x1401d0871.82
lea r8, [0x140000000]
movzx edx, word [r13 + 0x60]
test dx, dx
je case.0x1401d0871.12
mov rax, qword [rbx]
mov rcx, qword [r12 + 0x50]
sub rax, 2
cmp rcx, rax
jne case.0x1401d0871.12
cmp dword [r13 + 0xdc], 0
jne case.0x1401d0871.12
cmp dword [r13 + 0xe0], 2
jne case.0x1401d0871.12
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne case.0x1401d0871.12
mov dword [r13 + 0x2c], 1
cmp dx, 1
ja 0x1401d3489
mov rcx, qword [r12 + 0x50]
cmp rcx, qword [r13 + 0x88]
jb 0x1401d0bd4
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d0871.82
cmp rcx, qword [r13 + 0x98]
ja 0x1401d0b69
cmp dword [r13 + 0x34], 0
je case.0x1401d0871.82
cmp ax, 1
mov dword [r13 + 0x2c], 1
ja 0x1401d3489
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
mov edx, dword [r13 + 0xe0]
imul rax, rdx, 0xfffffffffffffffe
add rax, qword [r13 + 0x88]
cmp rcx, rax
ja 0x1401d0bc8
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d0bc8
cmp edx, 1
je case.0x1401d0871.82
movzx eax, word [r13 + 0xe6]
cmp word [rcx + 2], ax
jne 0x1401d0bc8
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
lea rbx, [r13 + 0x88]
jmp 0x1401d0ae7
add rcx, 2
mov qword [r12 + 0x50], rcx
test r14d, r14d
je 0x1401d0c09
cmp rcx, qword [r13 + 0x88]
jae 0x1401d0c09
movzx eax, word [rcx]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x1401d0c09
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
add qword [r12], 2
mov r11d, dword [rsp + 0xe0]
xor r9d, r9d
jmp 0x1401d0840
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jb 0x1401d0c69
movzx ecx, word [r13 + 0x60]
test cx, cx
je case.0x1401d0871.82
cmp rax, qword [r13 + 0x98]
ja 0x1401d0c4e
cmp dword [r13 + 0x34], 0
je case.0x1401d0871.82
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
add rax, 2
mov qword [r12 + 0x50], rax
lea rax, [rbx + 2]
mov qword [r12], rax
jmp 0x1401d0840
test r14d, r14d
je 0x1401d0d31
add rbx, 2
mov qword [r12 + 0x18], 1
mov ecx, 0xfc00
mov qword [r12], rbx
mov edx, 1
movzx eax, word [rbx]
and ax, cx
mov ecx, 0xd800
cmp ax, cx
jne 0x1401d0cbf
mov eax, 2
mov qword [r12 + 0x18], rax
mov edx, eax
mov rcx, qword [r13 + 0x88]
mov r8, qword [r12 + 0x50]
mov rax, rcx
sub rax, r8
sar rax, 1
cmp rdx, rax
jbe 0x1401d0d00
cmp r8, rcx
jb case.0x1401d0871.82
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d0871.82
cmp r8, qword [r13 + 0x98]
jmp 0x1401d0b5c
movzx ecx, word [r8]
add r8, 2
movzx eax, word [rbx]
add rbx, 2
mov qword [r12 + 0x50], r8
mov qword [r12], rbx
cmp ax, cx
jne case.0x1401d0871.82
sub rdx, 1
mov qword [r12 + 0x18], rdx
jne 0x1401d0d00
jmp 0x1401d0833
mov r8, qword [r12 + 0x50]
mov rax, qword [r13 + 0x88]
sub rax, r8
and rax, 0xfffffffffffffffe
cmp rax, 2
jl 0x1401d0ce2
movzx edx, word [rbx + 2]
lea rax, [r8 + 2]
movzx ecx, word [r8]
mov qword [r12 + 0x50], rax
cmp dx, cx
jne case.0x1401d0871.82
lea rax, [rbx + 4]
mov qword [r12], rax
jmp 0x1401d0833
mov r9, qword [r12 + 0x50]
cmp r9, qword [r13 + 0x88]
jb 0x1401d0d99
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d0871.82
cmp r9, qword [r13 + 0x98]
jmp 0x1401d0b5c
test r14d, r14d
je 0x1401d0ef6
lea r11, [rbx + 2]
mov qword [r12 + 0x18], 1
mov qword [r12], r11
mov ecx, 0xfc00
movzx r8d, word [r11]
mov edx, 0xd800
mov eax, r8d
add rbx, 4
and eax, ecx
cmp eax, edx
jne 0x1401d0dfb
movzx eax, word [rbx]
and r8d, 0x3ff
and eax, 0x3ff
shl r8d, 0xa
or r8d, eax
mov eax, 2
add r8d, 0x10000
mov qword [r12 + 0x18], rax
lea r10d, [rax + 2]
jmp 0x1401d0e01
mov r10d, 2
movzx edx, word [r9]
mov eax, 0x80
cmp r8d, eax
jae 0x1401d0e4e
mov eax, 0xff
cmp edx, eax
ja 0x1401d0e20
mov rax, qword [r13 + 0x38]
movzx edx, byte [rdx + rax]
mov rax, qword [r13 + 0x38]
movzx ecx, byte [r8 + rax]
cmp ecx, edx
jne case.0x1401d0871.82
mov r11d, dword [rsp + 0xe0]
lea rax, [r9 + 2]
mov qword [r12], rbx
xor r9d, r9d
mov qword [r12 + 0x50], rax
jmp 0x1401d0833
add r9, 2
mov eax, edx
and eax, ecx
mov qword [r12 + 0x50], r9
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d0e8c
movzx ecx, word [r9]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r9 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
lea rax, [r11 + r10]
mov r11d, dword [rsp + 0xe0]
mov qword [r12], rax
mov r9d, 0
cmp edx, r8d
je 0x1401d0833
lea r10, [0x140000000]
mov eax, r8d
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
mov eax, r8d
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rax, [rax + rax*2]
mov ecx, dword [r10 + rax*4 + 0x3139b4]
add ecx, r8d
cmp edx, ecx
je 0x1401d0833
xor edi, edi
mov ebx, edi
jmp 0x1401d094e
test r11d, r11d
je 0x1401d0fa0
movzx edx, word [rbx + 2]
mov eax, 0x80
movzx r8d, word [r9]
cmp edx, eax
jae 0x1401d0f3d
mov eax, 0xff
cmp r8d, eax
ja 0x1401d0f23
mov rax, qword [r13 + 0x38]
movzx r8d, byte [r8 + rax]
mov rax, qword [r13 + 0x38]
movzx ecx, byte [rdx + rax]
cmp ecx, r8d
je 0x1401d0fde
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
cmp r8d, edx
je 0x1401d0fde
mov eax, edx
test edx, edx
jns 0x1401d0f4f
lea eax, [rdx + 0x7f]
sar eax, 7
lea r10, [0x140000000]
cdqe
movzx ecx, word [r10 + rax*2 + 0x317bc0]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jge 0x1401d0f77
dec eax
or eax, 0xffffff80
inc eax
add eax, ecx
cdqe
movzx eax, word [r10 + rax*2 + 0x31bfc0]
lea rax, [rax + rax*2]
mov ecx, dword [r10 + rax*4 + 0x3139b4]
add ecx, edx
cmp r8d, ecx
je 0x1401d0fde
xor edi, edi
mov ebx, edi
jmp 0x1401d094e
movzx eax, word [rbx + 2]
mov edx, 0xff
cmp ax, dx
ja 0x1401d0fbb
mov ecx, eax
mov rax, qword [r13 + 0x38]
movzx r8d, byte [rcx + rax]
jmp 0x1401d0fbe
mov r8d, eax
movzx eax, word [r9]
cmp ax, dx
ja 0x1401d0fd3
mov ecx, eax
mov rax, qword [r13 + 0x38]
movzx edx, byte [rcx + rax]
jmp 0x1401d0fd5
mov edx, eax
cmp r8d, edx
jne case.0x1401d0871.82
lea rax, [r9 + 2]
xor r9d, r9d
mov qword [r12 + 0x50], rax
lea rax, [rbx + 4]
mov qword [r12], rax
jmp 0x1401d0833
mov r9, qword [r12 + 0x50]
cmp r9, qword [r13 + 0x88]
jae 0x1401d0d7f
lea rax, [rbx + 2]
test r14d, r14d
je 0x1401d1115
mov qword [r12], rax
lea r8, [rax + 2]
movzx edx, word [rax]
mov ebx, 0xfc00
mov eax, edx
mov qword [r12], r8
and eax, ebx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d1063
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov ecx, 0xd800
lea rax, [r8 + 2]
add edx, 0x10000
mov qword [r12], rax
movzx r8d, word [r9]
add r9, 2
mov eax, r8d
mov qword [r12 + 0x50], r9
and eax, ebx
cmp eax, ecx
jne 0x1401d10a6
movzx ecx, word [r9]
and r8d, 0x3ff
mov eax, r8d
and ecx, 0x3ff
shl eax, 0xa
mov r8d, ecx
or r8d, eax
lea rax, [r9 + 2]
mov qword [r12 + 0x50], rax
add r8d, 0x10000
cmp edx, r8d
je case.0x1401d0871.82
mov r9d, 0
cmp r10b, 0x20
jne 0x1401d0833
lea r10, [0x140000000]
cmp edx, 0x7f
jbe 0x1401d10fb
mov eax, edx
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
mov eax, edx
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
add edx, dword [r10 + rcx*4 + 0x3139b4]
jmp 0x1401d1103
mov rax, qword [r13 + 0x40]
movzx edx, byte [rax + rdx]
cmp edx, r8d
jne 0x1401d0833
xor edi, edi
mov ebx, edi
jmp 0x1401d094e
movzx r8d, word [r9]
lea rdx, [r9 + 2]
test r11d, r11d
je 0x1401d11c1
mov qword [r12 + 0x50], rdx
movzx edx, word [rax]
lea rax, [rbx + 4]
mov qword [r12], rax
cmp edx, r8d
je case.0x1401d0871.82
mov r9d, 0
cmp r10b, 0x20
jne 0x1401d0833
cmp edx, 0x7f
jbe 0x1401d11a0
mov eax, edx
test edx, edx
jns 0x1401d115d
lea eax, [rdx + 0x7f]
sar eax, 7
lea r10, [0x140000000]
cdqe
movzx ecx, word [r10 + rax*2 + 0x317bc0]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jge 0x1401d1185
dec eax
or eax, 0xffffff80
inc eax
add eax, ecx
cdqe
movzx eax, word [r10 + rax*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
add edx, dword [r10 + rcx*4 + 0x3139b4]
jmp 0x1401d11af
mov rax, qword [r13 + 0x40]
lea r10, [0x140000000]
movzx edx, byte [rax + rdx]
cmp edx, r8d
jne 0x1401d0833
xor edi, edi
mov ebx, edi
jmp 0x1401d094e
movzx ecx, word [rax]
mov qword [r12 + 0x50], rdx
cmp ecx, r8d
je case.0x1401d0871.82
cmp r10b, 0x20
jne 0x1401d11f2
mov eax, 0xff
cmp ecx, eax
ja 0x1401d11f2
mov rax, qword [r13 + 0x40]
movzx ecx, byte [rax + rcx]
cmp ecx, r8d
je case.0x1401d0871.82
lea rax, [rbx + 4]
xor r9d, r9d
mov qword [r12], rax
jmp 0x1401d0833
movzx r8d, word [rbx + 2]
lea r10, [0x140000000]
mov dword [r12 + 0x3c], r8d
add rbx, 4
mov dword [r12 + 0x38], r8d
mov qword [r12], rbx
jmp 0x1401d1382
mov eax, 2
mov r15d, eax
mov dword [rsp + 0x108], eax
mov dword [r12 + 0x38], r9d
lea r10, [0x140000000]
movzx eax, word [rbx + 2]
mov r8d, r9d
add rbx, 4
mov dword [r12 + 0x3c], eax
mov qword [r12], rbx
jmp 0x1401d1382
mov dword [r12 + 0x38], r9d
lea r10, [0x140000000]
movzx eax, word [rbx + 2]
mov r15d, 1
add rbx, 4
mov dword [r12 + 0x3c], eax
mov qword [r12], rbx
mov r8d, r9d
jmp 0x1401d137a
mov r15d, r9d
mov dword [rsp + 0x108], r9d
jmp 0x1401d1234
mov eax, 2
mov dword [r12 + 0x38], r9d
add rbx, rax
mov dword [r12 + 0x3c], 0xffffffff
mov qword [r12], rbx
lea r10, [0x140000000]
mov r15d, eax
mov dword [rsp + 0x108], eax
mov r8d, r9d
jmp 0x1401d1382
mov eax, 2
mov dword [r12 + 0x38], 1
add rbx, rax
mov dword [r12 + 0x3c], 0xffffffff
mov r15d, eax
mov dword [rsp + 0x108], eax
mov qword [r12], rbx
lea r10, [0x140000000]
lea r8d, [rax - 1]
jmp 0x1401d1382
mov eax, 2
mov dword [r12 + 0x38], r9d
add rbx, rax
mov dword [r12 + 0x3c], 1
mov qword [r12], rbx
lea r10, [0x140000000]
mov r15d, eax
mov dword [rsp + 0x108], eax
mov r8d, r9d
jmp 0x1401d1382
mov ecx, 0x21
mov eax, 0x2e
cmp r10b, al
lea r10, [0x140000000]
cmovb eax, ecx
movzx ecx, word [rbx]
sub ecx, eax
add rbx, 2
mov qword [r12], rbx
lea rcx, [rcx*4]
mov r8d, dword [rcx + r10 + 0x312d48]
mov eax, dword [rcx + r10 + 0x312d78]
mov r15d, dword [rcx + r10 + 0x312da8]
mov dword [r12 + 0x38], r8d
mov dword [r12 + 0x3c], eax
mov dword [rsp + 0x108], r15d
test r14d, r14d
je 0x1401d163d
mov qword [r12 + 0x18], 1
lea rcx, [rbx + 2]
mov qword [r12 + 0x10], rbx
movzx edx, word [rbx]
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x1401d1632
movzx r8d, word [rcx]
and edx, 0x3ff
and r8d, 0x3ff
shl edx, 0xa
mov eax, 2
or r8d, edx
mov qword [r12 + 0x18], rax
add r8d, 0x10000
lea rax, [rbx + 4]
mov qword [r12], rax
cmp byte [r12 + 0x49], 0x2e
jb 0x1401d1430
mov eax, r8d
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
mov eax, r8d
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rax, [rax + rax*2]
mov ecx, dword [r10 + rax*4 + 0x3139b4]
add ecx, r8d
cmp ecx, r8d
je 0x1401d1430
lea rdx, [r12 + 0x4a]
call fcn.14020ede0
mov eax, eax
jmp 0x1401d1433
mov rax, r9
mov qword [r12 + 0x28], rax
mov ebp, 1
mov eax, dword [r12 + 0x38]
cmp eax, ebp
jb 0x1401d14db
nop word [rax + rax]
mov rax, qword [r12 + 0x18]
mov rsi, qword [r13 + 0x88]
mov rbx, qword [r12 + 0x50]
lea rdi, [rax + rax]
mov rax, rsi
sub rax, rdi
cmp rbx, rax
ja 0x1401d1484
mov rdx, qword [r12 + 0x10]
mov r8, rdi
mov rcx, rbx
call fcn.14023ff00
test eax, eax
je 0x1401d14bc
mov rdi, qword [r12 + 0x28]
test rdi, rdi
je 0x1401d15a5
add rdi, rdi
mov rax, rsi
sub rax, rdi
cmp rbx, rax
ja 0x1401d15a5
lea rdx, [r12 + 0x4a]
mov r8, rdi
mov rcx, rbx
call fcn.14023ff00
test eax, eax
jne 0x1401d15a5
lea rax, [rdi + rbx]
mov edx, 0x50
mov rcx, r12
inc ebp
mov qword [rdx + rcx], rax
mov eax, dword [r12 + 0x38]
cmp ebp, eax
jbe 0x1401d1450
mov ecx, dword [r12 + 0x3c]
lea r8, [0x140000000]
mov rdi, qword [rsp + 0x100]
mov ebp, eax
mov rsi, qword [rsp + 0xf8]
mov r9d, 0
mov r11d, dword [rsp + 0xe0]
cmp eax, ecx
je 0x1401d0800
test r15d, r15d
je 0x1401da203
mov rbx, qword [r12 + 0x50]
mov qword [r12 + 8], rbx
cmp eax, ecx
jae 0x1401d15f9
nop word [rax + rax]
mov rax, qword [r12 + 0x18]
mov rsi, qword [r13 + 0x88]
lea rdi, [rax + rax]
mov rax, rsi
sub rax, rdi
cmp rbx, rax
ja 0x1401d155f
mov rdx, qword [r12 + 0x10]
mov r8, rdi
mov rcx, rbx
call fcn.14023ff00
test eax, eax
je 0x1401d158b
mov rdi, qword [r12 + 0x28]
test rdi, rdi
je 0x1401d15c8
add rdi, rdi
mov rax, rsi
sub rax, rdi
cmp rbx, rax
ja 0x1401d15c8
lea rdx, [r12 + 0x4a]
mov r8, rdi
mov rcx, rbx
call fcn.14023ff00
test eax, eax
jne 0x1401d15c8
add rbx, rdi
mov ecx, 0x50
mov rax, r12
inc ebp
mov qword [rcx + rax], rbx
cmp ebp, dword [r12 + 0x3c]
jb 0x1401d1530
jmp 0x1401d15f9
cmp rbx, rsi
jb case.0x1401d0871.82
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d0871.82
cmp rbx, qword [r13 + 0x98]
jmp 0x1401d0b5c
cmp rbx, rsi
jb 0x1401d15f9
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d15f9
cmp rbx, qword [r13 + 0x98]
ja 0x1401d15e7
cmp dword [r13 + 0x34], 0
je 0x1401d15f9
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
mov rbp, qword [rsp + 0x30]
mov r9d, 0
mov rdi, qword [rsp + 0x100]
lea r8, [0x140000000]
mov rsi, qword [rsp + 0xf8]
mov r11d, dword [rsp + 0xe0]
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d890f
mov qword [r12], rcx
mov dword [r12 + 0x40], edx
jmp 0x1401d164d
movzx edx, word [rbx]
lea rax, [rbx + 2]
mov dword [r12 + 0x40], edx
mov qword [r12], rax
cmp byte [r12 + 0x49], 0x2e
jb 0x1401d17df
test r14d, r14d
jne 0x1401d1663
test r11d, r11d
je 0x1401d169a
cmp edx, 0x7f
jbe 0x1401d169a
mov eax, edx
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rax, [rax + rax*2]
mov ecx, dword [r10 + rax*4 + 0x3139b4]
add ecx, edx
jmp 0x1401d16af
mov eax, 0xff
cmp edx, eax
ja 0x1401d16ad
mov rax, qword [r13 + 0x40]
movzx ecx, byte [rax + rdx]
jmp 0x1401d16af
mov ecx, edx
mov r9d, 1
mov dword [r12 + 0x44], ecx
cmp r8d, r9d
jb 0x1401d16fa
nop
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d175a
movzx ecx, word [rax]
mov edx, dword [r12 + 0x40]
cmp edx, ecx
je 0x1401d16e9
cmp dword [r12 + 0x44], ecx
jne 0x1401d0eed
add rax, 2
inc r9d
mov qword [r12 + 0x50], rax
cmp r9d, r8d
jbe 0x1401d16c0
mov r9d, dword [r12 + 0x3c]
mov r10d, r8d
cmp r8d, r9d
lea r8, [0x140000000]
je 0x1401d0c16
test r15d, r15d
je 0x1401d7f38
mov rax, qword [r12 + 0x50]
mov qword [r12 + 8], rax
cmp r10d, r9d
jae 0x1401d17c3
nop
cmp rax, qword [r13 + 0x88]
jae 0x1401d1797
movzx ecx, word [rax]
cmp edx, ecx
je 0x1401d1747
cmp dword [r12 + 0x44], ecx
jne 0x1401d17c3
add rax, 2
inc r10d
mov qword [r12 + 0x50], rax
cmp r10d, r9d
jb 0x1401d1730
jmp 0x1401d17c3
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d0eed
cmp rax, qword [r13 + 0x98]
ja 0x1401d177c
cmp dword [r13 + 0x34], 0
je 0x1401d0eed
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
xor edi, edi
mov ebx, edi
jmp 0x1401d094e
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d17c3
cmp rax, qword [r13 + 0x98]
ja 0x1401d17b1
cmp dword [r13 + 0x34], 0
je 0x1401d17c3
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
lea r8, [0x140000000]
mov r9d, 0
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d7f65
mov r9d, 1
cmp r8d, r9d
jb 0x1401d1821
nop word [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d175a
movzx edx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp dword [r12 + 0x40], edx
jne 0x1401d0eed
inc r9d
cmp r9d, r8d
jbe 0x1401d17f0
mov edx, dword [r12 + 0x3c]
mov r9d, r8d
cmp r8d, edx
lea r8, [0x140000000]
je 0x1401d0c16
test r15d, r15d
je 0x1401d7fd5
mov rcx, qword [r12 + 0x50]
mov qword [r12 + 8], rcx
cmp r9d, edx
jae 0x1401d18a3
cmp rcx, qword [r13 + 0x88]
jae 0x1401d1877
movzx eax, word [rcx]
cmp dword [r12 + 0x40], eax
jne 0x1401d18a3
add rcx, 2
inc r9d
mov qword [r12 + 0x50], rcx
cmp r9d, edx
jb 0x1401d1851
jmp 0x1401d18a3
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d18a3
cmp rcx, qword [r13 + 0x98]
ja 0x1401d1891
cmp dword [r13 + 0x34], 0
je 0x1401d18a3
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
lea r8, [0x140000000]
mov r9d, 0
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d8002
movzx edx, word [rbx + 2]
lea r10, [0x140000000]
mov dword [r12 + 0x3c], edx
add rbx, 4
mov dword [r12 + 0x38], edx
mov qword [r12], rbx
jmp 0x1401d1a1e
mov dword [r12 + 0x38], r9d
lea r10, [0x140000000]
movzx eax, word [rbx + 2]
mov r15d, 1
add rbx, 4
mov dword [r12 + 0x3c], eax
mov qword [r12], rbx
mov edx, r9d
jmp 0x1401d1a16
mov r15d, r9d
mov dword [rsp + 0x108], r9d
mov dword [r12 + 0x38], r9d
lea r10, [0x140000000]
movzx eax, word [rbx + 2]
mov edx, r9d
add rbx, 4
mov dword [r12 + 0x3c], eax
mov qword [r12], rbx
jmp 0x1401d1a1e
mov dword [r12 + 0x38], r9d
mov dword [r12 + 0x3c], 0xffffffff
mov eax, 2
lea r10, [0x140000000]
add rbx, rax
mov dword [rsp + 0x108], eax
mov qword [r12], rbx
mov r15d, eax
mov edx, r9d
jmp 0x1401d1a1e
mov eax, 2
mov dword [r12 + 0x38], 1
add rbx, rax
mov dword [r12 + 0x3c], 0xffffffff
mov r15d, eax
mov dword [rsp + 0x108], eax
mov qword [r12], rbx
lea r10, [0x140000000]
lea edx, [rax - 1]
jmp 0x1401d1a1e
mov dword [r12 + 0x38], r9d
mov dword [r12 + 0x3c], 1
jmp 0x1401d194a
mov eax, 2
mov r15d, eax
mov dword [rsp + 0x108], eax
jmp 0x1401d1917
cmp r10b, 0x48
mov ecx, 0x48
lea r10, [0x140000000]
mov eax, 0x3b
cmovae eax, ecx
movzx ecx, word [rbx]
sub ecx, eax
add rbx, 2
mov qword [r12], rbx
lea rcx, [rcx*4]
mov edx, dword [rcx + r10 + 0x312d48]
mov eax, dword [rcx + r10 + 0x312d78]
mov r15d, dword [rcx + r10 + 0x312da8]
mov dword [r12 + 0x38], edx
mov dword [r12 + 0x3c], eax
mov dword [rsp + 0x108], r15d
movzx ecx, word [rbx]
add rbx, 2
mov dword [r12 + 0x40], ecx
mov r8d, ecx
mov qword [r12], rbx
test r14d, r14d
je 0x1401d1a77
mov r9d, 0xfc00
mov eax, ecx
and eax, r9d
mov r9d, 0xd800
cmp eax, r9d
jne 0x1401d1a77
movzx r8d, word [rbx]
lea rax, [rbx + 2]
and ecx, 0x3ff
and r8d, 0x3ff
shl ecx, 0xa
or r8d, ecx
add r8d, 0x10000
mov dword [r12 + 0x40], r8d
mov qword [r12], rax
cmp byte [r12 + 0x49], 0x48
jb 0x1401d1d34
test r14d, r14d
jne 0x1401d1a8d
test r11d, r11d
je 0x1401d1ac8
cmp r8d, 0x7f
jbe 0x1401d1ac8
mov eax, r8d
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
mov eax, r8d
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rax, [rax + rax*2]
mov r10d, dword [r10 + rax*4 + 0x3139b4]
add r10d, r8d
jmp 0x1401d1ae3
mov eax, 0xff
cmp r8d, eax
ja 0x1401d1ae0
mov rax, qword [r13 + 0x40]
mov ecx, r8d
movzx r10d, byte [rax + rcx]
jmp 0x1401d1ae3
mov r10d, r8d
mov dword [r12 + 0x44], r10d
test r14d, r14d
je 0x1401d1b6b
mov r11d, 1
cmp edx, r11d
jb 0x1401d1b66
mov ebx, 0xfc00
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx ecx, word [rax]
lea r9, [rax + 2]
mov eax, ecx
mov qword [r12 + 0x50], r9
and eax, ebx
cmp eax, 0xd800
jne 0x1401d1b4c
movzx eax, word [r9]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [r9 + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
cmp r8d, ecx
je case.0x1401d0871.82
cmp r10d, ecx
je case.0x1401d0871.82
inc r11d
cmp r11d, edx
jbe 0x1401d1b00
mov r11d, edx
jmp 0x1401d1bb8
mov r9d, 1
mov r11d, edx
cmp edx, r9d
jb 0x1401d1bb8
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx ecx, word [rax]
cmp r8d, ecx
je case.0x1401d0871.82
cmp r10d, ecx
je case.0x1401d0871.82
add rax, 2
inc r9d
mov qword [r12 + 0x50], rax
cmp r9d, edx
jbe 0x1401d1b80
mov r9d, dword [r12 + 0x3c]
lea r8, [0x140000000]
cmp edx, r9d
je 0x1401d0c0e
test r15d, r15d
je 0x1401d9f9c
mov r8, qword [r12 + 0x50]
mov qword [r12 + 8], r8
test r14d, r14d
je 0x1401d1cb1
cmp r11d, r9d
jae 0x1401d1c8d
mov ebx, 0xd800
mov r10d, 0xfc00
nop dword [rax]
cmp r8, qword [r13 + 0x88]
jae 0x1401d1c61
movzx edx, word [r8]
mov ecx, 1
mov eax, edx
and eax, r10d
cmp eax, ebx
jne 0x1401d1c40
movzx ecx, word [r8 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov ecx, 2
add edx, 0x10000
cmp dword [r12 + 0x40], edx
je 0x1401d1c8d
cmp dword [r12 + 0x44], edx
je 0x1401d1c8d
inc r11d
lea r8, [r8 + rcx*2]
mov qword [r12 + 0x50], r8
cmp r11d, r9d
jb 0x1401d1c00
jmp 0x1401d1c8d
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d1c8d
cmp r8, qword [r13 + 0x98]
ja 0x1401d1c7b
cmp dword [r13 + 0x34], 0
je 0x1401d1c8d
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
mov r11d, dword [rsp + 0xe0]
mov r9d, 0
lea r8, [0x140000000]
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d8a10
cmp r11d, r9d
jae 0x1401d1d10
cmp r8, qword [r13 + 0x88]
jae 0x1401d1ce4
movzx eax, word [r8]
cmp dword [r12 + 0x40], eax
je 0x1401d1d10
cmp dword [r12 + 0x44], eax
je 0x1401d1d10
add r8, 2
inc r11d
mov qword [r12 + 0x50], r8
cmp r11d, r9d
jb 0x1401d1cb6
jmp 0x1401d1d10
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d1d10
cmp r8, qword [r13 + 0x98]
ja 0x1401d1cfe
cmp dword [r13 + 0x34], 0
je 0x1401d1d10
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
mov r11d, dword [rsp + 0xe0]
mov r9d, 0
lea r8, [0x140000000]
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d80ef
mov r9d, 1
test r14d, r14d
je 0x1401d1db3
cmp edx, r9d
jb 0x1401d1df4
mov ebx, 0xfc00
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d175a
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov eax, ecx
mov qword [r12 + 0x50], rdx
and eax, ebx
cmp eax, 0xd800
jne 0x1401d1d9b
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
cmp r8d, ecx
je 0x1401d0eed
mov edx, dword [r12 + 0x38]
inc r9d
cmp r9d, edx
jbe 0x1401d1d50
jmp 0x1401d1df4
cmp edx, r9d
jb 0x1401d1df4
nop dword [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d175a
movzx ecx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp r8d, ecx
je 0x1401d0eed
mov edx, dword [r12 + 0x38]
inc r9d
cmp r9d, edx
jbe 0x1401d1dc0
mov r9d, dword [r12 + 0x3c]
lea r8, [0x140000000]
cmp edx, r9d
je 0x1401d0c16
test r15d, r15d
je 0x1401d9fbc
mov rdx, qword [r12 + 0x50]
mov qword [r12 + 8], rdx
mov r10d, dword [r12 + 0x38]
test r14d, r14d
je 0x1401d1ee9
cmp r10d, r9d
jae 0x1401d1ecd
mov ebx, 0xfc00
nop dword [rax + rax]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d1ea1
movzx r8d, word [rdx]
mov ecx, 1
mov eax, r8d
and eax, ebx
cmp eax, 0xd800
jne 0x1401d1e87
movzx ecx, word [rdx + 2]
and r8d, 0x3ff
mov eax, r8d
and ecx, 0x3ff
shl eax, 0xa
mov r8d, ecx
or r8d, eax
mov ecx, 2
add r8d, 0x10000
cmp dword [r12 + 0x40], r8d
je 0x1401d1ecd
inc r10d
lea rdx, [rdx + rcx*2]
mov qword [r12 + 0x50], rdx
cmp r10d, r9d
jb 0x1401d1e40
jmp 0x1401d1ecd
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d1ecd
cmp rdx, qword [r13 + 0x98]
ja 0x1401d1ebb
cmp dword [r13 + 0x34], 0
je 0x1401d1ecd
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
lea r8, [0x140000000]
mov r9d, 0
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d8af8
cmp r10d, r9d
jae 0x1401d1f42
nop
cmp rdx, qword [r13 + 0x88]
jae 0x1401d1f16
movzx eax, word [rdx]
cmp dword [r12 + 0x40], eax
je 0x1401d1f42
add rdx, 2
inc r10d
mov qword [r12 + 0x50], rdx
cmp r10d, r9d
jb 0x1401d1ef0
jmp 0x1401d1f42
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d1f42
cmp rdx, qword [r13 + 0x98]
ja 0x1401d1f30
cmp dword [r13 + 0x34], 0
je 0x1401d1f42
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
lea r8, [0x140000000]
mov r9d, 0
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d818c
lea rax, [rbx + 2]
add rbx, 0x22
mov qword [r12 + 0x10], rax
lea r10, [0x140000000]
mov qword [r12], rbx
movzx edx, word [rbx]
lea eax, [rdx - 0x62]
cmp eax, 0xb
ja case.default.0x1401d1f92
cdqe
mov ecx, dword [r10 + rax*4 + 0x1dacfc]
add rcx, r10
jmp rcx
lea rax, [rbx + 2]
mov qword [r12], rax
lea eax, [rdx - 0x62]
mov ecx, eax
mov eax, dword [r10 + rax*4 + 0x312d48]
mov dword [r12 + 0x38], eax
mov eax, dword [r10 + rcx*4 + 0x312d78]
mov r15d, dword [r10 + rcx*4 + 0x312da8]
mov dword [r12 + 0x3c], eax
mov dword [rsp + 0x108], r15d
jmp 0x1401d201e
movzx eax, word [rbx + 2]
mov dword [r12 + 0x38], eax
movzx eax, word [rbx + 4]
mov dword [r12 + 0x3c], eax
test eax, eax
jne 0x1401d1fef
mov dword [r12 + 0x3c], 0xffffffff
movzx eax, word [rbx]
mov r15d, dword [r10 + rax*4 + 0x312c20]
lea rax, [rbx + 6]
mov qword [r12], rax
mov dword [rsp + 0x108], r15d
jmp 0x1401d201e
mov dword [r12 + 0x3c], 1
mov dword [r12 + 0x38], 1
mov eax, dword [r12 + 0x38]
mov r9d, 1
test r14d, r14d
je 0x1401d20f1
cmp eax, r9d
jb 0x1401d2166
nop dword [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d175a
movzx r8d, word [rax]
lea rdx, [rax + 2]
mov ecx, 0xfc00
mov qword [r12 + 0x50], rdx
mov eax, r8d
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d209e
movzx ecx, word [rdx]
and r8d, 0x3ff
mov eax, r8d
and ecx, 0x3ff
shl eax, 0xa
mov r8d, ecx
or r8d, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add r8d, 0x10000
mov eax, 0xff
cmp r8d, eax
jbe 0x1401d20bc
cmp byte [r12 + 0x49], 0x6e
jne 0x1401d20de
xor edi, edi
mov r15d, eax
mov ebx, edi
jmp 0x1401d0954
mov rax, qword [r12 + 0x10]
mov ecx, r8d
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, r8d
shr rcx, 3
test byte [rcx + rax], dl
je 0x1401d0eed
mov eax, dword [r12 + 0x38]
inc r9d
cmp r9d, eax
jbe 0x1401d2040
jmp 0x1401d2166
cmp eax, r9d
jb 0x1401d2166
nop word [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d175a
movzx r8d, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
mov eax, 0xff
cmp r8d, eax
jbe 0x1401d2137
cmp byte [r12 + 0x49], 0x6e
je 0x1401d20b0
jmp 0x1401d2159
mov rax, qword [r12 + 0x10]
mov ecx, r8d
and ecx, 7
mov edx, 1
shl edx, cl
mov rcx, r8
shr rcx, 3
test byte [rcx + rax], dl
je 0x1401d0eed
mov eax, dword [r12 + 0x38]
inc r9d
cmp r9d, eax
jbe 0x1401d2100
mov r11d, dword [r12 + 0x3c]
mov r9d, 0
cmp eax, r11d
je 0x1401d0817
test r15d, r15d
je 0x1401d9fdc
mov r9, qword [r12 + 0x50]
mov qword [r12 + 8], r9
mov ebx, dword [r12 + 0x38]
test r14d, r14d
je 0x1401d2291
cmp ebx, r11d
jae 0x1401d2277
nop dword [rax]
nop dword [rax + rax]
cmp r9, qword [r13 + 0x88]
jae 0x1401d224b
movzx r8d, word [r9]
mov ecx, 0xfc00
mov eax, r8d
mov r10d, 1
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d2205
movzx ecx, word [r9 + 2]
and r8d, 0x3ff
mov eax, r8d
and ecx, 0x3ff
shl eax, 0xa
mov r8d, ecx
or r8d, eax
mov r10d, 2
add r8d, 0x10000
mov eax, 0xff
cmp r8d, eax
jbe 0x1401d2217
cmp byte [r12 + 0x49], 0x6e
jmp 0x1401d2233
mov rax, qword [r12 + 0x10]
mov ecx, r8d
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, r8d
shr rcx, 3
test byte [rcx + rax], dl
je 0x1401d2277
inc ebx
lea r9, [r9 + r10*2]
mov qword [r12 + 0x50], r9
cmp ebx, r11d
jb 0x1401d21b0
jmp 0x1401d2277
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d2277
cmp r9, qword [r13 + 0x98]
ja 0x1401d2265
cmp dword [r13 + 0x34], 0
je 0x1401d2277
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
cmp r15d, 2
jne 0x1401da1e3
mov r11d, dword [rsp + 0xe0]
xor r9d, r9d
jmp 0x1401d0833
cmp ebx, r11d
jae 0x1401d230f
cmp r9, qword [r13 + 0x88]
jae 0x1401d22e3
movzx eax, word [r9]
mov ecx, 0xff
cmp eax, ecx
jbe 0x1401d22b4
cmp byte [r12 + 0x49], 0x6e
jmp 0x1401d22cf
mov ecx, eax
mov edx, 1
and ecx, 7
shl edx, cl
mov rcx, rax
mov rax, qword [r12 + 0x10]
shr rcx, 3
test byte [rcx + rax], dl
je 0x1401d230f
add r9, 2
inc ebx
mov qword [r12 + 0x50], r9
cmp ebx, r11d
jb 0x1401d2296
jmp 0x1401d230f
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d230f
cmp r9, qword [r13 + 0x98]
ja 0x1401d22fd
cmp dword [r13 + 0x34], 0
je 0x1401d230f
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
cmp r15d, 2
jne 0x1401d7ec1
mov r11d, dword [rsp + 0xe0]
xor r9d, r9d
jmp 0x1401d0833
lea rax, [rbx + 4]
mov qword [r12 + 0x10], rax
movzx eax, word [rbx + 2]
lea rdx, [rbx + rax*2]
mov qword [r12], rdx
movzx r8d, word [rdx]
lea eax, [r8 - 0x62]
cmp eax, 0xb
ja case.default.0x1401d2363
lea r10, [0x140000000]
cdqe
mov ecx, dword [r10 + rax*4 + 0x1dad2c]
add rcx, r10
jmp rcx
lea rax, [rdx + 2]
mov qword [r12], rax
lea eax, [r8 - 0x62]
mov ecx, eax
mov eax, dword [r10 + rax*4 + 0x312d48]
mov dword [r12 + 0x38], eax
mov eax, dword [r10 + rcx*4 + 0x312d78]
mov r15d, dword [r10 + rcx*4 + 0x312da8]
mov dword [r12 + 0x3c], eax
mov dword [rsp + 0x108], r15d
jmp 0x1401d23ee
movzx eax, word [rdx + 2]
mov dword [r12 + 0x38], eax
movzx eax, word [rdx + 4]
mov dword [r12 + 0x3c], eax
test eax, eax
jne 0x1401d23bf
mov dword [r12 + 0x3c], 0xffffffff
movzx eax, word [rdx]
mov r15d, dword [r10 + rax*4 + 0x312c20]
lea rax, [rdx + 6]
mov qword [r12], rax
mov dword [rsp + 0x108], r15d
jmp 0x1401d23ee
mov dword [r12 + 0x3c], 1
mov dword [r12 + 0x38], 1
mov edi, dword [r12 + 0x38]
mov ebx, 1
cmp edi, ebx
jb 0x1401d247b
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov qword [r12 + 0x50], rdx
test r14d, r14d
je 0x1401d245b
mov r8d, 0xfc00
mov eax, ecx
and eax, r8d
mov r8d, 0xd800
cmp eax, r8d
jne 0x1401d245b
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
mov rdx, qword [r12 + 0x10]
mov r8d, r14d
call fcn.140212410
test eax, eax
je case.0x1401d0871.82
mov edi, dword [r12 + 0x38]
inc ebx
cmp ebx, edi
jbe 0x1401d2400
mov eax, dword [r12 + 0x3c]
lea r8, [0x140000000]
mov r11d, dword [rsp + 0xe0]
mov r9d, 0
cmp edi, eax
je 0x1401d0821
test r15d, r15d
je 0x1401da1b3
mov rcx, qword [r12 + 0x50]
mov qword [r12 + 8], rcx
cmp edi, eax
jae 0x1401d256c
nop dword [rax + rax]
cmp rcx, qword [r13 + 0x88]
jae 0x1401d2540
movzx r9d, word [rcx]
mov ebx, 1
test r14d, r14d
je 0x1401d2513
mov edx, 0xfc00
mov eax, r9d
and eax, edx
mov edx, 0xd800
cmp eax, edx
jne 0x1401d2513
movzx ecx, word [rcx + 2]
and r9d, 0x3ff
mov eax, r9d
and ecx, 0x3ff
shl eax, 0xa
mov r9d, ecx
or r9d, eax
mov ebx, 2
add r9d, 0x10000
mov rdx, qword [r12 + 0x10]
mov r8d, r14d
mov ecx, r9d
call fcn.140212410
test eax, eax
je 0x1401d256c
lea rax, [rbx + rbx]
inc edi
add qword [r12 + 0x50], rax
mov rcx, qword [r12 + 0x50]
cmp edi, dword [r12 + 0x3c]
jb 0x1401d24c0
jmp 0x1401d256c
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d256c
cmp rcx, qword [r13 + 0x98]
ja 0x1401d255a
cmp dword [r13 + 0x34], 0
je 0x1401d256c
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
cmp r15d, 2
jne 0x1401d8708
mov rdi, qword [rsp + 0x100]
xor r9d, r9d
mov r11d, dword [rsp + 0xe0]
jmp 0x1401d0833
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jb 0x1401d25c7
movzx ecx, word [r13 + 0x60]
test cx, cx
je case.0x1401d0871.82
cmp rax, qword [r13 + 0x98]
ja 0x1401d25be
cmp dword [r13 + 0x34], 0
je case.0x1401d0871.82
cmp cx, 1
jmp 0x1401d0b6d
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d2612
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d2612
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, 0xff
cmp edx, eax
ja 0x1401d27b2
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 8
je 0x1401d27b2
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov qword [r12 + 0x50], rdx
test r14d, r14d
je 0x1401d2691
mov r10d, 0xfc00
mov eax, ecx
and eax, r10d
mov r10d, 0xd800
cmp eax, r10d
jne 0x1401d2691
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
mov eax, 0xff
cmp ecx, eax
ja case.0x1401d0871.82
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 8
je case.0x1401d0871.82
lea rax, [rbx + 2]
mov qword [r12], rax
jmp 0x1401d0840
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d2716
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d2716
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, 0xff
cmp edx, eax
ja 0x1401d27b2
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 1
je 0x1401d27b2
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d2797
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d2797
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, 0xff
cmp edx, eax
ja case.0x1401d0871.82
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 1
je case.0x1401d0871.82
lea rax, [rbx + 2]
mov qword [r12], rax
jmp 0x1401d0833
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d281c
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d281c
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, 0xff
cmp edx, eax
ja 0x1401d27b2
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 0x10
je 0x1401d27b2
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov qword [r12 + 0x50], rdx
test r14d, r14d
je 0x1401d2893
mov r10d, 0xfc00
mov eax, ecx
and eax, r10d
mov r10d, 0xd800
cmp eax, r10d
jne 0x1401d2893
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
mov eax, 0xff
cmp ecx, eax
ja case.0x1401d0871.82
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 0x10
je case.0x1401d0871.82
lea rax, [rbx + 2]
mov qword [r12], rax
jmp 0x1401d0840
mov r8, qword [r12 + 0x50]
cmp r8, qword [r13 + 0x88]
jae 0x1401d0ce2
movzx edx, word [r8]
add r8, 2
mov qword [r12 + 0x50], r8
mov rcx, r8
test r14d, r14d
je 0x1401d2920
mov r10d, 0xfc00
mov eax, edx
and eax, r10d
mov r10d, 0xd800
cmp eax, r10d
jne 0x1401d2920
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rcx, [r8 + 2]
add edx, 0x10000
mov qword [r12 + 0x50], rcx
cmp edx, 0xd
ja 0x1401d2989
je 0x1401d2931
sub edx, 0xa
je case.0x1401d2a95.8194
sub edx, 1
jmp 0x1401d2997
cmp rcx, qword [r13 + 0x88]
jb 0x1401d2970
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d2a95.8194
cmp rcx, qword [r13 + 0x98]
ja 0x1401d2954
cmp dword [r13 + 0x34], 0
je case.0x1401d2a95.8194
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
add qword [r12], 2
jmp 0x1401d0833
cmp word [rcx], 0xa
jne case.0x1401d2a95.8194
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
add qword [r12], 2
jmp 0x1401d0833
sub edx, 0x85
je 0x1401d29a2
sub edx, 0x1fa3
je 0x1401d29a2
cmp edx, 1
jne case.0x1401d0871.82
cmp word [r13 + 0x62], 2
jne case.0x1401d2a95.8194
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d2a10
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d2a10
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov r8d, 0x2000
cmp edx, r8d
ja 0x1401d2a5c
je 0x1401d2a46
cmp edx, 9
je 0x1401d2a46
cmp edx, 0x20
je 0x1401d2a46
mov eax, 0xa0
cmp edx, eax
je 0x1401d2a46
mov eax, 0x1680
cmp edx, eax
je 0x1401d2a46
mov eax, 0x180e
cmp edx, eax
jne case.0x1401d2a95.8194
lea r10, [0x140000000]
xor edi, edi
mov ebx, edi
mov r15d, 0xff
jmp 0x1401d095a
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d2a95.8194
je 0x1401d2a46
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1401d2a95.8194
lea r10, [0x140000000]
movzx eax, byte [r10 + rdx + 0x1dad64]
mov ecx, dword [r10 + rax*4 + 0x1dad5c]
add rcx, r10
jmp rcx
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d2af4
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d2af4
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov r8d, 0x2000
cmp edx, r8d
ja 0x1401d2b43
je case.0x1401d2a95.8194
cmp edx, 9
je case.0x1401d2a95.8194
cmp edx, 0x20
je case.0x1401d2a95.8194
mov eax, 0xa0
cmp edx, eax
je case.0x1401d2a95.8194
mov eax, 0x1680
cmp edx, eax
je case.0x1401d2a95.8194
mov eax, 0x180e
cmp edx, eax
je case.0x1401d2a95.8194
jmp 0x1401d2a46
mov eax, 0x3000
cmp edx, eax
ja 0x1401d2a46
je case.0x1401d2a95.8194
add edx, 0xffffdfff
lea r10, [0x140000000]
cmp edx, 0x5e
ja case.0x1401d2a95.8193
movzx eax, byte [r10 + rdx + 0x1dadcc]
mov ecx, dword [r10 + rax*4 + 0x1dadc4]
add rcx, r10
jmp rcx
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d2bdf
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d2bdf
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
cmp edx, 0xd
ja 0x1401d2c04
je case.0x1401d0871.82
sub edx, 0xa
je case.0x1401d0871.82
sub edx, 1
je case.0x1401d0871.82
cmp edx, 1
jmp 0x1401d27ac
sub edx, 0x85
je case.0x1401d0871.82
sub edx, 0x1fa3
je case.0x1401d0871.82
cmp edx, 1
je case.0x1401d0871.82
lea rax, [rbx + 2]
mov qword [r12], rax
jmp 0x1401d0833
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d2c8f
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d2c8f
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
cmp edx, 0xd
ja 0x1401d2ca8
je 0x1401d27b2
sub edx, 0xa
je 0x1401d27b2
sub edx, 1
jmp 0x1401d2cba
sub edx, 0x85
je 0x1401d27b2
sub edx, 0x1fa3
je 0x1401d27b2
cmp edx, 1
je 0x1401d27b2
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d259c
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d2d2f
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d2d2f
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
lea r8, [0x140000000]
mov eax, edx
shr rax, 7
movzx ecx, word [r8 + rax*2 + 0x317bc0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
cmp r10b, 0xf
sete r9b
movzx eax, word [r8 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, word [rbx + 2]
lea r8, [r8 + rcx*4]
lea r8, [r8 + 0x3139b0]
cmp eax, 0xd
ja case.0x1401d8285.15
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x1dae2c]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
cmp r10b, 0xf
jne 0x1401d30a3
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
movzx ecx, byte [r8 + 1]
lea eax, [rcx - 8]
cmp al, 1
jbe 0x1401d2dbe
cmp cl, 5
je 0x1401d2dbe
xor eax, eax
jmp 0x1401d2dc3
mov eax, 1
cmp eax, r9d
jne 0x1401d30a3
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
movzx edx, byte [r8 + 1]
lea r10, [0x140000000]
movzx eax, word [rbx + 4]
xor ecx, ecx
cmp eax, dword [r10 + rdx*4 + 0x32f4f0]
sete cl
cmp ecx, r9d
jne 0x1401d30a3
xor edi, edi
mov ebx, edi
jmp 0x1401d094e
movzx eax, byte [r8 + 1]
xor ecx, ecx
cmp word [rbx + 4], ax
sete cl
cmp ecx, r9d
jne 0x1401d30a3
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
movzx eax, byte [r8]
jmp 0x1401d2e09
movzx ecx, word [rbx + 4]
lea r10, [0x140000000]
movzx eax, byte [r8]
cmp cx, ax
je 0x1401d2e67
movzx edx, word [r8 + 8]
movzx eax, cx
and edx, 0x3ff
shr rax, 5
and ecx, 0x1f
add rdx, rax
mov eax, dword [r10 + rdx*4 + 0x3136b0]
bt eax, ecx
jb 0x1401d2e67
xor eax, eax
jmp 0x1401d2e6c
mov eax, 1
cmp eax, r9d
jne 0x1401d30a3
xor edi, edi
mov ebx, edi
jmp 0x1401d094e
movzx eax, byte [r8 + 1]
lea r10, [0x140000000]
mov ecx, dword [r10 + rax*4 + 0x32f4f0]
mov eax, 0
dec ecx
test ecx, 0xfffffffd
sete al
cmp eax, r9d
jne 0x1401d30a3
xor edi, edi
mov ebx, edi
jmp 0x1401d094e
mov eax, 0x2000
cmp edx, eax
ja 0x1401d2f54
je case.0x1401d2d94.0
cmp edx, 0x20
ja 0x1401d2f2b
je case.0x1401d2d94.0
sub edx, 9
je case.0x1401d2d94.0
sub edx, 1
je case.0x1401d2d94.0
sub edx, 1
je case.0x1401d2d94.0
sub edx, 1
je case.0x1401d2d94.0
cmp edx, 1
je case.0x1401d2d94.0
movzx ecx, byte [r8 + 1]
lea r10, [0x140000000]
xor eax, eax
cmp dword [r10 + rcx*4 + 0x32f4f0], 6
sete al
cmp eax, r9d
jne 0x1401d30a3
xor edi, edi
mov ebx, edi
jmp 0x1401d094e
sub edx, 0x85
je case.0x1401d2d94.0
sub edx, 0x1b
je case.0x1401d2d94.0
sub edx, 0x15e0
je case.0x1401d2d94.0
cmp edx, 0x18e
jmp 0x1401d2ef9
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d2f89.8194
je case.0x1401d2d94.0
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1401d2f89.8194
mov eax, edx
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x1dae6c]
mov ecx, dword [rdx + rax*4 + 0x1dae64]
add rcx, rdx
jmp rcx
movzx eax, byte [r8 + 1]
lea r10, [0x140000000]
mov ecx, dword [r10 + rax*4 + 0x32f4f0]
dec ecx
test ecx, 0xfffffffd
je 0x1401d2e67
cmp edx, 0x5f
je 0x1401d2e67
xor eax, eax
jmp 0x1401d2e6c
movzx eax, word [rbx + 4]
lea r8, [0x140000000]
lea rcx, [r8 + 0x3133e0]
lea rcx, [rcx + rax*4]
mov eax, dword [rcx]
cmp edx, eax
jb 0x1401d2fee
nop dword [rax]
lea rcx, [rcx + 4]
cmp edx, eax
je 0x1401d3001
mov eax, dword [rcx]
cmp edx, eax
jae 0x1401d2fe0
cmp r10b, 0xf
je 0x1401d30aa
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
cmp r10b, 0xf
jne 0x1401d30aa
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
lea eax, [rdx - 0x24]
cmp eax, 0x3c
ja 0x1401d3030
movabs rcx, 0x1000000010000001
bt rcx, rax
jb 0x1401d2dbe
lea eax, [rdx - 0xa0]
cmp eax, 0xd75f
jbe 0x1401d2dbe
cmp edx, 0xe000
jae 0x1401d2dbe
xor eax, eax
jmp 0x1401d2dc3
movzx eax, word [r8 + 8]
xor ecx, ecx
shr ax, 0xb
cmp ax, word [rbx + 4]
jmp 0x1401d2e0f
movzx ecx, word [rbx + 4]
lea r10, [0x140000000]
movzx edx, word [r8 + 0xa]
mov eax, ecx
and edx, 0xfff
shr rax, 5
add rdx, rax
and ecx, 0x1f
mov eax, dword [r10 + rdx*4 + 0x312e50]
xor edx, edx
bt eax, ecx
setb dl
cmp edx, r9d
je 0x1401d0eed
lea r8, [0x140000000]
add qword [r12], 6
xor r9d, r9d
jmp 0x1401d0840
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jb 0x1401d30df
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d0871.82
cmp rdx, qword [r13 + 0x98]
jmp 0x1401d0b5c
movzx r10d, word [rdx]
add rdx, 2
mov qword [r12 + 0x50], rdx
mov rcx, rdx
test r14d, r14d
je 0x1401d3137
mov r8d, 0xfc00
mov eax, r10d
and eax, r8d
mov r8d, 0xd800
cmp eax, r8d
jne 0x1401d3137
movzx ecx, word [rdx]
and r10d, 0x3ff
mov eax, r10d
and ecx, 0x3ff
shl eax, 0xa
mov r10d, ecx
or r10d, eax
lea rcx, [rdx + 2]
add r10d, 0x10000
mov qword [r12 + 0x50], rcx
mov r8, qword [r13 + 0x78]
mov rdx, rcx
mov qword [rsp + 0x28], r9
mov ecx, r10d
mov r9, qword [r13 + 0x88]
mov dword [rsp + 0x20], r14d
call fcn.140211d10
mov qword [r12 + 0x50], rax
cmp rax, qword [r13 + 0x88]
jb 0x1401d3191
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d3191
cmp rax, qword [r13 + 0x98]
ja 0x1401d317f
cmp dword [r13 + 0x34], 0
je 0x1401d3191
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
add qword [r12], 2
mov r11d, dword [rsp + 0xe0]
xor r9d, r9d
jmp 0x1401d0833
movzx eax, word [rbx + 2]
lea r10, [0x140000000]
mov dword [r12 + 0x3c], eax
add rbx, 4
mov dword [r12 + 0x38], eax
mov qword [r12], rbx
jmp 0x1401d330b
xor edi, edi
lea r10, [0x140000000]
mov dword [r12 + 0x38], edi
mov r15d, edi
movzx eax, word [rbx + 2]
mov dword [r12 + 0x3c], eax
cmp word [rbx], 0x5c
setne r15b
add rbx, 4
mov qword [r12], rbx
mov dword [rsp + 0x108], r15d
jmp 0x1401d330d
mov eax, 2
lea r10, [0x140000000]
xor edi, edi
mov dword [rsp + 0x108], eax
mov dword [r12 + 0x38], edi
add rbx, rax
mov dword [r12 + 0x3c], 0xffffffff
mov r15d, eax
mov qword [r12], rbx
jmp 0x1401d330d
mov eax, 2
mov dword [r12 + 0x38], 1
add rbx, rax
mov dword [r12 + 0x3c], 0xffffffff
mov qword [r12], rbx
lea r10, [0x140000000]
mov r15d, eax
mov dword [rsp + 0x108], eax
jmp 0x1401d330b
mov eax, 2
lea r10, [0x140000000]
xor edi, edi
mov dword [rsp + 0x108], eax
mov dword [r12 + 0x38], edi
add rbx, rax
mov dword [r12 + 0x3c], 1
mov r15d, eax
mov qword [r12], rbx
jmp 0x1401d330d
mov eax, 2
lea r10, [0x140000000]
xor edi, edi
mov dword [rsp + 0x108], eax
mov dword [r12 + 0x38], edi
mov r15d, eax
movzx eax, word [rbx + 2]
add rbx, 4
mov dword [r12 + 0x3c], eax
mov qword [r12], rbx
jmp 0x1401d330d
movzx eax, word [rbx]
lea r10, [0x140000000]
sub eax, 0x55
add rbx, 2
mov qword [r12], rbx
lea rcx, [rax*4]
mov eax, dword [rcx + r10 + 0x312d48]
mov r15d, dword [rcx + r10 + 0x312da8]
mov dword [r12 + 0x38], eax
mov eax, dword [rcx + r10 + 0x312d78]
mov dword [r12 + 0x3c], eax
mov dword [rsp + 0x108], r15d
xor edi, edi
movzx eax, word [rbx]
lea rcx, [rbx + 2]
mov dword [r12 + 0x40], eax
sub ax, 0xf
mov qword [r12], rcx
cmp ax, 1
jbe 0x1401d332e
mov esi, 0xffffffff
jmp 0x1401d3349
movzx esi, word [rcx]
add rcx, 2
mov qword [r12], rcx
movzx eax, word [rcx]
mov dword [r12 + 0x44], eax
lea rax, [rcx + 2]
mov qword [r12], rax
mov r9d, dword [r12 + 0x38]
test r9d, r9d
je 0x1401d33e7
mov edx, dword [r12 + 0x40]
test esi, esi
js 0x1401d3eaa
cmp edx, 0xf
mov r11d, edi
sete r11b
cmp esi, 0xd
ja case.0x1401d8285.15
movsxd rax, esi
mov ecx, dword [r10 + rax*4 + 0x1daecc]
add rcx, r10
jmp rcx
cmp edx, 0xf
je 0x1401d0eef
mov edx, 1
nop word [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx ecx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
test r14d, r14d
je 0x1401d33e0
mov r8d, 0xfc00
and ecx, r8d
mov r8d, 0xd800
cmp ecx, r8d
jne 0x1401d33e0
add rax, 2
mov qword [r12 + 0x50], rax
inc edx
cmp edx, r9d
jbe 0x1401d33a0
lea rbx, [0x140000000]
mov r8d, 0x2000
mov r11d, dword [r12 + 0x3c]
mov r9d, 0
mov edi, dword [r12 + 0x38]
cmp edi, r11d
je 0x1401d0807
test r15d, r15d
je 0x1401d9ffc
mov r10, qword [r12 + 0x50]
mov qword [r12 + 8], r10
mov eax, dword [r12 + 0x40]
test esi, esi
js 0x1401d593e
cmp eax, 0xf
mov ebx, r9d
sete bl
cmp esi, 0xd
ja case.0x1401d8285.15
movsxd rax, esi
lea rsi, [0x140000000]
mov ecx, dword [rsi + rax*4 + 0x1daf04]
add rcx, rsi
jmp rcx
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d0eef
cmp rax, qword [r13 + 0x98]
ja 0x1401d3477
cmp dword [r13 + 0x34], 0
je 0x1401d0eef
mov dword [r13 + 0x2c], 1
cmp cx, 1
jbe 0x1401d0eef
mov eax, 0xfffffffe
jmp 0x1401da907
mov r9d, 1
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d34f9
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d34f9
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx edx, byte [r10 + rcx*4 + 0x3139b1]
lea eax, [rdx - 5]
test al, 0xfb
je 0x1401d3534
mov eax, edi
cmp dl, 8
jne 0x1401d3539
mov eax, 1
cmp eax, r11d
je 0x1401d0eef
inc r9d
cmp r9d, dword [r12 + 0x38]
jbe 0x1401d34a0
jmp 0x1401d33e7
mov r8d, 1
nop dword [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea rcx, [rax + 2]
mov qword [r12 + 0x50], rcx
test r14d, r14d
je 0x1401d35b7
mov ebx, 0xfc00
mov eax, edx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x1401d35b7
movzx eax, word [rcx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
mov eax, dword [r12 + 0x44]
movzx edx, byte [r10 + rcx*4 + 0x3139b1]
mov ecx, edi
cmp dword [r10 + rdx*4 + 0x32f4f0], eax
sete cl
cmp ecx, r11d
je 0x1401d0eef
inc r8d
cmp r8d, r9d
jbe 0x1401d3560
jmp 0x1401d33e7
mov r10d, 1
lea rbx, [0x140000000]
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d36cb
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d367d
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d367d
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rbx + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rbx + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [rbx + rcx*4 + 0x3139b1]
mov ecx, edi
cmp eax, dword [r12 + 0x44]
sete cl
cmp ecx, r11d
je 0x1401d0a59
inc r10d
cmp r10d, r9d
jbe 0x1401d3620
jmp 0x1401d33ee
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d0a59
cmp rax, qword [r13 + 0x98]
ja 0x1401d36ed
cmp dword [r13 + 0x34], 0
je 0x1401d0a59
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov ebx, edi
jmp 0x1401d0947
mov r10d, 1
lea rbx, [0x140000000]
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d36cb
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d3779
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d3779
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rbx + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rbx + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [rbx + rcx*4 + 0x3139b0]
mov ecx, edi
cmp eax, dword [r12 + 0x44]
sete cl
cmp ecx, r11d
je 0x1401d0a59
inc r10d
cmp r10d, r9d
jbe 0x1401d3720
jmp 0x1401d33ee
mov r9d, 1
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d382d
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d382d
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
lea rdx, [rcx*4 + 0x3139b0]
mov ecx, dword [r12 + 0x44]
movzx eax, byte [rdx + r10]
cmp eax, ecx
je 0x1401d388e
movzx edx, word [rdx + r10 + 8]
mov eax, ecx
shr rax, 5
and edx, 0x3ff
add rdx, rax
and ecx, 0x1f
mov eax, dword [r10 + rdx*4 + 0x3136b0]
bt eax, ecx
mov eax, edi
jae 0x1401d3893
mov eax, 1
cmp eax, r11d
je 0x1401d0eef
inc r9d
cmp r9d, dword [r12 + 0x38]
jbe 0x1401d37d0
jmp 0x1401d33e7
mov r9d, 1
nop word [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d391d
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d391d
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [r10 + rcx*4 + 0x3139b1]
mov eax, dword [r10 + rax*4 + 0x32f4f0]
dec eax
test eax, 0xfffffffd
mov eax, edi
sete al
cmp eax, r11d
je 0x1401d0eef
inc r9d
cmp r9d, dword [r12 + 0x38]
jbe 0x1401d38c0
jmp 0x1401d33e7
mov r8d, 1
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea rcx, [rax + 2]
mov qword [r12 + 0x50], rcx
test r14d, r14d
je 0x1401d39db
mov r9d, 0xfc00
mov eax, edx
and eax, r9d
mov r9d, 0xd800
cmp eax, r9d
jne 0x1401d39db
movzx eax, word [rcx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, 0x2000
cmp edx, eax
ja 0x1401d3aaf
je case.0x1401d3ae1.8193
cmp edx, 0x20
ja 0x1401d3a90
je case.0x1401d3ae1.8193
mov eax, edx
sub eax, 9
je case.0x1401d3ae1.8193
sub eax, 1
je case.0x1401d3ae1.8193
sub eax, 1
je case.0x1401d3ae1.8193
sub eax, 1
je case.0x1401d3ae1.8193
cmp eax, 1
je case.0x1401d3ae1.8193
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
mov eax, edi
movzx edx, byte [r10 + rcx*4 + 0x3139b1]
cmp dword [r10 + rdx*4 + 0x32f4f0], 6
sete al
cmp eax, r11d
je 0x1401d0eef
inc r8d
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d3980
mov r8d, 0x2000
lea rbx, [0x140000000]
jmp 0x1401d33f4
mov eax, edx
sub eax, 0x85
je case.0x1401d3ae1.8193
sub eax, 0x1b
je case.0x1401d3ae1.8193
sub eax, 0x15e0
je case.0x1401d3ae1.8193
cmp eax, 0x18e
jmp 0x1401d3a26
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d3ae1.8194
je case.0x1401d3ae1.8193
lea eax, [rdx - 0x2001]
cmp eax, 0x5e
ja case.0x1401d3ae1.8194
movzx eax, byte [r10 + rax + 0x1daf44]
mov ecx, dword [r10 + rax*4 + 0x1daf3c]
add rcx, r10
jmp rcx
test r11d, r11d
jne 0x1401d0eef
jmp 0x1401d3a70
mov r9d, 1
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d3b51
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d3b51
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [r10 + rcx*4 + 0x3139b1]
mov eax, dword [r10 + rax*4 + 0x32f4f0]
dec eax
test eax, 0xfffffffd
je 0x1401d3b98
mov eax, edi
cmp edx, 0x5f
jne 0x1401d3b9d
mov eax, 1
cmp eax, r11d
je 0x1401d0eef
inc r9d
cmp r9d, dword [r12 + 0x38]
jbe 0x1401d3af4
jmp 0x1401d33e7
mov r9d, 1
nop
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d3c1d
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d3c1d
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, dword [r12 + 0x44]
lea rcx, [rax*4 + 0x3133e0]
add rcx, r10
mov eax, dword [rcx]
cmp edx, eax
jb 0x1401d3c41
lea rcx, [rcx + 4]
cmp edx, eax
je 0x1401d3c5d
mov eax, dword [rcx]
cmp edx, eax
jae 0x1401d3c33
test r11d, r11d
je 0x1401d0eef
inc r9d
cmp r9d, dword [r12 + 0x38]
jbe 0x1401d3bc0
jmp 0x1401d33e7
test r11d, r11d
jne 0x1401d0eef
jmp 0x1401d3c4a
mov r9d, 1
nop
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d3ccd
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d3ccd
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
lea eax, [rdx - 0x24]
cmp eax, 0x3c
ja 0x1401d3ce5
movabs rcx, 0x1000000010000001
bt rcx, rax
jb 0x1401d3cfc
lea eax, [rdx - 0xa0]
cmp eax, 0xd75f
jbe 0x1401d3cfc
mov eax, edi
cmp edx, 0xe000
jb 0x1401d3d01
mov eax, 1
cmp eax, r11d
je 0x1401d0eef
inc r9d
cmp r9d, dword [r12 + 0x38]
jbe 0x1401d3c70
jmp 0x1401d33e7
mov r8d, 1
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea rcx, [rax + 2]
mov qword [r12 + 0x50], rcx
test r14d, r14d
je 0x1401d3d7a
mov ebx, 0xfc00
mov eax, edx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x1401d3d7a
movzx eax, word [rcx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, word [r10 + rcx*4 + 0x3139b8]
mov ecx, edi
shr eax, 0xb
cmp eax, dword [r12 + 0x44]
sete cl
cmp ecx, r11d
je 0x1401d0eef
inc r8d
cmp r8d, r9d
jbe 0x1401d3d23
jmp 0x1401d33e7
mov r10d, 1
lea rbx, [0x140000000]
nop dword [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d36cb
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d3e3d
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d3e3d
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov r8d, dword [r12 + 0x44]
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rbx + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rbx + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
mov eax, r8d
movzx edx, word [rbx + rcx*4 + 0x3139ba]
and r8d, 0x1f
and edx, 0xfff
shr rax, 5
add rdx, rax
mov eax, dword [rbx + rdx*4 + 0x312e50]
bt eax, r8d
mov edx, edi
setb dl
cmp edx, r11d
je 0x1401d0a59
inc r10d
cmp r10d, r9d
jbe 0x1401d3de0
jmp 0x1401d33ee
cmp edx, 0x16
jne 0x1401d3f96
lea ebx, [rdx - 0x15]
nop word [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d36cb
movzx r10d, word [rax]
lea rdx, [rax + 2]
mov qword [r12 + 0x50], rdx
mov rcx, rdx
test r14d, r14d
je 0x1401d3f2a
mov r8d, 0xfc00
mov eax, r10d
and eax, r8d
mov r8d, 0xd800
cmp eax, r8d
jne 0x1401d3f2a
movzx ecx, word [rdx]
and r10d, 0x3ff
mov eax, r10d
and ecx, 0x3ff
shl eax, 0xa
mov r10d, ecx
or r10d, eax
lea rcx, [rdx + 2]
add r10d, 0x10000
mov qword [r12 + 0x50], rcx
mov r9, qword [r13 + 0x88]
mov rdx, rcx
mov r8, qword [r13 + 0x78]
mov ecx, r10d
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], r14d
call fcn.140211d10
mov qword [r12 + 0x50], rax
cmp rax, qword [r13 + 0x88]
jb 0x1401d3f84
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d3f84
cmp rax, qword [r13 + 0x98]
ja 0x1401d3f72
cmp dword [r13 + 0x34], 0
je 0x1401d3f84
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
inc ebx
cmp ebx, dword [r12 + 0x38]
jbe 0x1401d3ec0
jmp 0x1401d33e7
add edx, 0xfffffffa
cmp edx, 0xf
ja case.0x1401d8285.15
test r14d, r14d
je 0x1401d48ab
mov ecx, dword [r10 + rdx*4 + 0x1dafa4]
add rcx, r10
jmp rcx
mov ebx, 1
nop dword [rax]
mov rcx, qword [r12 + 0x50]
mov r8, qword [r13 + 0x88]
cmp rcx, r8
jae 0x1401d40cc
mov edx, dword [r13 + 0xdc]
test edx, edx
je 0x1401d3ffb
lea r9, [r13 + 0xe0]
mov dword [rsp + 0x20], r14d
call fcn.14020ec20
test eax, eax
jne 0x1401d0a59
jmp 0x1401d4036
mov edx, dword [r13 + 0xe0]
imul rax, rdx, 0xfffffffffffffffe
add rax, r8
cmp rcx, rax
ja 0x1401d4036
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d4036
cmp edx, 1
je 0x1401d0a59
movzx eax, word [r13 + 0xe6]
cmp word [rcx + 2], ax
je 0x1401d0a59
movzx edx, word [r13 + 0x60]
test dx, dx
je 0x1401d4085
mov rcx, qword [r12 + 0x50]
lea rax, [rcx + 2]
cmp rax, qword [r13 + 0x88]
jb 0x1401d4085
cmp dword [r13 + 0xdc], 0
jne 0x1401d4085
cmp dword [r13 + 0xe0], 2
jne 0x1401d4085
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d4085
mov dword [r13 + 0x2c], 1
cmp dx, 1
ja 0x1401d3489
mov rcx, qword [r12 + 0x50]
add rcx, 2
mov qword [r12 + 0x50], rcx
cmp rcx, qword [r13 + 0x88]
jae 0x1401d40ba
movzx eax, word [rcx]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x1401d40ba
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
inc ebx
cmp ebx, dword [r12 + 0x38]
jbe 0x1401d3fc0
jmp 0x1401d33e7
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d0a59
cmp rcx, qword [r13 + 0x98]
ja 0x1401d40ee
cmp dword [r13 + 0x34], 0
je 0x1401d0a59
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
mov ebx, edi
jmp 0x1401d0947
mov edx, 1
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
lea rcx, [rax + 2]
mov qword [r12 + 0x50], rcx
cmp rcx, qword [r13 + 0x88]
jae 0x1401d4156
movzx eax, word [rcx]
mov r8d, 0xfc00
and ax, r8w
mov r8d, 0xdc00
cmp ax, r8w
jne 0x1401d4156
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
inc edx
cmp edx, r9d
jbe 0x1401d4110
jmp 0x1401d33e7
mov rdx, qword [r12 + 0x50]
mov r8d, 0x2000
imul rax, r9, 0xfffffffffffffffe
add rax, qword [r13 + 0x88]
cmp rdx, rax
jbe 0x1401d418a
mov ebx, edi
mov r15d, 0xff
jmp 0x1401d095a
lea rax, [rdx + r9*2]
mov qword [r12 + 0x50], rax
lea rbx, [0x140000000]
jmp 0x1401d33f4
mov r8d, 1
mov r9d, 0xfc00
mov r11d, 0xd800
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d4256
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov eax, ecx
mov qword [r12 + 0x50], rdx
and eax, r9d
cmp eax, r11d
jne 0x1401d41fb
movzx eax, word [rdx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add rdx, 2
mov qword [r12 + 0x50], rdx
cmp ecx, 0xd
ja 0x1401d4226
je 0x1401d420c
sub ecx, 0xa
je 0x1401d4243
sub ecx, 1
jmp 0x1401d4234
cmp rdx, qword [r13 + 0x88]
jae 0x1401d4243
cmp word [rdx], 0xa
jne 0x1401d4243
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
jmp 0x1401d4243
sub ecx, 0x85
je 0x1401d423b
sub ecx, 0x1fa3
je 0x1401d423b
cmp ecx, 1
jne case.0x1401d437b.8193
cmp word [r13 + 0x62], 2
je case.0x1401d437b.8193
inc r8d
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d41b1
jmp 0x1401d33e7
movzx ecx, word [r13 + 0x60]
test cx, cx
je case.0x1401d437b.8193
cmp rax, qword [r13 + 0x98]
ja 0x1401d4270
cmp dword [r13 + 0x34], 0
je case.0x1401d437b.8193
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov ebx, edi
mov esi, r9d
mov ebp, r11d
mov r8d, 0x2000
mov r15d, 0xff
jmp case.0x1401d09be.33
mov r8d, 1
mov r9d, 0xfc00
mov r11d, 0xd800
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d4256
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov eax, ecx
mov qword [r12 + 0x50], rdx
and eax, r9d
cmp eax, r11d
jne 0x1401d42f6
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
mov eax, 0x2000
cmp ecx, eax
ja 0x1401d434d
je case.0x1401d437b.8193
cmp ecx, 9
je case.0x1401d437b.8193
cmp ecx, 0x20
je case.0x1401d437b.8193
mov eax, 0xa0
cmp ecx, eax
je case.0x1401d437b.8193
mov eax, 0x1680
cmp ecx, eax
je case.0x1401d437b.8193
mov eax, 0x180e
cmp ecx, eax
je case.0x1401d437b.8193
inc r8d
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d42b0
jmp 0x1401d33e7
mov eax, 0x3000
cmp ecx, eax
ja case.0x1401d437b.8194
je case.0x1401d437b.8193
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x1401d437b.8194
movzx eax, byte [r10 + rcx + 0x1dafec]
mov ecx, dword [r10 + rax*4 + 0x1dafe4]
add rcx, r10
jmp rcx
mov r9d, 1
mov r8d, 0x2000
nop dword [rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d446c
movzx edx, word [rax]
lea r8, [rax + 2]
mov ecx, 0xfc00
mov qword [r12 + 0x50], r8
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d43e8
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov r8d, 0x2000
cmp edx, r8d
ja 0x1401d4438
je case.0x1401d446a.8193
cmp edx, 9
je case.0x1401d446a.8193
cmp edx, 0x20
je case.0x1401d446a.8193
mov eax, 0xa0
cmp edx, eax
je case.0x1401d446a.8193
mov eax, 0x1680
cmp edx, eax
je case.0x1401d446a.8193
mov eax, 0x180e
cmp edx, eax
jne case.0x1401d4b1d.8193
inc r9d
cmp r9d, dword [r12 + 0x38]
jbe 0x1401d4390
lea rbx, [0x140000000]
jmp 0x1401d33f4
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d4b1d.8193
je case.0x1401d446a.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1401d4b1d.8193
movzx eax, byte [r10 + rdx + 0x1db054]
mov ecx, dword [r10 + rax*4 + 0x1db04c]
add rcx, r10
jmp rcx
movzx ecx, word [r13 + 0x60]
test cx, cx
je case.0x1401d4b1d.8193
cmp rax, qword [r13 + 0x98]
ja 0x1401d448e
cmp dword [r13 + 0x34], 0
je case.0x1401d4b1d.8193
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov ebx, edi
mov r15d, 0xff
jmp 0x1401d095a
mov r9d, 1
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea r8, [rax + 2]
mov ecx, 0xfc00
mov qword [r12 + 0x50], r8
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d450b
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
cmp edx, 0xd
ja 0x1401d4524
je 0x1401d0eef
sub edx, 0xa
je 0x1401d0eef
sub edx, 1
jmp 0x1401d4536
sub edx, 0x85
je 0x1401d0eef
sub edx, 0x1fa3
je 0x1401d0eef
cmp edx, 1
je 0x1401d0eef
inc r9d
cmp r9d, dword [r12 + 0x38]
jbe 0x1401d44b3
jmp 0x1401d33e7
mov r9d, 1
nop
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx edx, word [rax]
lea r8, [rax + 2]
mov ecx, 0xfc00
mov qword [r12 + 0x50], r8
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d45b8
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
cmp edx, 0xd
ja 0x1401d45c9
je 0x1401d45e2
sub edx, 0xa
je 0x1401d45e2
sub edx, 1
jmp 0x1401d45d7
sub edx, 0x85
je 0x1401d45e2
sub edx, 0x1fa3
je 0x1401d45e2
cmp edx, 1
jne 0x1401d0eef
inc r9d
cmp r9d, dword [r12 + 0x38]
jbe 0x1401d4560
jmp 0x1401d33e7
mov r8d, 1
mov r9d, 0xfc00
mov r11d, 0xd800
nop word [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d4256
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov eax, ecx
mov qword [r12 + 0x50], rdx
and eax, r9d
cmp eax, r11d
jne 0x1401d465a
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
mov eax, 0x80
cmp ecx, eax
jae 0x1401d4671
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 8
jne case.0x1401d437b.8193
inc r8d
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d4610
jmp 0x1401d33e7
mov r8d, 1
nop word [rax + rax]
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0x80
cmp ax, cx
jae 0x1401d0eef
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 8
je 0x1401d0eef
lea rax, [rdx + 2]
inc r8d
mov qword [r12 + 0x50], rax
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d4690
jmp 0x1401d33e7
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d0eef
cmp rdx, qword [r13 + 0x98]
ja 0x1401d46f9
cmp dword [r13 + 0x34], 0
je 0x1401d0eef
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
mov ebx, edi
jmp 0x1401d094e
mov r8d, 1
nop dword [rax + rax]
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0x80
cmp ax, cx
jae 0x1401d474b
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 1
jne 0x1401d0eef
lea rcx, [rdx + 2]
mov qword [r12 + 0x50], rcx
cmp rcx, qword [r13 + 0x88]
jae 0x1401d477b
movzx eax, word [rcx]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x1401d477b
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
inc r8d
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d4720
jmp 0x1401d33e7
mov r8d, 1
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0x80
cmp ax, cx
jae 0x1401d0eef
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 1
je 0x1401d0eef
lea rax, [rdx + 2]
inc r8d
mov qword [r12 + 0x50], rax
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d4790
jmp 0x1401d33e7
mov r8d, 1
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0x80
cmp ax, cx
jae 0x1401d4810
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 0x10
jne 0x1401d0eef
lea rcx, [rdx + 2]
mov qword [r12 + 0x50], rcx
cmp rcx, qword [r13 + 0x88]
jae 0x1401d4840
movzx eax, word [rcx]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x1401d4840
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
inc r8d
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d47e1
jmp 0x1401d33e7
mov r8d, 1
nop word [rax + rax]
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0x80
cmp ax, cx
jae 0x1401d0eef
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 0x10
je 0x1401d0eef
lea rax, [rdx + 2]
inc r8d
mov qword [r12 + 0x50], rax
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d4860
jmp 0x1401d33e7
mov ecx, dword [r10 + rdx*4 + 0x1db0b4]
add rcx, r10
jmp rcx
mov ebx, 1
nop dword [rax]
mov rcx, qword [r12 + 0x50]
mov r8, qword [r13 + 0x88]
cmp rcx, r8
jae 0x1401d40cc
mov edx, dword [r13 + 0xdc]
test edx, edx
je 0x1401d48fb
lea r9, [r13 + 0xe0]
mov dword [rsp + 0x20], r14d
call fcn.14020ec20
test eax, eax
jne 0x1401d0a59
jmp 0x1401d4936
mov edx, dword [r13 + 0xe0]
imul rax, rdx, 0xfffffffffffffffe
add rax, r8
cmp rcx, rax
ja 0x1401d4936
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d4936
cmp edx, 1
je 0x1401d0a59
movzx eax, word [r13 + 0xe6]
cmp word [rcx + 2], ax
je 0x1401d0a59
movzx edx, word [r13 + 0x60]
test dx, dx
je 0x1401d4985
mov rcx, qword [r12 + 0x50]
lea rax, [rcx + 2]
cmp rax, qword [r13 + 0x88]
jb 0x1401d4985
cmp dword [r13 + 0xdc], 0
jne 0x1401d4985
cmp dword [r13 + 0xe0], 2
jne 0x1401d4985
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d4985
mov dword [r13 + 0x2c], 1
cmp dx, 1
ja 0x1401d3489
add qword [r12 + 0x50], 2
inc ebx
cmp ebx, dword [r12 + 0x38]
jbe 0x1401d48c0
jmp 0x1401d33e7
mov rcx, qword [r12 + 0x50]
imul rax, r9, 0xfffffffffffffffe
add rax, qword [r13 + 0x88]
cmp rcx, rax
jbe 0x1401d49cc
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d0eef
cmp rcx, qword [r13 + 0x98]
jmp 0x1401d46ec
lea rax, [rcx + r9*2]
mov qword [r12 + 0x50], rax
jmp 0x1401d33e7
mov edx, 1
nop
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx ecx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp ecx, 0xd
ja 0x1401d4a29
je 0x1401d4a0f
sub ecx, 0xa
je 0x1401d4a4e
sub ecx, 1
jmp 0x1401d4a37
cmp rax, qword [r13 + 0x88]
jae 0x1401d4a4e
cmp word [rax], 0xa
jne 0x1401d4a4e
add rax, 2
mov qword [r12 + 0x50], rax
jmp 0x1401d4a4e
sub ecx, 0x85
je 0x1401d4a42
sub ecx, 0x1fa3
je 0x1401d4a42
cmp ecx, 1
jne 0x1401d0eef
cmp word [r13 + 0x62], 2
je 0x1401d0eef
inc edx
cmp edx, dword [r12 + 0x38]
jbe 0x1401d49e0
jmp 0x1401d33e7
mov edx, 1
mov r8d, 0x2000
nop word [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d446c
movzx ecx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp cx, r8w
ja 0x1401d4aeb
je case.0x1401d4b1d.8193
cmp ecx, 9
je case.0x1401d4b1d.8193
cmp ecx, 0x20
je case.0x1401d4b1d.8193
mov eax, 0xa0
cmp cx, ax
je case.0x1401d4b1d.8193
mov eax, 0x1680
cmp cx, ax
je case.0x1401d4b1d.8193
mov eax, 0x180e
cmp cx, ax
je case.0x1401d4b1d.8193
inc edx
cmp edx, dword [r12 + 0x38]
jbe 0x1401d4a70
lea rbx, [0x140000000]
jmp 0x1401d33f4
mov eax, 0x3000
cmp cx, ax
ja case.0x1401d4b1d.8194
je case.0x1401d4b1d.8193
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x1401d4b1d.8194
movsxd rax, ecx
movzx eax, byte [r10 + rax + 0x1db0fc]
mov ecx, dword [r10 + rax*4 + 0x1db0f4]
add rcx, r10
jmp rcx
mov edx, 1
mov r8d, 0x2000
nop word [rax + rax]
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d446c
movzx ecx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp cx, r8w
ja 0x1401d4b97
je case.0x1401d4bcd.8193
cmp ecx, 9
je case.0x1401d4bcd.8193
cmp ecx, 0x20
je case.0x1401d4bcd.8193
mov eax, 0xa0
cmp cx, ax
je case.0x1401d4bcd.8193
mov eax, 0x1680
cmp cx, ax
je case.0x1401d4bcd.8193
mov eax, 0x180e
cmp cx, ax
jne case.0x1401d4b1d.8193
inc edx
cmp edx, dword [r12 + 0x38]
jbe 0x1401d4b30
lea rbx, [0x140000000]
jmp 0x1401d33f4
mov eax, 0x3000
cmp cx, ax
ja case.0x1401d4b1d.8193
je case.0x1401d4bcd.8193
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x1401d4b1d.8193
movsxd rax, ecx
movzx eax, byte [r10 + rax + 0x1db164]
mov ecx, dword [r10 + rax*4 + 0x1db15c]
add rcx, r10
jmp rcx
mov edx, 1
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx ecx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp ecx, 0xd
ja 0x1401d4c0b
je 0x1401d0eef
sub ecx, 0xa
je 0x1401d0eef
sub ecx, 1
jmp 0x1401d4c1d
sub ecx, 0x85
je 0x1401d0eef
sub ecx, 0x1fa3
je 0x1401d0eef
cmp ecx, 1
je 0x1401d0eef
inc edx
cmp edx, dword [r12 + 0x38]
jbe 0x1401d4bd4
jmp 0x1401d33e7
mov edx, 1
nop
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d3455
movzx ecx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp ecx, 0xd
ja 0x1401d4c6f
je 0x1401d4c88
sub ecx, 0xa
je 0x1401d4c88
sub ecx, 1
jmp 0x1401d4c7d
sub ecx, 0x85
je 0x1401d4c88
sub ecx, 0x1fa3
je 0x1401d4c88
cmp ecx, 1
jne 0x1401d0eef
inc edx
cmp edx, dword [r12 + 0x38]
jbe 0x1401d4c40
jmp 0x1401d33e7
mov r8d, 1
nop dword [rax]
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0xff
cmp ax, cx
ja 0x1401d4ccf
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 8
jne 0x1401d0eef
inc r8d
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
cmp r8d, r9d
jbe 0x1401d4ca0
jmp 0x1401d33e7
mov r8d, 1
nop dword [rax + rax]
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0xff
cmp ax, cx
ja 0x1401d0eef
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 8
je 0x1401d0eef
lea rax, [rdx + 2]
inc r8d
mov qword [r12 + 0x50], rax
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d4cf0
jmp 0x1401d33e7
mov r8d, 1
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0xff
cmp ax, cx
ja 0x1401d4d70
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 1
jne 0x1401d0eef
inc r8d
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
cmp r8d, r9d
jbe 0x1401d4d41
jmp 0x1401d33e7
mov r8d, 1
nop dword [rax]
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0xff
cmp ax, cx
ja 0x1401d0eef
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 1
je 0x1401d0eef
lea rax, [rdx + 2]
inc r8d
mov qword [r12 + 0x50], rax
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d4d90
jmp 0x1401d33e7
mov r8d, 1
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0xff
cmp ax, cx
ja 0x1401d4e10
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 0x10
jne 0x1401d0eef
inc r8d
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
cmp r8d, r9d
jbe 0x1401d4de1
jmp 0x1401d33e7
mov r8d, 1
nop dword [rax]
mov rdx, qword [r12 + 0x50]
cmp rdx, qword [r13 + 0x88]
jae 0x1401d46d7
movzx eax, word [rdx]
mov ecx, 0xff
cmp ax, cx
ja 0x1401d0eef
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 0x10
je 0x1401d0eef
lea rax, [rdx + 2]
inc r8d
mov qword [r12 + 0x50], rax
cmp r8d, dword [r12 + 0x38]
jbe 0x1401d4e30
jmp 0x1401d33e7
cmp edi, r11d
jae 0x1401d5910
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
mov ecx, 1
test r14d, r14d
je 0x1401d4eb0
mov eax, 0xfc00
mov edx, 0xd800
and ax, word [r10]
cmp ax, dx
mov eax, 2
cmove ecx, eax
test ebx, ebx
jne 0x1401d5910
inc edi
lea r10, [r10 + rcx*2]
mov qword [r12 + 0x50], r10
cmp edi, r11d
jb 0x1401d4e84
jmp 0x1401d5910
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d5910
cmp r10, qword [r13 + 0x98]
ja 0x1401d4eee
cmp dword [r13 + 0x34], r9d
je 0x1401d5910
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
nop
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d4f60
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d4f60
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx edx, byte [rsi + rcx*4 + 0x3139b1]
lea eax, [rdx - 5]
test al, 0xfb
je 0x1401d4f99
mov eax, r9d
cmp dl, 8
jne 0x1401d4f9e
mov eax, 1
cmp eax, ebx
je 0x1401d5910
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d4f10
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
nop word [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d5024
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5024
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
mov eax, dword [r12 + 0x44]
movzx edx, byte [rsi + rcx*4 + 0x3139b1]
mov ecx, r9d
cmp dword [rsi + rdx*4 + 0x32f4f0], eax
sete cl
cmp ecx, ebx
je 0x1401d5910
inc edi
lea r10, [r10 + r8*2]
mov qword [r12 + 0x50], r10
cmp edi, r11d
jb 0x1401d4fd0
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
nop word [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d50e4
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d50e4
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [rsi + rcx*4 + 0x3139b1]
mov ecx, r9d
cmp eax, dword [r12 + 0x44]
sete cl
cmp ecx, ebx
je 0x1401d5910
inc edi
lea r10, [r10 + r8*2]
mov qword [r12 + 0x50], r10
cmp edi, r11d
jb 0x1401d5090
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d5197
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5197
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [rsi + rcx*4 + 0x3139b0]
mov ecx, r9d
cmp eax, dword [r12 + 0x44]
sete cl
cmp ecx, ebx
je 0x1401d5910
inc edi
lea r10, [r10 + r8*2]
mov qword [r12 + 0x50], r10
cmp edi, r11d
jb 0x1401d5143
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
nop word [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d5254
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5254
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
lea rdx, [rcx*4 + 0x3139b0]
mov ecx, dword [r12 + 0x44]
movzx eax, byte [rdx + rsi]
cmp eax, ecx
je 0x1401d52b1
movzx edx, word [rdx + rsi + 8]
mov eax, ecx
shr rax, 5
and edx, 0x3ff
add rdx, rax
and ecx, 0x1f
mov eax, dword [rsi + rdx*4 + 0x3136b0]
bt eax, ecx
mov eax, r9d
jae 0x1401d52b6
mov eax, 1
cmp eax, ebx
je 0x1401d5910
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5200
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d5336
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5336
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [rsi + rcx*4 + 0x3139b1]
mov eax, dword [rsi + rax*4 + 0x32f4f0]
dec eax
test eax, 0xfffffffd
mov eax, r9d
sete al
cmp eax, ebx
je 0x1401d5910
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d52e2
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d53f4
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d53f4
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, 0x2000
cmp edx, eax
ja 0x1401d54c4
je case.0x1401d54f4.8193
cmp edx, 0x20
ja 0x1401d54a5
je case.0x1401d54f4.8193
mov eax, edx
sub eax, 9
je case.0x1401d54f4.8193
sub eax, 1
je case.0x1401d54f4.8193
sub eax, 1
je case.0x1401d54f4.8193
sub eax, 1
je case.0x1401d54f4.8193
cmp eax, 1
je case.0x1401d54f4.8193
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
mov eax, r9d
movzx edx, byte [rsi + rcx*4 + 0x3139b1]
cmp dword [rsi + rdx*4 + 0x32f4f0], 6
sete al
cmp eax, ebx
je 0x1401d5910
lea rax, [r8 + r8]
inc edi
add qword [r12 + 0x50], rax
mov r10, qword [r12 + 0x50]
cmp edi, dword [r12 + 0x3c]
jb 0x1401d53a0
jmp 0x1401d5910
mov eax, edx
sub eax, 0x85
je case.0x1401d54f4.8193
sub eax, 0x1b
je case.0x1401d54f4.8193
sub eax, 0x15e0
je case.0x1401d54f4.8193
cmp eax, 0x18e
jmp 0x1401d543f
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d54f4.8194
je case.0x1401d54f4.8193
lea eax, [rdx - 0x2001]
cmp eax, 0x5e
ja case.0x1401d54f4.8194
movzx eax, byte [rsi + rax + 0x1db1cc]
mov ecx, dword [rsi + rax*4 + 0x1db1c4]
add rcx, rsi
jmp rcx
test ebx, ebx
jne 0x1401d5910
jmp 0x1401d5485
cmp edi, r11d
jae 0x1401d5910
nop dword [rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d5564
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5564
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, edx
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [rsi + rcx*4 + 0x3139b1]
mov eax, dword [rsi + rax*4 + 0x32f4f0]
dec eax
test eax, 0xfffffffd
je 0x1401d55a8
mov eax, r9d
cmp edx, 0x5f
jne 0x1401d55ad
mov eax, 1
cmp eax, ebx
je 0x1401d5910
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5510
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
nop dword [rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d5634
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5634
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, dword [r12 + 0x44]
lea rcx, [rsi + 0x3133e0]
lea rcx, [rcx + rax*4]
mov eax, dword [rcx]
cmp edx, eax
jb 0x1401d565e
nop word [rax + rax]
lea rcx, [rcx + 4]
cmp edx, eax
je 0x1401d5686
mov eax, dword [rcx]
cmp edx, eax
jae 0x1401d5650
test ebx, ebx
je 0x1401d5910
lea rax, [r8 + r8]
inc edi
add qword [r12 + 0x50], rax
mov r10, qword [r12 + 0x50]
cmp edi, dword [r12 + 0x3c]
jb 0x1401d55e0
jmp 0x1401d5910
test ebx, ebx
jne 0x1401d5910
jmp 0x1401d5666
cmp edi, r11d
jae 0x1401d5910
nop dword [rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov ecx, 1
test r14d, r14d
je 0x1401d56f6
mov r8d, 0xfc00
mov eax, edx
and eax, r8d
mov r8d, 0xd800
cmp eax, r8d
jne 0x1401d56f6
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov ecx, 2
add edx, 0x10000
lea eax, [rdx - 0x24]
cmp eax, 0x3c
ja 0x1401d570e
movabs r8, 0x1000000010000001
bt r8, rax
jb 0x1401d5726
lea eax, [rdx - 0xa0]
cmp eax, 0xd75f
jbe 0x1401d5726
mov eax, r9d
cmp edx, 0xe000
jb 0x1401d572b
mov eax, 1
cmp eax, ebx
je 0x1401d5910
lea r10, [r10 + rcx*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d56a0
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
nop word [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d4ecd
movzx edx, word [r10]
mov r8d, 1
test r14d, r14d
je 0x1401d57b4
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d57b4
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, word [rsi + rcx*4 + 0x3139b8]
mov ecx, r9d
shr eax, 0xb
cmp eax, dword [r12 + 0x44]
sete cl
cmp ecx, ebx
je 0x1401d5910
inc edi
lea r10, [r10 + r8*2]
mov qword [r12 + 0x50], r10
cmp edi, r11d
jb 0x1401d5760
jmp 0x1401d5910
cmp edi, r11d
jae 0x1401d5910
nop word [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d58e1
movzx edx, word [r10]
mov r9d, 1
test r14d, r14d
je 0x1401d5874
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5874
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r9d, 2
add edx, 0x10000
mov r8d, dword [r12 + 0x44]
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [rsi + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [rsi + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
mov eax, r8d
movzx edx, word [rsi + rcx*4 + 0x3139ba]
and r8d, 0x1f
and edx, 0xfff
shr rax, 5
add rdx, rax
mov eax, dword [rsi + rdx*4 + 0x312e50]
xor edx, edx
bt eax, r8d
setb dl
cmp edx, ebx
je 0x1401d590d
inc edi
lea r10, [r10 + r9*2]
mov qword [r12 + 0x50], r10
cmp edi, r11d
jb 0x1401d5820
jmp 0x1401d590d
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d590d
cmp r10, qword [r13 + 0x98]
ja 0x1401d58fb
cmp dword [r13 + 0x34], 0
je 0x1401d590d
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
xor r9d, r9d
mov rdi, qword [rsp + 0x100]
lea r8, [0x140000000]
mov rsi, qword [rsp + 0xf8]
mov r11d, dword [rsp + 0xe0]
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d9951
cmp eax, 0x16
jne 0x1401d5a85
cmp edi, r11d
jae 0x1401d5a51
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d5a25
movzx r10d, word [rax]
lea rdx, [rax + 2]
mov qword [r12 + 0x50], rdx
mov rcx, rdx
test r14d, r14d
je 0x1401d59ba
mov r8d, 0xfc00
mov eax, r10d
and eax, r8d
mov r8d, 0xd800
cmp eax, r8d
jne 0x1401d59ba
movzx ecx, word [rdx]
and r10d, 0x3ff
mov eax, r10d
and ecx, 0x3ff
shl eax, 0xa
mov r10d, ecx
or r10d, eax
lea rcx, [rdx + 2]
add r10d, 0x10000
mov qword [r12 + 0x50], rcx
mov r9, qword [r13 + 0x88]
xor eax, eax
mov r8, qword [r13 + 0x78]
mov rdx, rcx
mov qword [rsp + 0x28], rax
mov ecx, r10d
mov dword [rsp + 0x20], r14d
call fcn.140211d10
mov qword [r12 + 0x50], rax
cmp rax, qword [r13 + 0x88]
jb 0x1401d5a16
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d5a16
cmp rax, qword [r13 + 0x98]
ja 0x1401d5a04
cmp dword [r13 + 0x34], 0
je 0x1401d5a16
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
inc edi
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5950
jmp 0x1401d5a51
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d5a51
cmp rax, qword [r13 + 0x98]
ja 0x1401d5a3f
cmp dword [r13 + 0x34], 0
je 0x1401d5a51
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov rdi, qword [rsp + 0x100]
mov r9d, 0
mov rsi, qword [rsp + 0xf8]
lea r8, [0x140000000]
mov r11d, dword [rsp + 0xe0]
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d9f07
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x1401d8285.15
test r14d, r14d
je 0x1401d62f5
mov ecx, dword [rbx + rax*4 + 0x1db22c]
add rcx, rbx
jmp rcx
cmp edi, r11d
jae 0x1401d62c1
nop
mov rcx, qword [r13 + 0x88]
cmp r10, rcx
jae 0x1401d5bc0
mov edx, dword [r13 + 0xdc]
test edx, edx
je 0x1401d5aec
mov r8, rcx
mov dword [rsp + 0x20], r14d
mov rcx, r10
lea r9, [r13 + 0xe0]
call fcn.14020ec20
test eax, eax
jne 0x1401d62c1
jmp 0x1401d5b29
mov edx, dword [r13 + 0xe0]
imul rax, rdx, 0xfffffffffffffffe
add rax, rcx
cmp r10, rax
ja 0x1401d5b29
movzx eax, word [r13 + 0xe4]
cmp word [r10], ax
jne 0x1401d5b29
cmp edx, 1
je 0x1401d62c1
movzx eax, word [r13 + 0xe6]
cmp word [r10 + 2], ax
je 0x1401d62c1
movzx edx, word [r13 + 0x60]
test dx, dx
je 0x1401d5b78
mov rcx, qword [r12 + 0x50]
lea rax, [rcx + 2]
cmp rax, qword [r13 + 0x88]
jb 0x1401d5b78
cmp dword [r13 + 0xdc], 0
jne 0x1401d5b78
cmp dword [r13 + 0xe0], 2
jne 0x1401d5b78
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d5b78
mov dword [r13 + 0x2c], 1
cmp dx, 1
ja 0x1401d3489
mov r10, qword [r12 + 0x50]
add r10, 2
mov qword [r12 + 0x50], r10
cmp r10, qword [r13 + 0x88]
jae 0x1401d5bae
movzx eax, word [r10]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x1401d5bae
add r10, 2
mov qword [r12 + 0x50], r10
inc edi
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5ab0
jmp 0x1401d62c1
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d62c1
cmp r10, qword [r13 + 0x98]
ja 0x1401d62af
cmp dword [r13 + 0x34], 0
jmp 0x1401d62ad
cmp r11d, 0xffffffff
jae 0x1401d5c4c
cmp edi, r11d
jae 0x1401d62c1
nop dword [rax]
nop dword [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
add r10, 2
mov qword [r12 + 0x50], r10
cmp r10, qword [r13 + 0x88]
jae 0x1401d5c3e
movzx eax, word [r10]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x1401d5c3e
add r10, 2
mov qword [r12 + 0x50], r10
inc edi
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5c00
jmp 0x1401d62c1
mov rax, qword [r13 + 0x88]
mov qword [r12 + 0x50], rax
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d62c1
cmp rax, qword [r13 + 0x98]
ja 0x1401d5c79
cmp dword [r13 + 0x34], r9d
je 0x1401d62c1
cmp cx, 1
jmp 0x1401d62b3
mov rcx, qword [r13 + 0x88]
sub r11d, edi
mov rax, rcx
sub rax, r10
sar rax, 1
cmp r11d, eax
jbe 0x1401d5cb9
mov qword [r12 + 0x50], rcx
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d62c1
cmp rcx, qword [r13 + 0x98]
jmp 0x1401d62a7
lea rcx, [r10 + r11*2]
mov qword [r12 + 0x50], rcx
jmp 0x1401d62c1
cmp edi, r11d
jae 0x1401d62c1
mov r8, r10
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
movzx ecx, word [r10]
mov edx, 0xfc00
mov eax, ecx
add r10, 2
and eax, edx
mov edx, 0xd800
cmp eax, edx
jne 0x1401d5d1b
movzx eax, word [r10]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
mov edx, 4
add ecx, 0x10000
jmp 0x1401d5d20
mov edx, 2
cmp ecx, 0xd
jne 0x1401d5d44
mov qword [r12 + 0x50], r10
cmp r10, qword [r13 + 0x88]
jae 0x1401d62c1
cmp word [r10], 0xa
jne 0x1401d5d7e
add r10, 2
jmp 0x1401d5d79
cmp ecx, 0xa
je 0x1401d5d75
cmp word [r13 + 0x62], 2
je 0x1401d62c1
lea eax, [rcx - 0xb]
cmp eax, 1
jbe 0x1401d5d75
mov eax, 0x85
cmp ecx, eax
je 0x1401d5d75
lea eax, [rcx - 0x2028]
cmp eax, 1
ja 0x1401d62c1
lea r10, [rdx + r8]
mov qword [r12 + 0x50], r10
inc edi
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5cd0
jmp 0x1401d62c1
cmp edi, r11d
jae 0x1401d62c1
nop dword [rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
movzx edx, word [r10]
mov ecx, 0xfc00
mov eax, edx
mov r8d, 1
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5def
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
mov eax, 0x2000
cmp edx, eax
ja 0x1401d5e58
je case.0x1401d5e80.8193
cmp edx, 9
je case.0x1401d5e80.8193
cmp edx, 0x20
je case.0x1401d5e80.8193
mov eax, 0xa0
cmp edx, eax
je case.0x1401d5e80.8193
mov eax, 0x1680
cmp edx, eax
je case.0x1401d5e80.8193
mov eax, 0x180e
cmp edx, eax
je case.0x1401d5e80.8193
xor eax, eax
mov ecx, eax
cmp dword [r12 + 0x40], 0x12
sete al
cmp ecx, eax
je 0x1401d62c1
lea rax, [r8 + r8]
inc edi
add qword [r12 + 0x50], rax
mov r10, qword [r12 + 0x50]
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5da0
jmp 0x1401d62c1
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d5e80.8194
je case.0x1401d5e80.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1401d5e80.8194
movzx eax, byte [rbx + rdx + 0x1db274]
mov ecx, dword [rbx + rax*4 + 0x1db26c]
add rcx, rbx
jmp rcx
mov ecx, 1
xor eax, eax
jmp 0x1401d5e27
cmp edi, r11d
jae 0x1401d62c1
nop dword [rax]
nop dword [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
movzx edx, word [r10]
mov ecx, 0xfc00
mov eax, edx
mov r8d, 1
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5eef
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
cmp edx, 0xd
ja 0x1401d5f00
je 0x1401d5f1b
sub edx, 0xa
je 0x1401d5f1b
sub edx, 1
jmp 0x1401d5f0e
sub edx, 0x85
je 0x1401d5f1b
sub edx, 0x1fa3
je 0x1401d5f1b
cmp edx, 1
je 0x1401d5f1b
xor eax, eax
mov ecx, eax
jmp 0x1401d5f22
mov ecx, 1
xor eax, eax
cmp dword [r12 + 0x40], 0x14
sete al
cmp ecx, eax
je 0x1401d62c1
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5ea0
jmp 0x1401d62c1
cmp edi, r11d
jae 0x1401d62c1
nop word [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
movzx edx, word [r10]
mov ecx, 0xfc00
mov eax, edx
mov r8d, 1
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d5faf
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
cmp edx, 0x100
jae 0x1401d5fc5
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 8
jne 0x1401d62c1
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5f60
jmp 0x1401d62c1
cmp edi, r11d
jae 0x1401d62c1
nop word [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
movzx edx, word [r10]
mov ecx, 0xfc00
mov eax, edx
mov r8d, 1
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d603f
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
cmp edx, 0x100
jae 0x1401d62c1
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 8
je 0x1401d62c1
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d5ff0
jmp 0x1401d62c1
cmp edi, r11d
jae 0x1401d62c1
nop dword [rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
movzx edx, word [r10]
mov ecx, 0xfc00
mov eax, edx
mov r8d, 1
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d60cf
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
cmp edx, 0x100
jae 0x1401d60e5
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 1
jne 0x1401d62c1
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6080
jmp 0x1401d62c1
cmp edi, r11d
jae 0x1401d62c1
nop word [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
movzx edx, word [r10]
mov ecx, 0xfc00
mov eax, edx
mov r8d, 1
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d615f
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
cmp edx, 0x100
jae 0x1401d62c1
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 1
je 0x1401d62c1
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6110
jmp 0x1401d62c1
cmp edi, r11d
jae 0x1401d62c1
nop dword [rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
movzx edx, word [r10]
mov ecx, 0xfc00
mov eax, edx
mov r8d, 1
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d61ef
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
cmp edx, 0x100
jae 0x1401d6205
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 0x10
jne 0x1401d62c1
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d61a0
jmp 0x1401d62c1
cmp edi, r11d
jae 0x1401d62c1
cmp r10, qword [r13 + 0x88]
jae 0x1401d6296
movzx edx, word [r10]
mov ecx, 0xfc00
mov eax, edx
mov r8d, 1
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
jne 0x1401d6270
movzx ecx, word [r10 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
mov r8d, 2
add edx, 0x10000
cmp edx, 0x100
jae 0x1401d62c1
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 0x10
je 0x1401d62c1
lea r10, [r10 + r8*2]
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6225
jmp 0x1401d62c1
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d62c1
cmp r10, qword [r13 + 0x98]
ja 0x1401d62af
cmp dword [r13 + 0x34], r9d
je 0x1401d62c1
cmp ax, 1
mov dword [r13 + 0x2c], 1
ja 0x1401d3489
mov rdi, qword [rsp + 0x100]
mov r9d, 0
mov rsi, qword [rsp + 0xf8]
lea r8, [0x140000000]
mov r11d, dword [rsp + 0xe0]
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d9f36
mov ecx, dword [rbx + rax*4 + 0x1db2d4]
add rcx, rbx
jmp rcx
cmp edi, r11d
jae case.0x1401d6599.8193
nop word [rax + rax]
mov rcx, qword [r13 + 0x88]
cmp r10, rcx
jae 0x1401d63f5
mov edx, dword [r13 + 0xdc]
test edx, edx
je 0x1401d634c
mov r8, rcx
mov dword [rsp + 0x20], r14d
mov rcx, r10
lea r9, [r13 + 0xe0]
call fcn.14020ec20
test eax, eax
jne case.0x1401d6599.8193
jmp 0x1401d6389
mov edx, dword [r13 + 0xe0]
imul rax, rdx, 0xfffffffffffffffe
add rax, rcx
cmp r10, rax
ja 0x1401d6389
movzx eax, word [r13 + 0xe4]
cmp word [r10], ax
jne 0x1401d6389
cmp edx, 1
je case.0x1401d6599.8193
movzx eax, word [r13 + 0xe6]
cmp word [r10 + 2], ax
je case.0x1401d6599.8193
movzx edx, word [r13 + 0x60]
test dx, dx
je 0x1401d63d8
mov rcx, qword [r12 + 0x50]
lea rax, [rcx + 2]
cmp rax, qword [r13 + 0x88]
jb 0x1401d63d8
cmp dword [r13 + 0xdc], 0
jne 0x1401d63d8
cmp dword [r13 + 0xe0], 2
jne 0x1401d63d8
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d63d8
mov dword [r13 + 0x2c], 1
cmp dx, 1
ja 0x1401d3489
add qword [r12 + 0x50], 2
inc edi
mov r10, qword [r12 + 0x50]
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6310
jmp case.0x1401d6599.8193
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d6599.8193
cmp r10, qword [r13 + 0x98]
ja 0x1401d68f0
cmp dword [r13 + 0x34], 0
jmp 0x1401d68ee
mov rcx, qword [r13 + 0x88]
sub r11d, edi
mov rax, rcx
sub rax, r10
sar rax, 1
cmp r11d, eax
jbe 0x1401d6451
mov qword [r12 + 0x50], rcx
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d6599.8193
cmp rcx, qword [r13 + 0x98]
jmp 0x1401d68e8
lea rcx, [r10 + r11*2]
mov qword [r12 + 0x50], rcx
jmp case.0x1401d6599.8193
cmp edi, r11d
jae case.0x1401d6599.8193
nop dword [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx ecx, word [r10]
cmp cx, 0xd
jne 0x1401d64a6
add r10, 2
mov qword [r12 + 0x50], r10
cmp r10, qword [r13 + 0x88]
jae case.0x1401d6599.8193
cmp word [r10], 0xa
jne 0x1401d64e6
jmp 0x1401d64dd
cmp cx, 0xa
je 0x1401d64dd
cmp word [r13 + 0x62], 2
je case.0x1401d6599.8193
lea eax, [rcx - 0xb]
cmp ax, 1
jbe 0x1401d64dd
mov eax, 0x85
cmp cx, ax
je 0x1401d64dd
mov eax, 0x2028
sub cx, ax
cmp cx, 1
ja case.0x1401d6599.8193
add r10, 2
mov qword [r12 + 0x50], r10
inc edi
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6470
jmp case.0x1401d6599.8193
cmp edi, r11d
jae case.0x1401d6599.8193
nop dword [rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx eax, word [r10]
cmp eax, r8d
ja 0x1401d656c
je case.0x1401d6599.8193
cmp eax, 9
je case.0x1401d6599.8193
cmp eax, 0x20
je case.0x1401d6599.8193
mov ecx, 0xa0
cmp eax, ecx
je case.0x1401d6599.8193
mov ecx, 0x1680
cmp eax, ecx
je case.0x1401d6599.8193
mov ecx, 0x180e
cmp eax, ecx
je case.0x1401d6599.8193
add r10, 2
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6500
jmp case.0x1401d6599.8193
mov ecx, 0x3000
cmp eax, ecx
ja case.0x1401d6599.8194
je case.0x1401d6599.8193
add eax, 0xffffdfff
cmp eax, 0x5e
ja case.0x1401d6599.8194
cdqe
movzx eax, byte [rbx + rax + 0x1db31c]
mov ecx, dword [rbx + rax*4 + 0x1db314]
add rcx, rbx
jmp rcx
cmp edi, r11d
jae case.0x1401d6599.8193
nop dword [rax]
nop dword [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx eax, word [r10]
cmp eax, r8d
ja 0x1401d660a
je case.0x1401d663b.8193
cmp eax, 9
je case.0x1401d663b.8193
cmp eax, 0x20
je case.0x1401d663b.8193
mov ecx, 0xa0
cmp eax, ecx
je case.0x1401d663b.8193
mov ecx, 0x1680
cmp eax, ecx
je case.0x1401d663b.8193
mov ecx, 0x180e
cmp eax, ecx
jne case.0x1401d6599.8193
add qword [r12 + 0x50], 2
inc edi
mov r10, qword [r12 + 0x50]
cmp edi, dword [r12 + 0x3c]
jb 0x1401d65b0
jmp case.0x1401d6599.8193
mov ecx, 0x3000
cmp eax, ecx
ja case.0x1401d6599.8193
je case.0x1401d663b.8193
add eax, 0xffffdfff
cmp eax, 0x5e
ja case.0x1401d6599.8193
cdqe
movzx eax, byte [rbx + rax + 0x1db384]
mov ecx, dword [rbx + rax*4 + 0x1db37c]
add rcx, rbx
jmp rcx
cmp edi, r11d
jae case.0x1401d6599.8193
nop word [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx ecx, word [r10]
cmp ecx, 0xd
ja 0x1401d667a
je case.0x1401d6599.8193
sub ecx, 0xa
je case.0x1401d6599.8193
sub ecx, 1
jmp 0x1401d668c
sub ecx, 0x85
je case.0x1401d6599.8193
sub ecx, 0x1fa3
je case.0x1401d6599.8193
cmp ecx, 1
je case.0x1401d6599.8193
add r10, 2
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6650
jmp case.0x1401d6599.8193
cmp edi, r11d
jae case.0x1401d6599.8193
nop dword [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx ecx, word [r10]
cmp ecx, 0xd
ja 0x1401d66e2
je 0x1401d66fb
sub ecx, 0xa
je 0x1401d66fb
sub ecx, 1
jmp 0x1401d66f0
sub ecx, 0x85
je 0x1401d66fb
sub ecx, 0x1fa3
je 0x1401d66fb
cmp ecx, 1
jne case.0x1401d6599.8193
add r10, 2
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d66c0
jmp case.0x1401d6599.8193
cmp edi, r11d
jae case.0x1401d6599.8193
nop dword [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx eax, word [r10]
mov ecx, 0xff
cmp ax, cx
ja 0x1401d674b
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 8
jne case.0x1401d6599.8193
add r10, 2
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6720
jmp case.0x1401d6599.8193
cmp edi, r11d
jae case.0x1401d6599.8193
nop dword [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx eax, word [r10]
mov ecx, 0xff
cmp ax, cx
ja case.0x1401d6599.8193
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 8
je case.0x1401d6599.8193
add r10, 2
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6770
jmp case.0x1401d6599.8193
cmp edi, r11d
jae case.0x1401d6599.8193
nop
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx eax, word [r10]
mov ecx, 0xff
cmp ax, cx
ja 0x1401d67eb
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 1
jne case.0x1401d6599.8193
add r10, 2
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d67c0
jmp case.0x1401d6599.8193
cmp edi, r11d
jae case.0x1401d6599.8193
nop dword [rax + rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx eax, word [r10]
mov ecx, 0xff
cmp ax, cx
ja case.0x1401d6599.8193
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 1
je case.0x1401d6599.8193
add r10, 2
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6810
jmp case.0x1401d6599.8193
cmp edi, r11d
jae case.0x1401d6599.8193
nop
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx eax, word [r10]
mov ecx, 0xff
cmp ax, cx
ja 0x1401d6883
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 0x10
jne case.0x1401d6599.8193
add r10, 2
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d6860
jmp case.0x1401d6599.8193
cmp edi, r11d
jae case.0x1401d6599.8193
nop dword [rax]
cmp r10, qword [r13 + 0x88]
jae 0x1401d68d7
movzx eax, word [r10]
mov ecx, 0xff
cmp ax, cx
ja case.0x1401d6599.8193
mov ecx, eax
mov rax, qword [r13 + 0x48]
test byte [rcx + rax], 0x10
je case.0x1401d6599.8193
add r10, 2
inc edi
mov qword [r12 + 0x50], r10
cmp edi, dword [r12 + 0x3c]
jb 0x1401d68a0
jmp case.0x1401d6599.8193
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d6599.8193
cmp r10, qword [r13 + 0x98]
ja 0x1401d68f0
cmp dword [r13 + 0x34], r9d
je case.0x1401d6599.8193
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
mov rdi, qword [rsp + 0x100]
mov r9d, 0
mov rsi, qword [rsp + 0xf8]
lea r8, [0x140000000]
mov r11d, dword [rsp + 0xe0]
cmp r15d, 2
je 0x1401d0840
jmp 0x1401d9dac
mov eax, r9d
cmp r10b, 0x74
sete al
mov dword [r12 + 0x40], eax
movzx ecx, word [rbx + 2]
movzx eax, word [r13 + 0x66]
movzx r8d, word [rbx + 4]
imul ecx, eax
mov rax, qword [r13 + 0x68]
movsxd rcx, ecx
lea rdx, [rax + rcx*2]
lea rax, [rbx + 6]
mov qword [r12], rax
test r8d, r8d
je 0x1401d69cd
nop
movzx eax, word [rdx]
dec r8d
lea rax, [rax*2 - 2]
mov qword [r12 + 0x28], rax
cmp rax, qword [r12 + 0x78]
jae 0x1401d6995
cmp qword [r12 + rax*8 + 0x80], 0xffffffffffffffff
jne 0x1401d69cd
movzx eax, word [r13 + 0x66]
lea rdx, [rdx + rax*2]
test r8d, r8d
jg 0x1401d6970
jmp 0x1401d69cd
mov eax, r9d
cmp r10b, 0x72
sete al
mov dword [r12 + 0x40], eax
movzx eax, word [rbx + 2]
lea rax, [rax*2 - 2]
mov qword [r12 + 0x28], rax
lea rax, [rbx + 4]
mov qword [r12], rax
mov rdx, qword [r12]
movzx r8d, word [rdx]
lea eax, [r8 - 0x62]
cmp eax, 7
ja case.default.0x1401d69f6
lea r10, [0x140000000]
cdqe
mov ecx, dword [r10 + rax*4 + 0x1db3e4]
add rcx, r10
jmp rcx
lea rax, [rdx + 2]
mov qword [r12], rax
lea eax, [r8 - 0x62]
mov ecx, eax
mov eax, dword [r10 + rax*4 + 0x312d48]
mov dword [r12 + 0x38], eax
mov eax, dword [r10 + rcx*4 + 0x312d78]
mov r15d, dword [r10 + rcx*4 + 0x312da8]
mov dword [r12 + 0x3c], eax
mov dword [rsp + 0x108], r15d
jmp 0x1401d6a6c
movzx eax, word [rdx + 2]
mov dword [r12 + 0x38], eax
movzx ecx, word [rdx + 4]
mov dword [r12 + 0x3c], ecx
movzx eax, word [rdx]
mov r15d, dword [r10 + rax*4 + 0x312c20]
mov dword [rsp + 0x108], r15d
test ecx, ecx
jne 0x1401d6a64
mov dword [r12 + 0x3c], 0xffffffff
lea rax, [rdx + 6]
mov qword [r12], rax
mov rbx, qword [r12 + 0x28]
cmp rbx, qword [r12 + 0x78]
jae 0x1401d6a96
mov rax, qword [r12 + rbx*8 + 0x80]
cmp rax, 0xffffffffffffffff
je 0x1401d6a96
cmp rax, qword [r12 + rbx*8 + 0x88]
je 0x1401d0833
jmp 0x1401d6ab3
cmp dword [r12 + 0x38], 0
je 0x1401d0833
test dword [r13 + 0xd0], 0x200
jne 0x1401d0833
mov eax, dword [r12 + 0x38]
mov edi, 1
cmp eax, edi
jb 0x1401d6b08
mov edx, dword [r12 + 0x40]
lea rax, [rsp + 0x68]
mov r9, r13
mov qword [rsp + 0x20], rax
mov r8, r12
mov rcx, rbx
call fcn.1401db760
test eax, eax
jne 0x1401d6ba4
mov rax, qword [rsp + 0x68]
inc edi
add rax, rax
add qword [r12 + 0x50], rax
mov eax, dword [r12 + 0x38]
cmp edi, eax
jbe 0x1401d6ac1
xor r9d, r9d
lea r10, [0x140000000]
mov esi, dword [r12 + 0x3c]
mov rdi, qword [rsp + 0x100]
mov r11d, dword [rsp + 0xe0]
cmp eax, esi
je 0x1401d082b
test r15d, r15d
je 0x1401da101
mov r14, qword [r12 + 0x50]
mov ebp, 1
mov qword [r12 + 8], r14
mov rdi, qword [r12 + rbx*8 + 0x88]
sub rdi, qword [r12 + rbx*8 + 0x80]
mov qword [r12 + 0x18], rdi
mov r15d, dword [r12 + 0x38]
cmp r15d, esi
jae 0x1401d7d6e
mov edx, dword [r12 + 0x40]
lea rax, [rsp + 0x70]
mov r9, r13
mov qword [rsp + 0x20], rax
mov r8, r12
mov rcx, rbx
call fcn.1401db760
test eax, eax
jne 0x1401d6bc9
mov rax, qword [rsp + 0x70]
mov ecx, 0
cmp rax, rdi
cmovne ebp, ecx
inc r15d
lea r14, [r14 + rax*2]
mov qword [r12 + 0x50], r14
cmp r15d, esi
jb 0x1401d6b60
jmp 0x1401d6bf7
jle 0x1401d6bb2
mov rax, qword [r13 + 0x88]
mov qword [r12 + 0x50], rax
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jb case.0x1401d0871.82
jmp 0x1401d259c
jle 0x1401d6bf7
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d6bf7
mov rax, qword [r13 + 0x98]
cmp qword [r13 + 0x88], rax
jbe 0x1401d6bf7
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov r14d, dword [rsp + 0x38]
test ebp, ebp
je 0x1401da044
lea r10, [0x140000000]
jmp 0x1401d7d73
mov edx, dword [r12 + 0x40]
lea rax, [rsp + 0x48]
mov rcx, qword [r12 + 0x28]
mov r9, r13
mov r8, r12
mov qword [rsp + 0x20], rax
call fcn.1401db760
test eax, eax
jne 0x1401d6ba4
mov rax, qword [rsp + 0x48]
mov r11d, dword [rsp + 0xe0]
add rax, rax
add qword [r12 + 0x50], rax
xor r9d, r9d
jmp 0x1401d0833
add rbx, 2
mov qword [r12], rbx
nop dword [rax]
movzx eax, word [rbx + 2]
lea rax, [rbx + rax*2]
mov qword [r12], rax
mov rbx, rax
cmp word [rax], 0x78
je 0x1401d6c60
add rax, 4
mov qword [r12], rax
jmp 0x1401d0840
cmp dword [r13 + 0x30], 0
jne 0x1401da060
cmp dword [r12 + 0x30], 0
je 0x1401da060
lea r10, [0x140000000]
jmp 0x1401d7818
lea r8, [rsp + 0x48]
mov rdx, r13
mov rcx, r12
call fcn.1401d0560
mov ebx, eax
test eax, eax
jg case.0x1401d0871.82
js 0x1401d0945
mov rax, qword [rsp + 0x48]
mov r11d, dword [rsp + 0xe0]
add rax, rax
add qword [r12], rax
xor r9d, r9d
jmp 0x1401d0833
movzx eax, word [rbx + 2]
mov qword [r12 + 0x18], rax
cmp word [rbx + rax*2], 0x78
je 0x1401d6cfa
add rax, 0xfffffffffffffffe
mov qword [r12 + 0x18], rax
add rbx, 4
mov qword [r12], rbx
movzx eax, word [rbx]
cmp ax, 0x76
je 0x1401d6d11
cmp ax, 0x77
jne 0x1401d6d47
lea r8, [rsp + 0x48]
mov rdx, r13
mov rcx, r12
call fcn.1401d0560
mov ebx, eax
test eax, eax
jg case.0x1401d0871.82
js 0x1401d0945
mov rcx, qword [rsp + 0x48]
lea rax, [rcx + rcx]
add qword [r12], rax
mov rbx, qword [r12]
sub qword [r12 + 0x18], rcx
movzx edx, word [rbx]
lea r10, [0x140000000]
lea eax, [rdx - 0x90]
cmp eax, 0x12
ja case.0x1401d6d6d.150
cdqe
mov ecx, dword [r10 + rax*4 + 0x1db404]
add rcx, r10
jmp rcx
mov ecx, dword [r12 + 0x68]
cmp ecx, 0xffffffff
je case.0x1401d6d6d.148
movzx eax, word [rbx + 2]
cmp eax, 0xffff
je case.0x1401d6d6d.149
cmp eax, ecx
je case.0x1401d6d6d.149
jmp case.0x1401d6d6d.148
mov r10d, dword [r12 + 0x68]
cmp r10d, 0xffffffff
je case.0x1401d6d6d.148
movzx eax, word [rbx + 2]
movzx r9d, word [r13 + 0x66]
movzx edx, word [rbx + 4]
imul eax, r9d
movsxd rcx, eax
mov rax, qword [r13 + 0x68]
lea r8, [rax + rcx*2]
test edx, edx
je case.0x1401d6d6d.148
nop dword [rax]
movzx eax, word [r8]
dec edx
cmp eax, r10d
je 0x1401d6dff
lea r8, [r8 + r9*2]
test edx, edx
jg 0x1401d6dd0
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x108], r15d
jmp case.0x1401d6d6d.148
mov rax, qword [rsp + 0x40]
lea r10, [0x140000000]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x108], r15d
jmp case.0x1401d6d6d.149
movzx eax, word [rbx + 2]
lea rax, [rax*2 - 2]
cmp rax, qword [r12 + 0x78]
jae case.0x1401d6d6d.148
cmp qword [r12 + rax*8 + 0x80], 0xffffffffffffffff
je case.0x1401d6d6d.148
jmp case.0x1401d6d6d.149
movzx eax, word [rbx + 2]
movzx r9d, word [r13 + 0x66]
movzx edx, word [rbx + 4]
imul eax, r9d
movsxd rcx, eax
mov rax, qword [r13 + 0x68]
lea r8, [rax + rcx*2]
test edx, edx
je case.0x1401d6d6d.148
mov rcx, qword [r12 + 0x78]
nop word [rax + rax]
movzx eax, word [r8]
dec edx
lea rax, [rax*2 - 2]
cmp rax, rcx
jae 0x1401d6ea2
cmp qword [r12 + rax*8 + 0x80], 0xffffffffffffffff
jne case.0x1401d6d6d.149
lea r8, [r8 + r9*2]
test edx, edx
jg 0x1401d6e80
jmp case.0x1401d6d6d.148
movzx edx, word [rbx + 2]
test r14d, r14d
je 0x1401d6f08
test edx, edx
je 0x1401d6f33
mov ebx, 0xdc00
mov r10d, 0xfc00
nop word [rax + rax]
mov rcx, qword [r12 + 0x50]
dec edx
cmp rcx, qword [r13 + 0x80]
jbe case.0x1401d0871.82
add rcx, 0xfffffffffffffffe
mov qword [r12 + 0x50], rcx
movzx eax, word [rcx]
and ax, r10w
cmp ax, bx
jne 0x1401d6f02
lea rax, [rcx - 2]
mov qword [r12 + 0x50], rax
test edx, edx
jne 0x1401d6ed0
jmp 0x1401d6f33
mov rcx, qword [r12 + 0x50]
mov rax, rcx
sub rax, qword [r13 + 0x78]
sar rax, 1
cmp rdx, rax
jg case.0x1401d0871.82
lea rax, [rdx + rdx]
sub rcx, rax
lea r8, [0x140000000]
mov qword [r12 + 0x50], rcx
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x98]
jae 0x1401d6f48
mov qword [r13 + 0x98], rax
add qword [r12], 4
jmp 0x1401d0840
movzx eax, word [rbx + 2]
lea rcx, [rbx + rax*2]
mov qword [r12], rcx
mov rbx, rcx
cmp word [rcx], 0x78
je case.0x1401d0871.59
jmp 0x1401d0840
movzx eax, word [rbx + 2]
mov ecx, 0x86
add rax, rax
sub rbx, rax
movzx eax, word [rbx]
sub ax, cx
mov ecx, 0xfffb
test cx, ax
je 0x1401d7009
mov rbp, qword [rdi + 0x30]
add rbp, qword [r12 + 0x70]
mov rdi, rbp
mov qword [rsp + 0x30], rbp
sub rdi, rsi
mov rax, qword [rdi + 0x70]
mov qword [r12 + 0x70], rax
mov eax, dword [rbp + 0x34]
and eax, 0xffff0000
cmp eax, 0x30000
jne 0x1401d700c
mov r8, qword [r12 + 0x78]
lea rdx, [r12 + 0x80]
shl r8, 3
lea rcx, [rdi + 0x80]
call fcn.140240000
mov rax, qword [r12 + 0x78]
mov ebx, 1
mov qword [rdi + 0x78], rax
mov rax, qword [r12 + 0x60]
mov qword [rdi + 0x60], rax
mov rax, r12
sub rax, rdi
mov qword [r12 + 0x20], rax
jmp 0x1401d0945
mov rdi, r9
movzx eax, word [rbx]
add eax, 0xffffff82
cmp eax, 0x10
ja case.0x1401d702f.134
lea r10, [0x140000000]
cdqe
mov ecx, dword [r10 + rax*4 + 0x1db450]
add rcx, r10
jmp rcx
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0xa0]
jbe 0x1401d7046
mov qword [r13 + 0xa0], rax
mov rax, qword [rdi + 0x50]
mov qword [r12 + 0x50], rax
jmp case.0x1401d702f.134
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0xa0]
jbe 0x1401d7069
mov qword [r13 + 0xa0], rax
mov rax, qword [rdi + 0x50]
mov qword [r12 + 0x50], rax
mov rax, r12
sub rax, rdi
mov qword [r12 + 0x20], rax
mov rcx, qword [rdi]
movzx eax, word [rcx + 2]
add rax, rax
cmp word [rax + rcx], 0x78
jne case.0x1401d702f.134
nop dword [rax]
nop word [rax + rax]
add rax, rcx
mov rcx, rax
mov qword [rdi], rax
movzx eax, word [rax + 2]
add rax, rax
cmp word [rax + rcx], 0x78
je 0x1401d70a0
jmp case.0x1401d702f.134
mov ebx, 1
xor edi, edi
jmp 0x1401d094e
mov rdx, qword [r12 + 0x50]
mov r8d, r14d
mov rcx, qword [rdi + 0x50]
call fcn.140211f40
test eax, eax
jne case.0x1401d702f.134
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
movzx edx, word [rbx + 4]
cmp dword [r12 + 0x68], edx
jne 0x1401d7153
mov rbx, rbp
lea rcx, [r12 + 0x80]
sub rbx, rsi
mov r8, qword [rbx + 0x78]
lea rdx, [rbx + 0x80]
shl r8, 3
call fcn.140240000
mov rax, qword [rbx + 0x78]
mov rdi, qword [rsp + 0x100]
mov r11d, dword [rsp + 0xe0]
mov qword [r12 + 0x78], rax
mov eax, dword [rbx + 0x6c]
mov dword [r12 + 0x6c], eax
mov eax, dword [rbx + 0x68]
mov dword [r12 + 0x68], eax
mov rax, qword [rbx]
add rax, 4
mov qword [r12], rax
xor r9d, r9d
jmp 0x1401d0833
mov dword [r12 + 0x6c], edx
lea ecx, [rdx*2 - 2]
mov rax, qword [rdi + 0x50]
sub rax, qword [r13 + 0x78]
sar rax, 1
mov qword [r12 + rcx*8 + 0x80], rax
mov rax, qword [r12 + 0x50]
sub rax, qword [r13 + 0x78]
sar rax, 1
mov qword [r12 + rcx*8 + 0x88], rax
cmp rcx, qword [r12 + 0x78]
jb case.0x1401d702f.134
lea rax, [rcx + 2]
mov qword [r12 + 0x78], rax
mov rdx, qword [r12]
cmp word [rdx], 0x7c
jne 0x1401d71bd
mov r8, qword [rsp + 0x78]
lea rdx, [r12 + 0x50]
lea rcx, [rdi + 0x50]
call fcn.140240000
mov ebx, 0xfffffc1a
jmp 0x1401d0945
movzx ecx, byte [r12 + 0x49]
cmp cl, 0x79
je 0x1401d7a10
test rdi, rdi
je 0x1401d71e0
mov rax, qword [rdi + 0x50]
cmp qword [r12 + 0x50], rax
je 0x1401d7a10
cmp cl, 0x7b
jne 0x1401da0c1
lea rbx, [rdx + 4]
mov byte [r12 + 0x48], 6
jmp 0x1401da712
mov rax, qword [r13 + 0x78]
cmp qword [r12 + 0x50], rax
jne case.0x1401d0871.82
test byte [r13 + 0xcc], 1
jne case.0x1401d0871.82
lea rax, [rbx + 2]
mov qword [r12], rax
jmp 0x1401d0840
mov rax, qword [r13 + 0x78]
cmp qword [r12 + 0x50], rax
je 0x1401d0c72
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
test byte [r13 + 0xcc], 2
jne case.0x1401d0871.82
test byte [r13 + 0xd0], 0x10
je case.0x1401d0871.21
mov rax, qword [r13 + 0x88]
cmp qword [r12 + 0x50], rax
jb case.0x1401d0871.82
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d7280
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
add qword [r12], 2
jmp 0x1401d0840
mov rcx, qword [r12 + 0x50]
mov r8, qword [r13 + 0x88]
cmp rcx, r8
jae 0x1401d730d
mov edx, dword [r13 + 0xdc]
lea rbx, [r13 + 0xe0]
test edx, edx
je 0x1401d72c4
mov r9, rbx
mov dword [rsp + 0x20], r14d
call fcn.14020ec20
test eax, eax
je 0x1401d7349
jmp 0x1401d72f9
mov edx, dword [rbx]
imul rax, rdx, 0xfffffffffffffffe
add rax, r8
cmp rcx, rax
ja 0x1401d7342
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d7342
cmp edx, 1
je 0x1401d72f9
movzx eax, word [r13 + 0xe6]
cmp word [rcx + 2], ax
jne 0x1401d7342
lea rbx, [r13 + 0xe0]
mov eax, dword [rbx]
imul rcx, rax, 0xfffffffffffffffe
add rcx, qword [r13 + 0x88]
cmp qword [r12 + 0x50], rcx
jne 0x1401d7349
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d3191
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
add qword [r12], 2
mov r11d, dword [rsp + 0xe0]
xor r9d, r9d
jmp 0x1401d0833
lea rbx, [r13 + 0xe0]
movzx edx, word [r13 + 0x60]
test dx, dx
je case.0x1401d0871.82
mov rcx, qword [r12 + 0x50]
lea rax, [rcx + 2]
cmp rax, qword [r13 + 0x88]
jb case.0x1401d0871.82
cmp dword [r13 + 0xdc], 0
jne case.0x1401d0871.82
cmp dword [rbx], 2
jne case.0x1401d0871.82
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne case.0x1401d0871.82
cmp dx, 1
jmp 0x1401d0b6d
test byte [r13 + 0xcc], 1
je 0x1401d73b7
mov rax, qword [r13 + 0x78]
cmp qword [r12 + 0x50], rax
je case.0x1401d0871.82
mov rcx, qword [r12 + 0x50]
mov rax, qword [r13 + 0x78]
cmp rcx, rax
je 0x1401d746b
cmp rcx, qword [r13 + 0x88]
jne 0x1401d73e3
test dword [r13 + 0xd0], 0x200000
je case.0x1401d0871.82
mov edx, dword [r13 + 0xdc]
test edx, edx
je 0x1401d7421
cmp rcx, rax
jbe 0x1401d7412
lea r9, [r13 + 0xe0]
mov dword [rsp + 0x20], r14d
mov r8, rax
call fcn.14020ece0
test eax, eax
je 0x1401d7412
mov eax, 1
jmp 0x1401d7414
xor eax, eax
test eax, eax
jne 0x1401d7464
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
mov r8d, dword [r13 + 0xe0]
lea rdx, [r8 + r8]
add rax, rdx
cmp rcx, rax
jb case.0x1401d0871.82
movzx eax, word [r13 + 0xe4]
sub rcx, rdx
cmp word [rcx], ax
jne case.0x1401d0871.82
cmp r8d, 1
je 0x1401d7464
movzx eax, word [r13 + 0xe6]
cmp word [rcx + 2], ax
jne case.0x1401d0871.82
lea r8, [0x140000000]
add qword [r12], 2
mov r11d, dword [rsp + 0xe0]
xor r9d, r9d
jmp 0x1401d0840
mov rcx, qword [r12 + 0x50]
mov r8, qword [r13 + 0x88]
cmp rcx, r8
jae 0x1401d7535
mov edx, dword [r13 + 0xdc]
test edx, edx
je 0x1401d74bb
lea r9, [r13 + 0xe0]
mov dword [rsp + 0x20], r14d
call fcn.14020ec20
test eax, eax
jne 0x1401d3191
jmp 0x1401d74f6
mov edx, dword [r13 + 0xe0]
imul rax, rdx, 0xfffffffffffffffe
add rax, r8
cmp rcx, rax
ja 0x1401d74f6
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d74f6
cmp edx, 1
je 0x1401d3191
movzx eax, word [r13 + 0xe6]
cmp word [rcx + 2], ax
je 0x1401d3191
movzx edx, word [r13 + 0x60]
test dx, dx
je case.0x1401d0871.82
mov rcx, qword [r12 + 0x50]
lea rax, [rcx + 2]
cmp rax, qword [r13 + 0x88]
jb case.0x1401d0871.82
cmp dword [r13 + 0xdc], 0
jne case.0x1401d0871.82
cmp dword [r13 + 0xe0], 2
jmp 0x1401d737e
test byte [r13 + 0xcc], 2
jne case.0x1401d0871.82
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d3191
cmp rcx, qword [r13 + 0x98]
ja 0x1401d731b
cmp dword [r13 + 0x34], 0
jmp 0x1401d7315
mov rcx, qword [r13 + 0x50]
mov rax, qword [r13 + 0x78]
lea rcx, [rax + rcx*2]
cmp qword [r12 + 0x50], rcx
je 0x1401d0c72
xor edi, edi
mov ebx, edi
jmp 0x1401d0947
mov rax, qword [r12 + 0x50]
mov qword [r12 + 0x58], rax
lea rax, [rbx + 2]
mov qword [r12], rax
jmp 0x1401d0840
mov r8, qword [r12 + 0x50]
cmp r8, qword [r13 + 0x80]
je 0x1401d769e
movzx ecx, word [r8 - 2]
add r8, 0xfffffffffffffffe
test r14d, r14d
je 0x1401d7612
movzx eax, cx
mov r10d, 0xfc00
and ax, r10w
mov edx, 0xdc00
cmp ax, dx
jne 0x1401d75df
movzx ecx, word [r8 - 2]
sub r8, 2
movzx edx, cx
mov ecx, 0xd800
mov eax, edx
and eax, r10d
cmp eax, ecx
jne 0x1401d7614
movzx ecx, word [r8 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
add edx, 0x10000
jmp 0x1401d7614
mov edx, ecx
cmp r8, qword [r13 + 0x98]
jae 0x1401d7624
mov qword [r13 + 0x98], r8
test dword [r13 + 0xd0], 0x20000
je 0x1401d7685
lea r10, [0x140000000]
cmp edx, 0x5f
jne 0x1401d7643
lea r9d, [rdx - 0x5e]
jmp 0x1401d76a5
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [r10 + rcx*4 + 0x3139b1]
mov eax, dword [r10 + rax*4 + 0x32f4f0]
dec eax
test eax, 0xfffffffd
sete r9b
jmp 0x1401d76a5
mov eax, 0xff
cmp edx, eax
ja 0x1401d769e
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 0x10
je 0x1401d769e
mov r9d, 1
lea r10, [0x140000000]
mov rdx, qword [r12 + 0x50]
mov rax, qword [r13 + 0x88]
cmp rdx, rax
jb 0x1401d770e
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d76e2
cmp rdx, qword [r13 + 0x98]
ja 0x1401d76d0
cmp dword [r13 + 0x34], 0
je 0x1401d76e2
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
xor eax, eax
mov edx, eax
mov rax, qword [r12]
xor edx, r9d
movzx ecx, word [rax]
add rax, 2
mov qword [r12], rax
cmp cx, 5
jne 0x1401d7701
xor edx, 1
test edx, edx
mov r9d, 0
jmp 0x1401d0ee7
lea r8, [rdx + 2]
mov rcx, r8
test r14d, r14d
je 0x1401d7762
mov ebx, 0xfc00
cmp rcx, rax
jae 0x1401d7736
movzx eax, word [r8]
and ax, bx
cmp ax, word [rsp + 0x50]
jne 0x1401d7736
add rcx, 2
movzx edx, word [rdx]
mov eax, edx
and eax, ebx
mov ebx, 0xd800
cmp eax, ebx
jne 0x1401d7765
movzx eax, word [r8]
and edx, 0x3ff
shl edx, 0xa
and eax, 0x3ff
or edx, eax
add edx, 0x10000
jmp 0x1401d7765
movzx edx, word [rdx]
cmp rcx, qword [r13 + 0xa0]
jbe 0x1401d7775
mov qword [r13 + 0xa0], rcx
test dword [r13 + 0xd0], 0x20000
je 0x1401d77da
cmp edx, 0x5f
jne 0x1401d7791
mov edx, 1
jmp 0x1401d76e6
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
mov edx, 0
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [r10 + rcx*4 + 0x3139b1]
mov eax, dword [r10 + rax*4 + 0x32f4f0]
dec eax
test eax, 0xfffffffd
sete dl
jmp 0x1401d76e6
mov eax, 0xff
cmp edx, eax
ja 0x1401d76e2
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 0x10
je 0x1401d76e2
mov edx, 1
jmp 0x1401d76e6
test ebx, ebx
jne case.0x1401d09be.33
mov rbx, qword [r12 + 8]
mov r15d, dword [rsp + 0x108]
mov qword [r12], rbx
movzx eax, word [rbx + 2]
lea rcx, [rbx + rax*2]
mov qword [r12 + 8], rcx
cmp word [rcx], 0x78
movzx eax, word [rbx]
movzx edx, byte [rax + r10 + 0x32f340]
je 0x1401da0cc
mov rbp, qword [rsp + 0x30]
lea rcx, [rbx + rdx*2]
mov rsi, qword [rsp + 0xf8]
xor r9d, r9d
mov rdi, qword [rsp + 0x100]
mov r11d, dword [rsp + 0xe0]
mov qword [r12], rcx
jmp 0x1401d0833
cmp ebx, 0xfffffc1f
jne 0x1401d7895
mov rcx, qword [r12]
movzx eax, word [rcx + 2]
lea rdx, [rcx + rax*2]
cmp qword [r13 + 0xb8], rdx
jae case.0x1401d09be.33
cmp word [rcx], 0x78
je 0x1401d789d
cmp word [rdx], 0x78
jmp 0x1401d7897
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12]
movzx eax, word [rcx + 2]
lea rbx, [rcx + rax*2]
mov qword [r12], rbx
cmp word [rbx], 0x78
je 0x1401da495
mov ebx, edi
jmp case.0x1401d09be.33
cmp ebx, 0xfffffc19
je 0x1401d9c54
test ebx, ebx
je 0x1401d78da
cmp ebx, 0xfffffc1f
jne case.0x1401d09be.33
mov rcx, qword [r12]
movzx eax, word [rcx + 2]
lea rbx, [rcx + rax*2]
mov qword [r12], rbx
cmp word [rbx], 0x78
je 0x1401da583
mov ebx, edi
jmp case.0x1401d09be.33
cmp ebx, 0xfffffc1d
jg 0x1401d793b
je 0x1401d791c
cmp ebx, 0xfffffc19
je case.0x1401d83af.8193
lea eax, [rbx + 0x3e5]
cmp eax, 1
ja case.0x1401d09be.33
mov rbx, qword [r12]
movzx eax, word [rbx + 2]
lea rbx, [rbx + rax*2]
mov qword [r12], rbx
cmp word [rbx], 0x78
je 0x1401d7920
lea rax, [rbx + 4]
jmp 0x1401d7b07
cmp ebx, 0xfffffc1f
je 0x1401d9ca7
test ebx, ebx
je 0x1401d9ca7
cmp ebx, 1
jne case.0x1401d09be.33
mov ebx, edi
jmp case.0x1401d09be.33
cmp ebx, 0xfffffc1d
jg 0x1401d798d
je 0x1401d9d1e
cmp ebx, 0xfffffc19
je 0x1401d9cca
lea eax, [rbx + 0x3e5]
cmp eax, 1
ja case.0x1401d09be.33
jmp 0x1401d9d1e
cmp ebx, 0xfffffc1f
je 0x1401d9d02
test ebx, ebx
je 0x1401d9d02
cmp ebx, 1
jne case.0x1401d09be.33
mov eax, dword [r12 + 0x38]
jmp 0x1401d9d29
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12]
mov r15d, dword [rsp + 0x108]
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0xf8]
movzx eax, word [rcx + 2]
mov rdi, qword [rsp + 0x100]
add rax, rax
mov r11d, dword [rsp + 0xe0]
sub rcx, rax
mov qword [r12], rcx
xor r9d, r9d
jmp 0x1401d0833
test ebx, ebx
jne case.0x1401d09be.33
mov rbp, qword [rsp + 0x30]
mov r15d, dword [rsp + 0x108]
add qword [r12], 4
mov rsi, qword [rsp + 0xf8]
xor r9d, r9d
mov rdi, qword [rsp + 0x100]
mov r11d, dword [rsp + 0xe0]
jmp 0x1401d0833
cmp ebx, 0xfffffc1a
jne 0x1401d7a74
mov dword [r12 + 0x3c], 1
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
jne 0x1401da0e3
mov rcx, qword [r12]
nop word [rax + rax]
movzx eax, word [rcx + 2]
lea rcx, [rcx + rax*2]
mov qword [r12], rcx
cmp word [rcx], 0x78
je 0x1401d7a60
jmp 0x1401d7ac3
cmp ebx, 0xfffffc1f
jne 0x1401d7aa1
mov rcx, qword [r12]
movzx eax, word [rcx + 2]
lea rdx, [rcx + rax*2]
cmp qword [r13 + 0xb8], rdx
jae case.0x1401d09be.33
cmp word [rcx], 0x78
je 0x1401d7aa9
cmp word [rdx], 0x78
jmp 0x1401d7aa3
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12]
movzx eax, word [rcx + 2]
lea rcx, [rcx + rax*2]
mov qword [r12], rcx
cmp word [rcx], 0x78
je 0x1401da43e
cmp dword [r12 + 0x3c], 0
jne 0x1401d7b03
cmp dword [r12 + 0x40], 0
jne 0x1401d7b03
mov ebx, edi
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12 + 8]
nop word [rax + rax]
movzx eax, word [rcx + 2]
lea rcx, [rcx + rax*2]
mov qword [r12 + 8], rcx
cmp word [rcx], 0x78
je 0x1401d7af0
lea rax, [rcx + 4]
mov qword [r12], rax
mov r15d, dword [rsp + 0x108]
mov rbp, qword [rsp + 0x30]
xor r9d, r9d
mov rsi, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0x100]
mov r11d, dword [rsp + 0xe0]
jmp 0x1401d0833
test ebx, ebx
jne case.0x1401d09be.33
add qword [r12], 2
jmp 0x1401d7b0b
mov rdx, qword [r12 + 8]
movzx eax, word [rdx + 2]
lea rcx, [rdx + rax*2]
lea eax, [rbx + 0x3e5]
cmp eax, 4
ja 0x1401d7b9d
mov eax, dword [r12 + 0x38]
btc eax, 0x12
cmp dword [r13 + 0xc8], eax
jne 0x1401d7b9d
cmp ebx, 0xfffffc1f
jne case.0x1401d83af.8193
cmp qword [r13 + 0xb8], rcx
jae case.0x1401d83af.8193
cmp word [rdx], 0x78
je 0x1401d7ba5
cmp word [rcx], 0x78
je 0x1401d7ba5
mov ebx, edi
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov qword [r12 + 8], rcx
cmp word [rcx], 0x78
je 0x1401da53f
mov ebx, edi
jmp case.0x1401d09be.33
cmp ebx, 0xfffffc1e
jne case.0x1401d09be.33
mov rcx, qword [r12]
mov rdx, qword [r13 + 0xc0]
add rcx, 4
call fcn.14020ce50
lea r10, [0x140000000]
mov r8d, 0x2000
test eax, eax
jne case.0x1401d09be.33
mov rax, qword [r12 + 0x50]
lea r10, [0x140000000]
mov qword [r13 + 0xc0], rax
mov ebx, 0xfffffc1d
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov eax, dword [r12 + 0x68]
mov ebx, 0xfffffc1c
mov dword [r13 + 0xc8], eax
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov rax, qword [r12 + 0x50]
mov ebx, 0xfffffc1d
mov qword [r13 + 0xc0], rax
mov eax, dword [r12 + 0x68]
mov dword [r13 + 0xc8], eax
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov rax, qword [r12]
mov ebx, 0xfffffc1e
add rax, 4
mov qword [r13 + 0xc0], rax
mov eax, dword [r12 + 0x68]
mov dword [r13 + 0xc8], eax
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov rax, qword [r12]
mov ebx, 0xfffffc1f
mov qword [r13 + 0xb8], rax
mov eax, dword [r12 + 0x68]
mov dword [r13 + 0xc8], eax
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jb 0x1401d7cce
mov ebx, edi
jmp case.0x1401d09be.33
mov edx, dword [r12 + 0x40]
lea rax, [rsp + 0x80]
mov rcx, qword [r12 + 0x28]
mov r9, r13
mov r8, r12
mov qword [rsp + 0x20], rax
call fcn.1401db760
test eax, eax
je 0x1401da0f1
jle 0x1401d7d06
mov rax, qword [r13 + 0x88]
mov qword [r12 + 0x50], rax
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jb 0x1401d7d40
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401d7d40
cmp rax, qword [r13 + 0x98]
ja 0x1401d7d2e
cmp dword [r13 + 0x34], 0
je 0x1401d7d40
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov ebx, edi
lea r10, [0x140000000]
mov r8d, 0x2000
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov rax, qword [r12 + 0x18]
neg rax
add rax, rax
add qword [r12 + 0x50], rax
jmp 0x1401d7d73
mov r14d, dword [rsp + 0x38]
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
jb 0x1401d0eed
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x15
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov rbx, qword [r12 + 8]
cmp qword [r12 + 0x50], rbx
je 0x1401d0eef
mov qword [r12 + 0x50], rbx
mov edi, dword [r12 + 0x3c]
dec edi
mov dword [r12 + 0x3c], edi
mov esi, dword [r12 + 0x38]
cmp esi, edi
jae 0x1401d7e09
nop dword [rax]
mov edx, dword [r12 + 0x40]
lea rax, [rsp + 0x88]
mov rcx, qword [r12 + 0x28]
mov r9, r13
mov r8, r12
mov qword [rsp + 0x20], rax
call fcn.1401db760
mov rax, qword [rsp + 0x88]
inc esi
lea rbx, [rbx + rax*2]
mov qword [r12 + 0x50], rbx
cmp esi, edi
jb 0x1401d7dd0
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x16
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx ecx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp ecx, r15d
jbe 0x1401d7e86
cmp byte [r12 + 0x49], 0x6e
je case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x17
jmp 0x1401da712
mov rax, qword [r12 + 0x10]
mov rdx, rcx
shr rdx, 3
and ecx, 7
movzx r8d, byte [rdx + rax]
mov eax, 1
shl eax, cl
test al, r8b
jne 0x1401d7e6f
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
add qword [r12 + 0x50], 0xfffffffffffffffe
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
jb 0x1401d0eed
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x18
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rcx, qword [r12 + 0x50]
cmp rcx, qword [r13 + 0x88]
jae 0x1401d8065
movzx eax, word [rcx]
cmp dword [r12 + 0x40], eax
je 0x1401d7f2f
cmp dword [r12 + 0x44], eax
jne case.0x1401d83af.8193
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x19
jmp 0x1401da712
add qword [r12 + 0x50], 0xfffffffffffffffe
test ebx, ebx
jne case.0x1401d09be.33
mov r15d, dword [rsp + 0x108]
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
je 0x1401d7b13
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x1a
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp dword [r12 + 0x40], edx
jne case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x1b
jmp 0x1401da712
add qword [r12 + 0x50], 0xfffffffffffffffe
test ebx, ebx
jne case.0x1401d09be.33
mov r15d, dword [rsp + 0x108]
mov rax, qword [r12 + 8]
mov rsi, qword [rsp + 0xf8]
cmp qword [r12 + 0x50], rax
ja 0x1401da118
mov rbp, qword [rsp + 0x30]
xor r9d, r9d
mov rdi, qword [rsp + 0x100]
mov r11d, dword [rsp + 0xe0]
jmp 0x1401d0833
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rcx, qword [r12 + 0x50]
cmp rcx, qword [r13 + 0x88]
jb 0x1401d80a0
movzx eax, word [r13 + 0x60]
test ax, ax
je case.0x1401d83af.8193
cmp rcx, qword [r13 + 0x98]
ja 0x1401d8087
cmp dword [r13 + 0x34], 0
je case.0x1401d83af.8193
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
mov ebx, edi
jmp case.0x1401d09be.33
movzx eax, word [rcx]
cmp dword [r12 + 0x40], eax
je case.0x1401d83af.8193
cmp dword [r12 + 0x44], eax
je case.0x1401d83af.8193
mov rsi, qword [rsp + 0xf8]
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
mov rbx, qword [r12]
mov byte [r12 + 0x48], 0x1d
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
add qword [r12 + 0x50], 0xfffffffffffffffe
mov r15d, dword [rsp + 0x108]
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
je 0x1401d7b13
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x1e
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
cmp dword [r12 + 0x40], edx
je case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x1f
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
add qword [r12 + 0x50], 0xfffffffffffffffe
mov r15d, dword [rsp + 0x108]
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
je 0x1401d7b13
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x20
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rcx, qword [r12 + 0x50]
mov r8, qword [r13 + 0x88]
cmp rcx, r8
jb 0x1401d8225
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d85b1
cmp rcx, qword [r13 + 0x98]
ja 0x1401d8206
cmp dword [r13 + 0x34], 0
je 0x1401d85b1
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp dword [r12 + 0x40], 0xc
jne 0x1401d8258
mov edx, dword [r13 + 0xdc]
test edx, edx
je 0x1401d8287
lea r9, [r13 + 0xe0]
mov dword [rsp + 0x20], r14d
call fcn.14020ec20
lea r10, [0x140000000]
test eax, eax
jne 0x1401d85b1
mov rax, qword [r12 + 0x50]
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
mov eax, dword [r12 + 0x40]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x1401d8285.15
mov ecx, dword [r10 + rax*4 + 0x1db494]
add rcx, r10
jmp rcx
mov edx, dword [r13 + 0xe0]
imul rax, rdx, 0xfffffffffffffffe
add rax, r8
cmp rcx, rax
ja 0x1401d8258
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d8258
cmp edx, 1
je 0x1401d85b1
movzx eax, word [r13 + 0xe6]
cmp word [rcx + 2], ax
jne 0x1401d8258
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0xd
ja 0x1401d8306
je 0x1401da127
sub edx, 0xa
je case.0x1401d8285.13
sub edx, 1
je 0x1401d82ed
cmp edx, 1
jne 0x1401d85b1
cmp word [r13 + 0x62], 2
jne case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
sub edx, 0x85
je 0x1401d82ed
sub edx, 0x1fa3
je 0x1401d82ed
cmp edx, 1
je 0x1401d82ed
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
mov r8d, 0x2000
cmp edx, r8d
ja 0x1401d8379
je case.0x1401d83af.8193
cmp edx, 9
je case.0x1401d83af.8193
cmp edx, 0x20
je case.0x1401d83af.8193
mov eax, 0xa0
cmp edx, eax
je case.0x1401d83af.8193
mov eax, 0x1680
cmp edx, eax
je case.0x1401d83af.8193
mov eax, 0x180e
cmp edx, eax
jne case.0x1401d8285.13
mov ebx, edi
jmp case.0x1401d09be.33
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d8285.13
je case.0x1401d83af.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1401d8285.13
movzx eax, byte [r10 + rdx + 0x1db4dc]
mov ecx, dword [r10 + rax*4 + 0x1db4d4]
add rcx, r10
jmp rcx
mov r8d, 0x2000
cmp edx, r8d
ja 0x1401d8402
je case.0x1401d8285.13
cmp edx, 9
je case.0x1401d8285.13
cmp edx, 0x20
je case.0x1401d8285.13
mov eax, 0xa0
cmp edx, eax
je case.0x1401d8285.13
mov eax, 0x1680
cmp edx, eax
je case.0x1401d8285.13
mov eax, 0x180e
cmp edx, eax
je case.0x1401d8285.13
mov ebx, edi
jmp case.0x1401d09be.33
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d83af.8193
je case.0x1401d8285.13
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1401d83af.8193
movzx eax, byte [r10 + rdx + 0x1db544]
mov ecx, dword [r10 + rax*4 + 0x1db53c]
add rcx, r10
jmp rcx
cmp edx, 0xd
ja 0x1401d845f
je 0x1401d85b1
sub edx, 0xa
je 0x1401d85b1
sub edx, 1
je 0x1401d85b1
cmp edx, 1
jmp 0x1401d85ab
sub edx, 0x85
je 0x1401d85b1
sub edx, 0x1fa3
je 0x1401d85b1
cmp edx, 1
jne case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0xd
ja 0x1401d84c0
je case.0x1401d8285.13
sub edx, 0xa
je case.0x1401d8285.13
sub edx, 1
je case.0x1401d8285.13
cmp edx, 1
je case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
sub edx, 0x85
je case.0x1401d8285.13
sub edx, 0x1fa3
je case.0x1401d8285.13
cmp edx, 1
je case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, r15d
ja case.0x1401d8285.13
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 8
je case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, r15d
ja 0x1401d85b1
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 8
jne case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, r15d
ja case.0x1401d8285.13
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 1
je case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, r15d
ja 0x1401d85b1
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 1
jne case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, r15d
ja case.0x1401d8285.13
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 0x10
je case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, r15d
ja 0x1401d85b1
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 0x10
jne case.0x1401d8285.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov rax, qword [r12 + 0x50]
add rax, 0xfffffffffffffffe
mov qword [r12 + 0x50], rax
cmp dword [r12 + 0x40], 0x11
jne 0x1401d9da4
cmp rax, qword [r12 + 8]
jbe 0x1401d9da4
cmp word [rax], 0xa
jne 0x1401d9da4
mov r15d, dword [rsp + 0x108]
add rax, 0xfffffffffffffffe
cmp word [rax], 0xd
jne 0x1401d9dac
mov qword [r12 + 0x50], rax
jmp 0x1401d9dac
test ebx, ebx
jne case.0x1401d09be.33
mov eax, dword [r12 + 0x68]
mov ebx, 0xfffffc1b
mov dword [r13 + 0xc8], eax
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov qword [r12 + 0x50], rdx
test r14d, r14d
je 0x1401d86a0
mov eax, ecx
and eax, esi
cmp eax, ebp
jne 0x1401d86a0
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
mov rdx, qword [r12 + 0x10]
mov r8d, r14d
call fcn.140212410
test eax, eax
jne 0x1401da1b3
lea r10, [0x140000000]
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12 + 0x50]
lea rdx, [rcx - 2]
mov qword [r12 + 0x50], rdx
cmp rcx, qword [r12 + 8]
jbe case.0x1401d83af.8193
test r14d, r14d
je 0x1401d8708
movzx eax, word [rdx]
mov ecx, 0xdc00
and ax, si
cmp ax, cx
jne 0x1401d8708
lea rax, [rdx - 2]
mov qword [r12 + 0x50], rax
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], reloc.WS2_32.dll_WSAAsyncSelect
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov eax, ecx
mov qword [r12 + 0x50], rdx
and eax, esi
cmp eax, ebp
jne 0x1401d8787
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
cmp ecx, r15d
jbe 0x1401d87af
cmp byte [r12 + 0x49], 0x6e
je case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], reloc.OLEAUT32.dll_SetErrorInfo
jmp 0x1401da712
mov rax, qword [r12 + 0x10]
mov edx, ecx
and ecx, 7
shr rdx, 3
movzx r8d, byte [rdx + rax]
mov eax, 1
shl eax, cl
test al, r8b
jne 0x1401d8798
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12 + 0x50]
lea rdx, [rcx - 2]
mov qword [r12 + 0x50], rdx
cmp rcx, qword [r12 + 8]
ja 0x1401da1ca
mov ebx, edi
jmp 0x1401d094e
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x18]
mov rsi, qword [r13 + 0x88]
mov rbx, qword [r12 + 0x50]
lea rdi, [rax + rax]
mov rax, rsi
sub rax, rdi
cmp rbx, rax
ja 0x1401d885b
mov rdx, qword [r12 + 0x10]
mov r8, rdi
mov rcx, rbx
call fcn.14023ff00
test eax, eax
je 0x1401da1fa
mov rax, qword [r12 + 0x28]
test rax, rax
je 0x1401d888c
lea rdi, [rax + rax]
mov rax, rsi
sub rax, rdi
cmp rbx, rax
ja 0x1401d888c
lea rdx, [r12 + 0x4a]
mov r8, rdi
mov rcx, rbx
call fcn.14023ff00
test eax, eax
je 0x1401da1fa
cmp rbx, rsi
jb 0x1401d88bd
movzx eax, word [r13 + 0x60]
test ax, ax
je 0x1401d88bd
cmp rbx, qword [r13 + 0x98]
ja 0x1401d88ab
cmp dword [r13 + 0x34], 0
je 0x1401d88bd
mov dword [r13 + 0x2c], 1
cmp ax, 1
ja 0x1401d3489
xor edi, edi
lea r10, [0x140000000]
mov ebx, edi
mov esi, 0xfc00
mov r8d, 0x2000
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12 + 0x50]
mov edx, 0xdc00
mov r15d, dword [rsp + 0x108]
add rcx, 0xfffffffffffffffe
mov qword [r12 + 0x50], rcx
movzx eax, word [rcx]
and ax, si
cmp ax, dx
jne 0x1401d890f
lea rax, [rcx - 2]
mov qword [r12 + 0x50], rax
mov rax, qword [r12 + 8]
mov rsi, qword [rsp + 0xf8]
cmp qword [r12 + 0x50], rax
ja 0x1401da21a
mov rbp, qword [rsp + 0x30]
xor r9d, r9d
mov rdi, qword [rsp + 0x100]
mov r11d, dword [rsp + 0xe0]
jmp 0x1401d0833
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov eax, ecx
mov qword [r12 + 0x50], rdx
and eax, esi
cmp eax, ebp
jne 0x1401d89ac
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
cmp dword [r12 + 0x40], ecx
je case.0x1401d83af.8193
cmp dword [r12 + 0x44], ecx
je case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xcc
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12 + 0x50]
mov edx, 0xdc00
mov r15d, dword [rsp + 0x108]
add rcx, 0xfffffffffffffffe
mov qword [r12 + 0x50], rcx
movzx eax, word [rcx]
and ax, si
cmp ax, dx
jne 0x1401d8a10
lea rax, [rcx - 2]
mov qword [r12 + 0x50], rax
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
jbe 0x1401d7b13
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xcd
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov eax, ecx
mov qword [r12 + 0x50], rdx
and eax, esi
cmp eax, ebp
jne 0x1401d8a9f
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
cmp dword [r12 + 0x40], ecx
je case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xce
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12 + 0x50]
mov edx, 0xdc00
mov r15d, dword [rsp + 0x108]
add rcx, 0xfffffffffffffffe
mov qword [r12 + 0x50], rcx
movzx eax, word [rcx]
and ax, si
cmp ax, dx
jne 0x1401d8af8
lea rax, [rcx - 2]
mov qword [r12 + 0x50], rax
mov rax, qword [r12 + 8]
mov rsi, qword [rsp + 0xf8]
cmp qword [r12 + 0x50], rax
ja 0x1401da229
mov rbp, qword [rsp + 0x30]
xor r9d, r9d
mov rdi, qword [rsp + 0x100]
mov r11d, dword [rsp + 0xe0]
jmp 0x1401d0833
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx ecx, word [rax]
add rax, 2
mov qword [r12 + 0x50], rax
test r14d, r14d
je 0x1401d8b7f
and ecx, esi
cmp ecx, ebp
jne 0x1401d8b7f
add rax, 2
mov qword [r12 + 0x50], rax
cmp dword [r12 + 0x40], 0xf
je case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd0
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d8c15
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d8c15
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx edx, byte [r10 + rcx*4 + 0x3139b1]
lea eax, [rdx - 5]
test al, 0xfb
je 0x1401d8c50
mov ecx, edi
cmp dl, 8
jne 0x1401d8c55
mov ecx, 1
cmp dword [r12 + 0x40], 0xf
mov eax, edi
sete al
cmp ecx, eax
je 0x1401d85b1
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd1
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d8cf2
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d8cf2
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
mov eax, dword [r12 + 0x44]
movzx edx, byte [r10 + rcx*4 + 0x3139b1]
mov ecx, edi
cmp dword [r10 + rdx*4 + 0x32f4f0], eax
mov eax, edi
sete cl
cmp dword [r12 + 0x40], 0xf
sete al
cmp ecx, eax
je 0x1401d85b1
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd2
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea rcx, [rax + 2]
mov qword [r12 + 0x50], rcx
test r14d, r14d
je 0x1401d8dc8
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d8dc8
movzx eax, word [rcx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [r10 + rcx*4 + 0x3139b1]
mov ecx, edi
cmp eax, dword [r12 + 0x44]
mov eax, edi
sete cl
cmp dword [r12 + 0x40], 0xf
sete al
cmp ecx, eax
je case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd3
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d8e9c
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d8e9c
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [r10 + rcx*4 + 0x3139b0]
mov ecx, edi
cmp eax, dword [r12 + 0x44]
mov eax, edi
sete cl
cmp dword [r12 + 0x40], 0xf
sete al
cmp ecx, eax
je 0x1401d85b1
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd4
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d8f70
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d8f70
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [r10 + rcx*4 + 0x3139b1]
mov ecx, edi
mov eax, dword [r10 + rax*4 + 0x32f4f0]
dec eax
test eax, 0xfffffffd
mov eax, edi
sete cl
cmp dword [r12 + 0x40], 0xf
sete al
cmp ecx, eax
je 0x1401d85b1
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd5
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea rcx, [rax + 2]
mov qword [r12 + 0x50], rcx
test r14d, r14d
je 0x1401d9048
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d9048
movzx eax, word [rcx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
lea rax, [rcx + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
cmp edx, r8d
ja 0x1401d9119
je case.0x1401d914b.8193
cmp edx, 0x20
ja 0x1401d90fa
je case.0x1401d914b.8193
mov eax, edx
sub eax, 9
je case.0x1401d914b.8193
sub eax, 1
je case.0x1401d914b.8193
sub eax, 1
je case.0x1401d914b.8193
sub eax, 1
je case.0x1401d914b.8193
cmp eax, 1
je case.0x1401d914b.8193
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [r10 + rcx*4 + 0x3139b1]
mov ecx, edi
cmp dword [r10 + rax*4 + 0x32f4f0], 6
mov eax, edi
sete cl
cmp dword [r12 + 0x40], 0xf
sete al
cmp ecx, eax
je case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd6
jmp 0x1401da712
mov eax, edx
sub eax, 0x85
je case.0x1401d914b.8193
sub eax, 0x1b
je case.0x1401d914b.8193
sub eax, 0x15e0
je case.0x1401d914b.8193
cmp eax, 0x18e
jmp 0x1401d908f
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d914b.8194
je case.0x1401d914b.8193
lea eax, [rdx - 0x2001]
cmp eax, 0x5e
ja case.0x1401d914b.8194
movzx eax, byte [r10 + rax + 0x1db5ac]
mov ecx, dword [r10 + rax*4 + 0x1db5a4]
add rcx, r10
jmp rcx
cmp dword [r12 + 0x40], 0xf
jne case.0x1401da016.7
mov ebx, edi
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d91cf
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d91cf
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, byte [r10 + rcx*4 + 0x3139b1]
mov eax, dword [r10 + rax*4 + 0x32f4f0]
dec eax
test eax, 0xfffffffd
je 0x1401d9216
mov ecx, edi
cmp edx, 0x5f
jne 0x1401d921b
mov ecx, 1
cmp dword [r12 + 0x40], 0xf
mov eax, edi
sete al
cmp ecx, eax
je 0x1401d85b1
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd7
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d92b8
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d92b8
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, dword [r12 + 0x44]
lea rcx, [rax*4 + 0x3133e0]
add rcx, r10
mov eax, dword [rcx]
cmp edx, eax
jb 0x1401d92de
nop
lea rcx, [rcx + 4]
cmp edx, eax
je 0x1401d9301
mov eax, dword [rcx]
cmp edx, eax
jae 0x1401d92d0
cmp dword [r12 + 0x40], 0xf
jne 0x1401d85b1
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd8
jmp 0x1401da712
cmp dword [r12 + 0x40], 0xf
jne case.0x1401da016.10
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx ecx, word [rax]
lea rdx, [rax + 2]
mov qword [r12 + 0x50], rdx
test r14d, r14d
je 0x1401d9383
mov eax, ecx
and eax, esi
cmp eax, ebp
jne 0x1401d9383
movzx eax, word [rdx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
lea rax, [rdx + 2]
mov qword [r12 + 0x50], rax
add ecx, 0x10000
lea eax, [rcx - 0x24]
cmp eax, 0x3c
ja 0x1401d939b
movabs rdx, 0x1000000010000001
bt rdx, rax
jb 0x1401d93b2
lea eax, [rcx - 0xa0]
cmp eax, 0xd75f
jbe 0x1401d93b2
cmp ecx, 0xe000
mov ecx, edi
jb 0x1401d93b7
mov ecx, 1
cmp dword [r12 + 0x40], 0xf
mov eax, edi
sete al
cmp ecx, eax
je case.0x1401d83af.8193
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xd9
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jb 0x1401da238
movzx ecx, word [r13 + 0x60]
test cx, cx
je case.0x1401d83af.8193
cmp rax, qword [r13 + 0x98]
ja 0x1401d9435
cmp dword [r13 + 0x34], 0
je case.0x1401d83af.8193
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov ebx, edi
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rcx, qword [r12 + 0x50]
mov r8, qword [r13 + 0x88]
cmp rcx, r8
jae 0x1401d81e4
cmp dword [r12 + 0x40], 0xc
jne 0x1401d94b6
mov edx, dword [r13 + 0xdc]
test edx, edx
je 0x1401d9515
lea r9, [r13 + 0xe0]
mov dword [rsp + 0x20], r14d
call fcn.14020ec20
lea r10, [0x140000000]
test eax, eax
jne 0x1401d85b1
mov rax, qword [r12 + 0x50]
movzx edx, word [rax]
lea r8, [rax + 2]
mov eax, edx
mov qword [r12 + 0x50], r8
and eax, esi
cmp eax, ebp
jne 0x1401d94f7
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
add edx, 0x10000
add r8, 2
mov qword [r12 + 0x50], r8
mov eax, dword [r12 + 0x40]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x1401d8285.15
mov ecx, dword [r10 + rax*4 + 0x1db60c]
add rcx, r10
jmp rcx
mov edx, dword [r13 + 0xe0]
imul rax, rdx, 0xfffffffffffffffe
add rax, r8
cmp rcx, rax
ja 0x1401d94b6
movzx eax, word [r13 + 0xe4]
cmp word [rcx], ax
jne 0x1401d94b6
cmp edx, 1
je 0x1401d85b1
movzx eax, word [r13 + 0xe6]
cmp word [rcx + 2], ax
jne 0x1401d94b6
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0xd
ja 0x1401d9598
je 0x1401da2f3
sub edx, 0xa
je case.0x1401d9513.13
sub edx, 1
je 0x1401d957f
cmp edx, 1
jne 0x1401d85b1
cmp word [r13 + 0x62], 2
jne case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
sub edx, 0x85
je 0x1401d957f
sub edx, 0x1fa3
je 0x1401d957f
cmp edx, 1
je 0x1401d957f
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
mov r8d, 0x2000
cmp edx, r8d
ja 0x1401d960b
je case.0x1401d83af.8193
cmp edx, 9
je case.0x1401d83af.8193
cmp edx, 0x20
je case.0x1401d83af.8193
mov eax, 0xa0
cmp edx, eax
je case.0x1401d83af.8193
mov eax, 0x1680
cmp edx, eax
je case.0x1401d83af.8193
mov eax, 0x180e
cmp edx, eax
jne case.0x1401d9513.13
mov ebx, edi
jmp case.0x1401d09be.33
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d9513.13
je case.0x1401d83af.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1401d9513.13
movzx eax, byte [r10 + rdx + 0x1db654]
mov ecx, dword [r10 + rax*4 + 0x1db64c]
add rcx, r10
jmp rcx
mov r8d, 0x2000
cmp edx, r8d
ja 0x1401d9694
je case.0x1401d9513.13
cmp edx, 9
je case.0x1401d9513.13
cmp edx, 0x20
je case.0x1401d9513.13
mov eax, 0xa0
cmp edx, eax
je case.0x1401d9513.13
mov eax, 0x1680
cmp edx, eax
je case.0x1401d9513.13
mov eax, 0x180e
cmp edx, eax
je case.0x1401d9513.13
mov ebx, edi
jmp case.0x1401d09be.33
mov eax, 0x3000
cmp edx, eax
ja case.0x1401d83af.8193
je case.0x1401d9513.13
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x1401d83af.8193
movzx eax, byte [r10 + rdx + 0x1db6bc]
mov ecx, dword [r10 + rax*4 + 0x1db6b4]
add rcx, r10
jmp rcx
cmp edx, 0xd
ja 0x1401d96ff
je 0x1401d85b1
sub edx, 0xa
je 0x1401d85b1
sub edx, 1
je 0x1401d85b1
cmp edx, 1
jne case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
sub edx, 0x85
je 0x1401d85b1
sub edx, 0x1fa3
je 0x1401d85b1
cmp edx, 1
jne case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0xd
ja 0x1401d9760
je case.0x1401d9513.13
sub edx, 0xa
je case.0x1401d9513.13
sub edx, 1
je case.0x1401d9513.13
cmp edx, 1
je case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
sub edx, 0x85
je case.0x1401d9513.13
sub edx, 0x1fa3
je case.0x1401d9513.13
cmp edx, 1
je case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0x100
jae case.0x1401d9513.13
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 8
je case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0x100
jae 0x1401d85b1
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 8
jne case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0x100
jae case.0x1401d9513.13
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 1
je case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0x100
jae 0x1401d85b1
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 1
jne case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0x100
jae case.0x1401d9513.13
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 0x10
je case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
cmp edx, 0x100
jae 0x1401d85b1
mov rax, qword [r13 + 0x48]
test byte [rdx + rax], 0x10
jne case.0x1401d9513.13
mov ebx, edi
mov r8d, 0x2000
jmp case.0x1401d09be.33
test ebx, ebx
jne case.0x1401d09be.33
mov r8, qword [r12 + 0x50]
mov ebx, 0xdc00
add r8, 0xfffffffffffffffe
mov qword [r12 + 0x50], r8
test r14d, r14d
jne 0x1401d9dd3
movzx edx, word [r8]
jmp 0x1401d9e20
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12 + 0x50]
mov edx, 0xdc00
add rcx, 0xfffffffffffffffe
mov qword [r12 + 0x50], rcx
movzx eax, word [rcx]
and ax, si
cmp ax, dx
jne 0x1401d98d4
add rcx, 0xfffffffffffffffe
mov qword [r12 + 0x50], rcx
cmp dword [r12 + 0x40], 0x11
jne 0x1401d9f2e
cmp rcx, qword [r12 + 8]
jbe 0x1401d9f2e
cmp word [rcx], 0xa
jne 0x1401d9f2e
mov r15d, dword [rsp + 0x108]
add rcx, 0xfffffffffffffffe
cmp word [rcx], 0xd
jne 0x1401d9f36
mov qword [r12 + 0x50], rcx
jmp 0x1401d9f36
test ebx, ebx
jne case.0x1401d09be.33
mov rcx, qword [r12 + 0x50]
mov r15d, dword [rsp + 0x108]
add rcx, 0xfffffffffffffffe
mov qword [r12 + 0x50], rcx
test r14d, r14d
je 0x1401d9951
movzx eax, word [rcx]
mov edx, 0xdc00
and ax, si
cmp ax, dx
jne 0x1401d9951
lea rax, [rcx - 2]
mov qword [r12 + 0x50], rax
mov rax, qword [r12 + 8]
mov rsi, qword [rsp + 0xf8]
cmp qword [r12 + 0x50], rax
ja 0x1401da37f
mov rbp, qword [rsp + 0x30]
xor r9d, r9d
mov rdi, qword [rsp + 0x100]
mov r11d, dword [rsp + 0xe0]
jmp 0x1401d0833
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d99f9
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d99f9
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov r8d, dword [r12 + 0x44]
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
mov eax, r8d
movzx edx, word [r10 + rcx*4 + 0x3139ba]
and r8d, 0x1f
shr rax, 5
and edx, 0xfff
add rdx, rax
mov eax, dword [r10 + rdx*4 + 0x312e50]
bt eax, r8d
mov edx, edi
mov eax, edi
setb dl
cmp dword [r12 + 0x40], 0xf
sete al
cmp edx, eax
je 0x1401d85b1
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xdf
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d9aed
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d9aed
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx eax, word [r10 + rcx*4 + 0x3139b8]
mov ecx, edi
shr eax, 0xb
cmp eax, dword [r12 + 0x44]
mov eax, edi
sete cl
cmp dword [r12 + 0x40], 0xf
sete al
cmp ecx, eax
je 0x1401d85b1
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xe0
jmp 0x1401da712
test ebx, ebx
jne case.0x1401d09be.33
mov ecx, dword [r12 + 0x38]
lea eax, [rcx + 1]
mov dword [r12 + 0x38], eax
cmp ecx, dword [r12 + 0x3c]
jae case.0x1401d83af.8193
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0x88]
jae 0x1401d9413
movzx edx, word [rax]
lea r8, [rax + 2]
mov qword [r12 + 0x50], r8
test r14d, r14d
je 0x1401d9bc4
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d9bc4
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
lea rdx, [rcx*4 + 0x3139b0]
mov ecx, dword [r12 + 0x44]
movzx eax, byte [rdx + r10]
cmp eax, ecx
je 0x1401d9c25
movzx edx, word [rdx + r10 + 8]
mov eax, ecx
shr rax, 5
and edx, 0x3ff
add rdx, rax
and ecx, 0x1f
mov eax, dword [r10 + rdx*4 + 0x3136b0]
bt eax, ecx
mov ecx, edi
jae 0x1401d9c2a
mov ecx, 1
cmp dword [r12 + 0x40], 0xf
mov eax, edi
sete al
cmp ecx, eax
je 0x1401d85b1
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xe1
jmp 0x1401da712
mov rbx, qword [rsp + 0x40]
lea rcx, [r12 + 0x80]
mov r8, qword [rbx + 0x78]
lea rdx, [rbx + 0x80]
shl r8, 3
call fcn.140240000
mov rax, qword [rbx + 0x78]
mov qword [r12 + 0x78], rax
mov rax, qword [rbx + 0x60]
mov qword [r12 + 0x60], rax
mov rcx, qword [r12]
nop dword [rax + rax]
movzx eax, word [rcx + 2]
lea rcx, [rcx + rax*2]
mov qword [r12], rcx
cmp word [rcx], 0x78
je 0x1401d9c90
jmp 0x1401d7b03
mov rcx, qword [r12]
movzx eax, word [rcx + 2]
lea rbx, [rcx + rax*2]
mov qword [r12], rbx
cmp word [rbx], 0x78
je 0x1401da5c2
lea rax, [rbx + 4]
jmp 0x1401d7b07
mov rbx, qword [rsp + 0x40]
lea rcx, [r12 + 0x80]
mov r8, qword [rbx + 0x78]
lea rdx, [rbx + 0x80]
shl r8, 3
call fcn.140240000
mov rax, qword [rbx + 0x78]
lea r10, [0x140000000]
mov qword [r12 + 0x78], rax
mov eax, dword [r12 + 0x38]
jmp 0x1401d9d29
mov rcx, qword [r12 + 8]
movzx eax, word [rcx + 2]
lea rdx, [rcx + rax*2]
mov qword [r12 + 8], rdx
cmp word [rdx], 0x78
je 0x1401da086
cmp dword [r12 + 0x38], 0
mov eax, edi
sete al
test eax, eax
je 0x1401d9d60
mov rdx, qword [r12]
movzx eax, word [rdx + 2]
lea rcx, [rdx + rax*2]
mov qword [r12], rcx
mov rdx, rcx
cmp word [rcx], 0x78
je 0x1401d9d31
mov r15d, dword [rsp + 0x108]
mov rcx, qword [r12]
movzx eax, word [rcx]
movzx edx, byte [rax + r10 + 0x32f340]
jmp 0x1401d9d71
mov r15d, dword [rsp + 0x108]
mov rdx, qword [r12 + 0x18]
mov rcx, qword [r12]
lea rbx, [rcx + rdx*2]
mov qword [r12], rbx
cmp byte [r12 + 0x49], 0x8f
jne 0x1401d7b13
mov rsi, qword [rsp + 0xf8]
mov eax, 0x2008f
mov dword [rsp + 0xe8], eax
mov byte [r12 + 0x48], 0x23
jmp 0x1401da712
mov r15d, dword [rsp + 0x108]
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
je 0x1401d7b13
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x22
jmp 0x1401da712
movzx ecx, word [r8]
mov r9, r8
movzx eax, cx
and ax, si
cmp ax, bx
jne 0x1401d9df2
lea r9, [r8 - 2]
mov qword [r12 + 0x50], r9
movzx ecx, word [r9]
movzx edx, cx
mov r8, r9
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d9e20
movzx ecx, word [r9 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
add edx, 0x10000
mov r9, qword [r12 + 8]
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r10 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r10 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx r10d, byte [r10 + rcx*4 + 0x3139b2]
cmp r8, r9
jbe 0x1401d9eff
lea r11, [0x140000000]
movzx ecx, word [r8 - 2]
add r8, 0xfffffffffffffffe
test r14d, r14d
jne 0x1401d9e74
mov edx, ecx
jmp 0x1401d9eb3
movzx eax, cx
and ax, si
cmp ax, bx
jne 0x1401d9e88
movzx ecx, word [r8 - 2]
sub r8, 2
movzx edx, cx
mov eax, edx
and eax, esi
cmp eax, ebp
jne 0x1401d9eb3
movzx ecx, word [r8 + 2]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
add edx, 0x10000
mov eax, edx
and edx, 0x7f
shr rax, 7
movzx ecx, word [r11 + rax*2 + 0x317bc0]
shl ecx, 7
add ecx, edx
movzx eax, word [r11 + rcx*2 + 0x31bfc0]
lea rcx, [rax + rax*2]
movzx edx, byte [r11 + rcx*4 + 0x3139b2]
mov eax, dword [r11 + rdx*4 + 0x32f4b0]
bt eax, r10d
jae 0x1401d9eff
mov qword [r12 + 0x50], r8
mov r10d, edx
cmp r8, r9
ja 0x1401d9e62
mov r15d, dword [rsp + 0x108]
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
jbe 0x1401d7b13
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xdc
jmp 0x1401da712
mov r15d, dword [rsp + 0x108]
mov rax, qword [r12 + 8]
cmp qword [r12 + 0x50], rax
jbe 0x1401d7b13
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xdd
jmp 0x1401da712
inc dword [r13 + 0xd4]
mov rdx, qword [r12]
mov eax, dword [r13 + 0xd4]
cmp eax, dword [r13 + 0xd8]
movzx eax, word [rdx]
movzx ecx, byte [rax + r8 + 0x32f340]
movzx eax, word [rdx + 2]
ja 0x1401da38e
add rcx, rax
lea rax, [rdx + rcx*2]
mov qword [r12], rax
jmp 0x1401d0840
test r14d, r14d
jne 0x1401d89c2
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x1d
jmp 0x1401da712
test r14d, r14d
jne 0x1401d8aaa
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x1f
jmp 0x1401da712
test r14d, r14d
jne 0x1401d8798
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x17
jmp 0x1401da712
test esi, esi
js 0x1401da018
cmp esi, 0xd
ja case.0x1401d8285.15
movsxd rax, esi
mov ecx, dword [rbx + rax*4 + 0x1db71c]
add rcx, rbx
jmp rcx
cmp dword [r12 + 0x40], 0x16
je 0x1401da2dc
test r14d, r14d
jne case.0x1401d9513.13
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x21
jmp 0x1401da712
mov rsi, qword [rsp + 0xf8]
mov dword [r12 + 0x3c], r15d
mov rbx, qword [r12]
mov byte [r12 + 0x48], 0x16
jmp 0x1401da712
mov edx, r9d
jmp 0x1401da489
mov eax, 0xfffd
sub dx, 0x7e
test ax, dx
mov eax, 0
sete al
mov dword [r12 + 0x38], eax
mov qword [r12 + 8], rbx
mov rax, qword [r12]
mov rcx, qword [r12 + 8]
mov rsi, qword [rsp + 0xf8]
movzx eax, word [rax]
or eax, 0x30000
mov dword [rsp + 0xe8], eax
movzx eax, word [rcx]
movzx eax, byte [rax + r10 + 0x32f340]
mov byte [r12 + 0x48], 5
lea rbx, [rcx + rax*2]
jmp 0x1401da712
mov byte [r12 + 0x48], 7
jmp 0x1401da712
mov rsi, qword [rsp + 0xf8]
lea rbx, [rbx + rdx*2]
mov byte [r12 + 0x48], 1
jmp 0x1401da712
mov rax, qword [r12 + 0x10]
mov qword [r12], rax
jmp 0x1401da43e
mov rax, qword [rsp + 0x80]
add rax, rax
add qword [r12 + 0x50], rax
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x14
jmp 0x1401da712
mov rbx, qword [r12]
mov byte [r12 + 0x48], 0x1c
jmp 0x1401da712
cmp r8, qword [r13 + 0x88]
jae case.0x1401d8285.13
cmp word [r8], 0xa
jne case.0x1401d8285.13
mov rsi, qword [rsp + 0xf8]
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
mov rbx, qword [r12]
mov byte [r12 + 0x48], 0x21
jmp 0x1401da712
movzx ecx, word [r13 + 0x60]
test cx, cx
je case.0x1401d8285.13
cmp r8, qword [r13 + 0x88]
jb case.0x1401d8285.13
cmp dword [r13 + 0xdc], 0
jne case.0x1401d8285.13
cmp dword [r13 + 0xe0], 2
jne case.0x1401d8285.13
movzx eax, word [r13 + 0xe4]
cmp edx, eax
jne case.0x1401d8285.13
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0x21
jmp 0x1401da712
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], WSAAsyncSelect
jmp 0x1401da712
movzx eax, word [rdx]
mov ecx, 0xdc00
and ax, si
cmp ax, cx
jne 0x1401da1e3
lea rax, [rdx - 2]
mov qword [r12 + 0x50], rax
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], reloc.OLEAUT32.dll_CreateErrorInfo
jmp 0x1401da712
lea rax, [rdi + rbx]
mov qword [r12 + 0x50], rax
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xca
jmp 0x1401da712
mov rbx, qword [r12]
mov byte [r12 + 0x48], 0xcb
jmp 0x1401da712
mov rbx, qword [r12]
mov byte [r12 + 0x48], 0xcf
jmp 0x1401da712
movzx r10d, word [rax]
lea rdx, [rax + 2]
mov qword [r12 + 0x50], rdx
mov rcx, rdx
test r14d, r14d
je 0x1401da282
mov eax, r10d
and eax, esi
cmp eax, ebp
jne 0x1401da282
movzx ecx, word [rdx]
and r10d, 0x3ff
mov eax, r10d
and ecx, 0x3ff
shl eax, 0xa
mov r10d, ecx
or r10d, eax
lea rcx, [rdx + 2]
add r10d, 0x10000
mov qword [r12 + 0x50], rcx
mov r9, qword [r13 + 0x88]
mov rdx, rcx
mov r8, qword [r13 + 0x78]
mov ecx, r10d
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], r14d
call fcn.140211d10
mov qword [r12 + 0x50], rax
cmp rax, qword [r13 + 0x88]
jb 0x1401da2dc
movzx ecx, word [r13 + 0x60]
test cx, cx
je 0x1401da2dc
cmp rax, qword [r13 + 0x98]
ja 0x1401da2ca
cmp dword [r13 + 0x34], 0
je 0x1401da2dc
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xda
jmp 0x1401da712
cmp r8, qword [r13 + 0x88]
jae case.0x1401d9513.13
cmp word [r8], 0xa
jne case.0x1401d9513.13
mov rsi, qword [rsp + 0xf8]
lea rax, [r8 + 2]
mov qword [r12 + 0x50], rax
mov rbx, qword [r12]
mov byte [r12 + 0x48], 0xdb
jmp 0x1401da712
movzx ecx, word [r13 + 0x60]
test cx, cx
je case.0x1401d9513.13
cmp r8, qword [r13 + 0x88]
jb case.0x1401d9513.13
cmp dword [r13 + 0xdc], 0
jne case.0x1401d9513.13
cmp dword [r13 + 0xe0], 2
jne case.0x1401d9513.13
movzx eax, word [r13 + 0xe4]
cmp edx, eax
jne case.0x1401d9513.13
mov dword [r13 + 0x2c], 1
cmp cx, 1
ja 0x1401d3489
mov rbx, qword [r12]
mov rsi, qword [rsp + 0xf8]
mov byte [r12 + 0x48], 0xdb
jmp 0x1401da712
mov rbx, qword [r12]
mov byte [r12 + 0x48], 0xde
jmp 0x1401da712
mov byte [r12 + 0x48], 0x11
jmp 0x1401da70b
add rbx, 2
mov qword [r12 + 8], rbx
mov byte [r12 + 0x48], 9
jmp 0x1401da712
add rbx, 2
mov qword [r12 + 8], rbx
nop word [rax + rax]
movzx eax, word [rbx + 2]
lea rcx, [rbx + rax*2]
mov qword [r12 + 8], rcx
mov rbx, rcx
cmp word [rcx], 0x78
je 0x1401da3c0
lea rbx, [rcx + 4]
mov byte [r12 + 0x48], 0xa
jmp 0x1401da712
add rbx, 2
mov dword [r12 + 0x40], 1
mov qword [r12], rbx
mov ecx, 0x89
movzx eax, word [rbx]
cmp ax, cx
je 0x1401da420
mov ecx, 0x8e
cmp ax, cx
jne 0x1401da414
jmp 0x1401da420
mov dword [r12 + 0x40], r9d
mov eax, 0x20000
jmp 0x1401da428
mov dword [r12 + 0x40], r9d
movzx eax, word [rbx + 4]
bts eax, 0x10
mov dword [r12 + 0x38], eax
lea r10, [0x140000000]
mov dword [r12 + 0x3c], r9d
mov qword [r12 + 0x10], rbx
mov rax, qword [r12 + 0x50]
mov rsi, qword [rsp + 0xf8]
mov qword [r12 + 8], rax
mov rcx, qword [r12]
mov eax, dword [r12 + 0x38]
mov dword [rsp + 0xe8], eax
movzx eax, word [rcx]
movzx eax, byte [rax + r10 + 0x32f340]
mov byte [r12 + 0x48], 8
lea rbx, [rcx + rax*2]
jmp 0x1401da712
movzx edx, word [rbx + 4]
bts edx, 0x10
jmp 0x1401da489
bts edx, 0x11
mov dword [r12 + 0x38], edx
lea r10, [0x140000000]
mov eax, dword [r12 + 0x38]
mov rsi, qword [rsp + 0xf8]
mov dword [rsp + 0xe8], eax
movzx eax, word [rbx]
movzx eax, byte [rax + r10 + 0x32f340]
mov byte [r12 + 0x48], 2
lea rbx, [rbx + rax*2]
jmp 0x1401da712
mov rcx, qword [r13 + 0x70]
movzx eax, word [rbx + 2]
lea r10, [rcx + rax*2]
cmp r10, rcx
je 0x1401da4da
movzx r9d, word [r10 + 4]
cmp dword [r12 + 0x68], 0xffffffff
je 0x1401da529
mov rax, qword [r12 + 0x70]
cmp rax, 0xffffffffffffffff
je 0x1401da529
mov r8, qword [rdi + 0x30]
mov edx, r9d
bts edx, 0x12
nop dword [rax + rax]
add rax, r8
mov rcx, rax
sub rcx, rsi
cmp dword [rax + 0x34], edx
je 0x1401da51a
mov rax, qword [rcx + 0x70]
cmp rax, 0xffffffffffffffff
jne 0x1401da500
jmp 0x1401da529
mov rax, qword [rcx + 0x50]
cmp qword [r12 + 0x50], rax
je 0x1401da8e6
mov qword [r12 + 8], r10
bts r9d, 0x12
mov dword [r12 + 0x38], r9d
lea r10, [0x140000000]
mov rcx, qword [r12 + 8]
mov eax, dword [r12 + 0x38]
mov rsi, qword [rsp + 0xf8]
mov dword [rsp + 0xe8], eax
movzx eax, word [rcx]
movzx eax, byte [rax + r10 + 0x32f340]
mov byte [r12 + 0x48], SHCreateThread
lea rbx, [rcx + rax*2]
jmp 0x1401da712
bts edx, 0x11
lea r10, [0x140000000]
mov dword [r12 + 0x38], edx
mov eax, dword [r12 + 0x38]
mov rsi, qword [rsp + 0xf8]
mov dword [rsp + 0xe8], eax
movzx eax, word [rbx]
movzx eax, byte [rax + r10 + 0x32f340]
mov byte [r12 + 0x48], 3
lea rbx, [rbx + rax*2]
jmp 0x1401da712
bts edx, 0x11
lea r10, [0x140000000]
mov dword [r12 + 0x38], edx
mov eax, dword [r12 + 0x38]
mov rsi, qword [rsp + 0xf8]
mov dword [rsp + 0xe8], eax
movzx eax, word [rbx]
movzx eax, byte [rax + r10 + 0x32f340]
mov byte [r12 + 0x48], 4
lea rbx, [rbx + rax*2]
jmp 0x1401da712
lea rax, [rbx + 4]
mov qword [r13 + 0xb0], rax
mov qword [r12 + 0x60], rax
mov rdx, qword [r12]
movzx eax, word [rdx]
movzx ecx, byte [rax + r8 + 0x32f340]
movzx eax, word [rdx + 2]
mov byte [r12 + 0x48], SHCreateThread
jmp 0x1401da70b
movzx eax, word [rbx]
movzx eax, byte [rax + r8 + 0x32f340]
mov byte [r12 + 0x48], SHCreateThread
lea rbx, [rbx + rax*2]
jmp 0x1401da712
lea rax, [rbx + 4]
mov qword [r13 + 0xb0], rax
mov qword [r12 + 0x60], rax
mov rdx, qword [r12]
movzx eax, word [rdx]
movzx ecx, byte [rax + r8 + 0x32f340]
movzx eax, word [rdx + 2]
mov byte [r12 + 0x48], 0x24
jmp 0x1401da70b
movzx eax, word [rbx]
movzx eax, byte [rax + r8 + 0x32f340]
mov byte [r12 + 0x48], SHCreateThread
lea rbx, [rbx + rax*2]
jmp 0x1401da712
lea rax, [rbx + 4]
mov qword [r13 + 0xb0], rax
mov qword [r12 + 0x60], rax
mov rdx, qword [r12]
movzx eax, word [rdx]
movzx ecx, byte [rax + r8 + 0x32f340]
movzx eax, word [rdx + 2]
mov byte [r12 + 0x48], SHCreateThread
jmp 0x1401da70b
movzx eax, word [rbx]
movzx eax, byte [rax + r8 + 0x32f340]
mov byte [r12 + 0x48], reloc.SHLWAPI.dll_SHCreateThread
lea rbx, [rbx + rax*2]
jmp 0x1401da712
movzx eax, word [rbx]
movzx eax, byte [rax + r8 + 0x32f340]
mov byte [r12 + 0x48], 0x12
lea rbx, [rbx + rax*2]
jmp 0x1401da712
lea rax, [rbx + 4]
mov qword [r13 + 0xb0], rax
mov qword [r12 + 0x60], rax
mov rdx, qword [r12]
movzx eax, word [rdx]
movzx ecx, byte [rax + r8 + 0x32f340]
movzx eax, word [rdx + 2]
mov byte [r12 + 0x48], 0x13
add rcx, rax
lea rbx, [rdx + rcx*2]
lea rbp, [r12 + rsi]
mov qword [rsp + 0x30], rbp
cmp rbp, qword [rsp + 0x60]
jb 0x1401da7de
mov r15, qword [rsp + 0x100]
mov rcx, qword [r13 + 0x18]
mov r8, qword [r15 + 0x38]
lea rdi, [r8 + r8]
cmp rdi, rcx
jbe 0x1401da756
xor edx, edx
mov rax, rcx
div rsi
mov rdi, rcx
sub rdi, rdx
cmp r8, rdi
jae 0x1401da8ed
mov rdx, qword [r15 + 0x10]
mov rcx, rdi
mov rax, qword [r15]
call qword [case.0x1400f4a60.0]
mov rsi, rax
test rax, rax
je 0x1401da8f4
mov r8, qword [rsp + 0x58]
mov rcx, rax
mov rdx, qword [r15 + 0x30]
call fcn.140240000
mov rcx, qword [r15 + 0x30]
mov rdx, rsi
mov rbp, qword [rsp + 0xf8]
sub rdx, rcx
mov rax, qword [r15 + 8]
add r12, rdx
mov rdx, qword [r15 + 0x10]
add rbp, r12
mov qword [rsp + 0x30], rbp
call qword [case.0x1400f4a60.0]
xor edx, edx
mov qword [r15 + 0x30], rsi
mov rax, rdi
mov qword [r15 + 0x38], rdi
div qword [rsp + 0xf8]
mov rax, rdi
sub rax, rdx
mov qword [rsp + 0x58], rax
add rax, rsi
mov rsi, qword [rsp + 0xf8]
mov qword [rsp + 0x60], rax
lea rdx, [r12 + 0x50]
lea rcx, [rbp + 0x50]
lea r8, [rsi - 0x50]
call fcn.140240000
mov eax, dword [r12 + 0x30]
mov r12, rbp
mov r15d, dword [rsp + 0x108]
inc eax
mov rdi, qword [rsp + 0x100]
xor r9d, r9d
mov r8d, dword [rsp + 0xe8]
mov r11d, dword [rsp + 0xe0]
mov dword [rbp + 0x30], eax
jmp 0x1401d0790
xor eax, eax
jmp 0x1401da907
mov qword [r13 + 0x90], rdx
mov rax, qword [r12 + 0x78]
mov qword [r13 + 0x58], rax
mov rax, qword [r12 + 0x60]
mov qword [r13 + 0xa8], rax
mov rax, qword [r12 + 0x50]
cmp rax, qword [r13 + 0xa0]
jbe 0x1401da85d
mov qword [r13 + 0xa0], rax
mov rax, qword [r12 + 0x58]
lea rdx, [r12 + 0x80]
sub rax, qword [r13 + 0x78]
lea rcx, [rdi + 0x70]
sar rax, 1
mov qword [rdi + 0x60], rax
mov rax, qword [r12 + 0x50]
sub rax, qword [r13 + 0x78]
sar rax, 1
mov qword [rdi + 0x68], rax
movzx ebx, word [rdi + 0x5a]
movzx eax, word [rsp + 0xf0]
inc eax
cmp eax, ebx
cmovbe ebx, eax
add ebx, ebx
lea r8d, [rbx - 2]
shl r8, 3
call fcn.140240000
mov rax, qword [r12 + 0x78]
dec ebx
add rax, 2
mov edx, ebx
cmp rdx, rax
jb 0x1401da8db
nop dword [rax]
mov qword [rdi + rdx*8 + 0x60], 0xffffffffffffffff
dec ebx
mov rcx, qword [r12 + 0x78]
add rcx, 2
mov edx, ebx
cmp rdx, rcx
jae 0x1401da8c0
mov eax, 1
jmp 0x1401da907
mov eax, ebx
jmp 0x1401da907
mov eax, 0xffffffcc
jmp 0x1401da907
mov eax, 0xffffffc1
jmp 0x1401da907
mov eax, 0xffffffd0
jmp 0x1401da907
mov eax, 0xffffffd4
jmp 0x1401da907
mov eax, 0xffffffd1
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret