Function at 0x180007894
Capabilities:
Receive data
Receive data on socket

Disassembly:
push r15
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1038
xor esi, esi
lea rdi, [rsp + 0x30]
mov ecx, 0x2000000
call sub.msvcrt.dll_malloc
mov rbp, rax
jmp 0x180007a53
movsxd rax, eax
lea rcx, [rbp + rsi]
add rsi, rax
mov rdx, rdi
mov r8, rax
call sub.msvcrt.dll_memcpy
push rsi
push r12
push rbp
mov rbp, rsp
sub rsp, 0x28
mov rsi, qword [rbp - 0xe]
sub eax, esi
mov edx, dword [rbp - 0xb]
mov qword [rbp - 0x17], r9
mov edx, ecx
mov rsi, r9
mov dword [rbp - 0x1e], edx
mov ecx, dword [rbp - 0x17]
test eax, 0x68057e35
js 0x180007a37
and ecx, dword [rbp - 3]
mov qword [rbp - 0x10], rax
mov qword [rbp - 9], r10
sub esi, 0xb531
add eax, dword [rbp - 0x1a]
mov esi, dword [rbp - 0x18]
sub esi, 0x5f69
add rax, qword [rbp - 0x17]
lea rsi, [rbp - 0xb]
sub dword [rbp - 0x17], esi
movzx ecx, byte [0x180009ba6]
mov r8, qword [rbp - 6]
mov eax, ecx
mov rcx, r12
mov qword [rbp - 0xa], rcx
mov edx, dword [rbp - 0xe]
mov eax, esi
and esi, edx
sub qword [rbp - 0x10], rax
mov edx, dword [rbp - 0x15]
mov esi, dword [rbp - 0x13]
mov esi, dword [rbp - 0x11]
mov edx, dword [rbp - 4]
mov dword [rbp - 0x1a], edx
mov dword [rbp - 0xc], ecx
sub rsp, 0x10
mov qword [rsp], 0
jmp 0x180007969
inc qword [rsp]
cmp qword [rsp], 0xdb84
jle 0x180007965
add rsp, 0x10
add eax, edx
and r9, rcx
add ecx, esi
and dword [rbp - 0xb], ecx
mov edx, dword [rbp - 0x19]
and qword [rbp - 0x1a], rcx
and edx, dword [rbp - 0x16]
mov r12, r8
sub rsp, 0x10
mov qword [rsp], 0
jmp 0x1800079bf
or qword [rbp - 0x16], r8
mov r9, qword [rbp - 0x10]
or rax, qword [0x180009bad]
mov dword [0x180009baf], esi
add ecx, dword [rbp - 9]
mov esi, eax
sub eax, ecx
movzx eax, ch
inc qword [rsp]
mov edx, 0x9f48
cmp edx, dword [rsp]
jl 0x18000799c
add rsp, 0x10
mov r10, qword [rbp - 0xf]
sub dword [rbp - 0x14], eax
mov r9, 0x717b
sub rsp, 0x10
mov qword [rsp], 0
jmp 0x180007a29
or r12, qword [rbp - 0x17]
and dword [rbp - 0x16], eax
mov ecx, eax
mov eax, dword [rbp - 2]
movzx edx, dl
sub ecx, 0x96c9
mov dword [rbp - 0xf], ecx
nop
and qword [rbp - 9], r8
mov qword [rbp - 0xa], r9
xor rcx, 0xb028
add esi, 0x710d
mov rax, qword [rbp - 0x1f]
mov r12, qword [rbp - 3]
mov qword [rbp - 0x14], r10
mov eax, ecx
inc qword [rsp]
mov esi, 0x5ed1
cmp esi, dword [rsp]
jl 0x1800079e9
add rsp, 0x10
leave
pop r12
pop rsi
lea rdx, [0x18000787f]
mov rcx, rbp
call sub.msvcrt.dll_strstr
test rax, rax
jne 0x180007bd8
mov rdx, rdi
xor r9d, r9d
mov r8d, 0x1000
mov rcx, qword [0x1800098d8]
call sub.WS2_32.dll_recv
lea edx, [rax + 1]
cmp edx, 1
ja 0x1800078ba
push rsi
push rbx
push r12
push r13
push r15
push r14
push rdi
push rbp
mov rbp, rsp
sub rsp, 0x348
mov qword [rbp - 0x247], rdi
sub r15, 0x517f
mov dword [rbp - 0x23d], esi
add r10, r13
mov dword [rbp - 0x22c], edi
mov byte [rbp - 0xd2], al
movzx eax, dl
movzx ecx, al
mov dword [rbp - 0x297], ebx
mov dword [0x180009bb0], edx
or eax, dword [rbp - 0x1e]
sub eax, dword [rbp - 0x308]
lea r12, [rbp - 0x226]
movzx eax, ah
movzx ebx, ch
add r15, 0xe34c
sub rsp, 0x10
mov qword [rsp], 0
jmp 0x180007b18
mov rsi, qword [0x180009ba9]
mov esi, dword [rbp - 0xda]
mov qword [rbp - 0x27f], rdx
add r12, rcx
movzx esi, dh
sub esi, eax
add edi, eax
mov ebx, dword [rbp - 0x39]
mov ah, byte [rbp - 0x1c5]
inc qword [rsp]
mov esi, 0x783f
cmp esi, dword [rsp]
jl 0x180007aed
add rsp, 0x10
mov rax, rdx
mov byte [rbp - 0x10], dh
mov byte [rbp - 0x73], cl
add ecx, edx
mov edx, 0x315d
mov edi, dword [0x180009ba6]
movzx ebx, dx
mov r9, qword [rbp - 0xec]
mov ebx, dword [rbp - 0xbe]
xor ebx, 0xfeac
sub qword [rbp - 0x2ac], rdi
test rdi, 0xffffffff8cae614f
jne 0x180007bac
mov dword [rbp - 0x24d], ecx
mov dword [rbp - 0xcd], edi
mov edx, eax
mov dword [rbp - 0x153], esi
mov di, word [rbp - 0x10]
mov esi, ebx
mov eax, 0x689f
sub ebx, 0xa1fa
add ecx, dword [rbp - 0x215]
sub qword [0x180009bac], rdi
mov r11, qword [0x180009bae]
mov rcx, qword [rbp - 0x296]
mov r10, r14
mov r14, qword [rbp - 0x1bd]
or rdi, r14
leave
pop rdi
pop r14
pop r15
pop r13
pop r12
pop rbx
pop rsi
mov rcx, rbp
call sub.msvcrt.dll_free
mov rax, 0xffffffffffffffff
add rsp, 0x1038
pop rbx
pop rsi
pop rdi
pop rbp
pop r15
ret
lea rdx, [0x180007884]
mov rcx, rbp
lea rbx, [rax + 4]
call sub.msvcrt.dll_strstr
mov dword [rsp + 0x2c], 0
test rax, rax
je 0x180007dbe
lea rcx, [rax + 0xf]
mov r8d, 0xa
xor edx, edx
call sub.msvcrt.dll_strtol
mov dword [rsp + 0x2c], eax
push r13
push r12
push rsi
push rdi
push r15
push rbp
mov rbp, rsp
sub rsp, 0x478
mov edx, ecx
sub rsp, 0x10
mov qword [rsp], 0
jmp 0x180007da3
mov rcx, 0xb913
mov dword [rbp - 0x194], edi
mov esi, dword [rbp - 0x328]
mov qword [rbp - 0x33], rax
sub eax, 0xca55
mov ecx, dword [rbp - 0xd5]
movzx esi, cl
mov esi, dword [rbp - 0x41]
movzx esi, ah
add qword [rbp - 0x152], r11
sub eax, 0x5360
sub edi, esi
xor qword [rbp - 0x1d9], r8
or qword [rbp - 0x330], rax
mov eax, dword [rbp - 0x2a1]
movzx edi, cl
sub edi, eax
add edi, edx
add rdi, qword [rbp - 0x1a8]
mov edx, edi
add r9, rcx
mov rdx, r12
mov dword [rbp - 0xf4], esi
mov eax, dword [rbp - 0x199]
mov r11, rcx
mov ecx, 0x4d86
mov r13, qword [rbp - 0x23b]
mov qword [rbp - 0x3c5], r9
movzx esi, dl
sub eax, 0xd74c
mov r10, qword [0x180009bb0]
mov dword [0x180009baf], esi
xor edi, dword [rbp - 0x2b7]
mov eax, ecx
movzx eax, dx
mov dword [rbp - 0x2d2], edx
add edi, 0xe4eb
mov edx, dword [rbp - 0x305]
sub dword [0x180009bab], edi
or r10, 0x4453
sub r13, 0x352e
mov cl, byte [rbp - 0x5f]
add r12, r9
sub ecx, edi
mov dword [rbp - 0x11e], edi
mov rsi, qword [rbp - 0x32d]
add r11, qword [rbp - 0x34]
and qword [rbp - 0x3d8], rcx
add eax, dword [0x180009bb2]
or dword [rbp - 0x2ce], ecx
mov dword [rbp - 0x446], edx
and dword [rbp - 0xa4], ecx
xor qword [rbp - 0x38a], rax
sub edx, 0x949b
mov edi, dword [rbp - 0x2e9]
movzx edx, ah
mov edx, dword [rbp - 0x196]
mov dword [0x180009bac], edx
mov qword [rbp - 0x1c8], rdx
mov cl, dh
sub qword [rbp - 0xfd], r15
mov qword [rbp - 0x1e0], rcx
mov ax, word [rbp - 0x5c]
sub rdi, r8
or dword [rbp - 0x11e], eax
mov r13, r10
mov esi, dword [rbp - 0x215]
movzx ecx, dh
mov qword [rbp - 0x379], r12
mov ecx, dword [rbp - 0x2bd]
mov dword [rbp - 0x2b8], esi
inc qword [rsp]
cmp qword [rsp], 0x2911
jle 0x180007c37
add rsp, 0x10
leave
pop r15
pop rdi
pop rsi
pop r12
pop r13
mov rax, rbx
mov r15d, esi
sub rax, rbp
sub r15d, eax
cmp dword [rsp + 0x2c], r15d
jg 0x180007f47
jmp 0x180007f72
lea rcx, [rbp + rsi]
mov rdx, rdi
add r15d, ebx
movsxd r8, ebx
add rsi, r8
call sub.msvcrt.dll_memcpy
cmp dword [rsp + 0x2c], r15d
jle 0x180007f72
push rdi
push rbp
mov rbp, rsp
sub rsp, 0x128
xor dword [rbp - 0xaf], eax
mov r9, qword [rbp - 0x10c]
mov r9, qword [rbp - 0x7d]
mov qword [rbp - 0x73], r9
movzx ecx, di
cmp rdi, rdx
jne 0x180007e3c
mov qword [rbp - 0xcf], r10
mov edi, eax
mov dword [rbp - 0xcd], edx
mov r11, qword [rbp - 0x47]
and rax, rdx
mov eax, ecx
movzx eax, byte [rbp - 4]
mov dword [rbp - 0x52], edi
sub dword [rbp - 0x10c], eax
xor r9, 0x16fc
sub qword [rbp - 0x117], r8
mov dword [rbp - 0x30], edi
mov edi, dword [rbp - 0x35]
mov rcx, rdi
mov edi, 0xc90b
mov dword [rbp - 0xba], edi
or qword [rbp - 0x11f], rdi
mov dword [0x180009bb1], edx
sub rsp, 0x10
mov qword [rsp], 0
jmp 0x180007ef9
mov r8, qword [rbp - 0x3d]
or rdx, r11
mov ch, 0x10
mov qword [rbp - 0x27], r8
and edx, edi
mov r8, qword [rbp - 0x113]
mov dword [rbp - 0x4c], ecx
mov dword [rbp - 0x8e], edi
xor r10, r11
mov rdx, rdi
mov qword [rbp - 0xb8], r10
xor ecx, 0x28e1
mov edx, dword [rbp - 0x20]
add eax, dword [rbp - 0xcb]
or qword [rbp - 0x104], rcx
mov rcx, qword [rbp - 0xfa]
movzx edx, dl
mov r10, qword [rbp - 0x1a]
mov eax, dword [rbp - 0xc]
add dword [rbp - 0x94], ecx
mov r9, qword [rbp - 0x51]
mov qword [rbp - 0x59], rcx
add rdi, qword [rbp - 0xef]
sub r10, 0xebf3
inc qword [rsp]
mov ecx, 0x88f8
cmp ecx, dword [rsp]
jl 0x180007e86
add rsp, 0x10
cmp edi, dword [0x180009ba8]
jmp 0x180007f45
leave
pop rdi
xor r9d, r9d
mov r8d, 0x1000
mov rdx, rdi
mov rcx, qword [0x1800098d8]
call sub.WS2_32.dll_recv
mov ebx, eax
lea eax, [rax + 1]
cmp eax, 1
ja 0x180007dda
jmp 0x180007bbb
mov qword [0x180009423], rbp
movsxd rax, dword [rsp + 0x2c]
jmp 0x180007bca