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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
movsd qword [rsp + 8], xmm0
push rsi
push rdi
sub rsp, 0xe8
mov rax, qword [0x140292140]
xor rax, rsp
mov qword [rsp + 0xd8], rax
mov dword [rsp + 0x50], 0x34
movsd xmm1, qword [rsp + 0x100]
lea rcx, [rsp + 0xb8]
call fcn.140112290
mov eax, dword [rsp + 0xc0]
add eax, 0x34
mov dword [rsp + 0xc0], eax
call fcn.14012d300
movzx eax, al
test eax, eax
jne 0x140127a6a
mov eax, dword [rsp + 0xc0]
dec eax
mov dword [rsp + 0xc0], eax
mov dword [rsp + 0x54], 0x35
mov dword [rsp + 0x58], recvfrom
mov dword [rsp + 0x5c], 0x34
movabs rax, 0xf0000000000000
mov qword [rsp + 0x80], rax
movabs rax, 0xf0000000000000
mov rcx, qword [rsp + 0xb8]
and rcx, rax
mov rax, rcx
shr rax, 0x34
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 1
jbe 0x140127ae1
mov ecx, dword [rsp + 0x38]
call fcn.140160ce0
mov ecx, 0x20
sub ecx, eax
mov eax, ecx
dec eax
mov ecx, dword [rsp + 0xc0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0xc0], eax
mov dword [rsp + 0x20], recvfrom
cmp dword [rsp + 0x108], 0
jl 0x140127c37
mov eax, dword [rsp + 0x108]
cmp dword [rsp + 0x20], eax
jle 0x140127c37
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x20]
sub ecx, eax
mov eax, ecx
lea eax, [rax*4 - 4]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x30]
mov ecx, recvfrom
mov qword [rsp + 0x60], rcx
movzx ecx, al
mov rax, qword [rsp + 0x60]
shl rax, cl
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0xb8]
and rcx, rax
mov rax, rcx
mov ecx, dword [rsp + 0x30]
shr rax, cl
mov dword [rsp + 0x3c], eax
cmp dword [rsp + 0x3c], 8
jb 0x140127bc2
mov eax, dword [rsp + 0x30]
add eax, 4
mov ecx, 1
mov qword [rsp + 0x70], rcx
movzx ecx, al
mov rax, qword [rsp + 0x70]
shl rax, cl
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xb8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x48]
dec rax
not rax
mov rcx, qword [rsp + 0xb8]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0xb8], rax
call fcn.14012d300
movzx eax, al
test eax, eax
jne 0x140127c2c
movabs rax, 0x10000000000000
mov qword [rsp + 0x88], rax
movabs rax, 0x10000000000000
mov rcx, qword [rsp + 0xb8]
and rcx, rax
mov rax, rcx
movabs rcx, 0x10000000000000
cmp rax, rcx
jne 0x140127c2c
mov rax, qword [rsp + 0xb8]
shr rax, 4
mov qword [rsp + 0xb8], rax
mov eax, dword [rsp + 0xc0]
add eax, 4
mov dword [rsp + 0xc0], eax
mov eax, dword [rsp + 0x108]
mov dword [rsp + 0x20], eax
mov r8b, 0x30
mov edx, recvfrom
lea rcx, [rsp + 0xc8]
call fcn.140125960
movzx eax, byte [rsp + 0x116]
and al, 1
movzx r9d, al
mov r8d, recvfrom
mov rdx, qword [rsp + 0xb8]
lea rcx, [rsp + 0xc8]
call fcn.140128c70
nop
cmp dword [rsp + 0x20], 0
jle 0x140127c9b
movsxd rax, dword [rsp + 0x20]
movsx eax, byte [rsp + rax + 0xc8]
cmp eax, 0x30
jne 0x140127c9b
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
jmp 0x140127c76
mov byte [rsp + 0x26], 0x30
lea rdx, [rsp + 0x26]
mov rcx, qword [rsp + 0x118]
call fcn.14016c2a0
nop
movzx eax, byte [rsp + 0x116]
and al, 1
movzx eax, al
test eax, eax
je 0x140127ccb
mov byte [rsp + 0x24], 0x58
jmp 0x140127cd0
mov byte [rsp + 0x24], 0x78
movzx eax, byte [rsp + 0x24]
mov byte [rsp + 0x27], al
lea rdx, [rsp + 0x27]
mov rcx, qword [rsp + 0x118]
call fcn.14016c2a0
nop
mov eax, 1
imul rax, rax, 0
lea rax, [rsp + rax + 0xc8]
mov rdx, rax
mov rcx, qword [rsp + 0x118]
call fcn.14016c2a0
nop
movzx eax, byte [rsp + 0x116]
shr al, 3
and al, 1
movzx eax, al
test eax, eax
jne 0x140127d36
cmp dword [rsp + 0x20], 0
jg 0x140127d36
mov eax, dword [rsp + 0x108]
cmp dword [rsp + 0x20], eax
jge 0x140127d4e
mov byte [rsp + 0x28], 0x2e
lea rdx, [rsp + 0x28]
mov rcx, qword [rsp + 0x118]
call fcn.14016c2a0
nop
movsxd rax, dword [rsp + 0x20]
lea rax, [rsp + rax + 0xc9]
lea rcx, [rsp + 0xc9]
mov r8, rax
mov rdx, rcx
mov rcx, qword [rsp + 0x118]
call fcn.14011d790
nop
jmp 0x140127d83
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x108]
cmp dword [rsp + 0x20], eax
jge 0x140127daa
mov byte [rsp + 0x29], 0x30
lea rdx, [rsp + 0x29]
mov rcx, qword [rsp + 0x118]
call fcn.14016c2a0
nop
jmp 0x140127d79
movzx eax, byte [rsp + 0x116]
and al, 1
movzx eax, al
test eax, eax
je 0x140127dc2
mov byte [rsp + 0x25], 0x50
jmp 0x140127dc7
mov byte [rsp + 0x25], WSACleanup
movzx eax, byte [rsp + 0x25]
mov byte [rsp + 0x2a], al
lea rdx, [rsp + 0x2a]
mov rcx, qword [rsp + 0x118]
call fcn.14016c2a0
nop
cmp dword [rsp + 0xc0], 0
jge 0x140127e14
mov byte [rsp + 0x2b], 0x2d
lea rdx, [rsp + 0x2b]
mov rcx, qword [rsp + 0x118]
call fcn.14016c2a0
nop
mov eax, dword [rsp + 0xc0]
neg eax
mov dword [rsp + 0x34], eax
jmp 0x140127e37
mov byte [rsp + 0x2c], 0x2b
lea rdx, [rsp + 0x2c]
mov rcx, qword [rsp + 0x118]
call fcn.14016c2a0
nop
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0x34], eax
mov ecx, dword [rsp + 0x34]
call fcn.140160bf0
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0x118]
lea rcx, [rsp + 0x90]
call fcn.14014b830
mov rax, qword [rax]
mov qword [rsp + 0x78], rax
mov r9d, dword [rsp + 0x40]
mov r8d, dword [rsp + 0x34]
mov rdx, qword [rsp + 0x78]
lea rcx, [rsp + 0x98]
call fcn.140126980
lea rcx, [rsp + 0xa8]
mov rdi, rcx
mov rsi, rax
mov ecx, recvfrom
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [rsp + 0xd8]
xor rcx, rsp
call fcn.1401e9b40
add rsp, 0xe8
pop rdi
pop rsi
ret