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

Disassembly:
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbp
mov ebp, r8d
mov rdi, rdx
mov rsi, rcx
movups xmm0, xmmword [rdx + 4]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x14]
movups xmmword [rcx + 0x10], xmm1
movsd xmm0, qword [rdx + 0x24]
movsd qword [rcx + 0x20], xmm0
mov eax, dword [rdx + 0x2c]
mov dword [rcx + 0x28], eax
movups xmm0, xmmword [rdx + 0x30]
movups xmmword [rcx + 0x108], xmm0
movups xmm1, xmmword [rdx + 0x40]
movups xmmword [rcx + 0x118], xmm1
movups xmm0, xmmword [rdx + 0x50]
movups xmmword [rcx + 0x128], xmm0
movups xmm1, xmmword [rdx + 0x60]
movups xmmword [rcx + 0x138], xmm1
movups xmm0, xmmword [rdx + 0x70]
movups xmmword [rcx + 0x148], xmm0
movsd xmm1, qword [rdx + 0x80]
movsd qword [rcx + 0x158], xmm1
mov eax, dword [rdx + 0x88]
mov dword [rcx + 0x160], eax
mov rax, qword [rdx + 0x90]
mov qword [rcx + 0x168], rax
movups xmm0, xmmword [rdx + 0x98]
movups xmmword [rcx + 0x390], xmm0
movups xmm1, xmmword [rdx + 0xa8]
movups xmmword [rcx + 0x3a0], xmm1
movups xmm0, xmmword [rdx + 0xb8]
movups xmmword [rcx + 0x3b0], xmm0
movups xmm1, xmmword [rdx + 0xc8]
movups xmmword [rcx + 0x3c0], xmm1
movups xmm0, xmmword [rdx + 0xd8]
movups xmmword [rcx + 0x5e0], xmm0
movups xmm1, xmmword [rdx + 0xe8]
movups xmmword [rcx + 0x5f0], xmm1
movups xmm0, xmmword [rdx + 0xf8]
movups xmmword [rcx + 0x600], xmm0
movups xmm1, xmmword [rdx + 0x108]
movups xmmword [rcx + 0x610], xmm1
movups xmm0, xmmword [rdx + 0x118]
movups xmmword [rcx + 0x6ac], xmm0
movups xmm1, xmmword [rdx + 0x128]
movups xmmword [rcx + 0x6bc], xmm1
movups xmm0, xmmword [rdx + 0x138]
movups xmmword [rcx + 0x6cc], xmm0
movups xmm1, xmmword [rdx + 0x148]
movups xmmword [rcx + 0x6dc], xmm1
cmp dword [rdx + 0x184], 0
je 0x14004f2cc
movups xmm0, xmmword [rdx + 0x184]
movups xmmword [rcx + 0x450], xmm0
movups xmm1, xmmword [rdx + 0x194]
movups xmmword [rcx + 0x460], xmm1
movups xmm0, xmmword [rdx + 0x1a4]
movups xmmword [rcx + 0x470], xmm0
movups xmm1, xmmword [rdx + 0x1b4]
movups xmmword [rcx + 0x480], xmm1
movups xmm0, xmmword [rdx + 0x1c4]
movups xmmword [rcx + 0x490], xmm0
movups xmm1, xmmword [rdx + 0x1d4]
movups xmmword [rcx + 0x4a0], xmm1
movups xmm0, xmmword [rdx + 0x1e4]
movups xmmword [rcx + 0x4b0], xmm0
movups xmm1, xmmword [rdx + 0x1f4]
movups xmmword [rcx + 0x4c0], xmm1
jmp 0x14004f331
lea rax, [rcx + 0x450]
lea rcx, [rdx + 0x5d8]
mov edx, 2
nop
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [rax - 0x10], xmm1
lea rcx, [rcx + 0x80]
dec rdx
jne 0x14004f2e0
movups xmm0, xmmword [rdi + 0x208]
movups xmmword [rsi + 0x620], xmm0
movups xmm1, xmmword [rdi + 0x218]
movups xmmword [rsi + 0x630], xmm1
movups xmm0, xmmword [rdi + 0x228]
movups xmmword [rsi + 0x640], xmm0
movups xmm1, xmmword [rdi + 0x238]
movups xmmword [rsi + 0x650], xmm1
movups xmm0, xmmword [rdi + 0x248]
movups xmmword [rsi + 0x660], xmm0
movups xmm1, xmmword [rdi + 0x258]
movups xmmword [rsi + 0x670], xmm1
movups xmm0, xmmword [rdi + 0x268]
movups xmmword [rsi + 0x680], xmm0
movups xmm1, xmmword [rdi + 0x278]
movups xmmword [rsi + 0x690], xmm1
movups xmm0, xmmword [rdi + 0x28c]
movups xmmword [rsi + 0x6ec], xmm0
movups xmm1, xmmword [rdi + 0x29c]
movups xmmword [rsi + 0x6fc], xmm1
movups xmm0, xmmword [rdi + 0x2ac]
movups xmmword [rsi + 0x70c], xmm0
movups xmm1, xmmword [rdi + 0x2bc]
movups xmmword [rsi + 0x71c], xmm1
movups xmm0, xmmword [rdi + 0x2cc]
movups xmmword [rsi + 0x72c], xmm0
movups xmm1, xmmword [rdi + 0x2dc]
movups xmmword [rsi + 0x73c], xmm1
movups xmm0, xmmword [rdi + 0x2ec]
movups xmmword [rsi + 0x74c], xmm0
movups xmm1, xmmword [rdi + 0x2fc]
movups xmmword [rsi + 0x75c], xmm1
cmp r8d, 0x158
jbe 0x14004f427
movzx eax, byte [rdi + 0x158]
mov byte [rsi + 0x4312], al
cmp r8d, 0x15c
jbe 0x14004f43d
movzx eax, byte [rdi + 0x15c]
mov byte [rsi + 0x4314], al
cmp r8d, 0x160
jbe 0x14004f452
mov eax, dword [rdi + 0x160]
mov dword [rsi + 0x76c], eax
cmp r8d, 0x164
jbe 0x14004f468
movzx eax, byte [rdi + 0x164]
mov byte [rsi + 0x770], al
cmp r8d, 0x168
jbe 0x14004f47d
mov eax, dword [rdi + 0x168]
mov dword [rsi + 0x6a0], eax
cmp r8d, 0x16c
jbe 0x14004f493
movzx eax, byte [rdi + 0x16c]
mov byte [rsi + 0x6a4], al
cmp r8d, 0x170
jbe 0x14004f4a8
mov eax, dword [rdi + 0x170]
mov dword [rsi + 0x5d0], eax
cmp r8d, 0x174
jbe 0x14004f4be
movzx eax, byte [rdi + 0x174]
mov byte [rsi + 0x5d4], al
cmp r8d, 0x175
jbe 0x14004f4d4
movzx eax, byte [rdi + 0x175]
mov byte [rsi + 0x4301], al
cmp r8d, 0x176
jbe 0x14004f4ea
movzx eax, byte [rdi + 0x176]
mov byte [rsi + 0x4302], al
cmp r8d, 0x178
jbe 0x14004f500
movzx eax, byte [rdi + 0x178]
mov byte [rsi + 0x4316], al
cmp r8d, 0x17c
jbe 0x14004f515
mov eax, dword [rdi + 0x17c]
mov dword [rsi + 0x178], eax
cmp r8d, 0x180
jbe 0x14004f52a
mov eax, dword [rdi + 0x180]
mov dword [rsi + 0x38c], eax
cmp r8d, 0x204
jbe 0x14004f53f
mov eax, dword [rdi + 0x204]
mov dword [rsi + 0x6a8], eax
cmp r8d, 0x288
jbe 0x14004f554
mov eax, dword [rdi + 0x288]
mov dword [rsi + 0x5dc], eax
cmp r8d, 0x30c
jbe 0x14004f56a
movzx eax, byte [rdi + 0x30c]
mov byte [rsi + 0x4300], al
cmp r8d, 0x30d
jbe 0x14004f580
movzx eax, byte [rdi + 0x30d]
mov byte [rsi + 0x4311], al
cmp r8d, 0x310
jbe 0x14004f597
mov rax, qword [rdi + 0x310]
mov qword [rsi + 0x170], rax
cmp r8d, 0x318
jbe 0x14004f5ad
movzx eax, byte [rdi + 0x318]
mov byte [rsi + 0x4315], al
cmp r8d, 0x319
jbe 0x14004f5c3
movzx eax, byte [rdi + 0x319]
mov byte [rsi + 0x4318], al
cmp r8d, 0x41e
jbe 0x14004f5d9
movzx eax, byte [rdi + 0x41e]
mov byte [rsi + 0x4544], al
cmp r8d, 0x523
jbe 0x14004f5ef
movzx eax, byte [rdi + 0x523]
mov byte [rsi + 0x4303], al
cmp r8d, 0x524
jbe 0x14004f605
movzx eax, byte [rdi + 0x524]
mov byte [rsi + 0x4313], al
cmp r8d, 0x525
jbe 0x14004f61b
movzx eax, byte [rdi + 0x525]
mov byte [rsi + 0x4319], al
cmp r8d, 0x554
jbe 0x14004f630
mov eax, dword [rdi + 0x554]
mov dword [rsi + 0x4750], eax
cmp r8d, 0x568
jbe 0x14004f645
mov eax, dword [rdi + 0x568]
mov dword [rsi + 0x477c], eax
cmp r8d, 0x558
jbe 0x14004f65a
mov eax, dword [rdi + 0x558]
mov dword [rsi + 0x4754], eax
cmp r8d, 0x55c
jbe 0x14004f66f
mov eax, dword [rdi + 0x55c]
mov dword [rsi + 0x4758], eax
cmp r8d, 0x560
jbe 0x14004f684
mov eax, dword [rdi + 0x560]
mov dword [rsi + 0x475c], eax
cmp r8d, 0x564
jbe 0x14004f699
mov eax, dword [rdi + 0x564]
mov dword [rsi + 0x4760], eax
cmp r8d, 0x56c
jbe 0x14004f6ae
mov eax, dword [rdi + 0x56c]
mov dword [rsi + 0x17c], eax
cmp r8d, 0x570
jbe 0x14004f6c4
movzx eax, byte [rdi + 0x570]
mov byte [rsi + 0x431a], al
cmp r8d, 0x571
jbe 0x14004f6da
movzx eax, byte [rdi + 0x571]
mov byte [rsi + 0x38a], al
cmp r8d, 0x574
jbe 0x14004f6ef
mov eax, dword [rdi + 0x574]
mov dword [rsi + 0x5d8], eax
cmp r8d, 0x578
jbe 0x14004f704
mov eax, dword [rdi + 0x578]
mov dword [rsi + 0x432c], eax
cmp r8d, 0x5d4
jbe 0x14004f71a
movzx eax, byte [rdi + 0x5d4]
mov byte [rsi + 0x431c], al
cmp r8d, 0x6d8
jbe 0x14004f72f
mov eax, dword [rdi + 0x6d8]
mov dword [rsi + 0x4330], eax
cmp r8d, 0x6f4
jbe 0x14004f745
movzx eax, byte [rdi + 0x6f4]
mov byte [rsi + 0x431f], al
cmp r8d, 0x6f5
jbe 0x14004f75b
movzx eax, byte [rdi + 0x6f5]
mov byte [rsi + 0x4320], al
xor r12d, r12d
cmp r8d, 0x31a
jbe 0x14004f811
lea r15, [rdi + 0x31a]
call fcn.1400450d0
mov rdx, rax
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x14004f792
mov ecx, 0x80004005
call fcn.140044890
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x60], rbx
test r15, r15
je 0x14004f7d7
test r15, 0xffffffffffff0000
jne 0x14004f7d7
movzx r15d, r15w
xor edx, edx
mov ecx, r15d
call fcn.1400447e0
test rax, rax
je 0x14004f7e9
mov r8d, r15d
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.1400451c0
jmp 0x14004f7e4
mov rdx, r15
lea rcx, [rsp + 0x60]
call fcn.14004ed00
mov rbx, qword [rsp + 0x60]
lea rcx, [rsi + 0x433c]
mov r8, rbx
mov edx, 0x104
call fcn.1400a97ac
lea rdx, [rbx - 0x18]
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14004f811
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
cmp ebp, 0x41f
jbe 0x14004f8bf
lea r15, [rdi + 0x41f]
call fcn.1400450d0
mov rcx, rax
test rax, rax
setne r12b
test r12d, r12d
jne 0x14004f843
mov ecx, 0x80004005
call fcn.140044890
int3
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x68], rbx
test r15, r15
je 0x14004f885
test r15, 0xffffffffffff0000
jne 0x14004f885
movzx r15d, r15w
xor edx, edx
mov ecx, r15d
call fcn.1400447e0
test rax, rax
je 0x14004f897
mov r8d, r15d
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.1400451c0
jmp 0x14004f892
mov rdx, r15
lea rcx, [rsp + 0x68]
call fcn.14004ed00
mov rbx, qword [rsp + 0x68]
lea rcx, [rsi + 0x4546]
mov r8, rbx
mov edx, 0x104
call fcn.1400a97ac
lea rdx, [rbx - 0x18]
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14004f8bf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
cmp ebp, 0x528
jbe 0x14004f8f3
movups xmm0, xmmword [rdi + 0x528]
movups xmmword [rsi + 0x2c], xmm0
movups xmm1, xmmword [rdi + 0x538]
movups xmmword [rsi + 0x3c], xmm1
movsd xmm0, qword [rdi + 0x548]
movsd qword [rsi + 0x4c], xmm0
mov eax, dword [rdi + 0x550]
mov dword [rsi + 0x54], eax
cmp ebp, 0x57c
jbe 0x14004f92a
movups xmm0, xmmword [rdi + 0x57c]
movups xmmword [rsi + 0x58], xmm0
movups xmm1, xmmword [rdi + 0x58c]
movups xmmword [rsi + 0x68], xmm1
movsd xmm0, qword [rdi + 0x59c]
movsd qword [rsi + 0x78], xmm0
mov eax, dword [rdi + 0x5a4]
mov dword [rsi + 0x80], eax
cmp ebp, 0x5a8
jbe 0x14004f96a
movups xmm0, xmmword [rdi + 0x5a8]
movups xmmword [rsi + 0xb0], xmm0
movups xmm1, xmmword [rdi + 0x5b8]
movups xmmword [rsi + 0xc0], xmm1
movsd xmm0, qword [rdi + 0x5c8]
movsd qword [rsi + 0xd0], xmm0
mov eax, dword [rdi + 0x5d0]
mov dword [rsi + 0xd8], eax
cmp ebp, 0x6dc
jbe 0x14004f98e
movsd xmm0, qword [rdi + 0x6dc]
movsd qword [rsi + 0x4780], xmm0
mov eax, dword [rdi + 0x6e4]
mov dword [rsi + 0x4788], eax
cmp ebp, 0x6e8
jbe 0x14004f9b2
movsd xmm0, qword [rdi + 0x6e8]
movsd qword [rsi + 0x478c], xmm0
mov eax, dword [rdi + 0x6f0]
mov dword [rsi + 0x4794], eax
cmp ebp, 0x6f4
jbe 0x14004f9d6
movsd xmm0, qword [rdi + 0x6f4]
movsd qword [rsi + 0x478c], xmm0
mov eax, dword [rdi + 0x6fc]
mov dword [rsi + 0x4794], eax
cmp ebp, 0x700
jbe 0x14004f9fa
movsd xmm0, qword [rdi + 0x700]
movsd qword [rsi + 0x478c], xmm0
mov eax, dword [rdi + 0x708]
mov dword [rsi + 0x4794], eax
cmp ebp, 0x70c
jbe 0x14004fa1e
movsd xmm0, qword [rdi + 0x70c]
movsd qword [rsi + 0x478c], xmm0
mov eax, dword [rdi + 0x714]
mov dword [rsi + 0x4794], eax
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r12
pop rdi
pop rsi