Function at 0x1800ea9d0
Capabilities:
Check if file exists
Create a process with modified i/o handles and window
Create process on windows
Get file attributes

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
mov byte [rsp + 0x208], r9b
mov r14, r8
mov rbx, rdx
mov rdi, rcx
add rdx, 0x88
lea rcx, [rsp + 0x228]
call fcn.1800ef090
mov rax, qword [rsp + 0x228]
test rax, rax
mov qword [rsp + 0x60], rax
je 0x1800eab66
movzx eax, byte [0x180173750]
mov ecx, 4
mov edx, 1
call fcn.180094f80
test rax, rax
je 0x1800ecbcb
mov rsi, rax
mov dword [rax], 0x48544150
add rax, 4
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0xc8], rax
mov word [rsp + 0xd0], 0
lea rcx, [rsp + 0x160]
lea rdx, [rsp + 0xc0]
call fcn.1800ee600
mov r12, qword [rsp + 0x230]
test r12, r12
je 0x1800eaba7
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x80], rdi
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x58], rax
mov r15, qword [rsp + 0x168]
mov ebp, dword [rsp + 0x170]
xor eax, eax
mov qword [rsp + 0xb8], rax
mov rdi, qword [sym.imp.kernel32.dll_CompareStringOrdinal]
lea rcx, [r12 + 0x168]
movzx eax, word [r12 + 0x3d2]
lea r13, [r12 - 0x10]
mov qword [rsp + 0x68], rax
imul r14, rax, 0x38
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
test r14, r14
je 0x1800eab40
lea rsi, [rcx + 0x38]
mov r8, qword [rcx + 0x28]
mov r9d, dword [rcx + 0x30]
mov dword [rsp + 0x20], 1
mov rcx, r15
mov edx, ebp
call rdi
add r13, 0x20
inc rbx
add r14, 0xffffffffffffffc8
mov rcx, rsi
cmp eax, 3
je 0x1800eab00
cmp eax, 1
jne 0x1800eab72
jmp 0x1800eab45
mov rbx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x58]
sub rax, 1
jb 0x1800eb148
mov qword [rsp + 0x58], rax
mov r12, qword [r12 + rbx*8 + 0x3d8]
jmp 0x1800eaad1
xor eax, eax
mov qword [rsp + 0xb8], rax
jmp 0x1800eabe7
cmp eax, 2
mov r14, qword [rsp + 0x70]
jne 0x1800ecbc4
mov rax, qword [r13 - 8]
mov qword [rsp + 0xb8], rax
mov rbp, qword [r13]
mov rdi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x78]
jmp 0x1800eabb1
xor eax, eax
mov qword [rsp + 0xb8], rax
mov edx, 4
mov r8d, 1
mov rcx, rsi
call fcn.180094f90
mov rdx, qword [rsp + 0x160]
test rdx, rdx
je 0x1800eabe7
mov rcx, qword [rsp + 0x168]
add rdx, rdx
mov r8d, 2
call fcn.180094f90
mov r12, qword [rbx + 8]
mov r15, qword [rbx + 0x10]
mov qword [rsp + 0x248], r12
mov qword [rsp + 0x250], r15
lea r13, [0x18012b500]
test r15, r15
je 0x1800eb24a
cmp r15, 4
jae 0x1800eac2d
lea rax, [0x1800f05a0]
movzx ecx, byte [r15 + r12 - 1]
call rax
test al, al
je 0x1800eac59
jmp 0x1800eb24a
mov eax, dword [0x18012bfe8]
cmp eax, dword [r12]
lea rcx, [0x1800f05b0]
lea rax, [0x1800f05a0]
cmove rax, rcx
movzx ecx, byte [r15 + r12 - 1]
call rax
test al, al
jne 0x1800eb24a
movabs rsi, 0x8000000000000000
cmp r15, 3
jbe 0x1800ead5d
movzx eax, byte [r15 + r12 - 4]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x2e
jne 0x1800ead7d
movzx eax, byte [r12 + r15 - 3]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
mov al, 1
cmp cl, 0x65
jne 0x1800eacd8
movzx ecx, byte [r12 + r15 - 2]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x78
jne 0x1800eacd8
movzx eax, byte [r12 + r15 - 1]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
setne al
xor ecx, ecx
nop word [rax + rax]
cmp r15, rcx
je 0x1800eaeef
movzx edx, byte [r12 + rcx]
cmp edx, 0x2f
je 0x1800eacfb
inc rcx
cmp edx, 0x5c
jne 0x1800eace0
test al, al
jne 0x1800ead9b
lea rcx, [rsp + 0xc0]
mov rdx, r12
mov r8, r15
call fcn.1800df650
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xc8]
cmp rcx, rsi
jne 0x1800eb326
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x128], rsi
mov r15, qword [rsp + 0x128]
mov r13, qword [rsp + 0x130]
cmp r15, rsi
je 0x1800eb24a
jmp 0x1800eb795
xor eax, eax
nop
cmp r15, rax
je 0x1800eaeef
movzx ecx, byte [r12 + rax]
cmp ecx, 0x2f
je 0x1800ead9b
inc rax
cmp ecx, 0x5c
jne 0x1800ead60
jmp 0x1800ead9b
xor eax, eax
nop
cmp r15, rax
je 0x1800eaeef
movzx ecx, byte [r12 + rax]
cmp ecx, 0x2f
je 0x1800ead9b
inc rax
cmp ecx, 0x5c
jne 0x1800ead80
test r15, r15
js 0x1800ecbda
mov rbp, rbx
mov rbx, r14
movzx eax, byte [0x180173750]
mov r14d, 1
mov edx, 1
mov rcx, r15
call fcn.180094f80
test rax, rax
je 0x1800ecbdd
mov r13, rax
mov rcx, rax
mov rdx, r12
mov r8, r15
call fcn.180116940
mov qword [rsp + 0xc0], r15
mov qword [rsp + 0xc8], r13
mov qword [rsp + 0xd0], r15
mov byte [rsp + 0xd8], 0
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rax
movzx eax, byte [rsp + 0xd8]
mov byte [rsp + 0x158], al
mov eax, dword [rsp + 0xd9]
mov dword [rsp + 0x159], eax
movzx eax, word [rsp + 0xdd]
mov word [rsp + 0x15d], ax
movzx eax, byte [rsp + 0xdf]
mov byte [rsp + 0x15f], al
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x148], rax
lea rdx, str..exeprogram_not_found
lea rcx, [rsp + 0x140]
mov r8d, 4
call fcn.1800e99f0
movaps xmm0, xmmword [rsp + 0x140]
movaps xmm1, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0xd0], xmm1
movaps xmmword [rsp + 0xc0], xmm0
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xd0]
lea rcx, [rsp + 0x1c0]
call fcn.1800df650
mov rax, qword [rsp + 0x1c0]
mov r14, qword [rsp + 0x1c8]
cmp rax, rsi
jne 0x1800eafd9
mov qword [rsp + 0x98], r14
mov qword [rsp + 0x90], rsi
jmp 0x1800eb023
lea rax, [r12 + r15]
xor r9d, r9d
lea r13, str.nul_byte_found_in_provided_data
mov rcx, r12
jmp 0x1800eaf1c
xor r9d, r9d
test dx, dx
je 0x1800eb24a
mov dx, 1
test r9w, r9w
jne 0x1800eaf10
cmp rcx, rax
je 0x1800eb10f
movzx r8d, byte [rcx]
test r8b, r8b
js 0x1800eaf3d
inc rcx
jmp 0x1800eafa1
mov r9d, r8d
and r9d, 0x1f
movzx r11d, byte [rcx + 1]
and r11d, 0x3f
cmp r8b, 0xdf
jbe 0x1800eaf93
movzx r10d, byte [rcx + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp r8b, 0xf0
jb 0x1800eafac
movzx r8d, byte [rcx + 3]
add rcx, 4
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
or r8d, r9d
cmp r8d, 0xffff
jbe 0x1800eafa1
jmp 0x1800eafc3
add rcx, 2
shl r9d, 6
or r9d, r11d
mov r8d, r9d
xor r9d, r9d
mov edx, r8d
jmp 0x1800eaf13
add rcx, 3
shl r9d, 0xc
or r10d, r9d
mov r8d, r10d
cmp r8d, 0xffff
jbe 0x1800eafa1
and r8d, 0x3ff
or r8d, 0xdc00
mov r9d, r8d
jmp 0x1800eaf13
mov rcx, qword [rsp + 0x1d0]
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], rcx
lea rcx, [rsp + 0x90]
lea rdx, [rsp + 0x140]
call fcn.1800f53c0
mov r15, qword [rsp + 0x90]
mov r14, qword [rsp + 0x98]
cmp r15, rsi
jne 0x1800eb08f
mov eax, r14d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x1800eb17d
test rax, rax
je 0x1800eb17d
mov r15, qword [r14 - 1]
mov rsi, qword [r14 + 7]
mov rax, qword [rsi]
test rax, rax
je 0x1800eb055
mov rcx, r15
call rax
dec r14
mov rdx, qword [rsi + 8]
test rdx, rdx
je 0x1800eb06d
mov r8, qword [rsi + 0x10]
mov rcx, r15
call fcn.180094f90
mov edx, 0x18
mov r8d, 8
mov rcx, r14
call fcn.180094f90
movabs rsi, 0x8000000000000000
jmp 0x1800eb17d
mov rsi, qword [rsp + 0xa0]
mov rcx, r14
call qword [sym.imp.kernel32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1800eb15a
mov qword [rsp + 0x128], r15
mov qword [rsp + 0x130], r14
mov qword [rsp + 0x138], rsi
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
je 0x1800eb0e1
mov rcx, qword [rsp + 0xc8]
mov r8d, 1
call fcn.180094f90
mov r14, rbx
mov rbx, rbp
movabs rsi, 0x8000000000000000
mov r15, qword [rsp + 0x128]
mov r13, qword [rsp + 0x130]
cmp r15, rsi
je 0x1800eb24a
jmp 0x1800eb795
cmp r15, 0xf
mov qword [rsp + 0x70], r14
ja 0x1800eb30f
xor eax, eax
xor ecx, ecx
mov rdx, qword [rsp + 0xb8]
nop word [rax + rax]
cmp byte [r12 + rcx], 0x2e
je 0x1800eb379
inc rcx
cmp r15, rcx
jne 0x1800eb130
jmp 0x1800eb37e
mov rdi, qword [rsp + 0x80]
mov r14, qword [rsp + 0x70]
jmp 0x1800eab98
test r15, r15
movabs rsi, 0x8000000000000000
je 0x1800eb17d
add r15, r15
mov r8d, 2
mov rcx, r14
mov rdx, r15
call fcn.180094f90
lea rcx, [rsp + 0xc0]
mov edx, 1
xor r8d, r8d
call fcn.1800e68e0
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xd0]
lea rcx, [rsp + 0x140]
call fcn.1800df650
mov rcx, qword [rsp + 0x140]
mov rax, qword [rsp + 0x148]
cmp rcx, rsi
jne 0x1800eb1d6
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x128], rsi
jmp 0x1800eb20b
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rdx
lea rcx, [rsp + 0x128]
lea rdx, [rsp + 0x140]
call fcn.1800f53c0
mov r14, rbx
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
mov rbx, rbp
je 0x1800eb231
mov rcx, qword [rsp + 0xc8]
mov r8d, 1
call fcn.180094f90
mov r15, qword [rsp + 0x128]
mov r13, qword [rsp + 0x130]
cmp r15, rsi
jne 0x1800eb795
mov rsi, qword [rsp + 0x60]
mov qword [rdi], r13
mov qword [rdi + 0x10], 2
test rsi, rsi
je 0x1800eb2e8
mov rcx, qword [rsp + 0x230]
test rcx, rcx
je 0x1800eb2bf
mov rdx, qword [rsp + 0x238]
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rdx
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x178], rdx
mov ecx, 1
jmp 0x1800eb2c3
xor ecx, ecx
xor eax, eax
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x180], rax
lea rcx, [rsp + 0x140]
call fcn.1800f3af0
cmp dword [r14], 4
jb 0x1800eb2f8
mov rcx, qword [r14 + 8]
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rax, rdi
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov cl, 0x2e
mov rdx, r12
mov r8, r15
call fcn.1800feeb0
mov rdx, qword [rsp + 0xb8]
jmp 0x1800eb37e
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rdx
lea rcx, [rsp + 0x128]
lea rdx, [rsp + 0x140]
call fcn.1800f53c0
mov r15, qword [rsp + 0x128]
mov r13, qword [rsp + 0x130]
cmp r15, rsi
je 0x1800eb24a
jmp 0x1800eb795
mov eax, 1
cmp rax, 1
sete byte [rsp + 0x57]
lea rax, [rsp + 0x248]
mov qword [rsp + 0x218], rax
lea rax, [rsp + 0x57]
mov qword [rsp + 0x220], rax
test rdx, rdx
je 0x1800eb3f4
add rbp, rdx
mov qword [rsp + 0x1c0], rdx
mov qword [rsp + 0x1c8], rbp
mov word [rsp + 0x1d0], 0
mov byte [rsp + 0x1d8], 1
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0x1c0]
call fcn.1800f00d0
mov rdx, qword [rsp + 0x140]
cmp rdx, rsi
jne 0x1800eb4e0
lea rcx, [rsp + 0xc0]
call fcn.1800e0720
mov rax, rsi
mov rsi, qword [rsp + 0xc0]
cmp rsi, rax
jne 0x1800eb48f
mov r14, qword [rsp + 0xc8]
mov eax, r14d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
movabs rsi, 0x8000000000000000
jb 0x1800eb617
test rax, rax
je 0x1800eb617
mov r15, qword [r14 - 1]
mov rsi, qword [r14 + 7]
mov rax, qword [rsi]
test rax, rax
je 0x1800eb455
mov rcx, r15
call rax
dec r14
mov rdx, qword [rsi + 8]
test rdx, rdx
je 0x1800eb46d
mov r8, qword [rsi + 0x10]
mov rcx, r15
call fcn.180094f90
mov edx, 0x18
mov r8d, 8
mov rcx, r14
call fcn.180094f90
movabs rsi, 0x8000000000000000
jmp 0x1800eb617
mov r12, rbx
mov rbx, rdi
mov r14, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, r14
mov rdx, r15
call fcn.1800e6ba0
test rax, rax
je 0x1800eb5b4
test rdx, rdx
je 0x1800eb5ad
cmp r15, rdx
jbe 0x1800eb5a7
cmp byte [r14 + rdx], 0xbf
jg 0x1800eb5ad
ud2
lea r14, [rsp + 0x140]
lea r12, [rsp + 0x1c0]
lea rbp, [rsp + 0x57]
lea r13, [rsp + 0xc0]
jmp 0x1800eb566
mov r8, qword [rsp + 0x158]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0xc0], rdx
mov rcx, r14
lea rdx, [rsp + 0x248]
mov r8, rbp
mov r9, r13
call fcn.1800ecbf0
mov r15, qword [rsp + 0x140]
cmp r15, rsi
jne 0x1800eb58d
mov rcx, r14
mov rdx, r12
call fcn.1800f00d0
mov rdx, qword [rsp + 0x140]
cmp rdx, rsi
je 0x1800eb3f4
mov rcx, qword [rsp + 0x148]
mov rax, qword [rsp + 0x150]
test rax, rax
jne 0x1800eb4ff
test rdx, rdx
je 0x1800eb54a
mov r8d, 1
call fcn.180094f90
jmp 0x1800eb54a
movups xmm0, xmmword [rsp + 0x148]
movaps xmmword [rsp + 0x1f0], xmm0
mov r14, qword [rsp + 0x70]
jmp 0x1800eb77d
jne 0x1800eb4de
cmp r15, rdx
cmovae r15, rdx
mov qword [rsp + 0x140], rsi
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], r15
mov qword [rsp + 0x158], rdi
lea rcx, [rsp + 0x1c0]
lea rdx, [rsp + 0x248]
lea r8, [rsp + 0x57]
lea r9, [rsp + 0x140]
call fcn.1800ecbf0
mov r15, qword [rsp + 0x1c0]
movabs rsi, 0x8000000000000000
cmp r15, rsi
jne 0x1800eb762
mov rdi, rbx
mov rbx, r12
lea r14, [rsp + 0x140]
lea rdx, [rsp + 0x218]
mov rcx, r14
call fcn.1800e0030
mov r15, qword [rsp + 0x140]
add rsi, 2
cmp r15, rsi
jge 0x1800eb744
mov rdx, qword [rsp + 0x148]
mov rcx, r15
call fcn.1800e9fc0
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0x218]
call fcn.1800dfb10
mov r15, qword [rsp + 0x140]
cmp r15, rsi
jge 0x1800eb744
mov rdx, qword [rsp + 0x148]
mov rcx, r15
call fcn.1800e9fc0
lea rdx, str.PATHprogram_path_has_no_file_name
lea rcx, [rsp + 0x90]
mov r8d, 4
call fcn.1800f02e0
mov r14, qword [rsp + 0x90]
movabs rsi, 0x8000000000000000
cmp r14, rsi
je 0x1800eb733
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0xa0]
add rax, rcx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x1c0], rcx
mov qword [rsp + 0x1c8], rax
mov word [rsp + 0x1d0], 0
mov byte [rsp + 0x1d8], 1
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0x1c0]
call fcn.1800f00d0
mov rdx, qword [rsp + 0x140]
cmp rdx, rsi
jne 0x1800ec4f8
test r14, r14
je 0x1800eb733
mov r8d, 1
mov rcx, qword [rsp + 0x58]
mov rdx, r14
call fcn.180094f90
lea r13, [0x18012b530]
mov r14, qword [rsp + 0x70]
jmp 0x1800eb24a
movups xmm0, xmmword [r14 + 8]
movaps xmmword [rsp + 0x1f0], xmm0
mov r14, qword [rsp + 0x70]
movabs rsi, 0x8000000000000000
jmp 0x1800eb77d
movups xmm0, xmmword [rsp + 0x1c8]
movaps xmmword [rsp + 0x1f0], xmm0
mov rdi, rbx
mov r14, qword [rsp + 0x70]
mov rbx, r12
movaps xmm0, xmmword [rsp + 0x1f0]
movups xmmword [rsp + 0x130], xmm0
mov r13, qword [rsp + 0x130]
mov r12, qword [rsp + 0x138]
cmp r12, 5
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x68], r15
jb case.0x1800ec201.68
test r13, r13
je case.0x1800ec201.68
cmp word [r13 + r12*2 - 0xa], 0x2e
jne case.0x1800ec201.68
cmp word [r13 + r12*2 - 2], 0
je 0x1800ec1e1
mov r14, rdi
mov rdi, qword [rbx + 8]
mov rbp, qword [rbx + 0x28]
mov rsi, qword [rbx + 0x30]
movzx r12d, byte [rbx + 0xc9]
mov rbx, qword [rbx + 0x10]
add rbx, rdi
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xc8], 2
mov qword [rsp + 0xd0], 0
lea r15, [rsp + 0xc0]
mov rcx, r15
call fcn.1800a69a0
mov rax, qword [rsp + 0xc8]
mov word [rax], 0x22
mov qword [rsp + 0xd0], 1
mov qword [rsp + 0x140], rdi
mov qword [rsp + 0x148], rbx
mov word [rsp + 0x150], 0
lea rdx, [rsp + 0x140]
mov rcx, r15
call fcn.1800ee1c0
mov rdi, qword [rsp + 0xd0]
cmp rdi, qword [rsp + 0xc0]
jne 0x1800eb889
lea rcx, [rsp + 0xc0]
call fcn.1800a69a0
mov rax, qword [rsp + 0xc8]
mov word [rax + rdi*2], 0x22
inc rdi
mov qword [rsp + 0xd0], rdi
shl rsi, 3
lea rsi, [rsi + rsi*4]
lea r15, [rsp + 0xc0]
jmp 0x1800eb8fb
lea rbx, [rbp + 0x28]
mov rax, qword [rsp + 0xc8]
mov word [rax + rdi*2], 0x20
inc rdi
mov qword [rsp + 0xd0], rdi
mov rcx, r15
mov rdx, rbp
mov r8d, r12d
call fcn.1800f4640
add rsi, 0xffffffffffffffd8
mov rbp, rbx
test rax, rax
jne 0x1800ebb4d
test rsi, rsi
je 0x1800eb91c
mov rdi, qword [rsp + 0xd0]
cmp rdi, qword [rsp + 0xc0]
jne 0x1800eb8c0
mov rcx, r15
call fcn.1800a69a0
jmp 0x1800eb8c0
mov rax, qword [rsp + 0xc0]
mov r13, qword [rsp + 0xc8]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x1800ebb73
mov rsi, qword [rsp + 0xd0]
mov cl, 1
mov dword [rsp + 0x60], ecx
mov r15, qword [rsp + 0x68]
mov qword [rsp + 0xb8], r15
mov rbp, qword [rsp + 0x58]
mov rdi, r14
mov rbx, qword [rsp + 0x88]
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], r13
mov qword [rsp + 0x138], rsi
cmp rsi, rax
jne 0x1800eb99c
lea rcx, [rsp + 0x128]
call fcn.1800a69a0
mov r13, qword [rsp + 0x130]
mov qword [rsp + 0x80], rdi
mov word [r13 + rsi*2], 0
inc rsi
mov qword [rsp + 0x138], rsi
cmp byte [rbx + 0xc8], 0
mov eax, 0x400
mov r15d, 0x608
cmove r15d, eax
or r15d, dword [rbx + 0xc4]
cmp qword [rsp + 0x228], 0
mov r14, qword [rsp + 0x70]
je 0x1800ebbb7
mov rsi, qword [rsp + 0x230]
mov rdi, qword [rsp + 0x238]
mov rbx, qword [rsp + 0x240]
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 2
mov qword [rsp + 0xa0], 0
test rbx, rbx
jne 0x1800eba4f
lea rcx, [rsp + 0x90]
call fcn.1800a69a0
mov rax, qword [rsp + 0x98]
mov word [rax], 0
mov qword [rsp + 0xa0], 1
xor eax, eax
test rsi, rsi
setne al
cmove rbx, rsi
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], 0
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xd8], rdi
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xf8], rdi
mov qword [rsp + 0x100], rbx
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0xc0]
call fcn.1800f2da0
mov rdx, qword [rsp + 0x140]
movabs rsi, 0x8000000000000000
cmp rdx, rsi
mov rbx, qword [rsp + 0x88]
jne 0x1800ebcd2
lea rcx, [rsp + 0xc0]
call fcn.1800f3af0
mov rsi, qword [rsp + 0xa0]
cmp rsi, qword [rsp + 0x90]
mov r13, qword [rsp + 0x58]
jne 0x1800ebb14
lea rcx, [rsp + 0x90]
call fcn.1800a69a0
mov rax, qword [rsp + 0x98]
mov word [rax + rsi*2], 0
mov r12, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x98]
mov rdi, rsi
movabs rdx, 0x8000000000000000
cmp r12, rdx
jne 0x1800ebbcb
jmp 0x1800ec499
mov r13, rax
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
je 0x1800ebb73
mov rcx, qword [rsp + 0xc8]
add rdx, rdx
mov r8d, 2
call fcn.180094f90
mov rdi, r14
mov r15, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
mov qword [r14], r13
mov qword [r14 + 0x10], 2
mov r14, qword [rsp + 0x70]
mov r13, qword [rsp + 0x58]
test r15, r15
je 0x1800eb25a
add r15, r15
mov r8d, 2
mov rcx, r13
mov rdx, r15
call fcn.180094f90
jmp 0x1800eb25a
mov esi, 2
xor edi, edi
xor r12d, r12d
movabs rdx, 0x8000000000000000
mov qword [rsp + 0x78], rsi
lea rcx, [rbx + 0x38]
xor eax, eax
cmp qword [rbx + 0x38], rdx
cmovne rax, rcx
jne 0x1800ec0b2
mov ecx, 2
xor edx, edx
xor r13d, r13d
mov qword [rsp + 0x200], rdx
mov qword [rsp + 0x1b8], rcx
mov qword [rsp + 0xb0], rbp
xorps xmm0, xmm0
movaps xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0xa0], 0
mov cl, 1
xor eax, eax
lock cmpxchg byte [0x1801737c0], cl
jne 0x1800ec7b0
mov qword [rsp + 0x1c0], 0
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0x1e0], 0
cmp byte [rsp + 0x208], 0
lea rax, [rsp + 0x1f0]
cmovne rax, r14
mov dword [rsp + 0x1f0], 2
lea rcx, [rbx + 0x58]
cmp dword [rbx + 0x58], 6
mov esi, dword [rbx + 0x68]
cmove rcx, rax
lea rbp, [rbx + 0x78]
cmp dword [rbx + 0x78], 6
cmove rbp, r14
lea r8, [rsp + 0x1c0]
mov edx, 0xfffffff6
call fcn.1800ece70
cmp rax, 1
jne 0x1800ec354
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rdx
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0xb0]
mov ebx, dword [rsp + 0x60]
jmp 0x1800eca74
mov rcx, qword [rsp + 0x148]
mov r13, qword [rsp + 0x160]
mov rdi, qword [rsp + 0x168]
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x1b8], rax
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x150]
add rax, rcx
xor r11d, r11d
mov r8, rcx
jmp 0x1800ebd47
xor r11d, r11d
test r9w, r9w
je 0x1800ec186
mov r9w, 1
test r11w, r11w
jne 0x1800ebd3a
cmp r8, rax
je 0x1800ebe13
movzx r11d, byte [r8]
test r11b, r11b
js 0x1800ebd6f
inc r8
mov r10d, r11d
jmp 0x1800ebe08
mov r10d, r11d
and r10d, 0x1f
movzx ebx, byte [r8 + 1]
and ebx, 0x3f
cmp r11b, 0xdf
jbe 0x1800ebdb7
movzx esi, byte [r8 + 2]
shl ebx, 6
and esi, 0x3f
or esi, ebx
cmp r11b, 0xf0
jb 0x1800ebdcc
movzx r11d, byte [r8 + 3]
add r8, 4
and r10d, 7
shl r10d, 0x12
shl esi, 6
and r11d, 0x3f
or r11d, esi
or r10d, r11d
jmp 0x1800ebdd7
add r8, 2
shl r10d, 6
or r10d, ebx
mov rbx, qword [rsp + 0x88]
jmp 0x1800ebe08
add r8, 3
shl r10d, 0xc
or r10d, esi
mov rbx, qword [rsp + 0x88]
cmp r10d, 0xffff
movabs rsi, 0x8000000000000000
jbe 0x1800ebe08
and r10d, 0x3ff
or r10d, 0xdc00
mov r11d, r10d
jmp 0x1800ebd3d
xor r11d, r11d
mov r9d, r10d
jmp 0x1800ebd3d
test rdx, rdx
je 0x1800ebe2c
cmp rdx, rsi
je 0x1800ecb96
mov r8d, 1
call fcn.180094f90
mov qword [rsp + 0xb0], rbp
mov rax, qword [rsp + 0x90]
mov rbp, qword [rsp + 0xa0]
sub rax, rbp
cmp rax, qword [rsp + 0x200]
jb 0x1800ec07e
mov r12, qword [rsp + 0x200]
lea r8, [r12 + r12]
lea rcx, [rbp*2]
add rcx, qword [rsp + 0x98]
mov rdx, rdi
call fcn.180116940
add rbp, r12
mov qword [rsp + 0xa0], rbp
test r13, r13
je 0x1800ebea5
add r13, r13
mov r8d, 2
mov rcx, rdi
mov rdx, r13
call fcn.180094f90
mov rbp, qword [rsp + 0xa0]
cmp rbp, qword [rsp + 0x90]
jne 0x1800ebebc
lea rcx, [rsp + 0x90]
call fcn.1800a69a0
mov rax, qword [rsp + 0x98]
mov word [rax + rbp*2], 0x3d
inc rbp
mov qword [rsp + 0xa0], rbp
mov r11, qword [rsp + 0x1b8]
mov rdi, qword [rsp + 0x210]
add rdi, r11
xor r8d, r8d
mov rax, r11
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0xb0]
jmp 0x1800ebf09
xor r8d, r8d
test cx, cx
je 0x1800ec44a
mov cx, 1
test r8w, r8w
jne 0x1800ebefd
cmp rax, rdi
je 0x1800ebfb3
movzx r8d, byte [rax]
test r8b, r8b
js 0x1800ebf2d
inc rax
mov edx, r8d
jmp 0x1800ebfa9
mov edx, r8d
and edx, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp r8b, 0xdf
jbe 0x1800ebf77
movzx r9d, byte [rax + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp r8b, 0xf0
jb 0x1800ebf83
movzx r8d, byte [rax + 3]
add rax, 4
and edx, 7
shl edx, 0x12
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
or edx, r8d
jmp 0x1800ebf8d
add rax, 2
shl edx, 6
or edx, r10d
jmp 0x1800ebfa9
add rax, 3
shl edx, 0xc
or edx, r9d
cmp edx, 0xffff
jbe 0x1800ebfa9
and edx, 0x3ff
or edx, 0xdc00
mov r8d, edx
jmp 0x1800ebf00
xor r8d, r8d
mov ecx, edx
jmp 0x1800ebf00
mov rbp, qword [rsp + 0x78]
cmp rbp, rsi
je 0x1800ecbb4
mov qword [rsp + 0x1c0], r11
mov qword [rsp + 0x1c8], rdi
mov word [rsp + 0x1d0], 0
lea rcx, [rsp + 0x90]
lea rdx, [rsp + 0x1c0]
mov rsi, r11
call fcn.1800ee1c0
test rbp, rbp
je 0x1800ec009
mov r8d, 1
mov rcx, rsi
mov rdx, rbp
call fcn.180094f90
mov rsi, qword [rsp + 0xa0]
cmp rsi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0xb0]
jne 0x1800ec030
lea rcx, [rsp + 0x90]
call fcn.1800a69a0
mov rax, qword [rsp + 0x98]
mov word [rax + rsi*2], 0
inc rsi
mov qword [rsp + 0xa0], rsi
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0xc0]
call fcn.1800f2da0
mov rdx, qword [rsp + 0x140]
movabs rsi, 0x8000000000000000
cmp rdx, rsi
jne 0x1800ebcd2
jmp 0x1800ebae3
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rsp + 0x90]
mov rdx, rbp
mov r8, qword [rsp + 0x200]
call fcn.18011a400
mov rbp, qword [rsp + 0xa0]
jmp 0x1800ebe55
mov rcx, qword [rbx + 0x40]
mov rdx, qword [rbx + 0x48]
add rdx, rcx
xor r10d, r10d
jmp 0x1800ec0cf
xor r10d, r10d
test r8w, r8w
je 0x1800ec32c
mov r8w, 1
test r10w, r10w
jne 0x1800ec0c2
cmp rcx, rdx
je 0x1800ec3b8
movzx r9d, byte [rcx]
test r9b, r9b
js 0x1800ec0f4
inc rcx
jmp 0x1800ec17b
mov r10d, r9d
and r10d, 0x1f
movzx esi, byte [rcx + 1]
and esi, 0x3f
cmp r9b, 0xdf
jbe 0x1800ec13e
movzx r11d, byte [rcx + 2]
shl esi, 6
and r11d, 0x3f
or r11d, esi
cmp r9b, 0xf0
jb 0x1800ec14e
movzx r9d, byte [rcx + 3]
add rcx, 4
and r10d, 7
shl r10d, 0x12
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
or r9d, r10d
jmp 0x1800ec15c
add rcx, 2
shl r10d, 6
or r10d, esi
mov r9d, r10d
jmp 0x1800ec17b
add rcx, 3
shl r10d, 0xc
or r11d, r10d
mov r9d, r11d
cmp r9d, 0xffff
jbe 0x1800ec17b
and r9d, 0x3ff
or r9d, 0xdc00
mov r10d, r9d
jmp 0x1800ec0c5
xor r10d, r10d
mov r8d, r9d
jmp 0x1800ec0c5
lea rsi, str.nul_byte_found_in_provided_data
test rdx, rdx
je 0x1800ec19d
mov r8d, 1
call fcn.180094f90
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1b8]
test rdx, rdx
je 0x1800ec1ba
mov r8d, 1
call fcn.180094f90
test r13, r13
je 0x1800ec3ae
add r13, r13
mov r8d, 2
mov rcx, rdi
mov rdx, r13
call fcn.180094f90
mov r13, qword [rsp + 0x58]
jmp 0x1800ec469
movzx eax, word [r13 + r12*2 - 8]
lea ecx, [rax - 0x42]
cmp ecx, 0x21
ja case.0x1800ec201.68
lea rdx, [0x18012b5a8]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
movzx ecx, word [r13 + r12*2 - 6]
or ecx, 0x20
cmp ecx, 0x61
jne 0x1800ec21f
movzx ecx, word [r13 + r12*2 - 4]
or ecx, 0x20
cmp ecx, 0x74
je 0x1800ec24d
cmp ax, 0x43
jne case.0x1800ec201.68
movzx eax, word [r13 + r12*2 - 6]
or eax, 0x20
cmp eax, 0x6d
jne case.0x1800ec201.68
movzx eax, word [r13 + r12*2 - 4]
or eax, 0x20
cmp eax, 0x64
jne case.0x1800ec201.68
lea rcx, [rsp + 0xc0]
call fcn.1800e0aa0
mov rax, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0xc8]
cmp rax, rsi
je 0x1800ec317
mov rcx, qword [rsp + 0xd0]
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x1c8], rbp
mov qword [rsp + 0x1d0], rcx
lea rax, [0x18012b552]
mov qword [rsp + 0x160], rax
lea rax, [0x18012b55a]
mov qword [rsp + 0x168], rax
mov word [rsp + 0x170], 0
mov qword [rsp + 0x140], 1
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], 1
mov word [rsp + 0x158], 0
lea rcx, [rsp + 0x1c0]
lea rdx, [rsp + 0x140]
call fcn.1800ee360
mov rax, qword [rsp + 0x1c0]
mov rbp, qword [rsp + 0x1c8]
cmp rax, rsi
jne 0x1800ec5ad
mov qword [rdi], rbp
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x60]
jmp 0x1800ebb95
lea rcx, str.nul_byte_found_in_provided_data
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rcx
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x60]
jmp 0x1800ecb0e
mov qword [rsp + 0x208], rdx
lea r8, [rsp + 0x1d0]
lea rcx, [rbx + 0x68]
cmp esi, 6
cmove rcx, r14
mov edx, 0xfffffff5
call fcn.1800ece70
mov rsi, rdx
test rax, rax
je 0x1800ec4ba
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rsi
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0xb0]
mov ebx, dword [rsp + 0x60]
jmp 0x1800eca66
mov r13, qword [rsp + 0x58]
jmp 0x1800ec469
mov rcx, qword [rax + 8]
mov rax, qword [rax + 0x10]
add rax, rcx
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov word [rsp + 0x150], 0
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0x140]
call fcn.1800ee600
mov rsi, qword [rsp + 0xd0]
cmp rsi, qword [rsp + 0xc0]
jne 0x1800ec411
lea rcx, [rsp + 0xc0]
call fcn.1800a69a0
mov rax, qword [rsp + 0xc8]
mov word [rax + rsi*2], 0
mov r13, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xc8]
mov rdx, rcx
movabs rax, 0x8000000000000000
cmp r13, rax
jne 0x1800ebbee
jmp 0x1800ec333
lea rsi, str.nul_byte_found_in_provided_data
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x1800ec469
mov r8d, 1
mov rcx, r11
call fcn.180094f90
lea rcx, [rsp + 0xc0]
call fcn.1800f3af0
mov rdx, qword [rsp + 0x90]
test rdx, rdx
je 0x1800ec499
mov rcx, qword [rsp + 0x98]
add rdx, rdx
mov r8d, 2
call fcn.180094f90
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rsi
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x60]
jmp 0x1800ecb2e
lea r8, [rsp + 0x1e0]
mov rcx, rbp
mov edx, 0xfffffff4
call fcn.1800ece70
test rax, rax
je 0x1800ec635
mov r15, rsi
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rdx
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
jmp 0x1800eca51
lea r13, [rsp + 0x140]
lea rbp, [rsp + 0x1c0]
lea r12, [rsp + 0xc0]
jmp 0x1800ec582
mov r8, qword [rsp + 0x158]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0xc0], rdx
mov rdx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
mov rcx, r13
mov r9, r12
call fcn.1800ecbf0
mov r15, qword [rsp + 0x140]
cmp r15, rsi
jne 0x1800ec7c1
mov rcx, r13
mov rdx, rbp
call fcn.1800f00d0
mov rdx, qword [rsp + 0x140]
cmp rdx, rsi
je 0x1800eb71b
mov rcx, qword [rsp + 0x148]
mov rax, qword [rsp + 0x150]
test rax, rax
jne 0x1800ec512
test rdx, rdx
je 0x1800ec566
mov r8d, 1
call fcn.180094f90
jmp 0x1800ec566
mov qword [rsp + 0xb8], rax
mov r9, qword [rbx + 0x28]
mov rax, qword [rbx + 0x30]
movzx ecx, byte [rbx + 0xc9]
mov byte [rsp + 0x28], cl
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x140]
mov rdx, r13
mov r8, r12
call fcn.1800f4ac0
mov rax, qword [rsp + 0x140]
mov r13, qword [rsp + 0x148]
cmp rax, rsi
jne 0x1800ec7f3
mov qword [rdi], r13
mov qword [rdi + 0x10], 2
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
mov r13, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
je 0x1800ebb95
add rdx, rdx
mov r8d, 2
mov rcx, rbp
call fcn.180094f90
jmp 0x1800ebb95
xorps xmm0, xmm0
movups xmmword [rsp + 0xf4], xmm0
movups xmmword [rsp + 0xe8], xmm0
movups xmmword [rsp + 0xd8], xmm0
movups xmmword [rsp + 0xc8], xmm0
movups xmmword [rsp + 0x108], xmm0
movups xmmword [rsp + 0x118], xmm0
test rdx, rdx
mov rcx, qword [rsp + 0x208]
jne 0x1800ec684
test rsi, rsi
jne 0x1800ec684
mov eax, 1
test rcx, rcx
je 0x1800ec6ac
mov dword [rsp + 0xfc], 0x100
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], rdx
mov eax, 0x101
cmp word [rbx + 0xc0], 0
je 0x1800ec6cc
movzx ecx, word [rbx + 0xc2]
mov dword [rsp + 0xfc], eax
mov word [rsp + 0x100], cx
mov qword [rsp + 0x210], rdx
mov rbp, qword [rbx + 0xb8]
test rbp, rbp
je 0x1800ec808
add rbx, 0xa8
mov dword [rsp + 0xc0], 0x70
lea rcx, [rsp + 0x218]
mov rdx, rbx
call fcn.1800ed0a0
mov rbx, qword [rsp + 0x218]
mov rax, qword [rsp + 0x220]
test rbx, rbx
je 0x1800eca28
mov qword [rsp + 0x88], rax
or r15d, 0x80000
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x1a0], rax
movups xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x190], xmm0
movups xmm0, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x180], xmm0
movups xmm0, xmmword [rsp + 0xc0]
movups xmm1, xmmword [rsp + 0xd0]
movups xmm2, xmmword [rsp + 0xe0]
movups xmm3, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x170], xmm3
movaps xmmword [rsp + 0x160], xmm2
movaps xmmword [rsp + 0x150], xmm1
movaps xmmword [rsp + 0x140], xmm0
mov qword [rsp + 0x1a8], rbx
lea rax, [rsp + 0x140]
jmp 0x1800ec81b
lea rcx, [0x1801737c0]
call fcn.18011d550
jmp 0x1800ebc2f
movups xmm0, xmmword [rsp + 0x148]
movaps xmmword [rsp + 0x1f0], xmm0
test r14, r14
je 0x1800ec7e9
mov r8d, 1
mov rcx, qword [rsp + 0x58]
mov rdx, r14
call fcn.180094f90
mov r14, qword [rsp + 0x70]
jmp 0x1800eb77d
mov dword [rsp + 0x60], 0
mov rsi, qword [rsp + 0x150]
jmp 0x1800eb96a
mov dword [rsp + 0xc0], 0x68
lea rax, [rsp + 0xc0]
mov rdx, qword [rsp + 0x130]
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], 1
mov rcx, qword [rsp + 0xb0]
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.kernel32.dll_CreateProcessW]
mov r15, rsi
test eax, eax
je 0x1800ec9b2
movups xmm0, xmmword [rsp + 0x1c0]
movups xmm1, xmmword [rsp + 0x1d0]
movups xmm2, xmmword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x80]
movups xmmword [rdi + 0x30], xmm2
movups xmmword [rdi + 0x20], xmm1
movups xmmword [rdi + 0x10], xmm0
movaps xmm0, xmmword [rsp + 0x90]
movups xmmword [rdi], xmm0
test rbp, rbp
mov rbp, qword [rsp + 0x68]
je 0x1800ec8c4
mov rcx, rbx
mov rdx, qword [rsp + 0x88]
call fcn.1800ea060
mov rsi, qword [sym.imp.kernel32.dll_CloseHandle]
mov rcx, qword [rsp + 0x210]
call rsi
mov rcx, r15
call rsi
mov rcx, qword [rsp + 0x208]
call rsi
cmp dword [rsp + 0x1f0], 4
mov rbx, qword [rsp + 0xb0]
jae 0x1800ec9ef
xor eax, eax
xchg byte [0x1801737c0], al
cmp al, 2
je 0x1800eca0d
test r13, r13
je 0x1800ec928
add r13, r13
mov r8d, 2
mov rcx, qword [rsp + 0x1b8]
mov rdx, r13
call fcn.180094f90
test r12, r12
je 0x1800ec943
add r12, r12
mov r8d, 2
mov rcx, qword [rsp + 0x78]
mov rdx, r12
call fcn.180094f90
mov rdx, qword [rsp + 0x128]
test rdx, rdx
mov rsi, qword [rsp + 0x58]
je 0x1800ec96b
mov rcx, qword [rsp + 0x130]
add rdx, rdx
mov r8d, 2
call fcn.180094f90
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x1800ec989
add rdx, rdx
mov r8d, 2
mov rcx, rbx
call fcn.180094f90
test rbp, rbp
sete al
or al, byte [rsp + 0x60]
jne 0x1800eb2e8
add rbp, rbp
mov r8d, 2
mov rcx, rsi
mov rdx, rbp
call fcn.180094f90
jmp 0x1800eb2e8
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rax
mov qword [rdi + 0x10], 2
test rbp, rbp
mov rsi, qword [rsp + 0x68]
je 0x1800eca43
mov rcx, rbx
mov rdx, qword [rsp + 0x88]
call fcn.1800ea060
jmp 0x1800eca43
mov rcx, qword [rsp + 0x1f8]
call qword [sym.imp.kernel32.dll_CloseHandle]
xor eax, eax
xchg byte [0x1801737c0], al
cmp al, 2
jne 0x1800ec90a
lea rcx, [0x1801737c0]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
test r13, r13
jne 0x1800ec90f
jmp 0x1800ec928
mov r15, rsi
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rax
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x210]
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rbp, qword [rsp + 0xb0]
mov ebx, dword [rsp + 0x60]
mov rcx, r15
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rcx, qword [rsp + 0x208]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp dword [rsp + 0x1f0], 4
jb 0x1800eca8c
mov rcx, qword [rsp + 0x1f8]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp qword [rsp + 0x1c0], 0
je 0x1800ecaa5
mov rcx, qword [rsp + 0x1c8]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp qword [rsp + 0x1d0], 0
je 0x1800ecabe
mov rcx, qword [rsp + 0x1d8]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp qword [rsp + 0x1e0], 0
je 0x1800ecad7
mov rcx, qword [rsp + 0x1e8]
call qword [sym.imp.kernel32.dll_CloseHandle]
xor eax, eax
xchg byte [0x1801737c0], al
cmp al, 2
jne 0x1800ecaf0
lea rcx, [0x1801737c0]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
test r13, r13
je 0x1800ecb0e
add r13, r13
mov r8d, 2
mov rcx, qword [rsp + 0x1b8]
mov rdx, r13
call fcn.180094f90
test r12, r12
mov r13, qword [rsp + 0x58]
je 0x1800ecb2e
add r12, r12
mov r8d, 2
mov rcx, qword [rsp + 0x78]
mov rdx, r12
call fcn.180094f90
mov rdx, qword [rsp + 0x128]
test rdx, rdx
je 0x1800ecb51
mov rcx, qword [rsp + 0x130]
add rdx, rdx
mov r8d, 2
call fcn.180094f90
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x1800ecb6f
add rdx, rdx
mov r8d, 2
mov rcx, rbp
call fcn.180094f90
test rsi, rsi
sete al
or al, bl
jne 0x1800eb2e8
add rsi, rsi
mov r8d, 2
mov rcx, r13
mov rdx, rsi
call fcn.180094f90
jmp 0x1800eb2e8
mov rsi, rcx
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1b8]
test rdx, rdx
jne 0x1800ec1af
jmp 0x1800ec1ba
mov rsi, r11
mov rbp, qword [rsp + 0xb0]
jmp 0x1800ec469
call sub.kernel32.dll_GetLastError
ud2
mov ecx, 1
mov edx, 4
call fcn.1800c8ec0
xor r14d, r14d
mov rcx, r14
mov rdx, r15
call fcn.1800c8ec0
int3