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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x118
movaps xmmword [rsp + 0x100], xmm7
movaps xmmword [rsp + 0xf0], xmm6
mov r12d, r9d
mov r13, r8
mov rbx, rdx
mov ebp, ecx
mov rax, qword [0x14013a028]
xor rax, rsp
mov qword [rsp + 0xe8], rax
mov rax, qword [rdx]
mov qword [rsp + 0x58], rax
mov eax, dword [0x140148908]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rsi, [rax + 0x128]
mov rax, qword [rax + 0x128]
test rax, rax
je 0x140087d5b
mov rax, qword [rax + 8]
cmp byte [rax + 0xc], 0
jne 0x1400871d1
mov rcx, qword [0x14013adb8]
mov byte [rax + 0xc], 1
mov rax, qword [rsi]
mov rdx, qword [rax + 8]
mov r8d, dword [rcx + 0x10]
cmp dword [rdx + 8], r8d
jne 0x14008828a
test bpl, 1
jne 0x140086cf1
test bpl, 2
jne 0x140086c47
test bpl, 4
jne 0x140086c61
test bpl, 8
jne 0x140086c81
test bpl, 0x10
jne 0x140086c9d
test bpl, 0x20
jne 0x140086cb9
test bpl, 0x40
jne 0x140086cd5
test bpl, bpl
jns 0x1400871c6
lea r15, [rax + 0x2b0]
mov r14d, 7
cmp qword [rax + 0x2b0], 0
jne 0x140086d02
jmp 0x140087db6
lea r15, [rax + 0x70]
mov r14d, 1
cmp qword [rax + 0x70], 0
jne 0x140086d02
jmp 0x140087eaa
lea r15, [rax + 0xd0]
mov r14d, 2
cmp qword [rax + 0xd0], 0
jne 0x140086d02
jmp 0x140087e6f
lea r15, [rax + 0x130]
mov r14d, 3
cmp qword [rax + 0x130], 0
jne 0x140086d02
jmp 0x140087f32
lea r15, [rax + 0x190]
mov r14d, 4
cmp qword [rax + 0x190], 0
jne 0x140086d02
jmp 0x140087e31
lea r15, [rax + 0x1f0]
mov r14d, 5
cmp qword [rax + 0x1f0], 0
jne 0x140086d02
jmp 0x140087f6d
lea r15, [rax + 0x250]
mov r14d, 6
cmp qword [rax + 0x250], 0
jne 0x140086d02
jmp 0x140087df3
lea r15, [rax + 0x10]
xor r14d, r14d
cmp qword [r15], 0
je 0x140087ee5
test r15, r15
je 0x1400871c6
movaps xmm6, xmmword [0x140119af0]
xorps xmm7, xmm7
mov qword [rsp + 0x88], rsi
jmp 0x140086e04
mov r8d, dword [r15 + 0x20]
cmp r8, 0x7f
ja 0x140087c83
mov rsi, qword [r15]
mov rdx, qword [rsi + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x140087c83
cmp rax, qword [rsi + 8]
jb 0x140087c83
lea rcx, [rdx - 3]
call fcn.1400a9230
add qword [rsi + 0x18], 0xfffffffffffffffd
mov al, byte [r15 + 0x20]
mov rcx, qword [r15 + 0x18]
mov byte [rcx], al
mov al, 2
mov byte [r15 + 0x24], al
mov qword [r15 + 0x18], 0
jmp 0x140086f84
mov r8d, dword [rdi + 0x20]
cmp r8, 0x7f
ja 0x140087c25
mov rsi, qword [rdi]
mov rdx, qword [rsi + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x140087c25
cmp rax, qword [rsi + 8]
jb 0x140087c25
lea rcx, [rdx - 3]
call fcn.1400a9230
add qword [rsi + 0x18], 0xfffffffffffffffd
mov al, byte [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
mov byte [rcx], al
mov al, 2
mov byte [rdi + 0x24], al
mov qword [rdi + 0x18], 0
jmp 0x140086ec3
mov rcx, r15
call fcn.14005dd30
jmp 0x140086f72
mov rcx, rdi
call fcn.14005dd30
jmp 0x140086eb2
cmp qword [r15], 0
je 0x140087ce1
dec r14d
test r15, r15
je 0x1400871c6
mov qword [rsp + 0x90], r15
mov dword [rsp + 0x98], r14d
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xd0], rax
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm6
lea rax, [0x14011df98]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r12d
lea rcx, [rsp + 0xa0]
lea rdx, [rsp + 0x90]
mov r8, rbx
mov r9, r13
call fcn.140072cd0
mov rdi, qword [rsp + 0xa8]
mov r15, qword [rsp + 0xb0]
movups xmmword [rsp + 0xa8], xmm7
test rdi, rdi
je 0x140087149
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx + 0x28]
cmp rax, qword [rcx + 0x30]
jne 0x140087799
cmp byte [rdi + 0x24], 0
jne 0x140086ec3
cmp qword [rdi + 0x10], 0
jne 0x140086de1
mov rax, qword [rdi + 0x18]
test rax, rax
jne 0x140086d7c
mov byte [rdi + 0x24], 1
test r15, r15
je 0x140086fd5
mov rax, qword [r15 + 0x78]
test rax, rax
je 0x140086f17
mov rdx, qword [r15 + 0x50]
mov rsi, rdx
sub rsi, qword [r15 + 0x68]
mov r8d, esi
cmp r8, 0x7e
ja 0x140087bd3
cmp rax, qword [r15 + 0x40]
jb 0x140087bd3
sub rdx, r8
lea rcx, [rdx - 3]
call fcn.1400a9230
add qword [r15 + 0x50], 0xfffffffffffffffd
mov rax, qword [r15 + 0x78]
mov byte [rax], sil
mov qword [r15 + 0x78], 0
mov rsi, qword [r15 + 0x60]
lea rdi, [rsi + 0x28]
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x1400880d3
mov rcx, qword [rax]
test rcx, rcx
jne 0x1400881f8
lea rcx, [r15 + 0x38]
mov dword [rax + 0x288], 0
mov qword [rsi], rcx
mov qword [rsi + 8], rdi
movups xmmword [rsi + 0x10], xmm7
mov qword [rsi + 0x1d], 0
mov rdi, r15
mov r15, qword [r15 + 0x60]
cmp byte [r15 + 0x24], 0
jne 0x140086f84
cmp qword [r15 + 0x10], 0
jne 0x140086dd4
mov rax, qword [r15 + 0x18]
test rax, rax
jne 0x140086d22
mov byte [r15 + 0x24], 1
mov rax, qword [rdi + 0x28]
test rax, rax
je 0x140086fc5
cmp word [rdi + 0x30], 0
je 0x140086fc5
cmp byte [rdi + 0x74], 0
jne 0x140086fc5
mov rcx, qword [rdi + 0x48]
cmp rcx, qword [rdi + 0x50]
je 0x1400881dc
mov byte [rdi + 0x74], 1
movzx ecx, word [rax + 6]
lea edx, [rcx + 1]
and edx, 0x3ff
and ecx, 0xfffffc00
or ecx, edx
mov word [rax + 6], cx
mov rax, qword [rdi + 0x80]
test rax, rax
jne 0x140087fab
mov r15, qword [rsp + 0xa8]
test r15, r15
je 0x140087149
mov rsi, qword [rsp + 0xc0]
mov rax, qword [rsi + 0x28]
cmp rax, qword [rsi + 0x30]
jne 0x140087346
mov rsi, qword [rsp + 0xb0]
cmp byte [r15 + 0x24], 0
jne 0x140087028
cmp qword [r15 + 0x10], 0
jne 0x140087205
mov rax, qword [r15 + 0x18]
test rax, rax
jne 0x140087279
mov byte [r15 + 0x24], 1
test rsi, rsi
je 0x140087149
mov rax, qword [rsi + 0x78]
test rax, rax
je 0x14008707c
mov rdx, qword [rsi + 0x50]
mov rdi, rdx
sub rdi, qword [rsi + 0x68]
mov r8d, edi
cmp r8, 0x7e
ja 0x140087bfc
cmp rax, qword [rsi + 0x40]
jb 0x140087bfc
sub rdx, r8
lea rcx, [rdx - 3]
call fcn.1400a9230
add qword [rsi + 0x50], 0xfffffffffffffffd
mov rax, qword [rsi + 0x78]
mov byte [rax], dil
mov qword [rsi + 0x78], 0
mov edx, r12d
mov r12d, ebp
mov rbp, rbx
mov rdi, qword [rsi + 0x60]
lea rbx, [rdi + 0x28]
mov rax, qword [rdi + 0x28]
test rax, rax
je 0x1400880ff
mov rcx, qword [rax]
test rcx, rcx
jne 0x140088225
lea rcx, [rsi + 0x38]
mov dword [rax + 0x288], 0
mov qword [rdi], rcx
mov qword [rdi + 8], rbx
movups xmmword [rdi + 0x10], xmm7
mov qword [rdi + 0x1d], 0
mov r15, qword [rsi + 0x60]
cmp byte [r15 + 0x24], 0
mov rbx, rbp
mov ebp, r12d
mov r12d, edx
jne 0x1400870f8
cmp qword [r15 + 0x10], 0
jne 0x140087212
mov rax, qword [r15 + 0x18]
test rax, rax
jne 0x14008721f
mov byte [r15 + 0x24], 1
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x140087139
cmp word [rsi + 0x30], 0
je 0x140087139
cmp byte [rsi + 0x74], 0
jne 0x140087139
mov rcx, qword [rsi + 0x48]
cmp rcx, qword [rsi + 0x50]
je 0x1400881ea
mov byte [rsi + 0x74], 1
movzx ecx, word [rax + 6]
lea edx, [rcx + 1]
and edx, 0x3ff
and ecx, 0xfffffc00
or ecx, edx
mov word [rax + 6], cx
mov rax, qword [rsi + 0x80]
test rax, rax
jne 0x140087ffe
mov rax, qword [rsp + 0x90]
cmp byte [rax + 0x48], 0
jne 0x140087d20
inc r14d
cmp r14d, 7
mov rsi, qword [rsp + 0x88]
ja 0x1400871c6
mov rax, qword [rsi]
mov ecx, r14d
lea r14, [rcx + 1]
lea rdx, [rcx + rcx*2]
shl rcx, 7
lea r8, [0x14013c078]
add r8, rcx
add r8, 0x10
shl rdx, 5
lea r15, [rax + rdx]
add r15, 0x10
lea ecx, [r14 - 1]
mov eax, 1
shl eax, cl
movzx ecx, cl
bt ebp, ecx
jb 0x140086dee
mov rax, r14
inc rax
sub r8, 0xffffffffffffff80
add r15, 0x60
cmp r14d, 8
mov r14, rax
jne 0x140087198
mov rax, qword [rsi]
mov rax, qword [rax + 8]
mov byte [rax + 0xc], 0
mov rcx, qword [rsp + 0xe8]
xor rcx, rsp
call fcn.1400a77a0
movaps xmm6, xmmword [rsp + 0xf0]
movaps xmm7, xmmword [rsp + 0x100]
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, r15
call fcn.14005dd30
jmp 0x140087016
mov rcx, r15
call fcn.14005dd30
jmp 0x1400870e6
mov r8d, dword [r15 + 0x20]
cmp r8, 0x7f
ja 0x140087cb2
mov rdi, qword [r15]
mov rdx, qword [rdi + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x140087cb2
cmp rax, qword [rdi + 8]
jb 0x140087cb2
lea rcx, [rdx - 3]
call fcn.1400a9230
add qword [rdi + 0x18], 0xfffffffffffffffd
mov al, byte [r15 + 0x20]
mov rcx, qword [r15 + 0x18]
mov byte [rcx], al
mov al, 2
mov byte [r15 + 0x24], al
mov qword [r15 + 0x18], 0
jmp 0x1400870f8
mov r8d, dword [r15 + 0x20]
cmp r8, 0x7f
ja 0x140087c54
mov rdi, qword [r15]
mov rdx, qword [rdi + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x140087c54
cmp rax, qword [rdi + 8]
jb 0x140087c54
lea rcx, [rdx - 3]
call fcn.1400a9230
add qword [rdi + 0x18], 0xfffffffffffffffd
mov al, byte [r15 + 0x20]
mov rcx, qword [r15 + 0x18]
mov byte [rcx], al
mov al, 2
mov byte [r15 + 0x24], al
mov qword [r15 + 0x18], 0
jmp 0x140087028
mov r8d, dword [rsi + 0xa0]
cmp r8, 0x7f
ja 0x14008809f
mov rsi, qword [r15]
mov rdx, qword [rsi + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x14008809f
cmp rax, qword [rsi + 8]
jb 0x14008809f
lea rcx, [rdx - 3]
call fcn.1400a9230
add qword [rsi + 0x18], 0xfffffffffffffffd
mov rsi, qword [rsp + 0x40]
mov al, byte [rsi + 0xa0]
mov rcx, qword [rsi + 0x98]
mov byte [rcx], al
mov al, 2
mov byte [rsi + 0xa4], al
mov qword [rsi + 0x98], 0
jmp 0x14008737c
mov rcx, r15
call fcn.14005dd30
jmp 0x140087365
cmp byte [rsi + 0xa4], 0
mov qword [rsp + 0x40], rsi
jne 0x14008737c
lea r15, [rsi + 0x80]
cmp qword [rsi + 0x90], 0
jne 0x14008733c
mov rax, qword [rsi + 0x98]
test rax, rax
jne 0x1400872d3
mov byte [rsi + 0xa4], 1
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], r13
mov dword [rsp + 0x38], r12d
mov rax, qword [rsi + 0x30]
cmp qword [rsi + 0x28], rax
je 0x140088278
mov r8, qword [rsp + 0x40]
mov rcx, qword [r8 + 0x20]
mov rdx, qword [rcx + 0x10]
sub rdx, qword [rcx + 0x18]
mov qword [rax - 8], rdx
mov rsi, qword [r8 + 0x28]
mov r13, qword [r8 + 0x30]
cmp rsi, r13
je 0x140088278
xor edx, edx
xor r8d, r8d
xor r15d, r15d
movabs rcx, 0xfffffffffffffff
mov dword [rsp + 0x3c], ebp
mov qword [rsp + 0x50], r13
jmp 0x1400873fd
test r8, r8
je 0x140088266
mov qword [r8], r9
mov qword [r8 + 8], rbx
add r8, 0x10
add rsi, 0x18
cmp rsi, r13
je 0x1400874dd
mov r9, qword [rsi]
mov rbx, qword [rsi + 8]
add rbx, r9
sub rbx, qword [rsi + 0x10]
cmp r8, r15
jb 0x1400873dc
sub r8, rdx
mov rdi, r8
sar rdi, 4
lea rax, [rdi + 1]
cmp rax, rcx
ja 0x140088269
sub r15, rdx
mov rbp, r15
sar rbp, 3
cmp rbp, rax
cmovbe rbp, rax
movabs rax, 0x7ffffffffffffff0
cmp r15, rax
cmovae rbp, rcx
test rbp, rbp
je 0x1400874d8
mov qword [rsp + 0x48], r9
cmp rbp, rcx
ja 0x14008826c
mov r13, r8
mov r15, rdx
mov rcx, rbp
shl rcx, 4
call fcn.1400a5638
mov r12, rax
mov rdx, r15
mov r8, r13
mov r13, qword [rsp + 0x50]
mov r9, qword [rsp + 0x48]
shl rdi, 4
add rdi, r12
je 0x14008826f
shl rbp, 4
mov r15, rbp
add r15, r12
mov qword [rdi], r9
mov qword [rdi + 8], rbx
add rdi, 0x10
mov rcx, r12
mov rbx, rdx
call fcn.1400a9230
test rbx, rbx
je 0x1400874bf
mov rcx, rbx
call fcn.1400a5630
mov rdx, r12
mov r8, rdi
mov ebp, dword [rsp + 0x3c]
movabs rcx, 0xfffffffffffffff
jmp 0x1400873f0
xor r12d, r12d
jmp 0x140087485
mov qword [rsp + 0x48], r8
mov rsi, r8
sub rsi, rdx
je 0x140088278
mov rbx, qword [rsp + 0xa8]
cmp qword [rbx + 0x10], 0
je 0x14008750b
mov rcx, rbx
mov rdi, rdx
call fcn.14005dd30
mov rdx, rdi
sar rsi, 4
mov qword [rsp + 0x50], rdx
lea r12, [rdx + 8]
mov rcx, r12
mov r8, rsi
xor eax, eax
lea rdx, [rsp + 0xd8]
add rax, qword [rcx]
sub rax, qword [rcx - 8]
add rcx, 0x10
dec r8
jne 0x140087528
movabs rcx, 0xaaaaaaaaaaaaaaaa
lea r8, [rsp + 0xd9]
mov qword [r8 + 6], rcx
mov qword [r8], rcx
mov rcx, r8
mov byte [rsp + 0xd8], 0x62
cmp eax, 0x80
jae 0x140087bae
mov rdi, rdx
mov byte [rcx], al
sub rdi, rdx
add rdi, 2
mov r15, rbx
mov r13, qword [rbx]
mov r8d, edi
mov rcx, qword [r13 + 0x18]
lea rbx, [rcx + r8]
cmp rbx, qword [r13 + 0x10]
ja 0x1400881cf
test r8, r8
je 0x140087598
call fcn.1400a9230
mov qword [r13 + 0x18], rbx
mov rax, r15
add dword [r15 + 0x20], edi
mov rdx, qword [r12 - 8]
mov rdi, qword [r12]
sub rdi, rdx
mov r13, qword [rax]
mov r8d, edi
mov rcx, qword [r13 + 0x18]
lea rbx, [rcx + r8]
cmp rbx, qword [r13 + 0x10]
ja 0x14008805e
test r8, r8
je 0x1400875d1
call fcn.1400a9230
mov qword [r13 + 0x18], rbx
mov rax, r15
add dword [r15 + 0x20], edi
add r12, 0x10
dec rsi
jne 0x1400875a3
mov rdi, qword [rsp + 0x40]
mov rsi, qword [rdi + 0x28]
cmp rsi, qword [rdi + 0x30]
mov r12d, dword [rsp + 0x38]
mov r13, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x48]
je 0x14008767b
mov rax, qword [rsi]
mov qword [rsi], 0
mov rcx, qword [rdi + 0x40]
mov qword [rdi + 0x40], rax
test rcx, rcx
jne 0x1400882ec
movups xmm0, xmmword [rsi + 8]
movups xmmword [rdi + 0x48], xmm0
mov rax, qword [rdi + 0x48]
mov qword [rdi + 0x50], rax
mov rsi, qword [rdi + 0x28]
mov rdi, qword [rdi + 0x30]
cmp rdi, rsi
je 0x140087672
add rdi, 0xffffffffffffffe8
test rdi, rdi
je 0x14008827b
mov rcx, qword [rdi]
mov qword [rdi], 0
test rcx, rcx
je 0x140087666
call fcn.1400a5934
mov r8, qword [rsp + 0x48]
lea rax, [rdi - 0x18]
cmp rdi, rsi
mov rdi, rax
jne 0x140087644
mov rdi, qword [rsp + 0x40]
mov qword [rdi + 0x30], rsi
mov rcx, qword [rdi + 0x70]
sub rcx, qword [rdi + 0x60]
mov rax, qword [rdi + 0xa8]
add qword [rdi + 0x78], rcx
lea rsi, [rdi + 0xa8]
movups xmmword [rdi + 0x60], xmm7
mov qword [rdi + 0x70], 0
test rax, rax
je 0x140088131
mov rcx, qword [rax]
test rcx, rcx
jne 0x1400882be
mov rdx, qword [rsp + 0x40]
lea rcx, [rdx + 0x58]
mov dword [rax + 0x288], 0
mov qword [rdx + 0x80], rcx
mov qword [rdx + 0x88], rsi
movups xmmword [rdx + 0x90], xmm7
mov qword [rdx + 0x9d], 0
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x140087708
cmp r8, rcx
je 0x140087703
add r8, 0xfffffffffffffff0
jne 0x1400876f3
jmp 0x140088257
call fcn.1400a5630
mov r15, qword [rsp + 0xa8]
test r15, r15
jne 0x140086ffc
jmp 0x140087149
mov r8d, dword [rcx + 0xa0]
cmp r8, 0x7f
ja 0x14008806b
mov rsi, qword [r15]
mov rdx, qword [rsi + 0x18]
sub rdx, r8
lea rcx, [rdx - 4]
cmp rax, rcx
jne 0x14008806b
cmp rax, qword [rsi + 8]
jb 0x14008806b
lea rcx, [rdx - 3]
call fcn.1400a9230
add qword [rsi + 0x18], 0xfffffffffffffffd
mov rdx, qword [rsp + 0x40]
mov al, byte [rdx + 0xa0]
mov rcx, qword [rdx + 0x98]
mov byte [rcx], al
mov al, 2
mov byte [rdx + 0xa4], al
mov qword [rdx + 0x98], 0
mov rcx, rdx
jmp 0x1400877d7
mov rcx, r15
call fcn.14005dd30
mov rcx, qword [rsp + 0x40]
jmp 0x1400877c0
mov qword [rsp + 0x80], r15
cmp byte [rcx + 0xa4], 0
mov qword [rsp + 0x40], rcx
jne 0x1400877d7
lea r15, [rcx + 0x80]
cmp qword [rcx + 0x90], 0
jne 0x14008778a
mov rax, qword [rcx + 0x98]
test rax, rax
jne 0x14008771e
mov byte [rcx + 0xa4], 1
mov qword [rsp + 0x70], rdi
mov dword [rsp + 0x3c], ebp
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], r13
mov dword [rsp + 0x38], r12d
mov rax, qword [rcx + 0x30]
cmp qword [rcx + 0x28], rax
je 0x140088272
mov r8, qword [rsp + 0x40]
mov rcx, qword [r8 + 0x20]
mov rdx, qword [rcx + 0x10]
sub rdx, qword [rcx + 0x18]
mov qword [rax - 8], rdx
mov r13, qword [r8 + 0x28]
mov rax, qword [r8 + 0x30]
cmp r13, rax
je 0x140088272
xor esi, esi
xor r8d, r8d
xor edi, edi
movabs rcx, 0xfffffffffffffff
mov qword [rsp + 0x50], rax
jmp 0x14008785c
test r8, r8
je 0x14008825a
mov qword [r8], rbx
mov qword [r8 + 8], rbp
add r8, 0x10
add r13, 0x18
cmp r13, rax
je 0x140087962
mov rbx, qword [r13]
mov rbp, qword [r13 + 8]
add rbp, rbx
sub rbp, qword [r13 + 0x10]
cmp r8, rdi
jb 0x14008783b
sub r8, rsi
mov r12, r8
sar r12, 4
lea rax, [r12 + 1]
cmp rax, rcx
ja 0x14008825d
mov qword [rsp + 0x48], rsi
sub rdi, rsi
mov rsi, rdi
sar rsi, 3
cmp rsi, rax
cmovbe rsi, rax
movabs rax, 0x7ffffffffffffff0
cmp rdi, rax
cmovae rsi, rcx
test rsi, rsi
je 0x14008792d
cmp rsi, rcx
ja 0x140088260
mov rdi, r8
mov rcx, rsi
shl rcx, 4
call fcn.1400a5638
mov r15, rax
mov r8, rdi
shl r12, 4
add r12, r15
je 0x140088263
shl rsi, 4
mov rdi, rsi
add rdi, r15
mov qword [r12], rbx
mov qword [r12 + 8], rbp
add r12, 0x10
mov rcx, r15
mov rsi, qword [rsp + 0x48]
mov rdx, rsi
call fcn.1400a9230
test rsi, rsi
je 0x140087913
mov rcx, rsi
call fcn.1400a5630
mov rsi, r15
mov r8, r12
movabs rcx, 0xfffffffffffffff
mov rax, qword [rsp + 0x50]
jmp 0x14008784f
xor r15d, r15d
jmp 0x1400878d2
mov r12d, dword [rsp + 0x38]
mov edx, eax
mov r8d, edx
or r8b, 0x80
mov byte [rcx], r8b
shr eax, 7
inc rcx
cmp edx, 0x3fff
ja 0x140087937
lea rsi, [rcx - 1]
lea rdx, [rsp + 0xd8]
jmp 0x1400879f6
mov r15, r8
sub r15, rsi
je 0x140088272
mov rdi, qword [rsp + 0x70]
cmp qword [rdi + 0x10], 0
mov rbx, qword [rsp + 0x68]
mov ebp, dword [rsp + 0x3c]
mov qword [rsp + 0x78], r8
je 0x140087990
mov rcx, rdi
call fcn.14005dd30
sar r15, 4
lea rcx, [rsi + 8]
mov qword [rsp + 0x50], rcx
mov rdx, r15
xor eax, eax
add rax, qword [rcx]
sub rax, qword [rcx - 8]
add rcx, 0x10
dec rdx
jne 0x1400879a2
movabs rcx, 0xaaaaaaaaaaaaaaaa
lea rdx, [rsp + 0xd9]
mov qword [rdx + 6], rcx
mov qword [rdx], rcx
mov rcx, rdx
mov byte [rsp + 0xd8], 0x62
cmp eax, 0x80
mov qword [rsp + 0x48], rsi
jae 0x140087932
lea rdx, [rsp + 0xd8]
mov rsi, rdx
mov r12d, dword [rsp + 0x38]
mov byte [rcx], al
sub rsi, rdx
add rsi, 2
mov r13, qword [rdi]
mov r8d, esi
mov rcx, qword [r13 + 0x18]
lea rdi, [rcx + r8]
cmp rdi, qword [r13 + 0x10]
ja 0x1400881c2
test r8, r8
je 0x140087a21
call fcn.1400a9230
mov qword [r13 + 0x18], rdi
mov rdi, qword [rsp + 0x70]
add dword [rdi + 0x20], esi
mov rax, qword [rsp + 0x50]
mov rdx, qword [rax - 8]
mov qword [rsp + 0x50], rax
mov rsi, qword [rax]
sub rsi, rdx
mov r13, qword [rdi]
mov r8d, esi
mov rcx, qword [r13 + 0x18]
lea rdi, [rcx + r8]
cmp rdi, qword [r13 + 0x10]
ja 0x140088051
test r8, r8
je 0x140087a63
call fcn.1400a9230
mov qword [r13 + 0x18], rdi
mov rdi, qword [rsp + 0x70]
add dword [rdi + 0x20], esi
mov rax, qword [rsp + 0x50]
add rax, 0x10
dec r15
jne 0x140087a32
mov r13, qword [rsp + 0x40]
mov rsi, qword [r13 + 0x28]
cmp rsi, qword [r13 + 0x30]
mov r15, qword [rsp + 0x80]
mov r8, qword [rsp + 0x78]
je 0x140087b12
mov rax, qword [rsi]
mov qword [rsi], 0
mov rcx, qword [r13 + 0x40]
mov qword [r13 + 0x40], rax
test rcx, rcx
jne 0x1400882dd
movups xmm0, xmmword [rsi + 8]
movups xmmword [r13 + 0x48], xmm0
mov rax, qword [r13 + 0x48]
mov qword [r13 + 0x50], rax
mov rsi, qword [r13 + 0x28]
mov rdi, qword [r13 + 0x30]
cmp rdi, rsi
je 0x140087b09
add rdi, 0xffffffffffffffe8
test rdi, rdi
je 0x140088275
mov rcx, qword [rdi]
mov qword [rdi], 0
test rcx, rcx
je 0x140087af8
call fcn.1400a5934
mov r8, qword [rsp + 0x78]
lea rax, [rdi - 0x18]
cmp rdi, rsi
mov rdi, rax
mov r13, qword [rsp + 0x40]
jne 0x140087ad6
mov qword [r13 + 0x30], rsi
mov rdi, qword [rsp + 0x70]
mov rcx, qword [r13 + 0x70]
sub rcx, qword [r13 + 0x60]
mov rax, qword [r13 + 0xa8]
add qword [r13 + 0x78], rcx
lea rsi, [r13 + 0xa8]
movups xmmword [r13 + 0x60], xmm7
mov qword [r13 + 0x70], 0
test rax, rax
je 0x140088171
mov rcx, qword [rax]
test rcx, rcx
mov r13, qword [rsp + 0x60]
jne 0x14008829f
mov rdx, qword [rsp + 0x40]
lea rcx, [rdx + 0x58]
mov dword [rax + 0x288], 0
mov qword [rdx + 0x80], rcx
mov qword [rdx + 0x88], rsi
movups xmmword [rdx + 0x90], xmm7
mov qword [rdx + 0x9d], 0
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x140086ea1
cmp r8, rcx
je 0x140087ba4
add r8, 0xfffffffffffffff0
jne 0x140087b94
jmp 0x140088254
call fcn.1400a5630
jmp 0x140086ea1
mov r9d, eax
mov r8d, r9d
or r8b, 0x80
mov byte [rcx], r8b
shr eax, 7
inc rcx
cmp r9d, 0x3fff
ja 0x140087bae
lea rdi, [rcx - 1]
jmp 0x14008756a
mov ecx, esi
or cl, 0x80
mov byte [rax], cl
mov ecx, esi
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, esi
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr esi, 0x15
mov byte [rax + 3], sil
jmp 0x140086f0f
mov ecx, edi
or cl, 0x80
mov byte [rax], cl
mov ecx, edi
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, edi
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr edi, 0x15
mov byte [rax + 3], dil
jmp 0x140087074
mov ecx, r8d
or cl, 0x80
mov byte [rax], cl
mov ecx, r8d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r8d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r8d, 0x15
mov byte [rax + 3], r8b
mov al, 1
jmp 0x140086dc4
mov ecx, r8d
or cl, 0x80
mov byte [rax], cl
mov ecx, r8d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r8d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r8d, 0x15
mov byte [rax + 3], r8b
mov al, 1
jmp 0x1400872c2
mov ecx, r8d
or cl, 0x80
mov byte [rax], cl
mov ecx, r8d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r8d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r8d, 0x15
mov byte [rax + 3], r8b
mov al, 1
jmp 0x140086d6b
mov ecx, r8d
or cl, 0x80
mov byte [rax], cl
mov ecx, r8d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r8d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r8d, 0x15
mov byte [rax + 3], r8b
mov al, 1
jmp 0x140087268
mov rcx, qword [rsp + 0x58]
lea rdx, [0x14014b810]
mov cl, byte [rcx + rdx]
movzx ecx, cl
and ebp, ecx
test ebp, eax
je 0x1400871af
mov al, byte [r8]
test al, 1
je 0x1400871af
lea r9d, [r14 - 1]
lea rcx, [0x14013c078]
mov rdx, r15
call fcn.140004370
jmp 0x140086df8
mov rcx, qword [rax]
lea rax, [fcn.1400da0b0]
mov qword [rsp + 0xb8], rax
lea rax, [0x14011dac8]
mov qword [rsp + 0xc0], rax
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
lea rdx, [rsp + 0xa0]
call qword [0x14012eaa8]
jmp 0x14008715b
mov rax, qword [0x14013adb8]
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x14012eaa8]
lea rcx, [rax + 0x6218]
lea rdx, [0x14013c078]
mov qword [rax + 0x6218], rdx
mov qword [rax + 0x6220], rax
mov qword [rsi], rcx
lea rax, [0x14014b810]
mov rcx, qword [rsp + 0x58]
mov al, byte [rcx + rax]
movzx eax, al
and eax, ebp
je 0x1400871d1
mov ebp, eax
mov rax, qword [rsi]
jmp 0x140086bb2
lea rax, [0x14014b810]
mov rcx, qword [rsp + 0x58]
mov al, byte [rcx + rax]
test al, al
jns 0x1400871c6
mov cl, byte [0x14013c408]
test cl, 1
je 0x1400871c6
movzx eax, al
and ebp, eax
lea r8, [0x14013c408]
mov r14d, 7
jmp 0x140087f1b
lea rcx, [0x14014b810]
mov rdx, qword [rsp + 0x58]
mov cl, byte [rdx + rcx]
movzx ecx, cl
and ebp, ecx
test cl, 0x40
je 0x140086c1e
mov cl, byte [0x14013c388]
test cl, 1
je 0x140086c1e
lea r8, [0x14013c388]
mov r14d, 6
jmp 0x140087f1b
lea rcx, [0x14014b810]
mov rdx, qword [rsp + 0x58]
mov cl, byte [rdx + rcx]
movzx ecx, cl
and ebp, ecx
test cl, 0x10
je 0x140086c0a
mov cl, byte [0x14013c288]
test cl, 1
je 0x140086c0a
lea r8, [0x14013c288]
mov r14d, 4
jmp 0x140087f1b
lea rcx, [0x14014b810]
mov rdx, qword [rsp + 0x58]
mov cl, byte [rdx + rcx]
movzx ecx, cl
and ebp, ecx
test cl, 4
je 0x140086bf6
mov cl, byte [0x14013c188]
test cl, 1
je 0x140086bf6
lea r8, [0x14013c188]
mov r14d, 2
jmp 0x140087f1b
lea rcx, [0x14014b810]
mov rdx, qword [rsp + 0x58]
mov cl, byte [rdx + rcx]
movzx ecx, cl
and ebp, ecx
test cl, 2
je 0x140086bf0
mov cl, byte [0x14013c108]
test cl, 1
je 0x140086bf0
lea r8, [0x14013c108]
mov r14d, 1
jmp 0x140087f1b
lea rcx, [0x14014b810]
mov rdx, qword [rsp + 0x58]
mov cl, byte [rdx + rcx]
movzx ecx, cl
and ebp, ecx
test cl, 1
je 0x140086bea
mov cl, byte [0x14013c088]
test cl, 1
je 0x140086bea
lea r8, [0x14013c088]
xor r14d, r14d
lea rcx, [0x14013c078]
mov rdx, r15
mov r9d, r14d
call fcn.140004370
jmp 0x140086d02
lea rcx, [0x14014b810]
mov rdx, qword [rsp + 0x58]
mov cl, byte [rdx + rcx]
movzx ecx, cl
and ebp, ecx
test cl, 8
je 0x140086c00
mov cl, byte [0x14013c208]
test cl, 1
je 0x140086c00
lea r8, [0x14013c208]
mov r14d, 3
jmp 0x140087f1b
lea rcx, [0x14014b810]
mov rdx, qword [rsp + 0x58]
mov cl, byte [rdx + rcx]
movzx ecx, cl
and ebp, ecx
test cl, 0x20
je 0x140086c14
mov cl, byte [0x14013c308]
test cl, 1
je 0x140086c14
lea r8, [0x14013c308]
mov r14d, 5
jmp 0x140087f1b
cmp byte [rax + 0xe], 0
je 0x140086fd5
lea rax, [rdi + 0x80]
mov rcx, qword [rdi + 0x10]
mov r9d, dword [rdi + 0x1c]
movzx r8d, word [rdi + 0x18]
mov qword [rsp + 0xd8], 0
mov word [rsp + 0xe0], 0
mov byte [rsp + 0xe2], 0
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0xd8]
call fcn.140010c50
jmp 0x140086fd5
cmp byte [rax + 0xe], 0
je 0x140087149
lea rax, [rsi + 0x80]
mov rcx, qword [rsi + 0x10]
mov r9d, dword [rsi + 0x1c]
movzx r8d, word [rsi + 0x18]
mov qword [rsp + 0xd8], 0
mov word [rsp + 0xe0], 0
mov byte [rsp + 0xe2], 0
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0xd8]
call fcn.140010c50
jmp 0x140087149
mov rcx, r13
call fcn.140075bd0
jmp 0x140087a67
mov rcx, r13
call fcn.140075bd0
jmp 0x1400875d5
mov ecx, r8d
or cl, 0x80
mov byte [rax], cl
mov ecx, r8d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r8d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r8d, 0x15
mov byte [rax + 3], r8b
mov al, 1
mov rdx, qword [rsp + 0x40]
jmp 0x140087774
mov ecx, r8d
or cl, 0x80
mov byte [rax], cl
mov ecx, r8d
shr ecx, 7
or cl, 0x80
mov byte [rax + 1], cl
mov ecx, r8d
shr ecx, 0xe
or cl, 0x80
mov byte [rax + 2], cl
shr r8d, 0x15
mov byte [rax + 3], r8b
mov al, 1
mov rsi, qword [rsp + 0x40]
jmp 0x140087329
mov ecx, 0x290
call fcn.1400a5638
test rax, rax
je 0x14008827e
mov qword [rax], 0
mov dword [rax + 0x288], 0
mov qword [rdi], rax
jmp 0x140086f38
mov r15d, edx
mov ecx, 0x290
call fcn.1400a5638
test rax, rax
je 0x140088281
mov qword [rax], 0
mov dword [rax + 0x288], 0
mov qword [rbx], rax
mov edx, r15d
jmp 0x1400870a6
mov ecx, 0x290
call fcn.1400a5638
test rax, rax
je 0x140088287
mov qword [rax], 0
mov dword [rax + 0x288], 0
mov qword [rsi], rax
mov r12d, dword [rsp + 0x38]
mov r13, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x48]
jmp 0x1400876b6
mov ecx, 0x290
call fcn.1400a5638
test rax, rax
je 0x140088284
mov qword [rax], 0
mov dword [rax + 0x288], 0
mov qword [rsi], rax
mov r12d, dword [rsp + 0x38]
mov r13, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
mov ebp, dword [rsp + 0x3c]
mov r15, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
jmp 0x140087b53
mov rcx, r13
call fcn.140075bd0
jmp 0x140087a25
mov rcx, r13
call fcn.140075bd0
jmp 0x14008759c
lea rcx, [rdi - 8]
call fcn.140003e20
jmp 0x140086fc5
lea rcx, [rsi - 8]
call fcn.140003e20
jmp 0x140087139
mov dword [rsp + 0x3c], ebp
mov rbp, rbx
mov qword [rax], 0
mov rbx, qword [rcx]
call fcn.1400a5630
mov rcx, rbx
test rbx, rbx
jne 0x140088206
mov rax, qword [rdi]
mov rbx, rbp
mov ebp, dword [rsp + 0x3c]
jmp 0x140086f38
mov qword [rsp + 0x60], r13
mov r13d, edx
mov qword [rax], 0
mov r15, qword [rcx]
call fcn.1400a5630
mov rcx, r15
test r15, r15
jne 0x140088234
mov rax, qword [rbx]
mov edx, r13d
mov r13, qword [rsp + 0x60]
jmp 0x1400870a6
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
int3
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [0x14012eaa8]
mov rax, qword [rsi]
jmp 0x140086be0
mov qword [rax], 0
mov rdi, qword [rcx]
call fcn.1400a5630
mov rcx, rdi
test rdi, rdi
jne 0x1400882a6
mov rax, qword [rsi]
jmp 0x140088198
mov qword [rax], 0
mov rdi, qword [rcx]
call fcn.1400a5630
mov rcx, rdi
test rdi, rdi
jne 0x1400882c5
mov rax, qword [rsi]
jmp 0x140088158
call fcn.1400a5934
mov r8, qword [rsp + 0x78]
jmp 0x140087ab4
call fcn.1400a5934
mov r8, qword [rsp + 0x48]
jmp 0x140087623