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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
mov rax, qword [0x1401ff510]
xor rax, rsp
mov qword [rbp + 0x68], rax
xor esi, esi
mov r13, r9
mov qword [rsp + 0x30], rsi
mov ebx, r8d
mov dword [rsp + 0x3c], esi
mov r14, rdx
mov dword [rsp + 0x4c], esi
mov rdi, rcx
mov dword [rsp + 0x48], esi
lea r12d, [rsi + 0x14]
mov qword [rsp + 0x58], rsi
mov r15d, esi
mov dword [rsp + 0x50], esi
test rdx, rdx
je 0x140075632
lea eax, [r8 - 0x14]
cmp eax, 0x26fc
ja 0x140075632
lea eax, [rsi + 2]
cmp word [r9], ax
jne 0x140075632
movzx ecx, word [rdx]
call qword [sym.imp.WS2_32.dll_ntohs]
movzx ecx, word [r14 + 2]
mov word [rsp + 0x42], ax
call qword [sym.imp.WS2_32.dll_ntohs]
add ax, r12w
mov word [rsp + 0x40], ax
movzx eax, ax
mov dword [rsp + 0x38], eax
cmp eax, ebx
jne 0x140075632
mov ecx, dword [r14 + 4]
call qword [sym.imp.WS2_32.dll_ntohl]
cmp eax, 0x2112a442
jne 0x140075632
xor eax, eax
lea r11, [r14 + 8]
mov rcx, r11
mov qword [rbp - 0x80], rax
lea r8, [rbp - 0x58]
mov qword [rbp - 0x78], rax
lea edx, [rsi + 0xc]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x60], r11
call fcn.140066f88
mov edx, dword [rsp + 0x38]
cmp edx, 0x18
jle 0x1400757ef
movsxd r15, r12d
movzx ecx, word [r15 + r14]
call qword [sym.imp.WS2_32.dll_ntohs]
movzx ecx, word [r15 + r14 + 2]
movzx ebx, ax
call qword [sym.imp.WS2_32.dll_ntohs]
mov edx, dword [rsp + 0x38]
movzx r11d, ax
mov eax, r11d
mov dword [rbp - 0x70], eax
add eax, 4
add eax, r12d
cmp eax, edx
jg 0x140075632
mov r8d, 0x8028
cmp dword [rsp + 0x50], esi
je 0x140075440
cmp bx, r8w
jne 0x1400757e2
movzx ecx, bx
mov r9d, 0x20
cmp ecx, r9d
ja 0x1400756e6
je 0x14007568d
sub ecx, 1
je 0x14007568d
lea ebx, [r9 - 0x1c]
sub ecx, ebx
je 0x140075706
sub ecx, 1
je 0x14007565b
sub ecx, 2
je 0x1400754a5
cmp ecx, 1
jne 0x1400757a5
lea r8, [rbp - 0x58]
lea edx, [rbx + 8]
lea rcx, [r14 + 8]
call fcn.140066f88
movzx r8d, r11w
add r8, r15
mov byte [r8 + r14 + 8], sil
jmp 0x1400757a1
mov eax, reloc.WS2_32.dll_sendto
mov dword [rsp + 0x50], 1
mov dword [rsp + 0x54], eax
cmp r11w, ax
jne 0x1400757a5
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400754f4
lea rdx, [rdi + 0x130]
lea r8, [rbp + 0x40]
call fcn.1400748bc
lea rbx, [rbp + 0x40]
mov dword [rsp + 0x44], 0x20
mov qword [rbp - 0x68], rbx
mov dword [rsp + 0x3c], 1
jmp 0x14007551c
lea rdx, [r14 + 8]
cmp byte [rdx], 0xa
jae 0x140075523
movzx eax, byte [rdx]
mov rcx, qword [rdi + rax*8 + 0x188]
test rcx, rcx
je 0x140075523
mov rbx, qword [rcx + 8]
mov qword [rbp - 0x68], rbx
mov ebx, dword [rcx + 0x14]
mov dword [rsp + 0x44], ebx
mov ebx, 4
jmp 0x140075567
mov al, byte [rdx]
xor al, 0x80
cmp al, 0xa
jae 0x140075632
movzx eax, byte [rdx]
btc rax, 7
mov rax, qword [rdi + rax*8 + 0x1d8]
test rax, rax
je 0x140075632
movsxd rcx, dword [rax + 0x6c]
mov rax, qword [rax + 0x50]
mov rdx, qword [rax + rcx*8 + 0x188]
mov rax, qword [rdx + 8]
mov qword [rbp - 0x68], rax
mov eax, dword [rdx + 0x14]
mov dword [rsp + 0x44], eax
movzx ecx, word [r15 + r14 + 0x18]
call qword [sym.imp.WS2_32.dll_ntohs]
mov ecx, 0x8028
cmp ax, cx
jne 0x14007558c
lea ecx, [rbx + r12]
call qword [sym.imp.WS2_32.dll_htons]
mov word [r14 + 2], ax
call fcn.1400a13a0
mov rbx, rax
call fcn.14008b780
mov r8d, dword [rsp + 0x44]
mov r9, rax
mov rdx, qword [rbp - 0x68]
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400a15e0
mov r8, r15
mov rdx, r14
mov rcx, rbx
call fcn.1400a1850
lea r8, [rsp + 0x54]
mov rcx, rbx
lea rdx, [rbp - 0x58]
call fcn.1400a1530
mov rcx, rbx
call fcn.1400a1320
movzx ecx, word [r15 + r14 + 0x18]
call qword [sym.imp.WS2_32.dll_ntohs]
mov ecx, 0x8028
cmp ax, cx
jne 0x140075603
movzx ecx, word [rsp + 0x40]
sub cx, 0x14
call qword [sym.imp.WS2_32.dll_htons]
mov word [r14 + 2], ax
mov eax, reloc.WS2_32.dll_sendto
cmp dword [rsp + 0x54], eax
jne 0x140075632
mov rax, qword [rbp - 0x58]
cmp rax, qword [r15 + r14 + 4]
jne 0x140075632
mov rax, qword [rbp - 0x50]
cmp rax, qword [r15 + r14 + 0xc]
jne 0x140075632
mov eax, dword [rbp - 0x48]
cmp eax, dword [r15 + r14 + 0x14]
je 0x1400757a1
xor eax, eax
mov rcx, qword [rbp + 0x68]
xor rcx, rsp
call fcn.14015c600
mov rbx, qword [rsp + 0x1c0]
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov eax, 9
cmp r11w, ax
jb 0x1400757a5
lea eax, [r12 + 0xc]
movsxd rcx, eax
cmp byte [rcx + r14], 0x3a
jne 0x1400757a5
add r15, rbx
add r15, r14
mov qword [rsp + 0x30], r15
jmp 0x1400757aa
lea eax, [r12 + 5]
movsxd rcx, eax
cmp byte [rcx + r14], 1
jne 0x1400757a5
mov ecx, dword [r15 + r14 + 8]
mov eax, 2
mov word [rbp - 0x80], ax
movzx eax, word [r15 + r14 + 6]
mov r15, qword [rsp + 0x30]
mov word [rbp - 0x7e], ax
mov dword [rbp - 0x7c], ecx
cmp bx, r9w
jne 0x1400757aa
mov r8d, 0x1221
xor ax, r8w
xor ecx, 0x42a41221
mov word [rbp - 0x7e], ax
mov dword [rbp - 0x7c], ecx
jmp 0x1400757aa
sub ecx, r8d
je 0x14007575e
sub ecx, 1
je 0x140075754
sub ecx, 1
je 0x14007573b
mov r8d, 2
cmp ecx, r8d
jne 0x1400757a5
jmp 0x14007570c
mov r8d, 2
lea eax, [r12 + 5]
movsxd rcx, eax
cmp byte [rcx + r14], 1
jne 0x1400757a5
movzx eax, word [r15 + r14 + 6]
mov word [rsp + 0x6a], ax
mov eax, dword [r15 + r14 + 8]
mov dword [rsp + 0x6c], eax
mov word [rsp + 0x68], r8w
jmp 0x1400757a5
mov dword [rsp + 0x48], 1
mov rcx, qword [r15 + r14 + 4]
call fcn.1400686d0
mov qword [rsp + 0x58], rax
jmp 0x1400757a1
mov dword [rsp + 0x4c], 1
jmp 0x140075743
mov eax, 4
cmp r11w, ax
jne 0x140075831
lea eax, [r12 + 8]
cmp eax, edx
jne 0x140075632
mov ecx, dword [r15 + r14 + 4]
call qword [sym.imp.WS2_32.dll_ntohl]
mov edx, r12d
mov rcx, r14
mov r11d, eax
call fcn.1400743d8
xor eax, 0x5354554e
cmp eax, r11d
jne 0x14007583b
mov edx, dword [rsp + 0x38]
mov r15, qword [rsp + 0x30]
mov r8d, dword [rbp - 0x70]
mov ecx, 4
mov eax, r8d
and eax, 3
sub ecx, eax
and ecx, 0x80000003
jge 0x1400757ca
dec ecx
or ecx, 0xfffffffc
inc ecx
add ecx, r8d
add r12d, 4
add r12d, ecx
lea eax, [r12 + 4]
cmp eax, edx
jge 0x1400757ea
jmp 0x1400753f1
mov r15, qword [rsp + 0x30]
mov r12d, edx
mov r11, qword [rsp + 0x60]
cmp r12d, edx
jne 0x140075632
movzx r10d, word [rsp + 0x42]
mov eax, 0x110
lea r14d, [rax - 0x10]
and r10w, ax
jne 0x140075c3b
cmp dword [rsp + 0x3c], 1
jne 0x140075cd7
test r15, r15
je 0x14007583b
cmp byte [r15], 0x61
movsx r15d, byte [r15]
jl 0x140075845
sub r15d, 0x61
jmp 0x140075849
test r11w, r11w
jne 0x140075632
mov eax, 1
jmp 0x140075634
sub r15d, 0x41
cmp r15d, 0xa
jge 0x14007583b
movsxd r12, r15d
mov rdx, qword [rdi + r12*8 + 0x188]
test rdx, rdx
je 0x14007583b
mov ebx, 0x1c
lea eax, [rbx - 0x1a]
lea r14d, [rbx - 0xc]
cmp word [r13], ax
jne 0x140075915
movsxd rax, dword [rdx + 0x88]
test eax, eax
jne 0x1400758d1
cmp qword [rdx + 0x78], rsi
jne 0x1400758d1
mov r8, qword [rdx + 0x20]
mov ecx, esi
mov rdx, r8
movsxd rax, ecx
imul r9, rax, 0x1c
mov rax, qword [r9 + r8]
cmp rax, qword [r13]
jne 0x1400758ac
mov rax, qword [r9 + r8 + 8]
cmp rax, qword [r13 + 8]
je 0x140075915
cmp word [rdx], si
je 0x1400758bd
inc ecx
add rdx, rbx
cmp ecx, 8
jl 0x140075890
jmp 0x140075915
lea rcx, [r9 + r8]
mov rdx, rbx
mov r9, r14
mov r8, r13
call section..text
jmp 0x140075915
mov r8d, esi
test eax, eax
jle 0x140075915
movzx r10d, word [r13 + 2]
mov r11, rax
mov rcx, qword [rdx + 0x78]
mov r9, rsi
cmp word [rcx + 4], r10w
jne 0x1400758f6
mov eax, dword [r13 + 4]
cmp dword [rcx], eax
je 0x140075907
inc r8d
inc r9
add rcx, 6
cmp r9, r11
jge 0x140075915
jmp 0x1400758e7
mov rax, qword [rdx + 0x80]
movsxd rcx, r8d
mov byte [rcx + rax], 1
mov rdx, qword [rdi + r12*8 + 0x188]
mov eax, esi
mov dword [rsp + 0x3c], eax
lea rcx, [rdx + 0xc0]
mov qword [rbp - 0x68], rcx
cmp word [rcx], si
je 0x14007598a
movzx r9d, word [r13]
cmp word [rcx], r9w
jne 0x140075976
cmp r9w, 0x17
cdqe
mov r8, r14
cmove r8, rbx
add rdx, 0xc0
imul rcx, rax, 0x1c
add rcx, rdx
mov rdx, r13
call fcn.14015dad0
test eax, eax
je 0x1400759b2
mov eax, dword [rsp + 0x3c]
mov rcx, qword [rbp - 0x68]
mov rdx, qword [rdi + r12*8 + 0x188]
inc eax
add rcx, rbx
mov dword [rsp + 0x3c], eax
mov qword [rbp - 0x68], rcx
cmp eax, 5
jl 0x14007592e
jmp 0x1400759b2
cmp word [r13], 0x17
mov r8, r13
cdqe
cmove r14, rbx
add rdx, 0xc0
imul rcx, rax, 0x1c
mov r9, r14
add rcx, rdx
mov rdx, rbx
call section..text
mov rcx, qword [rdi + r12*8 + 0x188]
cmp qword [rcx + 8], rsi
je 0x14007583b
mov eax, dword [rcx + 0x90]
mov r14d, dword [rsp + 0x48]
cmp eax, 1
jne 0x1400759d9
test r14d, r14d
jne 0x1400759ed
mov edx, dword [rsp + 0x4c]
test eax, eax
jne 0x140075a85
test edx, edx
je 0x140075a85
mov ecx, 0x101
call qword [sym.imp.WS2_32.dll_htons]
mov ecx, 0x2112a442
mov word [rbp - 0x30], ax
call qword [sym.imp.WS2_32.dll_htonl]
mov r8, qword [rsp + 0x60]
lea rcx, [rbp - 0x28]
mov r9d, ntohl
mov dword [rbp - 0x2c], eax
lea edx, [r9 + 0x5a]
call section..text
mov ebx, 0x20
mov ecx, ebx
call qword [sym.imp.WS2_32.dll_htons]
lea ecx, [rbx - 0x18]
mov word [rbp - 0x1c], ax
call qword [sym.imp.WS2_32.dll_htons]
lea ecx, [rbx - 0x1f]
mov word [rbp - 0x1a], ax
call qword [sym.imp.WS2_32.dll_htons]
mov word [rbp - 0x18], ax
mov ecx, 0x1221
movzx eax, word [r13 + 2]
lea r8, [rbp + 0x40]
xor ax, cx
mov r9d, ebx
mov word [rbp - 0x16], ax
lea rcx, [rbp - 0x30]
mov eax, dword [r13 + 4]
mov edx, ebx
xor eax, 0x42a41221
mov dword [rbp - 0x14], eax
call fcn.1400749f8
lea r14d, [rbx + rax]
jmp 0x140075b67
cmp eax, 1
jne 0x140075aa3
test edx, edx
je 0x140075aa3
mov rcx, qword [rcx + 0x5b]
call fcn.1400686d0
mov rbx, qword [rsp + 0x58]
cmp rax, rbx
jb 0x140075ad7
jmp 0x140075aa8
mov rbx, qword [rsp + 0x58]
mov rcx, qword [rdi + r12*8 + 0x188]
cmp dword [rcx + 0x90], esi
jne 0x140075c0e
test r14d, r14d
je 0x140075c0e
mov rcx, qword [rcx + 0x5b]
call fcn.1400686d0
cmp rax, rbx
jb 0x140075c0e
movdqa xmm0, xmmword [0x1401e45a0]
lea rdx, [rbp - 0x58]
mov r8, qword [rsp + 0x60]
mov rcx, r13
movdqu xmmword [rsp + 0x68], xmm0
mov byte [rsp + 0x78], reloc.WS2_32.dll_WSACleanup
call fcn.14007d90c
mov r8, qword [rsp + 0x60]
lea rcx, [rbp - 0x30]
mov edx, 0x111
mov ebx, eax
call fcn.14007d72c
mov dword [rsp + 0x20], ebx
lea r9, [rbp - 0x58]
mov ebx, 0x20
lea rcx, [rbp - 0x30]
mov r8d, ebx
mov edx, eax
mov r14d, eax
call fcn.14007d77c
add r14d, eax
mov dword [rsp + 0x20], reloc.WS2_32.dll_recvfrom
mov edx, r14d
lea r9, [rsp + 0x68]
lea r8d, [rbx - 0x17]
lea rcx, [rbp - 0x30]
call fcn.14007d77c
add r14d, eax
lea r8, [rbp + 0x40]
mov edx, r14d
lea rcx, [rbp - 0x30]
mov r9d, ebx
call fcn.1400749f8
add r14d, eax
mov edx, r14d
lea rcx, [rbp - 0x30]
call fcn.140074ab8
add r14d, eax
lea rdx, [rbp - 0x30]
mov eax, 2
mov r9d, r14d
mov dword [rsp + 0x28], eax
mov rcx, rdi
mov qword [rsp + 0x20], r13
call fcn.140075094
mov rax, qword [rdi + r12*8 + 0x188]
cmp qword [rax + 0x78], rsi
je 0x14007583b
cmp dword [rax + 0x88], esi
jle 0x14007583b
test rax, rax
je 0x14007583b
cmp dword [rax + 0x8c], 0xa
jge 0x14007583b
cmp dword [rax + 0x98], esi
jge 0x14007583b
mov edx, ntohl
lea rcx, [rbp - 0x68]
call fcn.14009b900
mov rax, qword [rdi + r12*8 + 0x188]
mov r9, r13
mov byte [rbp - 0x68], r15b
xor r8d, r8d
mov edx, r15d
inc dword [rax + 0x8c]
mov rcx, qword [rdi + r12*8 + 0x188]
call fcn.1400762c4
jmp 0x14007583b
mov rax, qword [rdi + r12*8 + 0x188]
mov edx, r15d
cmp dword [rax + 0x90], esi
sete sil
mov dword [rax + 0x90], esi
mov rcx, qword [rdi + r12*8 + 0x188]
call fcn.140076998
jmp 0x14007583b
cmp r10w, r14w
jne 0x140075cd7
cmp byte [r11], 0xa
ja 0x140075cd7
movsx rax, byte [r11]
mov rdx, qword [rdi + rax*8 + 0x188]
cmp dword [rdx + 0x90], esi
jne 0x140075cd7
cmp dword [rdx + 0x98], esi
jge 0x140075cd7
mov r9d, dword [rdx + 0x88]
mov ecx, esi
mov r12d, 2
test r9d, r9d
jle 0x140075cdd
mov r8, qword [rdx + 0x78]
mov eax, dword [r8]
xor ebx, ebx
mov qword [rbp - 0x68], rbx
mov dword [rbp - 0x64], eax
movzx eax, word [r8 + 4]
mov word [rbp - 0x66], ax
mov word [rbp - 0x68], r12w
cmp r12w, word [r13]
jne 0x140075cb4
mov rax, qword [r13]
cmp rax, qword [rbp - 0x68]
jne 0x140075cb4
cmp qword [r13 + 8], rbx
je 0x140075cc1
inc ecx
add r8, 6
cmp ecx, r9d
jge 0x140075cdd
jmp 0x140075c83
mov rax, qword [rdx + 0x80]
mov r13d, 1
movsxd rcx, ecx
mov byte [rcx + rax], r13b
jmp 0x140075ce3
mov r12d, 2
mov r13d, 1
cmp r10w, r14w
jne 0x140075f90
mov al, byte [r11]
xor al, 0x80
cmp al, 0xa
jae 0x140075d3e
movzx ebx, byte [r11]
mov rcx, qword [rdi + 0x38]
btc rbx, 7
mov rdx, qword [rdi + rbx*8 + 0x1d8]
add rdx, r13
call fcn.14006c978
mov rdx, qword [rdi + rbx*8 + 0x1d8]
lea r9, [0x140074f14]
mov rcx, qword [rdi + 0x38]
add rdx, r13
mov r8d, 0x3a98
mov qword [rsp + 0x20], rsi
call fcn.14006c654
mov r11, qword [rsp + 0x60]
mov rax, qword [r11]
cmp rax, qword [rdi + 0x150]
jne 0x140075f90
mov eax, dword [r11 + 8]
cmp eax, dword [rdi + 0x158]
jne 0x140075f90
mov rcx, qword [rdi + 0x38]
mov rdx, rdi
call fcn.14006c978
mov ecx, dword [rdi + 0x12c]
test ecx, ecx
je 0x140075e57
sub ecx, 1
je 0x140075de2
sub ecx, 1
je 0x140075d9a
cmp ecx, 1
jne 0x140075f90
lea r8, [rdi + 0x84]
lea edx, [rcx + 3]
jmp 0x140075f88
mov r9d, reloc.WS2_32.dll_recv
lea rcx, [rdi + 0xbc]
lea r8, [rbp - 0x80]
lea edx, [r9 + 0xc]
call section..text
movzx eax, word [rdi + 0xbe]
lea r8, [rdi + 0x84]
mov rcx, rdi
cmp word [rdi + 0xa2], ax
jne 0x140075dd8
mov edx, 4
jmp 0x140075f8b
mov edx, 3
jmp 0x140075f8b
mov r9d, reloc.WS2_32.dll_recv
lea rcx, [rdi + 0xa0]
lea r8, [rbp - 0x80]
lea edx, [r9 + 0xc]
call section..text
movzx eax, word [rdi + 0xa2]
mov rcx, rdi
cmp word [rdi + 0x86], ax
jne 0x140075e1e
lea r8, [rdi + 0x84]
mov edx, r12d
jmp 0x140075f8b
lea rdx, [rdi + 0x110]
mov dword [rdi + 0x12c], r12d
xor r8d, r8d
call fcn.140074b2c
mov rcx, qword [rdi + 0x38]
lea r9, [0x14007c668]
mov r8d, 0x7d0
mov qword [rsp + 0x20], rsi
mov rdx, rdi
call fcn.14006c654
jmp 0x140075f90
cmp word [rbp - 0x80], r12w
jne 0x140075f83
mov ebx, 0x1c
lea r14d, [rbx - 0xc]
cmp word [rsp + 0x68], r12w
jne 0x140075ead
lea rcx, [rdi + 0x110]
mov r9d, r14d
lea r8, [rsp + 0x68]
mov edx, ebx
call section..text
lea rcx, [rdi + 0xf4]
mov r9d, r14d
lea r8, [rsp + 0x68]
mov edx, ebx
call section..text
movzx eax, word [rdi + 0xda]
mov word [rdi + 0xf6], ax
lea r15, [rdi + 0x84]
mov r9, r14
mov rcx, r15
lea r8, [rbp - 0x80]
mov rdx, rbx
call section..text
mov eax, dword [rdi + 0x5c]
mov ebx, esi
test eax, eax
jne 0x140075f0d
lea rcx, [rbp - 0x68]
mov qword [rbp - 0x68], rsi
call fcn.1400686fc
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x140075f25
cdqe
test rax, rax
jle 0x140075f06
mov r8d, dword [rdi + 0x88]
lea rdx, [rcx + 4]
cmp r8d, dword [rdx]
cmove ebx, r13d
add rdx, r14
sub rax, r13
jne 0x140075ef7
call fcn.140163938
jmp 0x140075f18
cmp dword [rdi + 0x88], eax
jne 0x140075f25
mov ebx, r13d
cmp ebx, r13d
jne 0x140075f25
mov r8, r15
mov edx, r13d
jmp 0x140075f88
cmp byte [rdi + 0x15b], sil
jne 0x140075f38
mov r8, r15
mov edx, ntohl
jmp 0x140075f88
cmp word [rsp + 0x68], r12w
jne 0x140075f79
mov rcx, qword [rdi + 0x38]
lea r9, [0x14007c668]
mov r8d, 0x7d0
mov dword [rdi + 0x12c], r13d
mov rdx, rdi
mov qword [rsp + 0x20], rsi
call fcn.14006c654
lea rdx, [rdi + 0xf4]
xor r8d, r8d
mov rcx, rdi
call fcn.140074b2c
jmp 0x140075f90
mov r8, r15
mov edx, 0xa
jmp 0x140075f88
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.14007522c
mov eax, r13d
jmp 0x140075634