Function at 0x1401ee910
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 0x1401ee931
mov eax, esi
shr eax, 5
jmp 0x1401ee951
cmp esi, 0xffff
ja 0x1401eea10
mov ecx, esi
shr ecx, 5
lea eax, [rcx + 0x140]
cmp esi, 0xdc00
cmovae eax, ecx
mov eax, eax
lea rcx, [0x140316b60]
movzx eax, word [rcx + rax*2]
mov ecx, esi
and ecx, 0x1f
lea eax, [rcx + rax*4]
mov eax, eax
lea r13, [0x140316b60]
movzx r15d, word [r13 + rax*2]
test r15b, 8
jne 0x1401ee9a8
mov ecx, esi
test r15b, 2
je 0x1401ee98c
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, [0x140315b60]
lea rbx, [r12 + r14*2]
add rbx, 2
movzx edi, word [r12 + r14*2]
test edi, 0x4000
jne 0x1401eea55
test dil, dil
jns 0x1401ef039
mov eax, edi
and eax, 0x7f
test edi, 0x100
lea rcx, [0x1403153f0]
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 0x1401ef039
add rcx, 2
mov qword [r9], rcx
jmp 0x1401ee997
mov eax, 0xd58
cmp esi, 0x10ffff
ja 0x1401ee966
mov eax, 0x3040
cmp esi, 0xe07ff
ja 0x1401ee966
mov eax, esi
shr eax, 0xb
lea rcx, [0x140316b60]
movzx ecx, word [rcx + rax*2 + 0x1040]
mov eax, esi
shr eax, 5
and eax, 0x3f
add eax, ecx
jmp 0x1401ee951
mov ebp, dword [rsp + 0xa0]
cmp ebp, 3
jne 0x1401eec97
cmp esi, 0x127
jg 0x1401eea92
lea eax, [rsi - 0x49]
cmp eax, 2
jb 0x1401eeab6
cmp esi, 0xcc
je 0x1401eed08
cmp esi, 0xcd
je 0x1401eed4b
jmp 0x1401ef039
cmp esi, 0x12f
jg 0x1401ef009
cmp esi, 0x128
je 0x1401eec8b
cmp esi, 0x12e
jne 0x1401ef039
mov rbp, rdx
test rdx, rdx
je 0x1401eec61
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 0x1401eec61
cmp eax, 0xd800
jae 0x1401eeaf3
mov ecx, eax
shr ecx, 5
jmp 0x1401eeb11
cmp eax, 0x10000
jae 0x1401eebee
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 ecx, [rax + rcx*4]
movzx eax, word [r13 + rcx*2]
test al, 8
je 0x1401eeb34
shr eax, 4
movzx eax, word [r12 + rax*2]
shr eax, 7
and eax, 0x60
cmp eax, 0x40
je 0x1401eec30
cmp eax, 0x60
je 0x1401eeb56
jmp 0x1401eec61
and eax, 0x60
cmp eax, 0x60
jne 0x1401eec2b
mov rcx, r8
xor edx, edx
call rbp
mov r8, qword [rsp + 0x20]
mov r9, qword [rsp + 0x28]
test eax, eax
js 0x1401eec61
cmp eax, 0xd7ff
ja 0x1401eeb7d
mov ecx, eax
shr ecx, 5
jmp 0x1401eeb97
cmp eax, 0xffff
ja 0x1401eebbc
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 ecx, [rax + rcx*4]
movzx eax, word [r13 + rcx*2]
test al, 8
je 0x1401eeb4a
shr eax, 4
movzx eax, word [r12 + rax*2]
shr eax, 7
jmp 0x1401eeb4a
mov ecx, 0xd58
cmp eax, 0x10ffff
ja 0x1401eeba5
mov ecx, 0x3040
cmp eax, 0xe07ff
ja 0x1401eeba5
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 0x1401eeb97
mov ecx, 0xd58
cmp eax, 0x10ffff
ja 0x1401eeb1f
mov ecx, 0x3040
cmp eax, 0xe07ff
ja 0x1401eeb1f
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 0x1401eeb11
cmp eax, 0x40
jne 0x1401eec61
xor eax, eax
cmp esi, 0xcc
jg 0x1401eed1f
cmp esi, 0x49
je 0x1401eef88
cmp esi, 0x4a
je 0x1401eef7f
cmp esi, 0xcc
je 0x1401eed08
jmp 0x1401ee997
cmp esi, 0xcc
mov rdx, rbp
mov ebp, dword [rsp + 0xa0]
je 0x1401eed08
cmp esi, 0xcd
je 0x1401eed4b
cmp esi, 0x128
jne 0x1401eec97
lea rax, [0x140315b16]
jmp 0x1401eed52
cmp esi, 0x130
jne 0x1401eecad
mov eax, 0x69
cmp ebp, 2
je 0x1401ee997
cmp esi, 0x307
jne 0x1401eee75
cmp ebp, 2
jne 0x1401eee75
test rdx, rdx
je 0x1401eeda8
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 0x1401eeda8
cmp eax, 0x49
jne 0x1401eed11
mov qword [r9], 0
xor eax, eax
jmp 0x1401ee997
lea rax, [0x140315b0a]
jmp 0x1401eed52
cmp eax, 0xd800
jae 0x1401eed5f
mov ecx, eax
shr ecx, 5
jmp 0x1401eed7d
cmp esi, 0xcd
je 0x1401eed4b
cmp esi, 0x128
je 0x1401eec8b
cmp esi, 0x12e
jne 0x1401ee997
lea rax, [0x140315b04]
jmp 0x1401eef8f
lea rax, [0x140315b10]
mov qword [r9], rax
mov eax, 3
jmp 0x1401ee997
cmp eax, 0x10000
jae 0x1401eef42
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 ecx, [rax + rcx*4]
movzx eax, word [r13 + rcx*2]
test al, 8
je 0x1401eeda0
shr eax, 4
movzx eax, word [r12 + rax*2]
shr eax, 7
and eax, 0x60
cmp eax, 0x60
je 0x1401eedc5
cmp esi, 0x130
je 0x1401eef88
jmp 0x1401ef039
and eax, 0x60
cmp eax, 0x60
jne 0x1401eee75
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 0x1401eee75
cmp eax, 0x49
je 0x1401eecfa
cmp eax, 0xd7ff
ja 0x1401eedfc
mov ecx, eax
shr ecx, 5
jmp 0x1401eee1a
cmp eax, 0xffff
ja 0x1401eee42
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 ecx, [rax + rcx*4]
movzx eax, word [r13 + rcx*2]
test al, 8
je 0x1401eedb9
shr eax, 4
movzx eax, word [r12 + rax*2]
shr eax, 7
jmp 0x1401eedb9
mov ecx, 0xd58
cmp eax, 0x10ffff
ja 0x1401eee28
mov ecx, 0x3040
cmp eax, 0xe07ff
ja 0x1401eee28
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 0x1401eee1a
cmp esi, 0x49
jne 0x1401ef009
cmp ebp, 2
jne 0x1401ef009
mov eax, 0x131
test rdx, rdx
je 0x1401ee997
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 0x1401ef103
mov ecx, eax
cmp eax, 0x307
jne 0x1401eeed3
cmp esi, 0x130
mov r9, qword [rsp + 0x28]
jne 0x1401ef039
jmp 0x1401eef88
cmp ecx, 0xd800
jae 0x1401eeeef
mov edx, ecx
shr edx, 5
mov r8, qword [rsp + 0x20]
mov eax, 0x131
jmp 0x1401eef9c
cmp ecx, 0x10000
mov r8, qword [rsp + 0x20]
mov eax, 0x131
jb 0x1401ef0c4
mov edx, 0xd58
cmp ecx, 0x10ffff
ja 0x1401eefaa
mov edx, 0x3040
cmp ecx, 0xe07ff
ja 0x1401eefaa
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 0x1401eef9c
mov ecx, 0xd58
cmp eax, 0x10ffff
ja 0x1401eed8b
mov ecx, 0x3040
cmp eax, 0xe07ff
ja 0x1401eed8b
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 0x1401eed7d
lea rax, [0x140315b00]
jmp 0x1401eef8f
lea rax, [0x1403154f0]
mov qword [r9], rax
mov eax, 2
jmp 0x1401ee997
mov edx, edx
movzx edx, word [r13 + rdx*2]
and ecx, 0x1f
lea edx, [rcx + rdx*4]
movzx ecx, word [r13 + rdx*2]
test cl, 8
je 0x1401eefc0
shr ecx, 4
movzx ecx, word [r12 + rcx*2]
shr ecx, 7
and ecx, 0x60
cmp ecx, 0x60
jne 0x1401ee997
mov rcx, r8
xor edx, edx
call rbp
test eax, eax
js 0x1401ef103
mov ecx, eax
cmp eax, 0x307
mov r9, qword [rsp + 0x28]
mov r8, qword [rsp + 0x20]
mov rdx, rbp
mov eax, 0x131
je 0x1401ef009
cmp ecx, 0xd7ff
ja 0x1401ef0b8
mov edx, ecx
shr edx, 5
jmp 0x1401eef9c
cmp esi, 0x130
je 0x1401eef88
cmp esi, 0x3a3
jne 0x1401ef039
mov rcx, rdx
mov r13, rdx
mov rdx, r8
mov rbp, r8
mov r8b, 1
call fcn.1401ef110
test al, al
je 0x1401ef0e1
test r15b, 2
je 0x1401ef064
mov eax, edi
and eax, 0x10
je 0x1401ef064
mov eax, edi
and eax, 0xf
lea rcx, [0x1403153f0]
movzx eax, byte [rax + rcx]
test edi, 0x100
jne 0x1401ef080
movzx ecx, word [rbx + rax*2]
jmp 0x1401ef08e
mov ecx, esi
test dil, 1
je 0x1401ee98c
test edi, 0x100
jne 0x1401ef0a2
movzx ecx, word [rbx]
jmp 0x1401ee98c
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 0x1401ee997
lea rax, [r12 + r14*2]
movzx edx, word [rax + 2]
shl edx, 0x10
movzx ecx, word [rax + 4]
or ecx, edx
jmp 0x1401ee98c
cmp ecx, 0xffff
ja 0x1401eef05
mov r9d, ecx
shr r9d, 5
lea edx, [r9 + 0x140]
cmp ecx, 0xdc00
cmovae edx, r9d
jmp 0x1401eef9c
mov rcx, r13
mov rdx, rbp
mov r8b, 0xff
call fcn.1401ef110
mov ecx, eax
mov eax, 0x3c2
test cl, cl
jne 0x1401ee997
jmp 0x1401ef039
mov eax, 0x131
jmp 0x1401ee997