Function at 0x1800c9cf0
Capabilities:
Contain obfuscated stackstrings
Delete file
Write file on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x530]
sub rsp, 0x630
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov qword [rsp + 0x670], rbx
mov rax, qword [0x1801b8080]
xor rax, rsp
mov qword [rbp + 0x520], rax
mov qword [rsp + 0x70], r9
mov rbx, r8
mov qword [rsp + 0x60], rbx
mov rdi, rdx
mov qword [rsp + 0x68], rdx
cmp qword [rdx + 0x10], 0
je 0x1800cb43c
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
cmp rax, rdx
je 0x1800cb43c
xor r15d, r15d
mov ecx, r15d
sub rdx, rax
sar rdx, 7
test rdx, rdx
je 0x1800cb43c
add rax, 0x7c
cmp byte [rax], r15b
jne 0x1800c9d8d
inc rcx
sub rax, 0xffffffffffffff80
cmp rcx, rdx
jb 0x1800c9d77
jmp 0x1800cb43c
mov r8, rdi
lea rdx, [rbp + 0x3e0]
call fcn.1800cc0b0
nop
xor eax, eax
mov qword [rbp + 0x388], rax
mov qword [rbp + 0x390], rax
mov qword [rbp + 0x388], r15
mov word [rbp + 0x390], ax
lea rdx, [rbp + 0x3e0]
lea rcx, [rbp + 0x388]
call fcn.1800aa420
xor eax, eax
mov qword [rbp + 0x3d0], rax
mov qword [rbp + 0x3d8], rax
lea rax, [rbp + 0x388]
mov qword [rbp + 0x3d0], rax
mov byte [rbp + 0x3d8], 0
mov rcx, qword [rbp + 0x388]
test rcx, rcx
jne 0x1800c9e04
xor sil, sil
jmp 0x1800c9e25
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, 0xffffff7f
je 0x1800c9e1b
xor sil, sil
jmp 0x1800c9e25
mov byte [rbp + 0x390], 1
mov sil, 1
mov byte [rsp + 0x40], sil
mov byte [rbp + 0x3d8], sil
xor eax, eax
mov qword [rbp + 0x370], rax
mov qword [rbp + 0x378], rax
mov qword [rbp + 0x380], rax
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
mov byte [rsp + 0x41], al
lea r9, [rsp + 0x41]
lea r8, [rbp + 0x370]
mov rdx, rdi
call fcn.1800cb680
test al, al
jne 0x1800c9e8f
cmp byte [rsp + 0x41], al
je 0x1800c9e8f
mov rcx, rdi
cmp qword [rdi + 0x18], 8
jb 0x1800c9e89
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
xor r14b, r14b
mov byte [rsp + 0x41], r14b
mov rdx, r15
mov qword [rsp + 0x50], rdx
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
sub rax, rcx
sar rax, 7
test rax, rax
je 0x1800cb332
mov rax, r15
mov qword [rsp + 0x48], rax
nop
lea rdi, [rcx + rax]
cmp byte [rdi + 0x7c], 0
je 0x1800ca2e0
mov rsi, r15
mov r14d, r15d
mov rax, qword [rbp + 0x378]
mov rcx, qword [rbp + 0x370]
sub rax, rcx
sar rax, 7
test rax, rax
je 0x1800c9f40
mov rbx, r15
shl rbx, 7
add rbx, rcx
mov rdx, rdi
cmp qword [rdi + 0x18], 8
jb 0x1800c9f05
mov rdx, qword [rdi]
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x1800c9f12
mov rcx, qword [rbx]
call fcn.18010eb30
test eax, eax
je 0x1800c9f3d
inc r14d
mov ebx, r14d
mov rax, qword [rbp + 0x378]
mov rcx, qword [rbp + 0x370]
sub rax, rcx
sar rax, 7
cmp rbx, rax
jb 0x1800c9ef1
jmp 0x1800c9f40
mov rsi, rbx
test rsi, rsi
jne 0x1800ca0cf
mov qword [rbp + 0x430], r15
mov qword [rbp + 0x438], r15
mov qword [rbp + 0x430], r15
mov qword [rbp + 0x438], 7
mov word [rbp + 0x420], r15w
mov qword [rbp + 0x450], r15
mov qword [rbp + 0x458], r15
mov qword [rbp + 0x450], r15
mov qword [rbp + 0x458], 7
mov word [rbp + 0x440], r15w
mov qword [rbp + 0x470], r15
mov qword [rbp + 0x478], r15
mov qword [rbp + 0x470], r15
mov qword [rbp + 0x478], 7
mov word [rbp + 0x460], r15w
mov qword [rbp + 0x480], r15
mov qword [rbp + 0x488], r15
mov qword [rbp + 0x490], r15
mov dword [rbp + 0x498], r15d
mov byte [rbp + 0x49c], sil
mov rbx, qword [rbp + 0x378]
cmp qword [rbp + 0x380], rbx
je 0x1800ca077
mov qword [rsp + 0x58], rbx
lea rdx, [rbp + 0x420]
mov rcx, rbx
call fcn.18000cb60
nop
lea rcx, [rbx + 0x20]
lea rdx, [rbp + 0x440]
call fcn.18000cb60
nop
lea rcx, [rbx + 0x40]
lea rdx, [rbp + 0x460]
call fcn.18000cb60
nop
mov rax, qword [rbp + 0x480]
mov qword [rbx + 0x60], rax
mov rax, qword [rbp + 0x488]
mov qword [rbx + 0x68], rax
mov rax, qword [rbp + 0x490]
mov qword [rbx + 0x70], rax
mov eax, dword [rbp + 0x498]
mov dword [rbx + 0x78], eax
movzx eax, byte [rbp + 0x49c]
mov byte [rbx + 0x7c], al
mov rcx, qword [rbp + 0x378]
sub rcx, 0xffffffffffffff80
mov qword [rbp + 0x378], rcx
jmp 0x1800ca094
lea r8, [rbp + 0x420]
mov rdx, rbx
lea rcx, [rbp + 0x370]
call fcn.1800ccde0
mov rcx, qword [rbp + 0x378]
mov rax, qword [rbp + 0x370]
sub rcx, rax
and rcx, 0xffffffffffffff80
lea rsi, [rax - 0x80]
add rsi, rcx
lea rcx, [rbp + 0x460]
call fcn.180004910
nop
lea rcx, [rbp + 0x440]
call fcn.180004910
nop
lea rcx, [rbp + 0x420]
call fcn.180004910
mov rdx, rsi
lea rcx, [rbp + 0x4a0]
call fcn.18000cb60
nop
lea r14, [rsi + 0x20]
mov rdx, r14
lea rcx, [rbp + 0x4c0]
call fcn.18000cb60
nop
lea rbx, [rsi + 0x40]
mov rdx, rbx
lea rcx, [rbp + 0x4e0]
call fcn.18000cb60
nop
mov r12, qword [rsi + 0x60]
mov qword [rbp + 0x500], r12
mov r13, qword [rsi + 0x68]
mov qword [rbp + 0x508], r13
mov rax, qword [rsi + 0x70]
mov qword [rsp + 0x58], rax
mov qword [rbp + 0x510], rax
mov eax, dword [rsi + 0x78]
mov dword [rsp + 0x44], eax
mov dword [rbp + 0x518], eax
movzx eax, byte [rsi + 0x7c]
mov byte [rbp + 0x51c], al
cmp rsi, rdi
je 0x1800ca162
mov rdx, rdi
cmp qword [rdi + 0x18], 8
jb 0x1800ca156
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, rsi
call fcn.1800049a0
lea r8, [rdi + 0x20]
cmp r14, r8
je 0x1800ca184
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x1800ca178
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
mov rcx, r14
call fcn.1800049a0
lea r8, [rdi + 0x40]
cmp rbx, r8
je 0x1800ca1a6
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x1800ca19a
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
mov rcx, rbx
call fcn.1800049a0
mov r10, qword [rdi + 0x60]
mov qword [rsi + 0x60], r10
mov r11, qword [rdi + 0x68]
mov qword [rsi + 0x68], r11
mov r15, qword [rdi + 0x70]
mov qword [rsi + 0x70], r15
mov eax, dword [rdi + 0x78]
mov dword [rsi + 0x78], eax
movzx eax, byte [rdi + 0x7c]
mov byte [rsi + 0x7c], al
lea r8, [rbp + 0x4a0]
cmp qword [rbp + 0x4b8], 8
cmovae r8, qword [rbp + 0x4a0]
mov rcx, rsi
cmp qword [rsi + 0x18], 8
jb 0x1800ca1ef
mov rcx, qword [rsi]
mov r9, qword [rbp + 0x4b0]
mov rdx, qword [rsi + 0x10]
call fcn.18001ce30
test al, al
je 0x1800ca291
lea r8, [rbp + 0x4c0]
cmp qword [rbp + 0x4d8], 8
cmovae r8, qword [rbp + 0x4c0]
mov rcx, r14
cmp qword [r14 + 0x18], 8
jb 0x1800ca22b
mov rcx, qword [r14]
mov r9, qword [rbp + 0x4d0]
mov rdx, qword [r14 + 0x10]
call fcn.18001ce30
test al, al
je 0x1800ca291
cmp r10, r12
jne 0x1800ca291
cmp r11, r13
jne 0x1800ca291
cmp r15, qword [rsp + 0x58]
jne 0x1800ca291
lea r8, [rbp + 0x4e0]
cmp qword [rbp + 0x4f8], 8
cmovae r8, qword [rbp + 0x4e0]
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x1800ca274
mov rcx, qword [rbx]
mov r9, qword [rbp + 0x4f0]
mov rdx, qword [rbx + 0x10]
call fcn.18001ce30
test al, al
je 0x1800ca291
mov eax, dword [rsp + 0x44]
cmp dword [rsi + 0x78], eax
je 0x1800ca29f
mov r14b, 1
mov byte [rsp + 0x41], r14b
mov byte [rsi + 0x7c], r14b
jmp 0x1800ca2a5
movzx r14d, byte [rsp + 0x41]
lea rcx, [rbp + 0x4e0]
call fcn.180004910
nop
lea rcx, [rbp + 0x4c0]
call fcn.180004910
nop
lea rcx, [rbp + 0x4a0]
call fcn.180004910
mov rbx, qword [rsp + 0x60]
mov rcx, qword [rbx]
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
xor r15d, r15d
inc rdx
mov qword [rsp + 0x50], rdx
sub rax, 0xffffffffffffff80
mov qword [rsp + 0x48], rax
mov rax, qword [rbx + 8]
sub rax, rcx
sar rax, 7
cmp rdx, rax
mov rax, qword [rsp + 0x48]
jb 0x1800c9ec0
test r14b, r14b
je 0x1800cb32d
mov rax, qword [rbp + 0x378]
cmp qword [rbp + 0x370], rax
je 0x1800cb32d
xor eax, eax
mov qword [rbp + 0x398], rax
mov qword [rbp + 0x3a0], rax
mov qword [rbp + 0x3a8], rax
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x398], xmm0
mov qword [rbp + 0x3a8], r15
mov r9, qword [rbp + 0x378]
mov r10, r9
mov r8, qword [rbp + 0x370]
sub r10, r8
sar r10, 7
mov rcx, qword [rbp + 0x3a8]
sub rcx, qword [rbp + 0x398]
movabs rdi, 0x20c49ba5e353f7cf
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r10, rdx
jbe 0x1800ca3c9
movabs rax, 0x4189374bc6a7ef
cmp r10, rax
ja 0x1800cb480
mov rdx, r10
lea rcx, [rbp + 0x398]
call fcn.1800cc660
mov r9, qword [rbp + 0x378]
mov r8, qword [rbp + 0x370]
mov r13, r15
mov rax, r9
sub rax, r8
sar rax, 7
test rax, rax
je 0x1800ca732
mov r12, r15
lea rbx, [r12 + r8]
mov eax, dword [rbx + 0x78]
dec eax
cmp eax, 2
ja 0x1800ca718
mov dword [rbp - 0x80], r15d
mov qword [rbp + 0x34c], r15
mov qword [rbp + 0x354], r15
mov qword [rbp + 0x35c], r15
mov dword [rbp + 0x364], r15d
xor edx, edx
mov r8d, 0x280
lea rcx, [rbp - 0x7c]
call fcn.18010bfb0
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x204]
call fcn.18010bfb0
xor eax, eax
mov qword [rbp + 0x304], rax
mov qword [rbp + 0x30c], rax
mov qword [rbp + 0x314], rax
mov qword [rbp + 0x31c], rax
mov qword [rbp + 0x324], rax
mov qword [rbp + 0x32c], rax
mov qword [rbp + 0x334], rax
mov qword [rbp + 0x33c], rax
mov qword [rbp + 0x344], rax
mov rdx, qword [rbp + 0x3a0]
cmp qword [rbp + 0x3a8], rdx
je 0x1800ca53f
lea rax, [rbp - 0x80]
mov ecx, 7
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rdx + 0x60], xmm0
lea rdx, [rdx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rdx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rcx, 1
jne 0x1800ca4a0
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x50], xmm1
mov rax, qword [rax + 0x60]
mov qword [rdx + 0x60], rax
mov rdx, qword [rbp + 0x3a0]
add rdx, 0x3e8
mov qword [rbp + 0x3a0], rdx
jmp 0x1800ca556
lea r8, [rbp - 0x80]
lea rcx, [rbp + 0x398]
call fcn.1800ccba0
mov rdx, qword [rbp + 0x3a0]
mov rcx, qword [rbp + 0x398]
sub rdx, rcx
mov rax, rdi
imul rdx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rax, rdx, 0x3e8
lea rdi, [rcx - 0x3e8]
add rdi, rax
mov dword [rdi], 0x23ab45db
xor edx, edx
mov r8d, 0x280
lea rcx, [rdi + 4]
call fcn.18010bfb0
xor edx, edx
mov r8d, 0x100
lea rcx, [rdi + 0x284]
call fcn.18010bfb0
lea r15, [rdi + 0x384]
xor eax, eax
mov qword [r15], rax
mov qword [r15 + 8], rax
mov qword [r15 + 0x10], rax
mov qword [r15 + 0x18], rax
mov qword [r15 + 0x20], rax
mov qword [r15 + 0x28], rax
mov qword [r15 + 0x30], rax
mov qword [r15 + 0x38], rax
mov qword [r15 + 0x40], rax
cmp qword [rbx + 0x10], 0x13f
ja 0x1800ca613
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x1800ca5f3
mov rcx, qword [rbx]
mov rdx, rdi
sub rdx, rcx
nop dword [rax]
movzx eax, word [rcx]
mov word [rdx + rcx + 4], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x1800ca600
jmp 0x1800ca62f
mov rdx, rbx
cmp qword [rbx + 0x18], 8
jb 0x1800ca620
mov rdx, qword [rbx]
mov r8d, 0x13e
lea rcx, [rdi + 4]
call fcn.18010eca8
cmp qword [rbx + 0x30], 0x7f
ja 0x1800ca666
lea rcx, [rbx + 0x20]
cmp qword [rcx + 0x18], 8
jb 0x1800ca644
mov rcx, qword [rcx]
mov rdx, rdi
sub rdx, rcx
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx + 0x284], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x1800ca650
jmp 0x1800ca686
lea rdx, [rbx + 0x20]
cmp qword [rdx + 0x18], 8
jb 0x1800ca674
mov rdx, qword [rdx]
mov r8d, 0x7e
lea rcx, [rdi + 0x284]
call fcn.18010eca8
cmp qword [rbx + 0x50], 0x23
ja 0x1800ca6b7
lea rcx, [rbx + 0x40]
cmp qword [rcx + 0x18], 8
jb 0x1800ca69b
mov rcx, qword [rcx]
mov rdx, rdi
sub rdx, rcx
movzx eax, word [rcx]
mov word [rdx + rcx + 0x384], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x1800ca6a1
jmp 0x1800ca6d3
lea rdx, [rbx + 0x40]
cmp qword [rdx + 0x18], 8
jb 0x1800ca6c5
mov rdx, qword [rdx]
mov r8d, 0x23
mov rcx, r15
call fcn.18010eca8
mov rax, qword [rbx + 0x60]
mov qword [rdi + 0x3cc], rax
mov rax, qword [rbx + 0x68]
mov qword [rdi + 0x3d4], rax
mov rax, qword [rbx + 0x70]
mov qword [rdi + 0x3dc], rax
mov eax, dword [rbx + 0x78]
mov dword [rdi + 0x3e4], eax
mov r9, qword [rbp + 0x378]
mov r8, qword [rbp + 0x370]
xor r15d, r15d
movabs rdi, 0x20c49ba5e353f7cf
inc r13
sub r12, 0xffffffffffffff80
mov rax, r9
sub rax, r8
sar rax, 7
cmp r13, rax
jb 0x1800ca3e2
mov rcx, qword [rbp + 0x3a0]
cmp qword [rbp + 0x398], rcx
jne 0x1800ca8b6
mov r8, qword [rbp + 0x398]
test r8, r8
je 0x1800ca7b6
mov rcx, qword [rbp + 0x3a8]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x1800ca79c
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb486
mov rcx, r8
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x398], xmm0
mov qword [rbp + 0x3a8], r15
mov rcx, qword [rbp + 0x370]
test rcx, rcx
je 0x1800ca81f
mov rdx, qword [rbp + 0x378]
call fcn.1800ccfc0
mov rdx, qword [rbp + 0x380]
mov rcx, qword [rbp + 0x370]
sub rdx, rcx
and rdx, 0xffffffffffffff80
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ca808
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb48c
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
cmp byte [rsp + 0x40], 0
je 0x1800ca83f
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800ca838
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp + 0x390], 0
mov qword [rbp + 0x3d0], r15
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800ca85f
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x388], r15
mov word [rbp + 0x390], 0
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 8
jb 0x1800cb424
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800cb41f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb46e
jmp 0x1800cb41f
xor eax, eax
mov qword [rbp + 0x3b0], rax
mov qword [rbp + 0x3b8], rax
mov qword [rbp + 0x3c0], rax
mov r8, r15
mov qword [rbp + 0x3b0], r15
mov qword [rbp + 0x3b8], r15
mov r9, r15
mov qword [rbp + 0x3c0], r15
mov dword [rbp + 0x400], 0x2d2d4352
mov dword [rbp + 0x404], 0x35343332
mov dword [rbp + 0x408], 0x61534350
mov dword [rbp + 0x40c], 0x2d302e32
mov dword [rbp + 0x410], 0x2d736843
mov dword [rbp + 0x414], 0x61435243
mov dword [rbp + 0x418], 0x38313031
mov dword [rbp + 0x41c], 0x35313032
movdqa xmm2, xmmword [0x18016e160]
mov eax, r15d
mov ecx, 1
movd xmm3, ecx
lea rcx, [rbp + 0x400]
movd xmm1, eax
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
movdqu xmm0, xmmword [rcx]
pslld xmm0, xmm3
paddd xmm1, xmm0
movdqu xmmword [rcx], xmm1
add eax, 4
lea rcx, [rcx + 0x10]
cmp eax, 8
jl 0x1800ca953
mov rcx, qword [rbp + 0x3a0]
mov r10, qword [rbp + 0x398]
sub rcx, r10
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
test r10, r10
je 0x1800cb173
imul r8d, edx, 0x3e8
lea r9, [rbp + 0x3b0]
mov rdx, r10
lea rcx, [rbp + 0x400]
call fcn.18005d820
test al, al
je 0x1800cb165
mov rbx, qword [rbp + 0x3b0]
mov rsi, qword [rbp + 0x3b8]
cmp rbx, rsi
jne 0x1800caba4
test rbx, rbx
je 0x1800caa34
mov rdx, qword [rbp + 0x3c0]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800caa1a
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb492
mov rcx, rbx
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x3b0], xmm0
mov qword [rbp + 0x3c0], r15
mov r8, qword [rbp + 0x398]
test r8, r8
je 0x1800caaa4
mov rcx, qword [rbp + 0x3a8]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x1800caa8a
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb498
mov rcx, r8
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x398], xmm0
mov qword [rbp + 0x3a8], r15
mov rcx, qword [rbp + 0x370]
test rcx, rcx
je 0x1800cab0d
mov rdx, qword [rbp + 0x378]
call fcn.1800ccfc0
mov rdx, qword [rbp + 0x380]
mov rcx, qword [rbp + 0x370]
sub rdx, rcx
and rdx, 0xffffffffffffff80
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800caaf6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb49e
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
cmp byte [rsp + 0x40], 0
je 0x1800cab2d
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800cab26
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp + 0x390], 0
mov qword [rbp + 0x3d0], r15
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800cab4d
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x388], r15
mov word [rbp + 0x390], 0
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 8
jb 0x1800cb424
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800cb41f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb474
jmp 0x1800cb41f
mov r14, qword [rsp + 0x68]
mov rcx, r14
cmp qword [r14 + 0x18], 8
jb 0x1800cabb6
mov rcx, qword [r14]
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
xor r8d, r8d
mov edx, 0x40000000
call fcn.18009f630
mov rdi, rax
lea rcx, [rax + 1]
test rcx, 0xfffffffffffffffe
jne 0x1800cacad
lea rdx, [0x18016a6a8]
mov rcx, r14
call fcn.18009ec90
cmp rax, 0xffffffffffffffff
je 0x1800cacad
mov r9, rax
xor r8d, r8d
lea rdx, [rbp + 0x400]
mov rcx, r14
call fcn.180012970
nop
lea rcx, [rbp + 0x400]
call fcn.18009e2c0
cmp qword [r14 + 0x18], 8
jb 0x1800cac2c
mov r14, qword [r14]
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
xor r8d, r8d
mov edx, 0x40000000
mov rcx, r14
call fcn.18009f630
mov rdi, rax
mov rdx, qword [rbp + 0x418]
cmp rdx, 8
jb 0x1800cac95
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x400]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800cac90
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4a4
call fcn.1800ece80
movdqa xmm0, xmmword [0x18016e140]
movdqu xmmword [rbp + 0x410], xmm0
mov word [rbp + 0x400], r15w
lea rax, [rdi - 1]
cmp rax, 0xfffffffffffffffd
ja 0x1800cb00b
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [rbp + 0x3c8], r15d
mov r8d, esi
sub r8d, ebx
mov qword [rsp + 0x20], r15
lea r9, [rbp + 0x3c8]
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
sub rsi, rbx
mov eax, dword [rbp + 0x3c8]
cmp rax, rsi
jne 0x1800caeed
lea rax, [rbp + 0x370]
mov r9, qword [rsp + 0x70]
cmp r9, rax
je 0x1800cad66
mov rcx, qword [r9]
mov rax, qword [rbp + 0x370]
mov qword [r9], rax
mov qword [rbp + 0x370], rcx
mov rcx, qword [r9 + 8]
mov rax, qword [rbp + 0x378]
mov qword [r9 + 8], rax
mov qword [rbp + 0x378], rcx
mov rcx, qword [r9 + 0x10]
mov rax, qword [rbp + 0x380]
mov qword [r9 + 0x10], rax
mov qword [rbp + 0x380], rcx
mov r8, r15
mov rcx, qword [r9]
mov rax, qword [r9 + 8]
sub rax, rcx
sar rax, 7
test rax, rax
je 0x1800cada2
mov rdx, r15
nop
mov byte [rdx + rcx + 0x7c], 0
inc r8
lea rdx, [rdx + 0x80]
mov rcx, qword [r9]
mov rax, qword [r9 + 8]
sub rax, rcx
sar rax, 7
cmp r8, rax
jb 0x1800cad80
test rbx, rbx
je 0x1800cadf0
mov rdx, qword [rbp + 0x3c0]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800cadd6
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4aa
mov rcx, rbx
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x3b0], xmm0
mov qword [rbp + 0x3c0], r15
mov r8, qword [rbp + 0x398]
test r8, r8
je 0x1800cae67
mov rcx, qword [rbp + 0x3a8]
sub rcx, r8
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x1800cae4d
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4b0
mov rcx, r8
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x398], xmm0
mov qword [rbp + 0x3a8], r15
mov rcx, qword [rbp + 0x370]
test rcx, rcx
je 0x1800caeab
mov rdx, qword [rbp + 0x378]
call fcn.1800ccfc0
mov r8, qword [rbp + 0x380]
mov rdx, qword [rbp + 0x370]
sub r8, rdx
sar r8, 7
call fcn.1800b4d90
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
lea rcx, [rbp + 0x3d0]
call fcn.1800a1ab0
nop
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800caed1
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x388], r15
mov word [rbp + 0x390], 0
lea rcx, [rbp + 0x3e0]
call fcn.180004910
mov al, 1
jmp 0x1800cb43e
test rbx, rbx
je 0x1800caf3b
mov rdx, qword [rbp + 0x3c0]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800caf21
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4b6
mov rcx, rbx
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x3b0], xmm0
mov qword [rbp + 0x3c0], r15
mov r9, qword [rbp + 0x398]
test r9, r9
je 0x1800caf87
mov rcx, qword [rbp + 0x3a8]
sub rcx, r9
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
lea r8, [rax + rdx]
mov rdx, r9
call fcn.1800cc950
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x398], xmm0
mov qword [rbp + 0x3a8], r15
mov rcx, qword [rbp + 0x370]
test rcx, rcx
je 0x1800cafcb
mov rdx, qword [rbp + 0x378]
call fcn.1800ccfc0
mov r8, qword [rbp + 0x380]
mov rdx, qword [rbp + 0x370]
sub r8, rdx
sar r8, 7
call fcn.1800b4d90
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
lea rcx, [rbp + 0x3d0]
call fcn.1800a1ab0
nop
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800caff1
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x388], r15
mov word [rbp + 0x390], 0
lea rcx, [rbp + 0x3e0]
call fcn.180004910
jmp 0x1800cb43c
test rbx, rbx
je 0x1800cb059
mov rdx, qword [rbp + 0x3c0]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x1800cb03f
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4bc
mov rcx, rbx
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x3b0], xmm0
mov qword [rbp + 0x3c0], r15
mov r8, qword [rbp + 0x398]
test r8, r8
je 0x1800cb0d0
mov rcx, qword [rbp + 0x3a8]
sub rcx, r8
movabs rax, 0x20c49ba5e353f7cf
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x1800cb0b6
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4c2
mov rcx, r8
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x398], xmm0
mov qword [rbp + 0x3a8], r15
mov rcx, qword [rbp + 0x370]
test rcx, rcx
je 0x1800cb139
mov rdx, qword [rbp + 0x378]
call fcn.1800ccfc0
mov rdx, qword [rbp + 0x380]
mov rcx, qword [rbp + 0x370]
sub rdx, rcx
and rdx, 0xffffffffffffff80
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800cb122
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4c8
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
cmp byte [rsp + 0x40], 0
je 0x1800cb159
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800cb152
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp + 0x390], 0
mov qword [rbp + 0x3d0], r15
jmp 0x1800cafd8
mov r9, qword [rbp + 0x3c0]
mov r8, qword [rbp + 0x3b0]
test r8, r8
je 0x1800cb1bd
sub r9, r8
mov rax, r8
cmp r9, 0x1000
jb 0x1800cb1a0
add r9, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4ce
mov rdx, r9
mov rcx, r8
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x3b0], xmm0
mov qword [rbp + 0x3c0], r15
mov r8, qword [rbp + 0x398]
test r8, r8
je 0x1800cb22d
mov rcx, qword [rbp + 0x3a8]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x3e8
mov rax, r8
cmp rdx, 0x1000
jb 0x1800cb213
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4d4
mov rcx, r8
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x398], xmm0
mov qword [rbp + 0x3a8], r15
mov rcx, qword [rbp + 0x370]
test rcx, rcx
je 0x1800cb296
mov rdx, qword [rbp + 0x378]
call fcn.1800ccfc0
mov rdx, qword [rbp + 0x380]
mov rcx, qword [rbp + 0x370]
sub rdx, rcx
and rdx, 0xffffffffffffff80
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800cb27f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4da
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
cmp byte [rsp + 0x40], 0
je 0x1800cb2b6
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800cb2af
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp + 0x390], 0
mov qword [rbp + 0x3d0], r15
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800cb2d6
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x388], r15
mov word [rbp + 0x390], 0
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 8
jb 0x1800cb424
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800cb41f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb47a
jmp 0x1800cb41f
movzx esi, byte [rsp + 0x40]
mov rcx, qword [rbp + 0x370]
test rcx, rcx
je 0x1800cb39b
mov rdx, qword [rbp + 0x378]
call fcn.1800ccfc0
mov rdx, qword [rbp + 0x380]
mov rcx, qword [rbp + 0x370]
sub rdx, rcx
and rdx, 0xffffffffffffff80
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800cb384
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb4e0
call fcn.1800ece80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
test sil, sil
je 0x1800cb3b9
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800cb3b2
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp + 0x390], 0
mov qword [rbp + 0x3d0], r15
mov rcx, qword [rbp + 0x388]
test rcx, rcx
je 0x1800cb3d9
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x388], r15
mov word [rbp + 0x390], 0
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 8
jb 0x1800cb424
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800cb41f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800cb468
call fcn.1800ece80
movdqa xmm0, xmmword [0x18016e140]
mov word [rbp + 0x3e0], r15w
movdqu xmmword [rbp + 0x3f0], xmm0
xor al, al
mov rcx, qword [rbp + 0x520]
xor rcx, rsp
call fcn.1800ece20
mov rbx, qword [rsp + 0x670]
add rsp, 0x630
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.18010e944
int3
call fcn.18010e944
int3
call fcn.18010e944
int3
call fcn.18010e944
nop
call fcn.18001b490
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
int3
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
nop
call fcn.18010e944
int3
call fcn.18010e944
int3