Function at 0x140206820
Capabilities:
Check for software breakpoints

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov esi, ecx
cmp ecx, 0xd7ff
ja 0x140206841
mov eax, esi
shr eax, 5
jmp 0x140206861
cmp esi, 0xffff
ja 0x140206920
mov ecx, esi
shr ecx, 5
lea eax, [rcx + 0x140]
cmp esi, 0xdc00
cmovae eax, ecx
mov eax, eax
lea rcx, [0x140358e90]
movzx eax, word [rcx + rax*2]
mov ecx, esi
and ecx, 0x1f
lea eax, [rcx + rax*4]
mov eax, eax
lea r13, [0x140358e90]
movzx r15d, word [r13 + rax*2]
test r15b, 8
jne 0x1402068b8
mov ecx, esi
test r15b, 2
je 0x14020689c
movsx ecx, r15w
sar ecx, 7
add ecx, esi
xor eax, eax
cmp ecx, esi
sete al
neg eax
xor eax, ecx
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r14d, r15d
shr r14d, 4
lea r12, [0x140357e90]
lea rbx, [r12 + r14*2]
add rbx, 2
movzx edi, word [r12 + r14*2]
test edi, 0x4000
jne 0x140206965
test dil, dil
jns 0x140206f4e
mov eax, edi
and eax, 0x7f
test edi, 0x100
lea rcx, [0x140357720]
movzx eax, byte [rax + rcx]
lea rdx, [rbx + rax*2]
lea rcx, [rbx + rax*4 + 2]
cmove rcx, rdx
movzx eax, word [rcx]
and eax, 0xf
je 0x140206f4e
add rcx, 2
mov qword [r9], rcx
jmp 0x1402068a7
mov eax, 0xd58
cmp esi, 0x10ffff
ja 0x140206876
mov eax, 0x3040
cmp esi, 0xe07ff
ja 0x140206876
mov eax, esi
shr eax, 0xb
lea rcx, [0x140358e90]
movzx ecx, word [rcx + rax*2 + 0x1040]
mov eax, esi
shr eax, 5
and eax, 0x3f
add eax, ecx
jmp 0x140206861
mov ebp, dword [rsp + 0xa0]
cmp ebp, 3
jne 0x140206ba9
cmp esi, 0x127
jg 0x1402069a2
lea eax, [rsi - 0x49]
cmp eax, 2
jb 0x1402069c6
cmp esi, 0xcc
je 0x140206c1a
cmp esi, 0xcd
je 0x140206c5d
jmp 0x140206f4e
cmp esi, 0x12f
jg 0x140206f1e
cmp esi, 0x128
je 0x140206b9d
cmp esi, 0x12e
jne 0x140206f4e
mov rbp, rdx
test rdx, rdx
je 0x140206b73
mov rcx, r8
mov dl, 1
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r8
call rbp
mov r8, qword [rsp + 0x20]
mov r9, qword [rsp + 0x28]
test eax, eax
js 0x140206b73
cmp eax, 0xd800
jae 0x140206a03
mov ecx, eax
shr ecx, 5
jmp 0x140206a21
cmp eax, 0x10000
jae 0x140206b00
mov edx, eax
shr edx, 5
lea ecx, [rdx + 0x140]
cmp eax, 0xdc00
cmovae ecx, edx
mov ecx, ecx
movzx ecx, word [r13 + rcx*2]
and eax, 0x1f
lea rcx, [rax + rcx*4]
movzx eax, word [r13 + rcx*2]
test al, 8
je 0x140206a45
shr eax, 4
movzx eax, word [r12 + rax*2]
shr eax, 7
and eax, 0x60
cmp eax, 0x40
je 0x140206b42
cmp eax, 0x60
je 0x140206a67
jmp 0x140206b73
and eax, 0x60
cmp eax, 0x60
jne 0x140206b3d
mov rcx, r8
xor edx, edx
call rbp
mov r8, qword [rsp + 0x20]
mov r9, qword [rsp + 0x28]
test eax, eax
js 0x140206b73
cmp eax, 0xd7ff
ja 0x140206a8e
mov ecx, eax
shr ecx, 5
jmp 0x140206aa8
cmp eax, 0xffff
ja 0x140206ace
mov edx, eax
shr edx, 5
lea ecx, [rdx + 0x140]
cmp eax, 0xdc00
cmovae ecx, edx
mov ecx, ecx
movzx ecx, word [r13 + rcx*2]
and eax, 0x1f
lea rcx, [rax + rcx*4]
movzx eax, word [r13 + rcx*2]
test al, 8
je 0x140206a5b
shr eax, 4
movzx eax, word [r12 + rax*2]
shr eax, 7
jmp 0x140206a5b
mov ecx, 0xd58
cmp eax, 0x10ffff
ja 0x140206ab7
mov ecx, 0x3040
cmp eax, 0xe07ff
ja 0x140206ab7
mov ecx, eax
shr ecx, 0xb
movzx edx, word [r13 + rcx*2 + 0x1040]
mov ecx, eax
shr ecx, 5
and ecx, 0x3f
add ecx, edx
jmp 0x140206aa8
mov ecx, 0xd58
cmp eax, 0x10ffff
ja 0x140206a30
mov ecx, 0x3040
cmp eax, 0xe07ff
ja 0x140206a30
mov ecx, eax
shr ecx, 0xb
movzx edx, word [r13 + rcx*2 + 0x1040]
mov ecx, eax
shr ecx, 5
and ecx, 0x3f
add ecx, edx
jmp 0x140206a21
cmp eax, 0x40
jne 0x140206b73
xor eax, eax
cmp esi, 0xcc
jg 0x140206c31
cmp esi, 0x49
je 0x140206e9c
cmp esi, 0x4a
je 0x140206e93
cmp esi, 0xcc
je 0x140206c1a
jmp 0x1402068a7
cmp esi, 0xcc
mov rdx, rbp
mov ebp, dword [rsp + 0xa0]
je 0x140206c1a
cmp esi, 0xcd
je 0x140206c5d
cmp esi, 0x128
jne 0x140206ba9
lea rax, [0x140357e46]
jmp 0x140206c64
cmp esi, 0x130
jne 0x140206bbf
mov eax, 0x69
cmp ebp, 2
je 0x1402068a7
cmp esi, 0x307
jne 0x140206d89
cmp ebp, 2
jne 0x140206d89
test rdx, rdx
je 0x140206cbb
mov rcx, r8
mov qword [rsp + 0x30], rdx
mov dl, 0xff
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r8
call qword [rsp + 0x30]
mov r8, qword [rsp + 0x20]
mov r9, qword [rsp + 0x28]
test eax, eax
js 0x140206cbb
cmp eax, 0x49
jne 0x140206c23
mov qword [r9], 0
xor eax, eax
jmp 0x1402068a7
lea rax, [0x140357e3a]
jmp 0x140206c64
cmp eax, 0xd800
jae 0x140206c71
mov ecx, eax
shr ecx, 5
jmp 0x140206c8f
cmp esi, 0xcd
je 0x140206c5d
cmp esi, 0x128
je 0x140206b9d
cmp esi, 0x12e
jne 0x1402068a7
lea rax, [0x140357e34]
jmp 0x140206ea3
lea rax, [0x140357e40]
mov qword [r9], rax
mov eax, 3
jmp 0x1402068a7
cmp eax, 0x10000
jae 0x140206e56
mov edx, eax
shr edx, 5
lea ecx, [rdx + 0x140]
cmp eax, 0xdc00
cmovae ecx, edx
mov ecx, ecx
movzx ecx, word [r13 + rcx*2]
and eax, 0x1f
lea rcx, [rax + rcx*4]
movzx eax, word [r13 + rcx*2]
test al, 8
je 0x140206cb3
shr eax, 4
movzx eax, word [r12 + rax*2]
shr eax, 7
and eax, 0x60
cmp eax, 0x60
je 0x140206cd8
cmp esi, 0x130
je 0x140206e9c
jmp 0x140206f4e
and eax, 0x60
cmp eax, 0x60
jne 0x140206d89
mov rcx, r8
xor edx, edx
call qword [rsp + 0x30]
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x20]
mov r9, qword [rsp + 0x28]
test eax, eax
js 0x140206d89
cmp eax, 0x49
je 0x140206c0c
cmp eax, 0xd7ff
ja 0x140206d0f
mov ecx, eax
shr ecx, 5
jmp 0x140206d2d
cmp eax, 0xffff
ja 0x140206d56
mov r10d, eax
shr r10d, 5
lea ecx, [r10 + 0x140]
cmp eax, 0xdc00
cmovae ecx, r10d
mov ecx, ecx
movzx ecx, word [r13 + rcx*2]
and eax, 0x1f
lea rcx, [rax + rcx*4]
movzx eax, word [r13 + rcx*2]
test al, 8
je 0x140206ccc
shr eax, 4
movzx eax, word [r12 + rax*2]
shr eax, 7
jmp 0x140206ccc
mov ecx, 0xd58
cmp eax, 0x10ffff
ja 0x140206d3c
mov ecx, 0x3040
cmp eax, 0xe07ff
ja 0x140206d3c
mov ecx, eax
shr ecx, 0xb
movzx r10d, word [r13 + rcx*2 + 0x1040]
mov ecx, eax
shr ecx, 5
and ecx, 0x3f
add ecx, r10d
jmp 0x140206d2d
cmp esi, 0x49
jne 0x140206f1e
cmp ebp, 2
jne 0x140206f1e
mov eax, 0x131
test rdx, rdx
je 0x1402068a7
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r8
mov rcx, r8
mov rax, rdx
mov dl, 1
mov rbp, rax
call rax
test eax, eax
js 0x140207018
mov ecx, eax
cmp eax, 0x307
jne 0x140206de7
cmp esi, 0x130
mov r9, qword [rsp + 0x28]
jne 0x140206f4e
jmp 0x140206e9c
cmp ecx, 0xd800
jae 0x140206e03
mov edx, ecx
shr edx, 5
mov r8, qword [rsp + 0x20]
mov eax, 0x131
jmp 0x140206eb0
cmp ecx, 0x10000
mov r8, qword [rsp + 0x20]
mov eax, 0x131
jb 0x140206fd9
mov edx, 0xd58
cmp ecx, 0x10ffff
ja 0x140206ebf
mov edx, 0x3040
cmp ecx, 0xe07ff
ja 0x140206ebf
mov edx, ecx
shr edx, 0xb
movzx r9d, word [r13 + rdx*2 + 0x1040]
mov edx, ecx
shr edx, 5
and edx, 0x3f
add edx, r9d
jmp 0x140206eb0
mov ecx, 0xd58
cmp eax, 0x10ffff
ja 0x140206c9e
mov ecx, 0x3040
cmp eax, 0xe07ff
ja 0x140206c9e
mov ecx, eax
shr ecx, 0xb
movzx edx, word [r13 + rcx*2 + 0x1040]
mov ecx, eax
shr ecx, 5
and ecx, 0x3f
add ecx, edx
jmp 0x140206c8f
lea rax, [0x140357e30]
jmp 0x140206ea3
lea rax, [0x140357820]
mov qword [r9], rax
mov eax, 2
jmp 0x1402068a7
mov edx, edx
movzx edx, word [r13 + rdx*2]
and ecx, 0x1f
lea rdx, [rcx + rdx*4]
movzx ecx, word [r13 + rdx*2]
test cl, 8
je 0x140206ed5
shr ecx, 4
movzx ecx, word [r12 + rcx*2]
shr ecx, 7
and ecx, 0x60
cmp ecx, 0x60
jne 0x1402068a7
mov rcx, r8
xor edx, edx
call rbp
test eax, eax
js 0x140207018
mov ecx, eax
cmp eax, 0x307
mov r9, qword [rsp + 0x28]
mov r8, qword [rsp + 0x20]
mov rdx, rbp
mov eax, 0x131
je 0x140206f1e
cmp ecx, 0xd7ff
ja 0x140206fcd
mov edx, ecx
shr edx, 5
jmp 0x140206eb0
cmp esi, 0x130
je 0x140206e9c
cmp esi, 0x3a3
jne 0x140206f4e
mov rcx, rdx
mov r13, rdx
mov rdx, r8
mov rbp, r8
mov r8b, 1
call fcn.140207030
test al, al
je 0x140206ff6
test r15b, 2
je 0x140206f79
mov eax, edi
and eax, 0x10
je 0x140206f79
mov eax, edi
and eax, 0xf
lea rcx, [0x140357720]
movzx eax, byte [rax + rcx]
test edi, 0x100
jne 0x140206f95
movzx ecx, word [rbx + rax*2]
jmp 0x140206fa3
mov ecx, esi
test dil, 1
je 0x14020689c
test edi, 0x100
jne 0x140206fb7
movzx ecx, word [rbx]
jmp 0x14020689c
movzx edx, word [rbx + rax*4]
shl edx, 0x10
movzx ecx, word [rbx + rax*4 + 2]
or ecx, edx
mov eax, ecx
neg eax
test edi, 0x400
cmove eax, ecx
add eax, esi
jmp 0x1402068a7
lea rax, [r12 + r14*2]
movzx edx, word [rax + 2]
shl edx, 0x10
movzx ecx, word [rax + 4]
or ecx, edx
jmp 0x14020689c
cmp ecx, 0xffff
ja 0x140206e19
mov r9d, ecx
shr r9d, 5
lea edx, [r9 + 0x140]
cmp ecx, 0xdc00
cmovae edx, r9d
jmp 0x140206eb0
mov rcx, r13
mov rdx, rbp
mov r8b, 0xff
call fcn.140207030
mov ecx, eax
mov eax, 0x3c2
test cl, cl
jne 0x1402068a7
jmp 0x140206f4e
mov eax, 0x131
jmp 0x1402068a7