Function at 0x140074ba4
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 0x140074ee2
lea eax, [r8 - 0x14]
cmp eax, 0x26fc
ja 0x140074ee2
lea eax, [rsi + 2]
cmp word [r9], ax
jne 0x140074ee2
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 0x140074ee2
mov ecx, dword [r14 + 4]
call qword [sym.imp.WS2_32.dll_ntohl]
cmp eax, 0x2112a442
jne 0x140074ee2
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.140065ea8
mov edx, dword [rsp + 0x38]
cmp edx, 0x18
jle 0x14007509f
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 0x140074ee2
mov r8d, 0x8028
cmp dword [rsp + 0x50], esi
je 0x140074cf0
cmp bx, r8w
jne 0x140075092
movzx ecx, bx
mov r9d, 0x20
cmp ecx, r9d
ja 0x140074f96
je 0x140074f3d
sub ecx, 1
je 0x140074f3d
lea ebx, [r9 - 0x1c]
sub ecx, ebx
je 0x140074fb6
sub ecx, 1
je 0x140074f0b
sub ecx, 2
je 0x140074d55
cmp ecx, 1
jne 0x140075055
lea r8, [rbp - 0x58]
lea edx, [rbx + 8]
lea rcx, [r14 + 8]
call fcn.140065ea8
movzx r8d, r11w
add r8, r15
mov byte [r8 + r14 + 8], sil
jmp 0x140075051
mov eax, reloc.WS2_32.dll_sendto
mov dword [rsp + 0x50], 1
mov dword [rsp + 0x54], eax
cmp r11w, ax
jne 0x140075055
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140074da4
lea rdx, [rdi + 0x130]
lea r8, [rbp + 0x40]
call fcn.14007416c
lea rbx, [rbp + 0x40]
mov dword [rsp + 0x44], 0x20
mov qword [rbp - 0x68], rbx
mov dword [rsp + 0x3c], 1
jmp 0x140074dcc
lea rdx, [r14 + 8]
cmp byte [rdx], 0xa
jae 0x140074dd3
movzx eax, byte [rdx]
mov rcx, qword [rdi + rax*8 + 0x188]
test rcx, rcx
je 0x140074dd3
mov rbx, qword [rcx + 8]
mov qword [rbp - 0x68], rbx
mov ebx, dword [rcx + 0x14]
mov dword [rsp + 0x44], ebx
mov ebx, 4
jmp 0x140074e17
mov al, byte [rdx]
xor al, 0x80
cmp al, 0xa
jae 0x140074ee2
movzx eax, byte [rdx]
btc rax, 7
mov rax, qword [rdi + rax*8 + 0x1d8]
test rax, rax
je 0x140074ee2
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 0x140074e3c
lea ecx, [rbx + r12]
call qword [sym.imp.WS2_32.dll_htons]
mov word [r14 + 2], ax
call fcn.1400a0bc0
mov rbx, rax
call fcn.14008af80
mov r8d, dword [rsp + 0x44]
mov r9, rax
mov rdx, qword [rbp - 0x68]
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400a0e00
mov r8, r15
mov rdx, r14
mov rcx, rbx
call fcn.1400a1070
lea r8, [rsp + 0x54]
mov rcx, rbx
lea rdx, [rbp - 0x58]
call fcn.1400a0d50
mov rcx, rbx
call fcn.1400a0b40
movzx ecx, word [r15 + r14 + 0x18]
call qword [sym.imp.WS2_32.dll_ntohs]
mov ecx, 0x8028
cmp ax, cx
jne 0x140074eb3
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 0x140074ee2
mov rax, qword [rbp - 0x58]
cmp rax, qword [r15 + r14 + 4]
jne 0x140074ee2
mov rax, qword [rbp - 0x50]
cmp rax, qword [r15 + r14 + 0xc]
jne 0x140074ee2
mov eax, dword [rbp - 0x48]
cmp eax, dword [r15 + r14 + 0x14]
je 0x140075051
xor eax, eax
mov rcx, qword [rbp + 0x68]
xor rcx, rsp
call fcn.14015bde0
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 0x140075055
lea eax, [r12 + 0xc]
movsxd rcx, eax
cmp byte [rcx + r14], 0x3a
jne 0x140075055
add r15, rbx
add r15, r14
mov qword [rsp + 0x30], r15
jmp 0x14007505a
lea eax, [r12 + 5]
movsxd rcx, eax
cmp byte [rcx + r14], 1
jne 0x140075055
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 0x14007505a
mov r8d, 0x1221
xor ax, r8w
xor ecx, 0x42a41221
mov word [rbp - 0x7e], ax
mov dword [rbp - 0x7c], ecx
jmp 0x14007505a
sub ecx, r8d
je 0x14007500e
sub ecx, 1
je 0x140075004
sub ecx, 1
je 0x140074feb
mov r8d, 2
cmp ecx, r8d
jne 0x140075055
jmp 0x140074fbc
mov r8d, 2
lea eax, [r12 + 5]
movsxd rcx, eax
cmp byte [rcx + r14], 1
jne 0x140075055
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 0x140075055
mov dword [rsp + 0x48], 1
mov rcx, qword [r15 + r14 + 4]
call fcn.1400681a4
mov qword [rsp + 0x58], rax
jmp 0x140075051
mov dword [rsp + 0x4c], 1
jmp 0x140074ff3
mov eax, 4
cmp r11w, ax
jne 0x1400750e1
lea eax, [r12 + 8]
cmp eax, edx
jne 0x140074ee2
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.140073c88
xor eax, 0x5354554e
cmp eax, r11d
jne 0x1400750eb
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 0x14007507a
dec ecx
or ecx, 0xfffffffc
inc ecx
add ecx, r8d
add r12d, 4
add r12d, ecx
lea eax, [r12 + 4]
cmp eax, edx
jge 0x14007509a
jmp 0x140074ca1
mov r15, qword [rsp + 0x30]
mov r12d, edx
mov r11, qword [rsp + 0x60]
cmp r12d, edx
jne 0x140074ee2
movzx r10d, word [rsp + 0x42]
mov eax, 0x110
lea r14d, [rax - 0x10]
and r10w, ax
jne 0x1400754eb
cmp dword [rsp + 0x3c], 1
jne 0x140075587
test r15, r15
je 0x1400750eb
cmp byte [r15], 0x61
movsx r15d, byte [r15]
jl 0x1400750f5
sub r15d, 0x61
jmp 0x1400750f9
test r11w, r11w
jne 0x140074ee2
mov eax, 1
jmp 0x140074ee4
sub r15d, 0x41
cmp r15d, 0xa
jge 0x1400750eb
movsxd r12, r15d
mov rdx, qword [rdi + r12*8 + 0x188]
test rdx, rdx
je 0x1400750eb
mov ebx, 0x1c
lea eax, [rbx - 0x1a]
lea r14d, [rbx - 0xc]
cmp word [r13], ax
jne 0x1400751c5
movsxd rax, dword [rdx + 0x88]
test eax, eax
jne 0x140075181
cmp qword [rdx + 0x78], rsi
jne 0x140075181
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 0x14007515c
mov rax, qword [r9 + r8 + 8]
cmp rax, qword [r13 + 8]
je 0x1400751c5
cmp word [rdx], si
je 0x14007516d
inc ecx
add rdx, rbx
cmp ecx, 8
jl 0x140075140
jmp 0x1400751c5
lea rcx, [r9 + r8]
mov rdx, rbx
mov r9, r14
mov r8, r13
call section..text
jmp 0x1400751c5
mov r8d, esi
test eax, eax
jle 0x1400751c5
movzx r10d, word [r13 + 2]
mov r11, rax
mov rcx, qword [rdx + 0x78]
mov r9, rsi
cmp word [rcx + 4], r10w
jne 0x1400751a6
mov eax, dword [r13 + 4]
cmp dword [rcx], eax
je 0x1400751b7
inc r8d
inc r9
add rcx, 6
cmp r9, r11
jge 0x1400751c5
jmp 0x140075197
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 0x14007523a
movzx r9d, word [r13]
cmp word [rcx], r9w
jne 0x140075226
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.14015d330
test eax, eax
je 0x140075262
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 0x1400751de
jmp 0x140075262
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 0x1400750eb
mov eax, dword [rcx + 0x90]
mov r14d, dword [rsp + 0x48]
cmp eax, 1
jne 0x140075289
test r14d, r14d
jne 0x14007529d
mov edx, dword [rsp + 0x4c]
test eax, eax
jne 0x140075335
test edx, edx
je 0x140075335
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, reloc.WS2_32.dll_inet_ntoa
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.1400742a8
lea r14d, [rbx + rax]
jmp 0x140075417
cmp eax, 1
jne 0x140075353
test edx, edx
je 0x140075353
mov rcx, qword [rcx + 0x5b]
call fcn.1400681a4
mov rbx, qword [rsp + 0x58]
cmp rax, rbx
jb 0x140075387
jmp 0x140075358
mov rbx, qword [rsp + 0x58]
mov rcx, qword [rdi + r12*8 + 0x188]
cmp dword [rcx + 0x90], esi
jne 0x1400754be
test r14d, r14d
je 0x1400754be
mov rcx, qword [rcx + 0x5b]
call fcn.1400681a4
cmp rax, rbx
jb 0x1400754be
movdqa xmm0, xmmword [0x1401e4400]
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.14007d180
mov r8, qword [rsp + 0x60]
lea rcx, [rbp - 0x30]
mov edx, 0x111
mov ebx, eax
call fcn.14007cfa0
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.14007cff0
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.14007cff0
add r14d, eax
lea r8, [rbp + 0x40]
mov edx, r14d
lea rcx, [rbp - 0x30]
mov r9d, ebx
call fcn.1400742a8
add r14d, eax
mov edx, r14d
lea rcx, [rbp - 0x30]
call fcn.140074368
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.140074944
mov rax, qword [rdi + r12*8 + 0x188]
cmp qword [rax + 0x78], rsi
je 0x1400750eb
cmp dword [rax + 0x88], esi
jle 0x1400750eb
test rax, rax
je 0x1400750eb
cmp dword [rax + 0x8c], 0xa
jge 0x1400750eb
cmp dword [rax + 0x98], esi
jge 0x1400750eb
mov edx, reloc.WS2_32.dll_inet_ntoa
lea rcx, [rbp - 0x68]
call fcn.14009b110
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.140075b74
jmp 0x1400750eb
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.14007620c
jmp 0x1400750eb
cmp r10w, r14w
jne 0x140075587
cmp byte [r11], 0xa
ja 0x140075587
movsx rax, byte [r11]
mov rdx, qword [rdi + rax*8 + 0x188]
cmp dword [rdx + 0x90], esi
jne 0x140075587
cmp dword [rdx + 0x98], esi
jge 0x140075587
mov r9d, dword [rdx + 0x88]
mov ecx, esi
mov r12d, 2
test r9d, r9d
jle 0x14007558d
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 0x140075564
mov rax, qword [r13]
cmp rax, qword [rbp - 0x68]
jne 0x140075564
cmp qword [r13 + 8], rbx
je 0x140075571
inc ecx
add r8, 6
cmp ecx, r9d
jge 0x14007558d
jmp 0x140075533
mov rax, qword [rdx + 0x80]
mov r13d, 1
movsxd rcx, ecx
mov byte [rcx + rax], r13b
jmp 0x140075593
mov r12d, 2
mov r13d, 1
cmp r10w, r14w
jne 0x140075840
mov al, byte [r11]
xor al, 0x80
cmp al, 0xa
jae 0x1400755ee
movzx ebx, byte [r11]
mov rcx, qword [rdi + 0x38]
btc rbx, 7
mov rdx, qword [rdi + rbx*8 + 0x1d8]
add rdx, r13
call fcn.14006c308
mov rdx, qword [rdi + rbx*8 + 0x1d8]
lea r9, [0x1400747c4]
mov rcx, qword [rdi + 0x38]
add rdx, r13
mov r8d, 0x3a98
mov qword [rsp + 0x20], rsi
call fcn.14006bfe4
mov r11, qword [rsp + 0x60]
mov rax, qword [r11]
cmp rax, qword [rdi + 0x150]
jne 0x140075840
mov eax, dword [r11 + 8]
cmp eax, dword [rdi + 0x158]
jne 0x140075840
mov rcx, qword [rdi + 0x38]
mov rdx, rdi
call fcn.14006c308
mov ecx, dword [rdi + 0x12c]
test ecx, ecx
je 0x140075707
sub ecx, 1
je 0x140075692
sub ecx, 1
je 0x14007564a
cmp ecx, 1
jne 0x140075840
lea r8, [rdi + 0x84]
lea edx, [rcx + 3]
jmp 0x140075838
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 0x140075688
mov edx, 4
jmp 0x14007583b
mov edx, 3
jmp 0x14007583b
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 0x1400756ce
lea r8, [rdi + 0x84]
mov edx, r12d
jmp 0x14007583b
lea rdx, [rdi + 0x110]
mov dword [rdi + 0x12c], r12d
xor r8d, r8d
call fcn.1400743dc
mov rcx, qword [rdi + 0x38]
lea r9, [0x14007bedc]
mov r8d, 0x7d0
mov qword [rsp + 0x20], rsi
mov rdx, rdi
call fcn.14006bfe4
jmp 0x140075840
cmp word [rbp - 0x80], r12w
jne 0x140075833
mov ebx, 0x1c
lea r14d, [rbx - 0xc]
cmp word [rsp + 0x68], r12w
jne 0x14007575d
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 0x1400757bd
lea rcx, [rbp - 0x68]
mov qword [rbp - 0x68], rsi
call fcn.1400681d0
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x1400757d5
cdqe
test rax, rax
jle 0x1400757b6
mov r8d, dword [rdi + 0x88]
lea rdx, [rcx + 4]
cmp r8d, dword [rdx]
cmove ebx, r13d
add rdx, r14
sub rax, r13
jne 0x1400757a7
call fcn.1401630c0
jmp 0x1400757c8
cmp dword [rdi + 0x88], eax
jne 0x1400757d5
mov ebx, r13d
cmp ebx, r13d
jne 0x1400757d5
mov r8, r15
mov edx, r13d
jmp 0x140075838
cmp byte [rdi + 0x15b], sil
jne 0x1400757e8
mov r8, r15
mov edx, reloc.WS2_32.dll_inet_addr
jmp 0x140075838
cmp word [rsp + 0x68], r12w
jne 0x140075829
mov rcx, qword [rdi + 0x38]
lea r9, [0x14007bedc]
mov r8d, 0x7d0
mov dword [rdi + 0x12c], r13d
mov rdx, rdi
mov qword [rsp + 0x20], rsi
call fcn.14006bfe4
lea rdx, [rdi + 0xf4]
xor r8d, r8d
mov rcx, rdi
call fcn.1400743dc
jmp 0x140075840
mov r8, r15
mov edx, 0xa
jmp 0x140075838
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.140074adc
mov eax, r13d
jmp 0x140074ee4