Function at 0x18008bfb0
Capabilities:
Connect to http server
Create http request
Read and send data from client to server
Read file on windows
Send data
Send http request

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb8]
sub rsp, 0x1b8
mov rax, qword [0x18012a010]
xor rax, rsp
mov qword [rbp + 0xa0], rax
xor r15d, r15d
mov qword [rsp + 0x58], r9
mov rdi, r9
mov rsi, r8
mov rbx, rdx
mov qword [rsp + 0x60], r8
mov r14, rcx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], rcx
cmp qword [rcx + 0x10], r15
je 0x18008c8a4
cmp qword [rdx + 0x10], r15
je 0x18008c8a4
cmp qword [r9 + 0x10], r15
je 0x18008c8a4
mov rdx, r8
lea rcx, [rbp - 0x78]
call fcn.1800c2a30
mov rcx, rax
call fcn.18008ba20
lea r9, [rbp + 0x95]
mov r8d, eax
test eax, eax
jns 0x18008c090
neg r8d
nop dword [rax]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18008c050
dec r9
mov byte [r9], 0x2d
jmp 0x18008c0ba
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18008c090
lea rax, [rbp + 0x95]
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], 0xf
mov byte [rsp + 0x68], r15b
cmp r9, rax
je 0x18008c0ef
lea r8, [rbp + 0x95]
mov rdx, r9
sub r8, r9
lea rcx, [rsp + 0x68]
call fcn.1800c30f0
lea rdx, [rsp + 0x68]
lea rcx, [rbp - 0x18]
call fcn.180089c80
mov rdx, qword [rbp - 0x80]
cmp rdx, 0x10
jb 0x18008c139
mov rcx, qword [rsp + 0x68]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008c134
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc86
call fcn.1800cff50
mov rbx, qword [rbp - 8]
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], r15b
lea rdx, [rbx + 0x30]
cmp rdx, 0x10
jb 0x18008c164
lea rcx, [rbp - 0x38]
call fcn.1800c9530
mov qword [rbp - 0x28], r15
mov r8d, 0x30
lea rdx, str.Content_Type:_multipart_form_data__boundary____
lea rcx, [rbp - 0x38]
call fcn.1800c2860
cmp qword [rbp], 0x10
lea rdx, [rbp - 0x18]
mov r8, rbx
lea rcx, [rbp - 0x38]
cmovae rdx, qword [rbp - 0x18]
call fcn.1800c2860
mov rbx, qword [rbp - 8]
mov qword [rbp + 0x90], r15
mov qword [rbp + 0x98], 0xf
mov byte [rbp + 0x80], r15b
lea rdx, [rbx + 6]
cmp rdx, 0x10
jb 0x18008c1ce
lea rcx, [rbp + 0x80]
call fcn.1800c9530
mov qword [rbp + 0x90], r15
mov r8d, 6
lea rdx, str.______
lea rcx, [rbp + 0x80]
call fcn.1800c2860
cmp qword [rbp], 0x10
lea rdx, [rbp - 0x18]
mov r8, rbx
lea rcx, [rbp + 0x80]
cmovae rdx, qword [rbp - 0x18]
call fcn.1800c2860
mov r8d, 0x39
lea rdx, str._r_nContent_Disposition:_form_data__name_data___filename_
lea rcx, [rbp + 0x80]
call fcn.1800c2860
mov rdx, rdi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
cmp qword [rdi + 0x18], 0x10
jb 0x18008c24a
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
lea rcx, [rsp + 0x68]
call fcn.1800c2860
mov r8d, 0x2d
lea rdx, str.__r_nContent_Type:_application_octet_stream_r_n_r_n
lea rcx, [rbp - 0x78]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x68], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
call fcn.1800c2860
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x28], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x38], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x18008c2e5
mov rcx, qword [rbp - 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008c2e0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc8c
call fcn.1800cff50
mov rdx, qword [rbp - 0x80]
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], r15b
cmp rdx, 0x10
jb 0x18008c331
mov rcx, qword [rsp + 0x68]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008c32c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc8c
call fcn.1800cff50
mov rdx, qword [rbp + 0x98]
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], 0xf
mov byte [rsp + 0x68], r15b
cmp rdx, 0x10
jb 0x18008c384
mov rcx, qword [rbp + 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008c37f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc8c
call fcn.1800cff50
mov rbx, qword [rbp - 8]
mov qword [rbp + 0x90], r15
mov qword [rbp + 0x98], 0xf
mov byte [rbp + 0x80], r15b
lea rdx, [rbx + 8]
cmp rdx, 0x10
jb 0x18008c3be
lea rcx, [rbp + 0x80]
call fcn.1800c9530
mov qword [rbp + 0x90], r15
mov r8d, 8
lea rdx, str._r_n______
lea rcx, [rbp + 0x80]
call fcn.1800c2860
cmp qword [rbp], 0x10
lea rdx, [rbp - 0x18]
mov r8, rbx
lea rcx, [rbp + 0x80]
cmovae rdx, qword [rbp - 0x18]
call fcn.1800c2860
mov r8d, 4
lea rdx, str.___r_n
lea rcx, [rbp + 0x80]
call fcn.1800c2860
movups xmm0, xmmword [rax]
movups xmmword [rbp + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x18], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
mov rdx, qword [rbp + 0x98]
cmp rdx, 0x10
jb 0x18008c46c
mov rcx, qword [rbp + 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008c467
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc92
call fcn.1800cff50
cmp qword [rbp - 0x20], 0x10
lea rax, [rbp - 0x38]
lea r12, [rbp + 0x28]
mov r13, 0xffffffffffffffff
cmovae rax, qword [rbp - 0x38]
mov r15, r13
cmp qword [rbp + 0x40], 0x10
mov qword [rbp - 0x48], rax
lea rax, [rbp + 8]
cmovae r12, qword [rbp + 0x28]
cmp qword [rbp + 0x20], 0x10
cmovae rax, qword [rbp + 8]
mov qword [rbp - 0x50], rax
nop dword [rax + rax]
inc r15
cmp byte [r12 + r15], 0
jne 0x18008c4b0
nop word [rax + rax]
inc r13
cmp byte [rax + r13], 0
jne 0x18008c4c0
xor ebx, ebx
xorps xmm0, xmm0
xorps xmm1, xmm1
mov qword [rbp + 0x6c], rbx
mov ecx, 0x10000
mov qword [rbp + 0x78], rbx
movdqu xmmword [rbp + 0x4c], xmm0
mov dword [rsp + 0x44], ebx
movdqu xmmword [rbp + 0x5c], xmm1
call fcn.1800d0314
xor edx, edx
mov qword [rbp - 0x58], rax
mov r8d, 0x10000
mov rcx, rax
call fcn.1800d33c0
cmp qword [rsi + 0x18], 0x10
mov rcx, rsi
jb 0x18008c513
mov rcx, qword [rsi]
xor r9d, r9d
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x8000080
mov edx, 0x80000000
mov dword [rsp + 0x20], 3
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rdx, rsi
lea rcx, [rsp + 0x68]
mov rdi, rax
call fcn.1800c2a30
mov rcx, rax
call fcn.18008ba20
xor r9d, r9d
mov dword [rsp + 0x40], eax
xor r8d, r8d
mov dword [rsp + 0x20], ebx
lea rcx, [0x18010e0e0]
lea edx, [r9 + 1]
call qword [sym.imp.WININET.dll_InternetOpenA]
mov r14, rax
mov rax, qword [rsp + 0x50]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x18008c586
mov rdx, qword [rax]
mov qword [rsp + 0x38], rbx
mov r8d, 0x50
mov dword [rsp + 0x30], ebx
xor r9d, r9d
mov dword [rsp + 0x28], 3
mov rcx, r14
mov qword [rsp + 0x20], rbx
call qword [sym.imp.WININET.dll_InternetConnectA]
mov rsi, rax
mov rax, qword [rsp + 0x48]
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x18008c5c3
mov r8, qword [rax]
mov qword [rsp + 0x38], rbx
lea rdx, str.POST
mov dword [rsp + 0x30], ebx
xor r9d, r9d
mov qword [rsp + 0x28], rbx
mov rcx, rsi
mov qword [rsp + 0x20], rbx
call qword [sym.imp.WININET.dll_HttpOpenRequestA]
mov rdx, qword [rbp - 0x48]
mov r9d, 0xa0000000
mov rcx, rax
mov r8d, 0xffffffff
mov rbx, rax
call qword [sym.imp.WININET.dll_HttpAddRequestHeadersA]
lea eax, [r15 + r13]
mov dword [rbp + 0x48], 0x38
add eax, dword [rsp + 0x40]
lea rdx, [rbp + 0x48]
mov r9d, 8
mov dword [rbp + 0x74], eax
xor r8d, r8d
mov qword [rsp + 0x20], 0
mov rcx, rbx
call qword [sym.imp.WININET.dll_HttpSendRequestExW]
test r15d, r15d
je 0x18008c662
nop dword [rax + rax]
lea r9, [rbp - 0x48]
mov r8d, r15d
mov rdx, r12
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetWriteFile]
test eax, eax
je 0x18008c662
mov ecx, dword [rbp - 0x48]
add r12, rcx
sub r15d, ecx
jne 0x18008c640
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x18008c6eb
nop
sub eax, dword [rsp + 0x44]
lea r9, [rbp - 0x40]
mov r12, qword [rbp - 0x58]
mov r8d, 8
cmp eax, r8d
mov rdx, r12
mov rcx, rdi
cmovb r8d, eax
xor r15d, r15d
mov qword [rsp + 0x20], r15
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x18008c9ec
mov r15d, dword [rbp - 0x40]
test r15d, r15d
je 0x18008c6d6
nop
lea r9, [rbp - 0x48]
mov r8d, r15d
mov rdx, r12
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetWriteFile]
test eax, eax
je 0x18008c6d2
mov ecx, dword [rbp - 0x48]
add r12, rcx
sub r15d, ecx
jne 0x18008c6b0
mov r15d, dword [rbp - 0x40]
mov eax, dword [rsp + 0x44]
add eax, r15d
cmp eax, dword [rsp + 0x40]
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x40]
jb 0x18008c670
test r13d, r13d
je 0x18008c722
mov r15, qword [rbp - 0x50]
nop dword [rax]
nop dword [rax + rax]
lea r9, [rbp - 0x48]
mov r8d, r13d
mov rdx, r15
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetWriteFile]
test eax, eax
je 0x18008c722
mov ecx, dword [rbp - 0x48]
add r15, rcx
sub r13d, ecx
jne 0x18008c700
xor r9d, r9d
xor edx, edx
mov rcx, rbx
lea r8d, [r9 + 8]
call qword [sym.imp.WININET.dll_HttpEndRequestA]
test rbx, rbx
je 0x18008c742
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetCloseHandle]
test rsi, rsi
je 0x18008c750
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
test r14, r14
je 0x18008c75e
mov rcx, r14
call qword [sym.imp.WININET.dll_InternetCloseHandle]
lea rax, [rdi - 1]
cmp rax, 0xfffffffffffffffd
ja 0x18008c771
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x18008c7ac
mov rcx, qword [rbp + 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008c7a7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc7a
call fcn.1800cff50
mov rdx, qword [rbp + 0x40]
xor r15d, r15d
mov qword [rbp + 0x18], r15
mov qword [rbp + 0x20], 0xf
mov byte [rbp + 8], r15b
cmp rdx, 0x10
jb 0x18008c7fa
mov rcx, qword [rbp + 0x28]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008c7f5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc7a
call fcn.1800cff50
mov rdx, qword [rbp - 0x20]
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], 0xf
mov byte [rbp + 0x28], r15b
cmp rdx, 0x10
jb 0x18008c845
mov rcx, qword [rbp - 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008c840
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc7a
call fcn.1800cff50
mov rdx, qword [rbp]
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], r15b
cmp rdx, 0x10
jb 0x18008c890
mov rcx, qword [rbp - 0x18]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008c88b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc7a
call fcn.1800cff50
mov r14, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x58]
mov rdx, qword [r14 + 0x18]
cmp rdx, 0x10
jb 0x18008c8de
mov rcx, qword [r14]
inc rdx
cmp rdx, 0x1000
jb 0x18008c8d9
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18008cc80
mov rcx, r8
call fcn.1800cff50
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x18], 0xf
mov byte [r14], 0
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x18008c928
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x18008c923
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18008cc80
mov rcx, r8
call fcn.1800cff50
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x18008c971
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x18008c96c
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18008cc80
mov rcx, r8
call fcn.1800cff50
mov qword [rsi + 0x10], r15
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x18008c9ba
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x18008c9b5
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18008cc80
mov rcx, r8
call fcn.1800cff50
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.1800cfc90
add rsp, 0x1b8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
test rbx, rbx
je 0x18008c9fa
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetCloseHandle]
test rsi, rsi
je 0x18008ca08
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
test r14, r14
je 0x18008ca16
mov rcx, r14
call qword [sym.imp.WININET.dll_InternetCloseHandle]
lea rax, [rdi - 1]
cmp rax, 0xfffffffffffffffd
ja 0x18008ca29
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x18008ca64
mov rcx, qword [rbp + 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008ca5f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc7a
call fcn.1800cff50
mov rdx, qword [rbp + 0x40]
mov qword [rbp + 0x18], r15
mov qword [rbp + 0x20], 0xf
mov byte [rbp + 8], r15b
cmp rdx, 0x10
jb 0x18008caaf
mov rcx, qword [rbp + 0x28]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008caaa
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc7a
call fcn.1800cff50
mov rdx, qword [rbp - 0x20]
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], 0xf
mov byte [rbp + 0x28], r15b
cmp rdx, 0x10
jb 0x18008cafa
mov rcx, qword [rbp - 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008caf5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc7a
call fcn.1800cff50
mov rdx, qword [rbp]
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], r15b
cmp rdx, 0x10
jb 0x18008cb45
mov rcx, qword [rbp - 0x18]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008cb40
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008cc7a
call fcn.1800cff50
mov rbx, qword [rsp + 0x50]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x18008cb84
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x18008cb7f
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18008cc7a
mov rcx, r8
call fcn.1800cff50
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], r15b
mov rbx, qword [rsp + 0x48]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x18008cbd2
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x18008cbcd
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18008cc7a
mov rcx, r8
call fcn.1800cff50
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], r15b
mov rbx, qword [rsp + 0x60]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x18008cc1c
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x18008cc17
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18008cc7a
mov rcx, r8
call fcn.1800cff50
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], r15b
mov rbx, qword [rsp + 0x58]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x18008cc66
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x18008cc61
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18008cc7a
mov rcx, r8
call fcn.1800cff50
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], r15b
jmp 0x18008c9c9
call fcn.1800df1b0
int3
call fcn.1800df1b0
int3
call fcn.1800df1b0
int3
call fcn.1800df1b0
int3
call fcn.1800df1b0
int3