Function at 0x180035850
Capabilities:
Check for software breakpoints

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
sub rsp, 0x28
mov qword [rax + 0x10], rbx
xor r11b, r11b
mov qword [rax + 0x18], rbp
lea rbx, [0x180000000]
mov qword [rax - 8], rdi
mov r8, rdx
mov qword [rax - 0x10], r12
mov r9, rcx
mov qword [rax - 0x18], r13
mov r12, rcx
mov qword [rax - 0x20], r14
xor r13b, r13b
mov qword [rsp], r15
lea r14, [0x1800c2d00]
xor r15b, r15b
xor eax, eax
mov qword [rdx], rax
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x18], rax
mov dword [rdx + 0x20], eax
mov byte [rdx + 0x24], al
mov dl, 0x10
movzx r10d, byte [r9]
inc r9
lea eax, [r10 - 0x26]
cmp eax, 0xcd
ja case.0x1800358d6.44
cdqe
movzx eax, byte [rbx + rax + 0x35ec8]
mov ecx, dword [rbx + rax*4 + 0x35eac]
add rcx, rbx
jmp rcx
mov byte [r8 + 1], r10b
mov al, 4
jmp 0x180035906
mov byte [r8 + 1], r10b
mov al, 2
jmp 0x180035906
mov byte [r8 + 2], r10b
mov al, 0x20
jmp 0x180035906
mov byte [r8 + 3], r10b
mov al, 0x40
jmp 0x180035906
mov byte [r8 + 4], r10b
mov al, 8
jmp 0x180035906
mov byte [r8 + 5], r10b
mov al, 0x10
or r11b, al
add dl, 0xff
jne 0x1800358b0
movzx eax, r11b
mov edi, 1
movzx edx, r11b
mov ecx, edi
shl edx, 0x17
test r11b, r11b
mov qword [rsp + 0x48], rsi
mov dword [r8 + 0x21], edx
cmovne ecx, eax
movzx eax, r10b
and al, 0xf0
cmp al, 0x40
jne 0x18003599f
bts edx, 0x1e
movzx eax, r10b
shr eax, 3
and eax, edi
mov dword [r8 + 0x21], edx
mov byte [r8 + 7], al
test al, al
je 0x180035962
movzx eax, byte [r9]
and al, 0xf8
movzx r13d, r13b
cmp al, 0xb8
cmove r13d, edi
movzx eax, r10b
shr al, 2
and al, dil
mov byte [r8 + 8], al
movzx eax, r10b
shr al, 1
and r10b, dil
and al, dil
mov byte [r8 + 0xa], r10b
movzx r10d, byte [r9]
inc r9
mov byte [r8 + 9], al
movzx eax, r10b
and al, 0xf0
cmp al, 0x40
jne 0x18003599f
movzx esi, r10b
movzx r11d, cl
jmp 0x180035a05
mov byte [r8 + 0xb], r10b
movzx r11d, cl
cmp r10b, 0xf
jne 0x1800359c1
movzx r10d, byte [r9]
lea r14, [0x1800c2d4a]
mov byte [r8 + 0xc], r10b
inc r9
jmp 0x1800359e3
cmp r10b, 0xa0
jb 0x1800359e3
movzx r11d, cl
cmp r10b, 0xa3
ja 0x1800359e3
inc r13b
test cl, 0x10
je 0x1800359df
or r11b, 8
jmp 0x1800359e3
and r11b, 0xf7
movzx edx, r10b
movzx esi, r10b
mov eax, edx
and edx, 3
shr rax, 2
movzx eax, byte [rax + r14]
add rax, r14
movzx ebx, byte [rdx + rax]
cmp bl, 0xff
jne 0x180035a1d
or dword [r8 + 0x21], 0x3000
xor cl, cl
movzx eax, r10b
movzx ebx, cl
and al, 0xfd
cmp al, 0x24
cmove ebx, edi
xor dil, dil
test bl, bl
jns 0x180035a37
movzx eax, bl
and eax, 0x7f
movzx edi, word [rax + r14]
movzx ebx, dil
shr di, 8
movzx ebp, byte [r8 + 0xc]
test bpl, bpl
je 0x180035a73
movzx edx, r10b
lea r10, [0x1800c2d00]
mov eax, edx
and edx, 3
shr rax, 2
movzx ecx, byte [rax + r10 + 0x13c]
add rcx, rdx
test byte [rcx + r10 + 0x13c], r11b
je 0x180035a73
or dword [r8 + 0x21], 0x3000
test bl, 1
je 0x180035da0
movzx r10d, byte [r9]
or dword [r8 + 0x21], 1
movzx r14d, r10b
mov edx, dword [r8 + 0x21]
movzx r12d, r10b
mov byte [r8 + 0xd], r10b
and r12b, 7
shr r10b, 3
and r10b, 7
shr r14b, 6
mov byte [r8 + 0xe], r14b
mov byte [r8 + 0x10], r12b
mov byte [r8 + 0xf], r10b
test dil, dil
je 0x180035ace
movzx ecx, r10b
movzx eax, dil
shl eax, cl
test al, al
jns 0x180035ace
or edx, 0x3000
mov dword [r8 + 0x21], edx
test bpl, bpl
jne 0x180035b20
lea eax, [rsi + 0x27]
cmp al, 6
ja 0x180035b20
lea eax, [rsi + 0x27]
lea rdi, [0x1800c2d00]
cmp r14b, 3
jne 0x180035b03
movzx ecx, al
movzx eax, r10b
lea rdx, [rax + rcx*8]
movzx ecx, r12b
movzx eax, byte [rdx + rdi + 0x104]
jmp 0x180035b12
movzx eax, al
movzx ecx, r10b
movzx eax, byte [rax + rdi + 0xfd]
shl al, cl
test al, al
jns 0x180035b20
or dword [r8 + 0x21], 0x3000
test r11b, 0x20
je 0x180035b85
cmp r14b, 3
je 0x180035b7d
movzx edx, sil
test bpl, bpl
je 0x180035b45
lea rcx, [0x1800c2ec6]
lea rdi, [0x1800c2ed8]
jmp 0x180035b60
movzx edx, sil
lea rcx, [0x1800c2eae]
and dl, 0xfe
lea rdi, [0x1800c2ec6]
nop word [rax + rax]
cmp byte [rcx], dl
je 0x180035b6f
add rcx, 2
cmp rcx, rdi
jne 0x180035b60
jmp 0x180035b7d
movzx eax, byte [rcx + 1]
movzx ecx, r10b
shl eax, cl
test al, al
jns 0x180035b85
or dword [r8 + 0x21], 0x9000
movzx ecx, sil
mov edx, ecx
test bpl, bpl
je 0x180035bd4
sub edx, 0x20
je 0x180035bb8
sub edx, 1
je 0x180035ba4
sub edx, 1
je 0x180035bb8
sub edx, 1
jne 0x180035be5
lea eax, [r10 - 4]
mov r14b, 3
cmp al, 1
ja 0x180035c78
jmp 0x180035c70
mov r14b, 3
cmp r10b, 4
ja 0x180035c70
cmp r10b, 1
jne 0x180035c78
jmp 0x180035c70
sub edx, 0x8c
je 0x180035c6a
sub edx, 2
je 0x180035c64
cmp r14b, 3
jne 0x180035c36
test bpl, bpl
je 0x180035c00
lea rcx, [0x1800c2ee7]
lea rdx, [0x1800c2f11]
jmp 0x180035c10
lea rcx, [0x1800c2ed8]
lea rdx, [0x1800c2ee7]
nop
cmp byte [rcx], sil
je 0x180035c20
add rcx, 3
cmp rcx, rdx
jne 0x180035c10
jmp 0x180035c78
test byte [rcx + 1], r11b
je 0x180035c78
movzx eax, byte [rcx + 2]
movzx ecx, r10b
shl eax, cl
test al, al
jns 0x180035c70
jmp 0x180035c78
test bpl, bpl
je 0x180035c78
sub ecx, 0x50
je 0x180035c54
sub ecx, 0x75
je 0x180035c70
sub ecx, 0x11
je 0x180035c5c
sub ecx, 1
je 0x180035c54
cmp ecx, 0x20
jne 0x180035c78
test r11b, 9
jne 0x180035c70
jmp 0x180035c78
test r11b, 6
jne 0x180035c70
jmp 0x180035c78
cmp r10b, 1
je 0x180035c70
cmp r10b, 5
jbe 0x180035c78
or dword [r8 + 0x21], 0x11000
movzx edx, byte [r9 + 1]
add r9, 2
cmp r10b, 1
ja 0x180035c9b
cmp sil, 0xf6
jne 0x180035c92
or bl, 2
jmp 0x180035c9b
cmp sil, 0xf7
jne 0x180035c9b
or bl, 0x10
movzx ecx, r14b
mov r10d, 4
test r14b, r14b
je 0x180035cc8
sub ecx, 1
je 0x180035cc3
cmp ecx, 1
jne 0x180035cec
mov r15b, 2
test r11b, 0x10
jne 0x180035cec
movzx r15d, r10b
jmp 0x180035cec
mov r15b, 1
jmp 0x180035cec
test r11b, 0x10
je 0x180035ce0
xor eax, eax
mov r15d, 2
cmp r12b, 6
cmovne r15d, eax
jmp 0x180035cec
cmp r12b, 5
movzx r15d, r15b
cmove r15d, r10d
cmp r14b, 3
je 0x180035d33
cmp r12b, r10b
jne 0x180035d33
or dword [r8 + 0x21], 2
movzx eax, dl
shr al, 6
inc r9
mov byte [r8 + 0x12], al
movzx eax, dl
shr al, 3
and al, 7
mov byte [r8 + 0x11], dl
mov byte [r8 + 0x13], al
movzx eax, dl
and eax, 7
mov byte [r8 + 0x14], al
cmp al, 5
jne 0x180035d33
test r14b, 1
movzx r15d, r15b
cmove r15d, r10d
dec r9
movzx ecx, r15b
sub ecx, 1
je 0x180035d85
sub ecx, 1
je 0x180035d66
cmp ecx, 2
jne 0x180035d92
mov eax, dword [r9]
or dword [r8 + 0x21], 0x100
mov r12, qword [rsp + 0x30]
mov dword [r8 + 0x1d], eax
movzx eax, r15b
add r9, rax
jmp 0x180035dae
movzx eax, word [r9]
or dword [r8 + 0x21], 0x80
mov r12, qword [rsp + 0x30]
mov word [r8 + 0x1d], ax
movzx eax, r15b
add r9, rax
jmp 0x180035dae
movzx eax, byte [r9]
or dword [r8 + 0x21], 0x40
mov byte [r8 + 0x1d], al
mov r12, qword [rsp + 0x30]
movzx eax, r15b
add r9, rax
jmp 0x180035dae
test r11b, 0x20
je 0x180035dae
or dword [r8 + 0x21], 0x9000
mov r15, qword [rsp]
mov r14, qword [rsp + 8]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x40]
test bl, 0x10
je 0x180035e1d
test bl, 0x40
je 0x180035df0
test r11b, 8
je 0x180035e4e
movzx eax, word [r9]
or dword [r8 + 0x21], 0x208
mov word [r8 + 0x15], ax
add r9, 2
jmp 0x180035e7b
test r13b, r13b
je 0x180035e07
mov rax, qword [r9]
or dword [r8 + 0x21], 0x20
mov qword [r8 + 0x15], rax
add r9, 8
jmp 0x180035e1d
test r11b, 8
jne 0x180035e22
mov eax, dword [r9]
or dword [r8 + 0x21], 0x10
add r9, 4
mov dword [r8 + 0x15], eax
test bl, 4
je 0x180035e34
movzx eax, word [r9]
or dword [r8 + 0x21], 8
mov word [r8 + 0x15], ax
add r9, 2
test bl, 2
je 0x180035e49
movzx eax, byte [r9]
or dword [r8 + 0x21], 4
mov byte [r8 + 0x15], al
inc r9
test bl, 0x40
je 0x180035e63
mov eax, dword [r9]
or dword [r8 + 0x21], 0x210
add r9, 4
mov dword [r8 + 0x15], eax
jmp 0x180035e7b
test bl, 0x20
je 0x180035e7b
movzx eax, byte [r9]
or dword [r8 + 0x21], 0x204
mov byte [r8 + 0x15], al
inc r9
mov r13, qword [rsp + 0x10]
sub r9, r12
mov r12, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x38]
mov byte [r8], r9b
cmp r9b, 0xf
jbe 0x180035ea2
or dword [r8 + 0x21], 0x5000
mov byte [r8], 0xf
movzx eax, byte [r8]
add rsp, 0x28
ret