Function at 0x1800517f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x20], r9d
push rbp
push rsi
push rdi
sub rsp, 0x50
mov r10, qword [rcx + 0x10]
xor ebx, ebx
mov qword [rsp + 0x48], r10
mov ebp, r8d
mov dword [rsp + 0x70], ebx
mov rsi, rdx
mov dword [rsp + 0x44], ebx
mov rdi, rcx
test r10, r10
je 0x180051b74
test rdx, rdx
je 0x180051b74
movzx r8d, byte [rdx]
mov eax, r8d
xor eax, 1
mov dword [rsp + 0x40], eax
lea eax, [r8 - 0x13]
cmp eax, 0x90
ja case.0x180051867.20
lea rdx, [0x180000000]
cdqe
movzx eax, byte [rdx + rax + 0x51bac]
mov ecx, dword [rdx + rax*4 + 0x51b84]
add rcx, rdx
jmp rcx
mov rdx, qword [rsi + 0x10]
mov r8d, ebp
mov rcx, rdi
call fcn.1800517f0
mov r9d, dword [rsp + 0x88]
mov r8d, ebp
mov rdx, qword [rsi + 0x18]
mov rcx, rdi
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.1800517f0
mov rcx, r10
call fcn.1800336e0
mov r9d, dword [rsp + 0x88]
mov r8d, eax
mov rdx, qword [rsi + 0x10]
xor r9d, 0x10
mov rcx, rdi
mov dword [rsp + 0x70], eax
call fcn.1800513b0
mov r9d, dword [rsp + 0x88]
mov r8d, ebp
mov rdx, qword [rsi + 0x18]
mov rcx, rdi
call fcn.1800517f0
mov r10, qword [rsp + 0x48]
mov rcx, qword [r10 + 0x18]
mov rdx, qword [rcx + 0x50]
test rdx, rdx
je 0x180051b74
or eax, 0xffffffff
sub eax, dword [rsp + 0x70]
movsxd rcx, eax
mov eax, dword [r10 + 0xb8]
mov dword [rdx + rcx*4], eax
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [rsi + 0x10]
mov r8d, ebp
mov rcx, rdi
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.1800513b0
mov rax, qword [rsi + 0x18]
mov edx, ebx
movzx r8d, byte [rsi + 0x36]
mov r9d, reloc.WS2_32.dll_recv
mov rcx, qword [rax + 8]
mov eax, ebx
cmp byte [rcx + 4], dl
mov rcx, rdi
sete dl
cmp r8b, 0x9c
sete al
cmp edx, eax
mov rdx, qword [rsi + 0x10]
je 0x180051976
cmp r8b, 0x9c
mov r8d, ebp
cmove r9d, ebx
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.1800517f0
cmp r8b, 0x9c
mov r8d, ebp
cmove r9d, ebx
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.1800513b0
cmp r8b, 0x2d
mov dword [rsp + 0x88], 0x80
mov edx, ebx
setne dl
add edx, 0x34
mov dword [rsp + 0x40], edx
mov rdx, qword [rsi + 0x10]
mov rcx, rdx
call fcn.180049f50
test eax, eax
jne case.0x180051867.20
lea r8, [rsp + 0x70]
mov rcx, rdi
call fcn.180050c90
mov rdx, qword [rsi + 0x18]
lea r8, [rsp + 0x44]
mov rcx, rdi
mov ebx, eax
call fcn.180050c90
mov edx, dword [rsp + 0x88]
mov rcx, rdi
mov r9d, dword [rsp + 0x40]
mov r8, qword [rsi + 0x18]
mov dword [rsp + 0x38], edx
mov rdx, qword [rsi + 0x10]
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.180049dc0
mov ebx, dword [rsp + 0x44]
jmp 0x180051b3e
mov rdx, qword [rsi + 0x10]
lea r8, [rsp + 0x70]
mov rcx, rdi
call fcn.180050c90
mov edx, dword [rsp + 0x40]
mov r9d, ebp
mov rcx, qword [rsp + 0x48]
mov r8d, eax
call fcn.180032d50
jmp 0x180051b3e
mov dword [rsp + 0x20], r9d
mov r8d, ebp
lea r9, [fcn.1800517f0]
mov rdx, rsi
mov rcx, rdi
call fcn.180051210
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret
test r9d, r9d
je 0x180051a89
mov r9d, ebp
mov r8d, ebp
mov rdx, rsi
mov rcx, rdi
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.18004e0b0
mov rcx, r10
call fcn.1800336e0
mov r9d, eax
mov r8d, ebp
mov rdx, rsi
mov rcx, rdi
mov ebx, eax
call fcn.18004e0b0
mov r10, qword [rsp + 0x48]
mov rcx, qword [r10 + 0x18]
mov rdx, qword [rcx + 0x50]
test rdx, rdx
je 0x180051b74
or eax, 0xffffffff
sub eax, ebx
movsxd rcx, eax
mov eax, dword [r10 + 0xb8]
mov dword [rdx + rcx*4], eax
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret
mov rcx, rsi
call fcn.18004acb0
test eax, eax
je 0x180051afb
mov edx, ebp
mov rcx, r10
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
jmp fcn.180032dc0
mov rcx, rsi
call fcn.18004ac20
test eax, eax
jne 0x180051b74
lea r8, [rsp + 0x70]
mov rdx, rsi
mov rcx, rdi
call fcn.180050c90
mov edx, dword [rsp + 0x88]
mov ecx, ebx
test edx, edx
mov r9d, ebp
mov r8d, eax
mov edx, reloc.WS2_32.dll_sendto
setne cl
mov dword [rsp + 0x20], ecx
mov rcx, qword [rsp + 0x48]
call fcn.180032c00
mov ecx, dword [rsp + 0x70]
test ecx, ecx
je 0x180051b5b
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x180051b5b
movzx eax, al
mov dword [rdi + rax*4 + 0xc4], ecx
inc byte [rdi + 0x1f]
test ebx, ebx
je 0x180051b74
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x180051b74
movzx eax, al
mov dword [rdi + rax*4 + 0xc4], ebx
inc byte [rdi + 0x1f]
mov rbx, qword [rsp + 0x78]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret