Function at 0x14004ce90
Capabilities:
Create a process with modified i/o handles and window
Create process on windows
Execute anti-debugging instructions
Read file on windows
Terminate process
Write and execute a file
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
mov eax, 0x28338
call fcn.1400d2cf0
sub rsp, rax
lea rbp, [rsp + 0x80]
movapd xmmword [rbp + 0x282a0], xmm8
movapd xmmword [rbp + 0x28290], xmm7
movapd xmmword [rbp + 0x28280], xmm6
mov qword [rbp + 0x28278], 0xfffffffffffffffe
mov qword [rbp + 0x28268], r8
mov r14, rcx
mov qword [rbp + 0x281b0], rdx
lea rax, [0x1400502b0]
mov qword [rbp + 0x281b8], rax
lea rax, [0x14013e7b0]
mov qword [rbp + 0xfff0], rax
mov qword [rbp + 0xfff8], 1
mov rax, qword [rdx]
mov rcx, qword [rdx + 8]
mov qword [rbp + 0xffd0], rax
lea rax, [rbp + 0x281b0]
mov qword [rbp + 0xffd8], rax
mov qword [rbp + 0xffe0], rcx
mov qword [rbp + 0xffe8], rax
lea rax, [rbp + 0xffd0]
mov qword [rbp + 0x28230], rax
lea rax, [0x1400623c0]
mov qword [rbp + 0x28238], rax
mov qword [rbp + 0x28240], 0xf
lea rax, [rbp + 0x28230]
mov qword [rbp + 0x28248], rax
lea rax, [0x14013e1cc]
mov qword [rbp + 0x281a0], rax
mov qword [rbp + 0x281a8], 2
lea rbx, [rbp + 0x281c0]
lea rdx, [rbp + 0x281a0]
lea r8, [rbp + 0x28240]
mov rcx, rbx
call fcn.1400506d0
cmp qword [rbp + 0x281d8], 8
jb 0x14004cfb3
mov rbx, qword [rbp + 0x281c0]
lea rcx, [rbp - 0x30]
mov edx, 0x7fff
mov r8, rbx
call fcn.1400ed234
mov ebx, eax
mov rax, qword [rbp + 0x281d8]
cmp rax, 8
jb 0x14004d012
mov rcx, qword [rbp + 0x281c0]
lea rdx, [rax + rax]
add rdx, 2
cmp rdx, 0x1000
jb 0x14004d00d
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14004ecdd
add rax, rax
add rax, 0x29
mov rdx, rax
mov rcx, r8
call fcn.1400cd44c
test ebx, ebx
je 0x14004d0c4
mov dword [rbp + 0x1c0b0], ebx
lea rax, [0x14016edd8]
mov qword [rbp + 0x1c0b8], rax
mov byte [rbp + 0x28190], 0
mov eax, dword [rbp + 0x1c0b0]
mov dword [r14 + 0x48], eax
mov eax, dword [rbp + 0x1c0b4]
mov dword [r14 + 0x4c], eax
mov rax, qword [rbp + 0x1c0b8]
mov qword [r14 + 0x50], rax
xorpd xmm0, xmm0
movupd xmmword [r14], xmm0
mov qword [r14 + 0x10], 0
mov qword [r14 + 0x18], 0xf
movupd xmmword [r14 + 0x20], xmm0
mov qword [r14 + 0x30], 0
mov qword [r14 + 0x38], 0xf
mov qword [r14 + 0x40], 2
mov rcx, qword [rbp + 0x28268]
call fcn.140003260
mov rax, r14
movaps xmm6, xmmword [rbp + 0x28280]
movaps xmm7, xmmword [rbp + 0x28290]
movaps xmm8, xmmword [rbp + 0x282a0]
add rsp, 0x28338
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov qword [rbp + 0x28258], r14
xorpd xmm6, xmm6
movapd xmmword [rbp + 0x28240], xmm6
mov qword [rbp + 0x28250], 0
lea rcx, [rbp + 0xffe0]
mov r8d, 0xc0d0
xor edx, edx
call fcn.140102980
mov rax, qword [rbp + 0x28268]
mov qword [rbp + 0xffd0], rax
mov qword [rbp + 0xffd8], 0
mov rsi, qword [sym.imp.KERNEL32.dll_CreateEventW]
xor ecx, ecx
xor edx, edx
mov r8d, 1
xor r9d, r9d
call rsi
mov rbx, rax
mov qword [rbp + 0x13fe8], rax
mov qword [rbp + 0x14008], rax
mov qword [rbp + 0x14010], 0
mov qword [rbp + 0x18018], 0
xor ecx, ecx
xor edx, edx
mov r8d, 1
xor r9d, r9d
call rsi
mov qword [rbp + 0x18020], rax
mov qword [rbp + 0x18040], rax
mov qword [rbp + 0x18048], 0
mov qword [rbp + 0x1c050], 0
xor ecx, ecx
xor edx, edx
mov r8d, 1
xor r9d, r9d
call rsi
mov qword [rbp + 0x1c058], rax
mov qword [rbp + 0x1c078], rax
movupd xmmword [rbp + 0x1c080], xmm6
mov qword [rbp + 0x1c090], 0
mov ecx, 0x20
call fcn.1400cd3b4
mov r14, rax
mov r15, qword [rbp + 0x1c080]
mov r8, r15
neg r8
mov rcx, rax
mov rdx, r15
call fcn.1401022e0
test r15, r15
je 0x14004d210
mov rdx, qword [rbp + 0x1c090]
sub rdx, r15
cmp rdx, 0x1000
jb 0x14004d208
mov rax, qword [r15 - 8]
add r15, 0xfffffffffffffff8
sub r15, rax
cmp r15, 0x20
jae 0x14004ecdd
add rdx, 0x27
mov r15, rax
mov rcx, r15
call fcn.1400cd44c
mov qword [rbp + 0x1c080], r14
mov qword [rbp + 0x1c088], r14
lea rax, [r14 + 0x20]
mov qword [rbp + 0x1c090], rax
mov eax, dword [0x140173308]
mov ecx, dword [0x140171310]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14004ece2
lea rcx, [0x1401732b8]
call fcn.1400cec6c
test eax, eax
jne 0x14004ed62
cmp dword [0x140173304], 0x7fffffff
je 0x14004ed6c
mov rax, qword [rbp + 0x28268]
cmp qword [rax + 0x20], 0
je 0x14004d2f0
lea rcx, [rbp + 0x281c0]
mov dl, 1
call fcn.14004f800
cmp byte [rbp + 0x281d0], 0
je 0x14004d57e
mov rax, qword [rbp + 0x281c8]
mov rcx, qword [rbp + 0x13fe0]
mov qword [rbp + 0x13fe0], rax
test rcx, rcx
je 0x14004d2bb
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0x281c0]
mov qword [rbp + 0x28240], rcx
mov qword [r14], rbx
add r14, 8
mov qword [rbp + 0x1c088], r14
mov edx, 1
mov r8d, 1
call qword [sym.imp.KERNEL32.dll_SetHandleInformation]
test eax, eax
je 0x14004d5ac
lea rbx, [rbp + 0xffd8]
mov dword [rbp + 0x28230], 1
mov rcx, qword [rbp + 0x28268]
mov eax, dword [rcx + 0x30]
mov dword [rbp + 0x28234], eax
mov dword [rbp + 0x28238], 2
mov eax, dword [rcx + 0x34]
mov dword [rbp + 0x2823c], eax
lea r13, [rbp + 0x281c0]
mov r12, qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r14d, r14d
jmp 0x14004d364
mov rax, qword [r8]
mov qword [rdx], rax
add qword [rbp + 0x1c088], 8
mov rcx, r15
mov edx, 1
mov r8d, 1
call qword [sym.imp.KERNEL32.dll_SetHandleInformation]
test eax, eax
je 0x14004d590
inc r14
cmp r14, 2
je 0x14004d4ad
mov eax, dword [rbp + r14*8 + 0x28234]
movsxd rsi, dword [rbp + r14*8 + 0x28230]
cmp eax, 2
je 0x14004d430
test eax, eax
jne 0x14004d361
mov rcx, r13
xor edx, edx
call fcn.14004f800
cmp byte [rbp + 0x281d0], 0
je 0x14004d5fc
imul rdi, rsi, 0x4038
mov rax, qword [rbp + 0x281c0]
mov qword [rbp + 0x281c0], 0
mov rcx, qword [rbx + rdi + 0x4008]
mov qword [rbx + rdi + 0x4008], rax
test rcx, rcx
je 0x14004d3d3
call r12
mov r15, qword [rbp + 0x281c8]
mov qword [rbp + 0x281c8], 0
mov rcx, qword [rbp + rsi*8 + 0x28240]
mov qword [rbp + rsi*8 + 0x28240], r15
test rcx, rcx
je 0x14004d3fd
call r12
lea r8, [rbx + rdi]
add r8, 0x4030
mov rdx, qword [rbp + 0x1c088]
cmp rdx, qword [rbp + 0x1c090]
jne 0x14004d337
lea rcx, [rbp + 0x1c080]
call fcn.140063d00
jmp 0x14004d345
mov rax, qword [0x140130618]
mov qword [rbp + 0x281d0], rax
movupd xmm0, xmmword [0x140130608]
movapd xmmword [rbp + 0x281c0], xmm0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
lea rcx, [0x14013e5f0]
mov edx, 0x40000000
mov r8d, 2
mov r9, r13
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
je 0x14004d590
mov rcx, qword [rbp + rsi*8 + 0x28240]
mov qword [rbp + rsi*8 + 0x28240], rax
test rcx, rcx
je 0x14004d361
call r12
jmp 0x14004d361
mov dword [rbp + 0x281c0], 0x68
xorpd xmm0, xmm0
movupd xmmword [rbp + 0x281c8], xmm0
movupd xmmword [rbp + 0x281d8], xmm0
movupd xmmword [rbp + 0x281e8], xmm0
mov dword [rbp + 0x281f8], 0
mov qword [rbp + 0x281fc], 0x101
mov qword [rbp + 0x28208], 0
movaps xmm1, xmmword [rbp + 0x28240]
movups xmmword [rbp + 0x28210], xmm1
mov r14, qword [rbp + 0x28250]
mov qword [rbp + 0x28220], r14
lea r15, [rbp + 0x1c098]
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x40], r13
movupd xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], 0x600
mov dword [rsp + 0x20], 1
lea rdx, [rbp - 0x30]
xor ecx, ecx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x14004d5d5
mov rdx, qword [rbp + 0x1c088]
cmp rdx, qword [rbp + 0x1c090]
je 0x14004d61d
mov rax, qword [rbp + 0x1c098]
mov qword [rdx], rax
mov rsi, qword [rbp + 0x1c088]
add rsi, 8
jmp 0x14004d633
movupd xmm0, xmmword [rbp + 0x281c0]
movapd xmmword [rbp + 0x1c0b0], xmm0
jmp 0x14004d5c6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x1c0b0], eax
lea rax, [0x14016ed90]
mov qword [rbp + 0x1c0b8], rax
jmp 0x14004d60a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x1c0b0], eax
lea rax, [0x14016ed90]
mov qword [rbp + 0x1c0b8], rax
mov byte [rbp + 0x28190], 0
xor r14d, r14d
jmp 0x14004d77d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x1c0b0], eax
lea rax, [0x14016ed90]
mov qword [rbp + 0x1c0b8], rax
xor eax, eax
mov byte [rbp + 0x28190], al
jmp 0x14004d77d
movups xmm0, xmmword [rbp + 0x281c0]
movaps xmmword [rbp + 0x1c0b0], xmm0
mov byte [rbp + 0x28190], 0
mov r14, qword [rbp + 0x28250]
jmp 0x14004d77d
lea rcx, [rbp + 0x1c080]
mov r8, r15
call fcn.140063d00
mov rsi, qword [rbp + 0x1c088]
mov rax, qword [rbp + 0xffd0]
mov qword [rbp + 0x1c0b0], rax
lea rcx, [rbp + 0x1c0b8]
mov r8d, 0x4008
mov rdx, rbx
call fcn.1401022e0
movups xmm0, xmmword [rbp + 0x13fe0]
movups xmm1, xmmword [rbp + 0x13ff0]
movups xmm2, xmmword [rbp + 0x14000]
xorpd xmm6, xmm6
movupd xmmword [rbp + 0x13fe0], xmm6
movaps xmmword [rbp + 0x200c0], xmm0
movaps xmmword [rbp + 0x200d0], xmm1
movaps xmmword [rbp + 0x200e0], xmm2
lea rcx, [rbp + 0x200f0]
mov r8d, 0x4008
lea rdx, [rbp + 0x14010]
call fcn.1401022e0
movups xmm0, xmmword [rbp + 0x18018]
movups xmm1, xmmword [rbp + 0x18028]
movups xmm2, xmmword [rbp + 0x18038]
movupd xmmword [rbp + 0x18018], xmm6
movups xmmword [rbp + 0x240f8], xmm0
movups xmmword [rbp + 0x24108], xmm1
movups xmmword [rbp + 0x24118], xmm2
lea rcx, [rbp + 0x24128]
mov r8d, 0x4008
lea rdx, [rbp + 0x18048]
call fcn.1401022e0
movups xmm0, xmmword [rbp + 0x1c050]
movups xmm1, xmmword [rbp + 0x1c060]
movups xmm2, xmmword [rbp + 0x1c070]
movupd xmmword [rbp + 0x1c050], xmm6
movaps xmmword [rbp + 0x28130], xmm0
movaps xmmword [rbp + 0x28140], xmm1
movaps xmmword [rbp + 0x28150], xmm2
mov rax, qword [rbp + 0x1c090]
movupd xmmword [rbx + 0xc0b0], xmm6
mov rcx, qword [rbp + 0x1c080]
mov qword [rbp + 0x1c080], 0
mov qword [rbp + 0x28160], rcx
mov qword [rbp + 0x28168], rsi
mov qword [rbp + 0x28170], rax
movupd xmm0, xmmword [r15]
movupd xmmword [rbp + 0x28178], xmm0
mov rax, qword [r15 + 0x10]
mov qword [rbp + 0x28188], rax
movupd xmmword [r15], xmm6
mov al, 1
mov byte [rbp + 0x28190], al
lea rcx, [0x1401732b8]
call fcn.1400cec74
lea rcx, [rbp + 0xffd0]
call fcn.140050150
test r14, r14
je 0x14004d7a3
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0x28248]
test rcx, rcx
je 0x14004d7b5
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0x28240]
test rcx, rcx
mov r14, qword [rbp + 0x28258]
je 0x14004d7ce
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp byte [rbp + 0x28190], 0
je 0x14004d035
xorpd xmm0, xmm0
movapd xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x18], 0xf
lea rsi, [rbp - 0x10]
movapd xmmword [rbp - 0x10], xmm0
mov qword [rbp], 0
mov qword [rbp + 8], 0xf
mov qword [rbp + 0x10], 1
mov dword [rbp + 0x18], 0
lea rax, [0x14016ed90]
mov qword [rbp + 0x20], rax
movabs r12, 0x7fffffffffffffff
mov rax, qword [rbp + 0x28268]
cmp qword [rax + 0x28], 0
je 0x14004d872
call fcn.1400cef3c
mov rbx, rax
call fcn.1400cef20
mov rcx, rax
cmp rbx, 0x989680
jne 0x14004eb2d
imul rdx, rcx, 0x64
mov rax, qword [rbp + 0x28268]
imul r12, qword [rax + 0x28], 0xf4240
add r12, rdx
lea rax, [rbp - 0x30]
mov qword [rbp + 0x200f0], rax
mov qword [rbp + 0x24128], rsi
mov rdi, qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
movabs rsi, 0x7fffffffffffffff
jmp 0x14004d8c4
lea rcx, [rax + r13*8]
lea rdx, [rcx + 8]
sub r8, rdx
call fcn.1401022e0
add qword [rbp + 0x28168], 0xfffffffffffffff8
nop
mov rax, qword [rbp + 0x28160]
cmp rax, qword [rbp + 0x28168]
je 0x14004dd3a
mov r9d, 0xffffffff
cmp r12, rsi
je 0x14004d938
call fcn.1400cef3c
mov rbx, rax
call fcn.1400cef20
mov rcx, rax
cmp rbx, 0x989680
jne 0x14004dc40
imul rdx, rcx, 0x64
mov rcx, r12
sub rcx, rdx
mov rax, rcx
movabs rdx, 0x431bde82d7b634db
imul rdx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x12
add rdx, rax
imul rax, rdx, 0xf4240
xor r9d, r9d
cmp rax, rcx
setl r9b
add r9, rdx
mov eax, 0xfffffffe
cmp r9, rax
jl 0x14004d938
mov r9d, 0xfffffffe
mov rdx, qword [rbp + 0x28160]
mov rcx, qword [rbp + 0x28168]
sub rcx, rdx
shr rcx, 3
xor r8d, r8d
call rdi
cmp eax, 0x102
je 0x14004d95e
cmp eax, 0xffffffff
jne 0x14004d9a0
cmp eax, 0x102
sete r13b
jne 0x14004dd42
call fcn.1400cef3c
mov rbx, rax
call fcn.1400cef20
mov rcx, rax
cmp rbx, 0x989680
jne 0x14004dbd8
imul rdx, rcx, 0x64
cmp rdx, r12
jl 0x14004d8b0
jmp 0x14004e2d8
mov r13d, eax
mov rax, qword [rbp + 0x28160]
mov r8, qword [rbp + 0x28168]
mov rcx, r8
sub rcx, rax
sar rcx, 3
cmp rcx, r13
jb 0x14004d8b0
mov rcx, qword [rax + r13*8]
cmp rcx, qword [rbp + 0x28178]
je 0x14004d897
xor eax, eax
cmp rcx, qword [rbp + 0x28158]
sete dl
mov r8d, 1
cmp rcx, qword [rbp + 0x24120]
je 0x14004d9f8
mov al, dl
add rax, rax
mov r8, rax
imul rsi, r8, 0x4038
lea rax, [rbp + 0x1c0b8]
cmp qword [rax + rsi], 0
lea rbx, [rax + rsi + 0x4018]
je 0x14004da8a
mov rcx, qword [rbx - 0x10]
mov rdx, rbx
lea r8, [rbp + 0xffd0]
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_GetOverlappedResult]
test eax, eax
je 0x14004daf8
lea rcx, [rbp + 0x1c0b8]
lea rax, [rcx + rsi]
mov r15, qword [rax]
mov r8d, dword [rbp + 0xffd0]
lea r14, [rcx + rsi]
add r14, 8
mov rcx, qword [r15 + 0x10]
mov rax, qword [r15 + 0x18]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x14004db15
mov qword [rsp + 0x20], r8
mov rcx, r15
mov rdx, r8
mov r9, r14
call fcn.1400053a0
movabs rsi, 0x7fffffffffffffff
jmp 0x14004db40
mov rcx, qword [rbx - 0x10]
mov rdx, rbx
lea r8, [rbp + 0xffd0]
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_GetOverlappedResult]
test eax, eax
movabs rsi, 0x7fffffffffffffff
je 0x14004db7d
mov rax, qword [rbp + 0x1c0b0]
mov ecx, dword [rbp + 0xffd0]
mov rdx, qword [rax + 0x18]
add rdx, rcx
mov qword [rax + 0x18], rdx
mov r8, qword [rax + 0x20]
sub r8, rcx
mov qword [rax + 0x20], r8
je 0x14004db8e
mov rcx, qword [rbx - 0x10]
mov qword [rsp + 0x20], rbx
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x14004d8b0
jmp 0x14004db6a
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e4
movabs rsi, 0x7fffffffffffffff
je 0x14004d8b0
jmp 0x14004db8e
lea rsi, [rcx + r8]
mov qword [r15 + 0x10], rsi
cmp rax, 0x10
jb 0x14004db26
mov r15, qword [r15]
add rcx, r15
mov rdx, r14
call fcn.1401022e0
mov byte [r15 + rsi], 0
movabs rsi, 0x7fffffffffffffff
mov rcx, qword [rbx - 0x10]
mov qword [rsp + 0x20], rbx
mov rdx, r14
mov r8d, 0x4000
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
mov r14, qword [rbp + 0x28258]
jne 0x14004d8b0
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
je 0x14004d8b0
jmp 0x14004db8e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e4
je 0x14004d8b0
mov rax, qword [rbp + 0x28160]
mov r8, qword [rbp + 0x28168]
lea rcx, [rax + r13*8]
lea rdx, [rax + r13*8]
add rdx, 8
sub r8, rdx
call fcn.1401022e0
add qword [rbp + 0x28168], 0xfffffffffffffff8
mov rcx, qword [rbx - 0x10]
mov qword [rbx - 0x10], 0
test rcx, rcx
je 0x14004d8b0
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14004d8b0
mov rax, rcx
cmp rbx, 0x16e3600
jne 0x14004dca4
movabs r9, 0xb2f4fc0794908cf3
imul r9
mov r8, rdx
add r8, rcx
mov rax, r8
shr rax, 0x3f
sar r8, 0x18
add r8, rax
imul rax, r8, 0x16e3600
sub rcx, rax
imul rcx, rcx, 0x3b9aca00
mov rax, rcx
imul r9
imul rax, r8, 0x3b9aca00
add rdx, rcx
mov rcx, rdx
shr rcx, 0x3f
sar rdx, 0x18
add rdx, rcx
add rdx, rax
jmp 0x14004d98e
mov rax, rcx
cmp rbx, 0x16e3600
jne 0x14004dcb7
movabs r9, 0xb2f4fc0794908cf3
imul r9
mov r8, rdx
add r8, rcx
mov rax, r8
shr rax, 0x3f
sar r8, 0x18
add r8, rax
imul rax, r8, 0x16e3600
sub rcx, rax
imul rcx, rcx, 0x3b9aca00
mov rax, rcx
imul r9
imul rax, r8, 0x3b9aca00
add rdx, rcx
mov rcx, rdx
shr rcx, 0x3f
sar rdx, 0x18
add rdx, rcx
add rdx, rax
jmp 0x14004d8f0
or rax, rbx
shr rax, 0x20
je 0x14004dcca
mov rax, rcx
cqo
idiv rbx
jmp 0x14004dcd0
or rax, rbx
shr rax, 0x20
je 0x14004dd02
mov rax, rcx
cqo
idiv rbx
jmp 0x14004dd08
mov eax, ecx
xor edx, edx
div ebx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rbx
or rdx, rax
shr rdx, 0x20
je 0x14004dcf4
cqo
idiv rbx
mov rdx, rax
jmp 0x14004dcfa
xor edx, edx
div ebx
mov edx, eax
add rdx, rcx
jmp 0x14004d98e
mov eax, ecx
xor edx, edx
div ebx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rbx
or rdx, rax
shr rdx, 0x20
je 0x14004dd2c
cqo
idiv rbx
mov rdx, rax
jmp 0x14004dd32
xor edx, edx
div ebx
mov edx, eax
add rdx, rcx
jmp 0x14004d8f0
xor r13d, r13d
jmp 0x14004e3e1
mov r12, qword [0x140172858]
movzx eax, byte [r12 + 0x50]
cmp al, 6
ja 0x14004e2d8
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x28264], eax
mov eax, dword [0x140171310]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov eax, dword [rax + 0x138]
test al, 1
je 0x14004eba4
mov eax, dword [0x140171310]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rdi, qword [rax + 0x128]
cmp byte [rdi + 0x280], 1
jne 0x14004ed85
mov rax, qword [rdi + 0x80]
mov edx, dword [rax + 0x80]
mov ecx, dword [rax + 0x180]
sub edx, ecx
add edx, dword [rax + 0x188]
cmp edx, 0x3f
ja 0x14004ddea
mov edx, dword [rax + 0x200]
mov dword [rax + 0x188], edx
mov ecx, dword [rax + 0x180]
add edx, dword [rax + 0x80]
sub edx, ecx
cmp edx, 0x40
jb 0x14004de04
mov r14, qword [rax + 0x90]
test r14, r14
je 0x14004de04
and ecx, dword [rax + 0x84]
add r14, rcx
jmp 0x14004dfb4
mov rax, qword [rdi + 0x80]
mov esi, dword [rax + 0x80]
nop word cs:[rax + rax]
mov rcx, rsi
add rsi, rsi
cmp rcx, 0x21
jb 0x14004de20
cmp rcx, 0x40000000
ja 0x14004dfe4
mov ecx, dword [rax + 0x180]
mov dword [rax + 0x100], ecx
mov ecx, 0x300
mov edx, 0x80
call fcn.1400cd3f0
mov r15, rax
movzx ebx, byte [rdi]
mov qword [rax], 0
test esi, esi
js 0x14004de96
lea eax, [rsi - 1]
test esi, eax
sete al
test esi, esi
setne cl
test cl, al
jne 0x14004de9b
mov eax, esi
cvtsi2sd xmm0, rax
call fcn.1400e74ac
addsd xmm0, qword [0x140126ed8]
call fcn.1400e5cfc
cvttsd2si rsi, xmm0
jmp 0x14004de9b
mov esi, 0x80000000
mov dword [r15 + 0x80], esi
lea eax, [rsi - 1]
mov dword [r15 + 0x84], eax
mov r14d, esi
xorps xmm0, xmm0
cvtsi2sd xmm0, r14
mulsd xmm0, qword [0x14012dff0]
divsd xmm0, qword [0x14012dff8]
cvttsd2si rax, xmm0
mov dword [r15 + 0x88], eax
add r14, r14
mov edx, 0x80
mov rcx, r14
mov r8d, ebx
mov qword [rbp + 0x28270], r15
call fcn.14009e990
mov rbx, qword [rbp + 0x28270]
mov qword [rbx + 0x90], rax
mov dword [rbx + 0x100], 0
mov qword [rbx + 0x180], 0
mov dword [rbx + 0x188], 0
mov dword [rbx + 0x200], 0
mov qword [rbx + 0x280], 0
mov dword [rbx + 0x288], 0
xor esi, esi
mov rcx, rax
xor edx, edx
mov r8, r14
call fcn.140102980
xor eax, eax
xchg dword [rbx + 0x100], eax
xchg dword [rbx + 0x200], esi
mov rax, qword [rdi + 0x80]
mov qword [rax], rbx
mov qword [rdi + 0x80], rbx
mov eax, dword [rbx + 0x80]
mov r14d, dword [rbx + 0x180]
sub eax, r14d
add eax, dword [rbx + 0x188]
cmp eax, 0x3f
mov rcx, rbx
ja 0x14004dfa6
mov eax, dword [rcx + 0x200]
mov dword [rcx + 0x188], eax
mov r14d, dword [rcx + 0x180]
add eax, dword [rcx + 0x80]
sub eax, r14d
cmp eax, 0x40
jb 0x14004dfe4
and r14d, dword [rcx + 0x84]
add r14, qword [rcx + 0x90]
test r14, r14
je 0x14004dfe4
movzx eax, byte [r12 + 0x39]
cmp eax, 1
je 0x14004e235
test eax, eax
jne 0x14004e240
rdtsc
mov rcx, rax
mov rax, rdx
shl rax, 0x20
or rax, rcx
jmp 0x14004e24b
lock inc qword [rdi + 0x380]
lea rbx, [rbp + 0xffd0]
movsd xmm6, qword [0x14012dff0]
movsd xmm7, qword [0x14012dff8]
movsd xmm8, qword [0x140126ed8]
jmp 0x14004e018
xor r14d, r14d
test r14, r14
jne 0x14004dfb9
mov qword [rbp + 0xffd0], 0x320
mov rcx, rbx
call fcn.140015710
cmp byte [rdi + 0x280], 1
jne 0x14004ecd8
mov rax, qword [rdi + 0x80]
mov edx, dword [rax + 0x80]
mov ecx, dword [rax + 0x180]
sub edx, ecx
add edx, dword [rax + 0x188]
cmp edx, 0x3f
ja 0x14004e077
mov edx, dword [rax + 0x200]
mov dword [rax + 0x188], edx
mov ecx, dword [rax + 0x180]
add edx, dword [rax + 0x80]
sub edx, ecx
cmp edx, 0x40
jb 0x14004e090
mov r14, qword [rax + 0x90]
test r14, r14
je 0x14004e090
and ecx, dword [rax + 0x84]
add r14, rcx
jmp 0x14004e013
mov rax, qword [rdi + 0x80]
mov esi, dword [rax + 0x80]
nop dword [rax]
mov rcx, rsi
add rsi, rsi
cmp rcx, 0x21
jb 0x14004e0a0
cmp rcx, 0x40000000
ja 0x14004e010
mov ecx, dword [rax + 0x180]
mov dword [rax + 0x100], ecx
mov ecx, 0x300
mov edx, 0x80
call fcn.1400cd3f0
mov r15, rax
movzx r14d, byte [rdi]
mov qword [rax], 0
test esi, esi
js 0x14004e114
lea eax, [rsi - 1]
test esi, eax
sete al
test esi, esi
setne cl
test cl, al
jne 0x14004e119
mov eax, esi
cvtsi2sd xmm0, rax
call fcn.1400e74ac
addsd xmm0, xmm8
call fcn.1400e5cfc
cvttsd2si rsi, xmm0
jmp 0x14004e119
mov esi, 0x80000000
mov dword [r15 + 0x80], esi
lea eax, [rsi - 1]
mov dword [r15 + 0x84], eax
mov rcx, r15
mov r15d, esi
xorps xmm0, xmm0
cvtsi2sd xmm0, r15
mulsd xmm0, xmm6
divsd xmm0, xmm7
cvttsd2si rax, xmm0
mov qword [rbp + 0x28270], rcx
mov dword [rcx + 0x88], eax
add r15, r15
mov edx, 0x80
mov rcx, r15
mov r8d, r14d
call fcn.14009e990
mov rsi, qword [rbp + 0x28270]
mov qword [rsi + 0x90], rax
mov dword [rsi + 0x100], 0
mov qword [rsi + 0x180], 0
mov dword [rsi + 0x188], 0
mov dword [rsi + 0x200], 0
mov qword [rsi + 0x280], 0
mov dword [rsi + 0x288], 0
mov rcx, rax
xor edx, edx
mov r8, r15
call fcn.140102980
xor eax, eax
xchg dword [rsi + 0x100], eax
xor eax, eax
xchg dword [rsi + 0x200], eax
mov rax, qword [rdi + 0x80]
mov qword [rax], rsi
mov qword [rdi + 0x80], rsi
mov eax, dword [rsi + 0x80]
mov r14d, dword [rsi + 0x180]
sub eax, r14d
add eax, dword [rsi + 0x188]
cmp eax, 0x3f
mov rcx, rsi
ja 0x14004e222
mov eax, dword [rcx + 0x200]
mov dword [rcx + 0x188], eax
mov r14d, dword [rcx + 0x180]
add eax, dword [rcx + 0x80]
sub eax, r14d
cmp eax, 0x40
jb 0x14004e010
and r14d, dword [rcx + 0x84]
add r14, qword [rcx + 0x90]
jmp 0x14004e013
call fcn.1400ceeb4
imul rax, rax, 0x64
jmp 0x14004e24b
mov rcx, qword [r12 + 0x40]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rcx, [r14 + 7]
and rcx, 0xfffffffffffffff8
lea rdx, [0x1400c4620]
mov qword [rcx], rdx
mov qword [rcx + 8], r12
mov qword [rcx + 0x10], rax
mov eax, dword [rbp + 0x28188]
mov dword [rcx + 0x18], eax
add rcx, 0x23
and rcx, 0xfffffffffffffff8
mov eax, dword [rbp + 0x28264]
mov dword [rcx], eax
lea rax, [0x14016ed90]
mov qword [rcx + 8], rax
cmp byte [rdi + 0x280], 1
jne 0x14004ed8a
sub ecx, r14d
mov rax, qword [rdi + 0x80]
mov edx, dword [rax + 0x180]
add ecx, edx
add ecx, 0x10
mov dword [rax + 0x180], ecx
cmp byte [rdi + 0x280], 1
jne 0x14004ed8f
mov rax, qword [rdi + 0x80]
mov ecx, dword [rax + 0x180]
mov dword [rax + 0x100], ecx
mov r14, qword [rbp + 0x28258]
mov rcx, qword [rbp + 0x200c0]
test rcx, rcx
je 0x14004e322
lea rdi, [rbp + 0x200d0]
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_CancelIoEx]
test eax, eax
jne 0x14004e305
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x490
je 0x14004e322
mov rcx, qword [rbp + 0x200c0]
lea r8, [rbp + 0xffd0]
mov rdx, rdi
mov r9d, 1
call qword [sym.imp.KERNEL32.dll_GetOverlappedResult]
mov rcx, qword [rbp + 0x240f8]
test rcx, rcx
je 0x14004e36c
lea rdi, [rbp + 0x24108]
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_CancelIoEx]
test eax, eax
jne 0x14004e34f
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x490
je 0x14004e36c
mov rcx, qword [rbp + 0x240f8]
lea r8, [rbp + 0xffd0]
mov rdx, rdi
mov r9d, 1
call qword [sym.imp.KERNEL32.dll_GetOverlappedResult]
mov rcx, qword [rbp + 0x28130]
test rcx, rcx
je 0x14004e3b6
lea rdi, [rbp + 0x28140]
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_CancelIoEx]
test eax, eax
jne 0x14004e399
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x490
je 0x14004e3b6
mov rcx, qword [rbp + 0x28130]
lea r8, [rbp + 0xffd0]
mov rdx, rdi
mov r9d, 1
call qword [sym.imp.KERNEL32.dll_GetOverlappedResult]
mov edx, dword [rbp + 0x28188]
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_GenerateConsoleCtrlEvent]
mov rcx, qword [rbp + 0x28178]
mov edx, 1
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
test eax, eax
je 0x14004e57f
lea rsi, [rbp - 0x10]
mov rcx, qword [rbp + 0x28178]
lea rdx, [rbp + 0xffd0]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
je 0x14004e483
mov ecx, dword [rbp + 0xffd0]
mov dword [rbp + 0x14], ecx
mov eax, 3
test r13b, r13b
jne 0x14004e42f
mov rax, qword [rbp + 0x28268]
cmp byte [rax + 0x38], 0
setne al
test ecx, ecx
setne cl
and cl, al
movzx eax, cl
shl eax, 2
mov dword [rbp + 0x10], eax
movaps xmm0, xmmword [rbp - 0x30]
movaps xmm1, xmmword [rbp - 0x20]
movups xmmword [r14 + 0x10], xmm1
movups xmmword [r14], xmm0
mov qword [rbp - 0x20], 0
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], 0
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmmword [r14 + 0x30], xmm1
movups xmmword [r14 + 0x20], xmm0
lea rax, [rbp + 0x10]
movupd xmm0, xmmword [rax]
movupd xmmword [r14 + 0x40], xmm0
mov rax, qword [rax + 0x10]
mov qword [r14 + 0x50], rax
jmp 0x14004e50e
call qword [sym.imp.KERNEL32.dll_GetLastError]
xorpd xmm0, xmm0
movupd xmmword [r14], xmm0
mov qword [r14 + 0x10], 0
mov qword [r14 + 0x18], 0xf
movupd xmmword [r14 + 0x20], xmm0
mov qword [r14 + 0x30], 0
mov qword [r14 + 0x38], 0xf
mov qword [r14 + 0x40], 2
mov dword [r14 + 0x48], eax
lea rax, [0x14016ed90]
mov qword [r14 + 0x50], rax
mov rax, qword [rbp + 8]
cmp rax, 0x10
jb 0x14004e50e
mov rcx, qword [rbp - 0x10]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14004e509
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14004ecdd
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400cd44c
mov qword [rbp], 0
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], 0
mov rax, qword [rbp - 0x18]
cmp rax, 0x10
jb 0x14004e561
mov rcx, qword [rbp - 0x30]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14004e55c
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14004ecdd
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1400cd44c
cmp byte [rbp + 0x28190], 0
je 0x14004d08b
lea rcx, [rbp + 0x1c0b0]
call fcn.140050150
jmp 0x14004d08b
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
lea rsi, [rbp - 0x10]
je 0x14004e3e5
mov r12, qword [0x140172858]
movzx eax, byte [r12 + 0x50]
cmp al, 6
ja 0x14004e3e5
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x28264], eax
mov eax, dword [0x140171310]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov eax, dword [rax + 0x138]
test al, 1
je 0x14004ec5f
mov eax, dword [0x140171310]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rdi, qword [rax + 0x128]
cmp byte [rdi + 0x280], 1
jne 0x14004ed94
mov rax, qword [rdi + 0x80]
mov edx, dword [rax + 0x80]
mov ecx, dword [rax + 0x180]
sub edx, ecx
add edx, dword [rax + 0x188]
cmp edx, 0x3f
ja 0x14004e63a
mov edx, dword [rax + 0x200]
mov dword [rax + 0x188], edx
mov ecx, dword [rax + 0x180]
add edx, dword [rax + 0x80]
sub edx, ecx
cmp edx, 0x40
jb 0x14004e654
mov r14, qword [rax + 0x90]
test r14, r14
je 0x14004e654
and ecx, dword [rax + 0x84]
add r14, rcx
jmp 0x14004e804
mov rax, qword [rdi + 0x80]
mov esi, dword [rax + 0x80]
nop word cs:[rax + rax]
mov rcx, rsi
add rsi, rsi
cmp rcx, 0x21
jb 0x14004e670
cmp rcx, 0x40000000
ja 0x14004e834
mov ecx, dword [rax + 0x180]
mov dword [rax + 0x100], ecx
mov ecx, 0x300
mov edx, 0x80
call fcn.1400cd3f0
mov r15, rax
movzx ebx, byte [rdi]
mov qword [rax], 0
test esi, esi
js 0x14004e6e6
lea eax, [rsi - 1]
test esi, eax
sete al
test esi, esi
setne cl
test cl, al
jne 0x14004e6eb
mov eax, esi
cvtsi2sd xmm0, rax
call fcn.1400e74ac
addsd xmm0, qword [0x140126ed8]
call fcn.1400e5cfc
cvttsd2si rsi, xmm0
jmp 0x14004e6eb
mov esi, 0x80000000
mov dword [r15 + 0x80], esi
lea eax, [rsi - 1]
mov dword [r15 + 0x84], eax
mov r14d, esi
xorps xmm0, xmm0
cvtsi2sd xmm0, r14
mulsd xmm0, qword [0x14012dff0]
divsd xmm0, qword [0x14012dff8]
cvttsd2si rax, xmm0
mov dword [r15 + 0x88], eax
add r14, r14
mov edx, 0x80
mov rcx, r14
mov r8d, ebx
mov qword [rbp + 0x28270], r15
call fcn.14009e990
mov rbx, qword [rbp + 0x28270]
mov qword [rbx + 0x90], rax
mov dword [rbx + 0x100], 0
mov qword [rbx + 0x180], 0
mov dword [rbx + 0x188], 0
mov dword [rbx + 0x200], 0
mov qword [rbx + 0x280], 0
mov dword [rbx + 0x288], 0
xor esi, esi
mov rcx, rax
xor edx, edx
mov r8, r14
call fcn.140102980
xor eax, eax
xchg dword [rbx + 0x100], eax
xchg dword [rbx + 0x200], esi
mov rax, qword [rdi + 0x80]
mov qword [rax], rbx
mov qword [rdi + 0x80], rbx
mov eax, dword [rbx + 0x80]
mov r14d, dword [rbx + 0x180]
sub eax, r14d
add eax, dword [rbx + 0x188]
cmp eax, 0x3f
mov rcx, rbx
ja 0x14004e7f6
mov eax, dword [rcx + 0x200]
mov dword [rcx + 0x188], eax
mov r14d, dword [rcx + 0x180]
add eax, dword [rcx + 0x80]
sub eax, r14d
cmp eax, 0x40
jb 0x14004e834
and r14d, dword [rcx + 0x84]
add r14, qword [rcx + 0x90]
test r14, r14
je 0x14004e834
movzx eax, byte [r12 + 0x39]
cmp eax, 1
je 0x14004ea85
test eax, eax
jne 0x14004ea90
rdtsc
mov rcx, rax
mov rax, rdx
shl rax, 0x20
or rax, rcx
jmp 0x14004ea9b
lock inc qword [rdi + 0x380]
lea rbx, [rbp + 0xffd0]
movsd xmm6, qword [0x14012dff0]
movsd xmm7, qword [0x14012dff8]
movsd xmm8, qword [0x140126ed8]
jmp 0x14004e866
xor r14d, r14d
test r14, r14
jne 0x14004e809
mov qword [rbp + 0xffd0], 0x320
mov rcx, rbx
call fcn.140015710
cmp byte [rdi + 0x280], 1
jne 0x14004ed80
mov rax, qword [rdi + 0x80]
mov edx, dword [rax + 0x80]
mov ecx, dword [rax + 0x180]
sub edx, ecx
add edx, dword [rax + 0x188]
cmp edx, 0x3f
ja 0x14004e8c5
mov edx, dword [rax + 0x200]
mov dword [rax + 0x188], edx
mov ecx, dword [rax + 0x180]
add edx, dword [rax + 0x80]
sub edx, ecx
cmp edx, 0x40
jb 0x14004e8dc
mov r14, qword [rax + 0x90]
test r14, r14
je 0x14004e8dc
and ecx, dword [rax + 0x84]
add r14, rcx
jmp 0x14004e861
mov rax, qword [rdi + 0x80]
mov esi, dword [rax + 0x80]
nop dword [rax]
mov rcx, rsi
add rsi, rsi
cmp rcx, 0x21
jb 0x14004e8f0
cmp rcx, 0x40000000
ja 0x14004e85e
mov ecx, dword [rax + 0x180]
mov dword [rax + 0x100], ecx
mov ecx, 0x300
mov edx, 0x80
call fcn.1400cd3f0
mov r15, rax
movzx r14d, byte [rdi]
mov qword [rax], 0
test esi, esi
js 0x14004e964
lea eax, [rsi - 1]
test esi, eax
sete al
test esi, esi
setne cl
test cl, al
jne 0x14004e969
mov eax, esi
cvtsi2sd xmm0, rax
call fcn.1400e74ac
addsd xmm0, xmm8
call fcn.1400e5cfc
cvttsd2si rsi, xmm0
jmp 0x14004e969
mov esi, 0x80000000
mov dword [r15 + 0x80], esi
lea eax, [rsi - 1]
mov dword [r15 + 0x84], eax
mov rcx, r15
mov r15d, esi
xorps xmm0, xmm0
cvtsi2sd xmm0, r15
mulsd xmm0, xmm6
divsd xmm0, xmm7
cvttsd2si rax, xmm0
mov qword [rbp + 0x28270], rcx
mov dword [rcx + 0x88], eax
add r15, r15
mov edx, 0x80
mov rcx, r15
mov r8d, r14d
call fcn.14009e990
mov rsi, qword [rbp + 0x28270]
mov qword [rsi + 0x90], rax
mov dword [rsi + 0x100], 0
mov qword [rsi + 0x180], 0
mov dword [rsi + 0x188], 0
mov dword [rsi + 0x200], 0
mov qword [rsi + 0x280], 0
mov dword [rsi + 0x288], 0
mov rcx, rax
xor edx, edx
mov r8, r15
call fcn.140102980
xor eax, eax
xchg dword [rsi + 0x100], eax
xor eax, eax
xchg dword [rsi + 0x200], eax
mov rax, qword [rdi + 0x80]
mov qword [rax], rsi
mov qword [rdi + 0x80], rsi
mov eax, dword [rsi + 0x80]
mov r14d, dword [rsi + 0x180]
sub eax, r14d
add eax, dword [rsi + 0x188]
cmp eax, 0x3f
mov rcx, rsi
ja 0x14004ea72
mov eax, dword [rcx + 0x200]
mov dword [rcx + 0x188], eax
mov r14d, dword [rcx + 0x180]
add eax, dword [rcx + 0x80]
sub eax, r14d
cmp eax, 0x40
jb 0x14004e85e
and r14d, dword [rcx + 0x84]
add r14, qword [rcx + 0x90]
jmp 0x14004e861
call fcn.1400ceeb4
imul rax, rax, 0x64
jmp 0x14004ea9b
mov rcx, qword [r12 + 0x40]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rcx, [r14 + 7]
and rcx, 0xfffffffffffffff8
lea rdx, [0x1400c49d0]
mov qword [rcx], rdx
mov qword [rcx + 8], r12
mov qword [rcx + 0x10], rax
mov eax, dword [rbp + 0x28188]
mov dword [rcx + 0x18], eax
add rcx, 0x23
and rcx, 0xfffffffffffffff8
mov eax, dword [rbp + 0x28264]
mov dword [rcx], eax
lea rax, [0x14016ed90]
mov qword [rcx + 8], rax
cmp byte [rdi + 0x280], 1
jne 0x14004ed99
sub ecx, r14d
mov rax, qword [rdi + 0x80]
mov edx, dword [rax + 0x180]
add ecx, edx
add ecx, 0x10
mov dword [rax + 0x180], ecx
cmp byte [rdi + 0x280], 1
jne 0x14004ed9e
mov rax, qword [rdi + 0x80]
mov ecx, dword [rax + 0x180]
mov dword [rax + 0x100], ecx
mov r14, qword [rbp + 0x28258]
jmp 0x14004e3e1
mov r9, rsi
mov rax, rcx
cmp rbx, 0x16e3600
jne 0x14004eb91
movabs r10, 0xb2f4fc0794908cf3
imul r10
mov r8, rdx
add r8, rcx
mov rax, r8
shr rax, 0x3f
sar r8, 0x18
add r8, rax
imul rax, r8, 0x16e3600
sub rcx, rax
imul rcx, rcx, 0x3b9aca00
mov rax, rcx
imul r10
imul rax, r8, 0x3b9aca00
add rdx, rcx
mov rcx, rdx
shr rcx, 0x3f
sar rdx, 0x18
add rdx, rcx
add rdx, rax
jmp 0x14004ec0f
or rax, rbx
shr rax, 0x20
je 0x14004ebdc
mov rax, rcx
cqo
idiv rbx
jmp 0x14004ebe2
mov rdx, qword [r12 + 0x48]
or eax, 1
mov ecx, dword [0x140171310]
mov r8, qword gs:[0x58]
mov rcx, qword [r8 + rcx*8]
mov dword [rcx + 0x138], eax
mov rax, qword [rdx]
mov r8d, dword [rax + 0xe8]
cmp qword [rax + 0x30], 0
je 0x14004ec1e
mov r9d, dword [rax + 0x48]
jmp 0x14004ec24
mov eax, ecx
xor edx, edx
div ebx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rbx
or rdx, rax
shr rdx, 0x20
je 0x14004ec06
cqo
idiv rbx
mov rdx, rax
jmp 0x14004ec0c
xor edx, edx
div ebx
mov edx, eax
add rdx, rcx
mov r14, qword [rbp + 0x28258]
mov rsi, r9
jmp 0x14004d860
mov r9d, 1
movzx eax, byte [rax + 0xec]
mov byte [rsp + 0x20], al
mov eax, dword [0x140171310]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0x120]
call fcn.14000b160
lea rcx, [0x140015950]
call fcn.1400cd650
jmp 0x14004dd84
mov rdx, qword [r12 + 0x48]
or eax, 1
mov ecx, dword [0x140171310]
mov r8, qword gs:[0x58]
mov rcx, qword [r8 + rcx*8]
mov dword [rcx + 0x138], eax
mov rax, qword [rdx]
mov r8d, dword [rax + 0xe8]
cmp qword [rax + 0x30], 0
je 0x14004ec97
mov r9d, dword [rax + 0x48]
jmp 0x14004ec9d
mov r9d, 1
movzx eax, byte [rax + 0xec]
mov byte [rsp + 0x20], al
mov eax, dword [0x140171310]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0x120]
call fcn.14000b160
lea rcx, [0x140015950]
call fcn.1400cd650
jmp 0x14004e5d4
call fcn.14000b7a0
call fcn.1400e193c
lea rcx, [0x140173308]
call fcn.1400cd488
cmp dword [0x140173308], 0xffffffff
jne 0x14004d24e
mov dword [0x1401732b8], 0
lea rcx, [0x1401732b8]
xorpd xmm0, xmm0
movupd xmmword [0x1401732c0], xmm0
movupd xmmword [0x1401732d0], xmm0
movupd xmmword [0x1401732e0], xmm0
movupd xmmword [0x1401732f0], xmm0
mov qword [0x140173300], 0
mov edx, 2
call fcn.1400cec24
lea rcx, [0x14004f7f0]
call fcn.1400cd6e8
lea rcx, [0x140173308]
call fcn.1400cd53c
jmp 0x14004d24e
mov ecx, 5
call fcn.1400ce164
mov dword [0x140173304], 0x7ffffffe
mov ecx, 6
call fcn.1400ce164
call fcn.14000b7a0
call fcn.14000b7a0
call fcn.14000b7a0
call fcn.14000b7a0
call fcn.14000b7a0
call fcn.14000b7a0
call fcn.14000b7a0
int3