Function at 0x18001e980
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xa8]
sub rsp, 0x1a8
imul eax, ecx, 0x23a
mov r11, rdx
mov r14d, ecx
mov dword [rbp - 0x38], eax
cmp ecx, eax
ja 0x18001facd
mov r12, qword [rbp - 0x50]
xor ebx, ebx
mov r15, qword [rbp - 0x60]
mov r13, qword [rbp - 0x78]
mov rdi, qword [rbp + 0x110]
lea r10, [0x180064620]
cmp r14d, 0x89c
ja 0x18001f8aa
je 0x18001f744
mov eax, r14d
sub eax, 0x26
je 0x18001f722
sub eax, 0x21
je 0x18001ea76
sub eax, 9
je 0x18001ea6d
sub eax, 0x2b
je 0x18001ea58
cmp eax, 0x6d
jne 0x18001fa5d
mov r9, qword [rdi]
lea rax, [0x180064630]
cmp byte [r9 + 0x1d0], 0
lea rdx, [r9 + 0x120]
mov r8, qword [r9 + 0x1c8]
lea rcx, [r9 + 0x128]
cmovne rax, r10
call rax
test eax, eax
jne 0x18001fa7c
mov ecx, dword [rbp + 0xf0]
jmp 0x18001fa5d
mov rax, qword [rdi]
add rax, 0x368
mov qword [rbp + 0x90], rax
jmp 0x18001fa5d
mov qword [rbp - 8], r11
jmp 0x18001fa5d
mov rsi, qword [rbp + 0x110]
test rsi, rsi
je 0x18001fa5a
add rsi, 0xfffffffffffffff0
mov ecx, 0xf9
mov qword [rbp - 0x58], rsi
mov eax, ecx
sub eax, 0xf9
je 0x18001eaaa
cmp eax, 0x23
je 0x18001f718
jmp 0x18001ebc8
cmp rsi, qword [0x1800718d8]
jb 0x18001ebbd
test byte [rsi + 8], 2
je 0x18001ebbd
mov r11d, 0x34
mov dword [rsp + 0x68], r11d
nop dword [rax]
mov eax, r11d
sub eax, 0x32
je 0x18001eb0a
sub eax, 1
je 0x18001eaf8
cmp eax, 1
jne 0x18001ebab
mov rax, qword [rsi + 8]
and rax, 0xfffffffffffffffc
mov qword [rsp + 0x58], rax
jmp 0x18001ebab
mov rax, qword [rsp + 0x58]
add rax, rsi
mov qword [rsp + 0x78], rax
jmp 0x18001ebab
test byte [rsi + 8], 1
jne 0x18001eb95
mov r10, qword [rsi]
test r10b, 1
je 0x18001ebe9
mov eax, 0xcd
cmp eax, 0xcd
je 0x18001eb74
cmp eax, 0x6c1b
jne 0x18001eb89
mov rdi, qword [rsp + 0x58]
lea r8, [rbp + 0x30]
mov rcx, rsi
mov qword [rsp + 0x28], rbx
sub rcx, r10
mov qword [rbp + 0x30], rdi
xor r9d, r9d
mov qword [rsp + 0x20], rbx
mov edx, 0x11a
call fcn.18005c580
test eax, eax
jne 0x18001f718
sub qword [0x180071c10], rdi
mov ecx, 0x11c
jmp 0x18001ebc2
mov rcx, qword [rsp + 0x58]
and r10, 0xfffffffffffffffe
add rcx, 0x20
add rcx, r10
mov qword [rsp + 0x58], rcx
add eax, 0x6b4e
cmp eax, 0xd69c
jbe 0x18001eb26
mov rdi, qword [rsp + 0x78]
cmp rsi, rdi
jae 0x18001ebab
mov rax, qword [rdi + 8]
test al, 1
jne 0x18001ef25
dec r11d
mov dword [rsp + 0x68], r11d
cmp r11d, 0x31
ja 0x18001ead0
mov ecx, 0xf9
mov r14d, 0x47
add ecx, 0x23
cmp ecx, 0x13f
jb 0x18001ea93
mov rdi, qword [rbp + 0x110]
mov ecx, dword [rbp + 0xf0]
jmp 0x18001fa5d
mov r9d, 0x20
nop
mov eax, r9d
sub eax, 0x20
je 0x18001eeff
cmp eax, 1
jne 0x18001ef0e
cmp r12, qword [0x1800718d8]
mov rsi, r12
mov qword [rbp - 0x58], r12
jb 0x18001ebbd
cmp r12, qword [0x1800718e0]
je 0x18001eea2
mov r8, r10
shr r8, 3
cmp r8, 0x20
jae 0x18001ece4
mov rbx, qword [rbp + 0x10]
lea edx, [rax + 0x1d]
mov r11, qword [rbp + 8]
lea r13, [0x1800718c0]
mov rsi, qword [rbp]
nop dword [rax]
mov eax, edx
sub eax, 0x1e
je 0x18001ecb0
sub eax, 0x3b
je 0x18001ecab
cmp eax, 0x3b
jne 0x18001ecba
cmp r11, rbx
jne 0x18001ec77
mov eax, dword [0x1800718c0]
btr eax, esi
mov dword [0x1800718c0], eax
jmp 0x18001ecba
mov rax, rsi
lea rcx, [r13 + 0x40]
shl rax, 4
add rcx, rax
cmp r11, rcx
je 0x18001ec93
cmp r11, qword [0x1800718d8]
jb 0x18001ecba
cmp rbx, rcx
je 0x18001eca1
cmp rbx, qword [0x1800718d8]
jb 0x18001ecba
mov qword [r11 + 0x18], rbx
mov qword [rbx + 0x10], r11
jmp 0x18001ecba
mov rsi, r8
jmp 0x18001ecba
mov r11, qword [r12 + 0x10]
mov rbx, qword [r12 + 0x18]
add edx, 0x3b
cmp edx, 0xcf
jb 0x18001ec50
mov r13, qword [rbp - 0x78]
mov qword [rbp], rsi
mov rsi, r12
mov qword [rbp + 8], r11
mov r11d, dword [rsp + 0x68]
mov qword [rbp + 0x10], rbx
xor ebx, ebx
jmp 0x18001ef0e
mov r11, qword [rbp + 0x28]
mov r8d, 0x97
nop
mov eax, r8d
sub eax, 0x97
je 0x18001ee7d
cmp eax, 5
jne 0x18001ee82
cmp qword [r12 + 0x18], r12
je 0x18001ed4d
mov ecx, 0x6e
mov eax, ecx
sub eax, 0x6d
je 0x18001ed2f
cmp eax, 1
jne 0x18001ed44
mov rax, qword [r12 + 0x10]
mov r15, qword [r12 + 0x18]
mov qword [rbp + 0x18], rax
jmp 0x18001ed44
mov rax, qword [rbp + 0x18]
cmp rax, qword [0x1800718d8]
jb 0x18001ed44
mov qword [rax + 0x18], r15
mov qword [r15 + 0x10], rax
dec ecx
cmp ecx, 0x6c
ja 0x18001ed13
jmp 0x18001ed9e
mov r15, qword [r12 + 0x28]
lea rdx, [r12 + 0x28]
test r15, r15
jne 0x18001ed70
mov r15, qword [r12 + 0x20]
lea rdx, [r12 + 0x20]
test r15, r15
je 0x18001ed9e
nop dword [rax + rax]
mov rcx, qword [r15 + 0x28]
lea rax, [r15 + 0x28]
test rcx, rcx
jne 0x18001ed8a
mov rcx, qword [r15 + 0x20]
lea rax, [r15 + 0x20]
test rcx, rcx
je 0x18001ed92
mov rdx, rax
mov r15, rcx
jmp 0x18001ed70
cmp rdx, qword [0x1800718d8]
jb 0x18001ed9e
mov qword [rdx], rbx
test r11, r11
je 0x18001ee82
mov edx, 0x81
nop dword [rax]
mov eax, edx
sub eax, 0x7f
je 0x18001ee27
sub eax, 1
je 0x18001ede5
cmp eax, 1
jne 0x18001ee70
mov rax, qword [r12 + 0x38]
lea rcx, [0x1800718c0]
lea rcx, [rcx + 0x250]
lea rax, [rcx + rax*8]
mov qword [rbp + 0x20], rax
jmp 0x18001ee70
mov rax, qword [rbp + 0x20]
cmp r12, qword [rax]
jne 0x18001ee0c
mov qword [rax], r15
test r15, r15
jne 0x18001ee70
mov ecx, dword [0x1800718c4]
mov eax, dword [r12 + 0x38]
btr ecx, eax
mov dword [0x1800718c4], ecx
jmp 0x18001ee70
cmp r11, qword [0x1800718d8]
jb 0x18001ee70
cmp qword [r11 + 0x20], r12
jne 0x18001ee21
mov qword [r11 + 0x20], r15
jmp 0x18001ee70
mov qword [r11 + 0x28], r15
jmp 0x18001ee70
test r15, r15
je 0x18001ee70
cmp r15, qword [0x1800718d8]
jb 0x18001ee70
mov qword [r15 + 0x30], r11
mov rax, qword [r12 + 0x20]
test rax, rax
je 0x18001ee54
cmp rax, qword [0x1800718d8]
jb 0x18001ee54
mov qword [r15 + 0x20], rax
mov qword [rax + 0x30], r15
mov rax, qword [r12 + 0x28]
test rax, rax
je 0x18001ee70
cmp rax, qword [0x1800718d8]
jb 0x18001ee70
mov qword [r15 + 0x28], rax
mov qword [rax + 0x30], r15
nop
dec edx
cmp edx, 0x7e
ja 0x18001edb0
jmp 0x18001ee82
mov r11, qword [r12 + 0x30]
add r8d, 5
cmp r8d, 0xa1
jb 0x18001ecf0
mov qword [rbp + 0x28], r11
mov r11d, dword [rsp + 0x68]
mov qword [rbp - 0x60], r15
jmp 0x18001ef0e
mov rdi, qword [rsp + 0x78]
movzx eax, byte [rdi + 8]
and al, 3
cmp al, 3
jne 0x18001ef13
mov ecx, 0xbb
nop word [rax + rax]
mov eax, ecx
sub eax, 0xba
je 0x18001f718
cmp eax, 1
jne 0x18001eef3
mov rdx, qword [rsp + 0x58]
mov qword [0x1800718c8], rdx
mov rax, rdx
and qword [rdi + 8], 0xfffffffffffffffe
or rax, 1
mov qword [r12 + 8], rax
mov qword [r12 + rdx], rdx
dec ecx
cmp ecx, 0xb9
ja 0x18001eec0
jmp 0x18001ef13
mov r12, rsi
sub r12, r10
add qword [rsp + 0x58], r10
mov qword [rbp - 0x50], r12
mov rdi, qword [rsp + 0x78]
inc r9d
cmp r9d, 0x22
jb 0x18001ebf0
jmp 0x18001eb9a
test al, 2
jne 0x18001f34a
cmp rdi, qword [0x1800718e8]
jne 0x18001f008
mov ecx, 0x59
nop
cmp ecx, 0x59
je 0x18001ef86
cmp ecx, 0x2c8
je 0x18001ef5c
cmp ecx, 0x537
je 0x18001efba
mov r11, qword [rsp + 0x58]
jmp 0x18001efa7
mov rax, qword [rbp - 0x28]
mov r11, qword [rsp + 0x58]
or rax, 1
mov qword [rsi + 8], rax
cmp rsi, qword [0x1800718e0]
jne 0x18001efa7
mov qword [0x1800718e0], rbx
mov qword [0x1800718c8], rbx
jmp 0x18001efa7
mov rax, qword [0x1800718d0]
mov r11, qword [rsp + 0x58]
add rax, r11
mov qword [0x1800718e8], rsi
mov qword [rbp - 0x28], rax
mov qword [0x1800718d0], rax
add ecx, 0x26f
cmp ecx, 0x74d
jbe 0x18001ef40
jmp 0x18001f366
mov rax, qword [rbp - 0x28]
cmp rax, qword [0x1800718f0]
jbe 0x18001f718
lea rax, [rbp + 0x38]
mov qword [rbp + 0x38], rbx
mov qword [rsp + 0x28], rax
lea rdx, [0x1800718c0]
lea rax, [rbp + 0x40]
mov qword [rbp + 0x40], rdx
mov r9d, 0x41
mov qword [rsp + 0x20], rax
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.180060950
mov ecx, 0x11c
jmp 0x18001ebc2
cmp rdi, qword [0x1800718e0]
jne 0x18001f07d
mov rcx, qword [0x1800718c8]
mov eax, 0x128
nop dword [rax]
cmp eax, 0x128
je 0x18001f035
cmp eax, 0x1d8
je 0x18001f059
mov r11, qword [rsp + 0x58]
jmp 0x18001f048
mov r11, qword [rsp + 0x58]
add rcx, r11
mov qword [0x1800718c8], rcx
mov qword [rbp + 0x48], rcx
add eax, 0xb0
cmp eax, 0x288
jb 0x18001f020
jmp 0x18001f366
mov rcx, qword [rbp + 0x48]
mov rax, rcx
mov qword [0x1800718e0], rsi
or rax, 1
mov qword [rsi + 8], rax
mov qword [rcx + rsi], rcx
mov ecx, 0x11c
jmp 0x18001ebc2
mov r10d, 0x5f
mov r11, qword [rsp + 0x58]
mov eax, r10d
sub eax, 0x5f
je 0x18001f0c6
cmp eax, 0x79
jne 0x18001f337
mov rax, r11
or rax, 1
mov qword [rsi + 8], rax
mov qword [r11 + rsi], r11
cmp rsi, qword [0x1800718e0]
jne 0x18001f337
mov qword [0x1800718c8], r11
mov ecx, 0x11c
jmp 0x18001ebc2
mov r8, qword [rdi + 8]
and r8, 0xfffffffffffffffc
add r11, r8
shr r8, 3
mov qword [rsp + 0x58], r11
cmp r8, 0x20
jae 0x18001f184
mov rbx, qword [rbp + 0x60]
lea r9, [0x1800718c0]
mov r12, qword [rbp + 0x58]
mov edx, 0x49
mov rsi, qword [rbp + 0x50]
nop dword [rax]
mov eax, edx
sub eax, 0x48
je 0x18001f119
cmp eax, 1
jne 0x18001f162
mov r12, qword [rdi + 0x10]
mov rsi, r8
mov rbx, qword [rdi + 0x18]
jmp 0x18001f162
cmp r12, rbx
jne 0x18001f12f
mov eax, dword [0x1800718c0]
btr eax, esi
mov dword [0x1800718c0], eax
jmp 0x18001f162
mov rax, rsi
lea rcx, [r9 + 0x40]
shl rax, 4
add rcx, rax
cmp r12, rcx
je 0x18001f14b
cmp r12, qword [0x1800718d8]
jb 0x18001f162
cmp rbx, rcx
je 0x18001f159
cmp rbx, qword [0x1800718d8]
jb 0x18001f162
mov qword [r12 + 0x18], rbx
mov qword [rbx + 0x10], r12
dec edx
cmp edx, 0x47
ja 0x18001f100
mov qword [rbp + 0x50], rsi
mov rsi, qword [rbp - 0x58]
mov qword [rbp + 0x58], r12
mov r12, qword [rbp - 0x50]
mov qword [rbp + 0x60], rbx
xor ebx, ebx
jmp 0x18001f337
mov r9d, 0x34
lea r11, [0x1800718c0]
mov eax, r9d
sub eax, 0x34
je 0x18001f319
sub eax, 1
je 0x18001f28d
cmp eax, 1
jne 0x18001f321
mov r8, qword [rbp + 0x70]
test r8, r8
je 0x18001f321
mov rbx, qword [rbp + 0x68]
mov edx, 0xcc
nop word [rax + rax]
mov eax, edx
sub eax, 0xcc
je 0x18001f268
cmp eax, 1
jne 0x18001f274
cmp rdi, qword [rbx]
jne 0x18001f207
mov qword [rbx], r13
test r13, r13
jne 0x18001f225
mov ecx, dword [0x1800718c4]
mov eax, dword [rdi + 0x38]
btr ecx, eax
mov dword [0x1800718c4], ecx
jmp 0x18001f274
cmp r8, qword [0x1800718d8]
jb 0x18001f220
cmp qword [r8 + 0x20], rdi
jne 0x18001f21c
mov qword [r8 + 0x20], r13
jmp 0x18001f220
mov qword [r8 + 0x28], r13
test r13, r13
je 0x18001f274
cmp r13, qword [0x1800718d8]
jb 0x18001f274
mov qword [r13 + 0x30], r8
mov rax, qword [rdi + 0x20]
test rax, rax
je 0x18001f24c
cmp rax, qword [0x1800718d8]
jb 0x18001f24c
mov qword [r13 + 0x20], rax
mov qword [rax + 0x30], r13
mov rax, qword [rdi + 0x28]
test rax, rax
je 0x18001f274
cmp rax, qword [0x1800718d8]
jb 0x18001f274
mov qword [r13 + 0x28], rax
mov qword [rax + 0x30], r13
jmp 0x18001f274
mov rbx, qword [rdi + 0x38]
add rbx, 0x4a
lea rbx, [r11 + rbx*8]
inc edx
cmp edx, 0xce
jb 0x18001f1d0
mov qword [rbp + 0x68], rbx
xor ebx, ebx
jmp 0x18001f321
cmp qword [rdi + 0x18], rdi
je 0x18001f2ae
mov rax, qword [rdi + 0x10]
cmp rax, qword [0x1800718d8]
mov r13, qword [rdi + 0x18]
jb 0x18001f321
mov qword [rax + 0x18], r13
mov qword [r13 + 0x10], rax
jmp 0x18001f321
mov r13, qword [rdi + 0x28]
lea rdx, [rdi + 0x28]
test r13, r13
jne 0x18001f2c8
mov r13, qword [rdi + 0x20]
lea rdx, [rdi + 0x20]
test r13, r13
je 0x18001f321
mov r8d, 0xa
nop
mov eax, r8d
sub eax, 9
je 0x18001f302
cmp eax, 1
jne 0x18001f30e
nop dword [rax]
mov rcx, qword [r13 + 0x28]
lea rax, [r13 + 0x28]
test rcx, rcx
jne 0x18001f2fa
mov rcx, qword [r13 + 0x20]
lea rax, [r13 + 0x20]
test rcx, rcx
je 0x18001f30e
mov rdx, rax
mov r13, rcx
jmp 0x18001f2e0
cmp rdx, qword [0x1800718d8]
jb 0x18001f30e
mov qword [rdx], rbx
dec r8d
cmp r8d, 8
ja 0x18001f2d0
jmp 0x18001f321
mov rax, qword [rdi + 0x30]
mov qword [rbp + 0x70], rax
inc r9d
cmp r9d, 0x37
jb 0x18001f191
mov r11, qword [rsp + 0x58]
mov qword [rbp - 0x78], r13
add r10d, 0x79
cmp r10d, 0x151
jb 0x18001f083
jmp 0x18001f366
mov r11, qword [rsp + 0x58]
and rax, 0xfffffffffffffffe
mov qword [rdi + 8], rax
mov rax, r11
or rax, 1
mov qword [rsi + 8], rax
mov qword [r11 + rsi], r11
mov r8, r11
shr r8, 3
cmp r8, 0x20
jae 0x18001f435
mov rbx, qword [rbp + 0x80]
lea r15, [0x180071900]
mov r12, qword [rbp - 0x20]
mov edx, 9
mov r13, qword [rbp + 0x78]
mov eax, edx
sub eax, 6
je 0x18001f403
sub eax, 1
je 0x18001f3fd
sub eax, 1
je 0x18001f3ba
cmp eax, 1
jne 0x18001f407
mov rbx, r8
mov r13, r8
shl rbx, 4
add rbx, r15
mov r12, rbx
jmp 0x18001f407
mov rcx, r13
mov eax, 1
shl eax, cl
mov ecx, dword [0x1800718c0]
test ecx, eax
jne 0x18001f3e3
bts ecx, r13d
mov dword [0x1800718c0], ecx
mov qword [rbx + 0x10], rsi
mov qword [r12 + 0x18], rsi
jmp 0x18001f407
mov rax, qword [rbx + 0x10]
cmp rax, qword [0x1800718d8]
mov qword [rbx + 0x10], rsi
cmovae r12, rax
mov qword [r12 + 0x18], rsi
jmp 0x18001f407
mov qword [rsi + 0x10], r12
jmp 0x18001f407
mov qword [rsi + 0x18], rbx
dec edx
cmp edx, 5
ja 0x18001f392
mov r15, qword [rbp - 0x60]
mov ecx, 0x11c
mov qword [rbp + 0x78], r13
mov r13, qword [rbp - 0x78]
mov qword [rbp - 0x20], r12
mov r12, qword [rbp - 0x50]
mov qword [rbp + 0x80], rbx
xor ebx, ebx
jmp 0x18001ebc2
mov r12, qword [rbp - 0x30]
lea r13, [0x1800718c0]
mov r10d, 0x80
mov dword [rsp + 0x68], r10d
nop dword [rax + rax]
mov eax, r10d
sub eax, 0x80
je 0x18001f5f6
sub eax, 0x1d
je 0x18001f5e9
cmp eax, 0x1d
jne 0x18001f6fa
mov rdi, qword [rbp - 0x80]
mov eax, 1
mov rcx, rdi
shl eax, cl
test dword [0x1800718c4], eax
jne 0x18001f4d9
mov rbx, qword [rbp - 0x30]
mov ecx, 0x93
nop
cmp ecx, 0x93
je 0x18001f4aa
cmp ecx, 0x126
jne 0x18001f4c0
mov qword [rsi + 0x18], rsi
mov qword [rsi + 0x10], rsi
jmp 0x18001f4c0
mov eax, dword [0x1800718c4]
bts eax, edi
mov dword [0x1800718c4], eax
mov qword [rbx], rsi
mov qword [rsi + 0x30], rbx
add ecx, 0x93
cmp ecx, 0x1b9
jb 0x18001f490
mov r12, qword [rbp - 0x30]
xor ebx, ebx
jmp 0x18001f6fa
mov ecx, 0xb5
nop
mov eax, ecx
sub eax, 0xb4
je 0x18001f5d1
cmp eax, 1
jne 0x18001f5d6
mov rdx, qword [r12]
cmp rdi, 0x1f
jne 0x18001f505
mov rcx, rbx
jmp 0x18001f513
mov rax, rdi
mov ecx, 0x39
shr rax, 1
sub rcx, rax
mov r9, r11
shl r9, cl
nop dword [rax]
mov rax, qword [rdx + 8]
mov r8, rdx
and rax, 0xfffffffffffffffc
cmp rax, r11
je 0x18001f586
add rdx, 0x20
mov rcx, r9
shr rcx, 0x3f
add r9, r9
lea rcx, [rdx + rcx*8]
mov rdx, qword [rcx]
test rdx, rdx
jne 0x18001f520
cmp rcx, qword [0x1800718d8]
jb 0x18001f5d1
mov eax, 0x5b
cmp eax, 0x5b
je 0x18001f56e
cmp eax, 0x1776
jne 0x18001f575
mov qword [rsi + 0x18], rsi
mov qword [rsi + 0x10], rsi
jmp 0x18001f5d1
mov qword [rcx], rsi
mov qword [rsi + 0x30], r8
add eax, 0x171b
mov rdx, r8
cmp eax, 0x2e36
jbe 0x18001f558
jmp 0x18001f520
mov rax, qword [0x1800718d8]
cmp rdx, rax
jb 0x18001f5d1
mov r8, qword [rdx + 0x10]
cmp r8, rax
jb 0x18001f5d1
mov ecx, 0xfa
mov eax, ecx
sub eax, 0xf9
je 0x18001f5cd
cmp eax, 1
jne 0x18001f5be
mov qword [r8 + 0x18], rsi
mov qword [rdx + 0x10], rsi
mov qword [rsi + 0x10], r8
mov qword [rsi + 0x18], rdx
dec ecx
cmp ecx, 0xf8
ja 0x18001f5a0
jmp 0x18001f520
mov qword [rsi + 0x30], rbx
mov ecx, 0xb4
dec ecx
cmp ecx, 0xb3
ja 0x18001f4e0
jmp 0x18001f6fa
mov qword [rsi + 0x28], rbx
mov qword [rsi + 0x20], rbx
jmp 0x18001f6fa
mov r8, r11
shr r8, 8
test r8, r8
jne 0x18001f60e
mov rdi, rbx
mov qword [rbp - 0x80], rbx
jmp 0x18001f6e7
cmp r8, 0xffff
jbe 0x18001f625
mov edi, 0x1f
mov qword [rbp - 0x80], rdi
jmp 0x18001f6e7
mov ebx, dword [rsp + 0x70]
mov edx, 0xc6
mov esi, dword [rbp - 0x64]
mov r10d, dword [rsp + 0x6c]
cmp edx, 0xc6
je 0x18001f698
cmp edx, 0x4bcc
je 0x18001f680
cmp edx, 0x96d2
je 0x18001f66e
cmp edx, 0xe1d8
jne 0x18001f6ba
lea ecx, [rbx + 7]
mov rdi, r11
shr rdi, cl
lea ecx, [rbx + rbx]
and edi, 1
add rdi, rcx
mov qword [rbp - 0x80], rdi
jmp 0x18001f6be
mov ecx, ebx
shl r10d, cl
mov ebx, r10d
shr ebx, 0xf
sub ebx, esi
add ebx, 0xe
jmp 0x18001f6ba
mov ecx, ebx
add esi, ebx
shl r10d, cl
lea ebx, [r10 - 0x4000]
shr ebx, 0x10
and ebx, 2
add esi, ebx
jmp 0x18001f6ba
lea esi, [r8 - 0x100]
mov r10d, r8d
shr esi, 0x10
and esi, 8
mov ecx, esi
shl r10d, cl
lea ebx, [r10 - 0x1000]
shr ebx, 0x10
and ebx, 4
mov rdi, qword [rbp - 0x80]
add edx, 0x4b06
cmp edx, 0x12c18
jbe 0x18001f636
mov dword [rsp + 0x6c], r10d
mov r10d, dword [rsp + 0x68]
mov dword [rbp - 0x64], esi
mov rsi, qword [rbp - 0x58]
mov dword [rsp + 0x70], ebx
xor ebx, ebx
lea r12, [r13 + 0x250]
mov qword [rsi + 0x38], rdi
lea r12, [r12 + rdi*8]
mov qword [rbp - 0x30], r12
add r10d, 0x1d
mov dword [rsp + 0x68], r10d
cmp r10d, 0xd7
jb 0x18001f450
mov r13, qword [rbp - 0x78]
mov r12, qword [rbp - 0x50]
mov ecx, 0x11c
jmp 0x18001ebc2
mov rcx, qword [rbp + 0x110]
xor eax, eax
lock cmpxchg dword [rcx + 0x11c], ebx
mov rdi, rcx
mov dword [rbp - 0x48], eax
mov ecx, dword [rbp + 0xf0]
jmp 0x18001fa5d
cmp dword [rbp - 0x48], 1
jne 0x18001f846
mov esi, 0xa4
mov eax, esi
sub eax, 0xa4
je 0x18001f80c
sub eax, 1
je 0x18001f7f3
sub eax, 1
je 0x18001f7e2
sub eax, 1
je 0x18001f781
cmp eax, 1
je 0x18001facd
jmp 0x18001f832
cmp dword [rbp - 0x68], 0
mov ecx, ebx
movzx eax, byte [rsp + 0x50]
cmove ecx, eax
mov byte [rsp + 0x50], cl
cmp cl, 0
je 0x18001f832
mov edi, 0x59
mov eax, edi
sub eax, 0x59
je 0x18001f7b3
cmp eax, 0x3b
jne 0x18001f7d5
mov rcx, qword [rbp - 0x18]
jmp 0x18001f7cb
lea r8, [rbp - 0x18]
mov qword [rbp - 0x18], rbx
xor edx, edx
xor ecx, ecx
call sub.RPCRT4.dll_MesDecodeIncrementalHandleCreate
mov rcx, qword [rbp - 0x10]
mov dword [rbp - 0x68], eax
test rcx, rcx
je 0x18001f7d5
call sub.RPCRT4.dll_MesHandleFree
add edi, 0x3b
cmp edi, 0xcf
jb 0x18001f7a1
jmp 0x18001f832
mov rcx, qword [rbp + 0x110]
mov eax, ebx
xchg dword [rcx + 0x11c], eax
jmp 0x18001f832
lea r9, [rbp - 0x10]
mov qword [rbp - 0x10], rbx
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call sub.RPCRT4.dll_MesEncodeIncrementalHandleCreate
mov dword [rbp - 0x68], eax
jmp 0x18001f832
mov rdx, qword [rbp + 0x110]
xor r9d, r9d
mov qword [rsp + 0x28], rbx
mov r8d, 0x120
xor ecx, ecx
mov qword [rsp + 0x20], rbx
mov byte [rsp + 0x50], 1
call fcn.180019070
inc esi
cmp esi, 0xa9
jb 0x18001f753
mov ecx, dword [rbp + 0xf0]
mov rsi, qword [rbp + 0x110]
xor eax, eax
lock cmpxchg dword [rsi + 0x120], ebx
cmp eax, 1
jne 0x18001fa5a
mov edi, 0xc2
mov eax, edi
sub eax, 0xc2
je 0x18001f888
sub eax, 0x56
je 0x18001f87e
cmp eax, 0x56
je 0x18001facd
jmp 0x18001f89a
mov eax, ebx
xchg dword [rsi + 0x120], eax
jmp 0x18001f89a
mov r9, rsi
xor r8d, r8d
xor edx, edx
mov ecx, 0x88
call fcn.18000aee0
add edi, 0x56
cmp edi, 0x1c4
jb 0x18001f865
jmp 0x18001fa54
cmp r14d, 0x1112
je 0x18001f9cf
cmp r14d, 0x1220
je 0x18001f905
cmp r14d, 0x1bde
je 0x18001fa81
cmp r14d, 0x3490
jne 0x18001fa5d
mov rax, qword [rbp + 0x110]
lea r8, [rbp - 0x38]
mov edx, 0x99
mov rax, qword [rax]
mov rcx, qword [rax + 0x1c8]
mov qword [rbp - 0x38], rax
call fcn.180057330
mov dword [rbp - 0x70], eax
jmp 0x18001facd
mov edi, 0x115
nop word [rax + rax]
mov eax, edi
sub eax, 0x115
je 0x18001f927
cmp eax, 0x77
je 0x18001facd
jmp 0x18001f9c0
mov rsi, qword [rbp + 0x110]
lea r9, [rbp - 8]
mov rdx, r11
mov rax, qword [rsi]
mov r10, qword [rax + 0x120]
mov rcx, r10
call qword [r10]
mov rcx, qword [rsi]
lea rdx, [rbp - 0x40]
mov r9, qword [rbp - 8]
mov r8, qword [rbp + 0x100]
mov dword [rbp - 0x40], eax
mov rax, qword [rcx + 0x120]
cmp byte [rcx + 0x384], 0
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0x108]
sete byte [rsp + 0x60]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp + 0xf8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x88]
mov qword [rbp + 0x88], rcx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x78
call fcn.180044920
mov r11, qword [rbp + 0xf8]
mov r8, qword [rbp + 0x100]
mov dword [rbp - 0x70], eax
add edi, 0x77
cmp edi, 0x203
jb 0x18001f910
xor r9d, r9d
mov qword [rsp + 0x20], rbx
xor edx, edx
xor ecx, ecx
lea r8d, [r9 + 0x59]
call fcn.180007710
test al, al
je 0x18001faac
mov edx, 0x80
xor ecx, ecx
call fcn.180009760
cmp rax, 2
je 0x18001faac
mov rsi, qword [rbp + 0x110]
mov r9d, 0x110
mov rcx, rsi
mov qword [rsp + 0x20], rbx
xor r8d, r8d
xor edx, edx
call fcn.18000f460
xor ecx, ecx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
test al, al
je 0x18001fa44
xor r9d, r9d
mov r8d, 0x120
mov rdx, rsi
call fcn.180019070
jmp 0x18001fa54
mov r9d, 0xd5
mov r8, rsi
xor edx, edx
call fcn.180006d30
mov ecx, dword [rbp + 0xf0]
mov rdi, rsi
imul eax, ecx, 0x39
add r14d, eax
cmp r14d, dword [rbp - 0x38]
ja 0x18001facd
mov r11, qword [rbp + 0xf8]
mov r8, qword [rbp + 0x100]
jmp 0x18001e9da
mov dword [rbp - 0x70], ebx
jmp 0x18001facd
mov rdx, qword [rbp + 0x90]
mov rcx, qword [rdx]
cmp r11, rcx
jb 0x18001fa99
add rcx, qword [rdx + 8]
cmp r11, rcx
jb 0x18001faa7
mov rdx, qword [rdx + 0x10]
test rdx, rdx
jne 0x18001fa88
mov rax, rbx
jmp 0x18001fad1
mov rax, rdx
jmp 0x18001fad1
mov rdx, qword [rbp + 0x110]
xor r9d, r9d
mov qword [rsp + 0x28], rbx
mov r8d, 0x120
xor ecx, ecx
mov qword [rsp + 0x20], rbx
call fcn.180019070
mov rax, qword [rbp - 0x70]
add rsp, 0x1a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret