Function at 0x14000fd40
Capabilities:
Access peb ldr_data
Authenticate hmac
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x118]
sub rsp, 0x1f0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1401fec80]
xor rax, rsp
mov qword [rbp + 0xd0], rax
mov dword [rsp + 0x30], 0
movups xmm0, xmmword [str.r_bocXSWNIgupc_bbge]
movups xmmword [rsp + 0x60], xmm0
mov ecx, dword [0x1401fec30]
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x14000ff23
cmp ecx, 2
jl 0x14000fee8
movdqa xmm5, xmmword [0x140040b80]
xor edx, edx
movdqa xmm4, xmmword [0x140040c40]
movdqa xmm6, xmmword [0x140040ba0]
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x64]
mov r8d, dword [rsp + 0x50]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140040c10]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140040c10]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x10
jl 0x14000fde1
jmp 0x14000ff23
lea r9, [rsp + 0x60]
xor r8d, r8d
mov eax, 0x8fb823ef
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x14000fef0
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], 0
mov qword [rbp + 0xc8], 0
lea rax, [rsp + 0x60]
mov r12, 0xffffffffffffffff
mov r8, r12
inc r8
cmp byte [rax + r8], 0
jne 0x14000ff52
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0xb0]
call fcn.1400019d0
nop
movsd xmm0, qword [0x14003ec08]
movsd qword [rsp + 0x38], xmm0
movzx eax, word [0x14003ec10]
mov word [rsp + 0x40], ax
cmp byte [0x14003ec11], 0
je 0x14000ffc3
mov byte [rsp + 0x38], 0x53
xor byte [rsp + 0x39], 0x32
xor byte [rsp + 0x3a], 0x33
xor byte [rsp + 0x3b], 0x34
xor byte [rsp + 0x3c], 0x35
xor byte [rsp + 0x3d], 0x36
xor byte [rsp + 0x3e], 0x37
xor byte [rsp + 0x3f], 0x38
xor byte [rsp + 0x40], 0x39
xor byte [rsp + 0x41], 0x3a
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], 0
mov qword [rbp + 0xa8], 0
lea rax, [rsp + 0x38]
mov r8, r12
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14000fff0
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x90]
call fcn.1400019d0
nop
lea rax, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0xf
cmova rax, qword [rbp + 0xb0]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp + 0xc0]
mov qword [rbp - 0x28], rax
xor r8d, r8d
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x20]
call fcn.140001c10
mov edi, 0x4000
mov dword [rsp + 0x30], edi
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x30], xmm0
xor r8d, r8d
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x30]
call fcn.140003630
test eax, eax
jne 0x140010aa7
lea rcx, [rbp - 0x20]
call fcn.14000f960
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
mov rcx, qword [rbp + 0x38]
test rcx, rcx
je 0x140010090
lock inc dword [rcx + 8]
mov rcx, qword [rbp + 0x38]
mov edi, dword [rsp + 0x30]
movaps xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0x60], xmm0
test rcx, rcx
je 0x1400100aa
lock inc dword [rcx + 8]
mov rcx, qword [rbp + 0x38]
mov edi, dword [rsp + 0x30]
xorps xmm1, xmm1
movdqu xmmword [rbp], xmm1
test rcx, rcx
je 0x1400100eb
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1400100e7
mov rbx, qword [rbp + 0x38]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400100e7
mov rcx, qword [rbp + 0x38]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
mov edi, dword [rsp + 0x30]
nop dword [rax + rax]
mov r13, qword [rbp + 0x60]
test r13, r13
je 0x140010952
lea rcx, [r13 + 0x20]
cmp qword [r13 + 0x38], 7
jbe 0x14001010c
mov rcx, qword [r13 + 0x20]
mov rax, qword [r13 + 0x30]
lea rsi, [rcx + rax*2]
mov rbx, rsi
mov rdx, rsi
call fcn.14000e700
cmp rax, rsi
je 0x14001015c
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x140010133
cmp cx, 0x2f
jne 0x14001013c
add rax, 2
cmp rax, rsi
jne 0x140010124
cmp rax, rsi
je 0x14001015c
lea rdx, [rbx - 2]
movzx ecx, word [rdx]
cmp cx, 0x5c
je 0x14001015c
cmp cx, 0x2f
je 0x14001015c
mov rbx, rdx
cmp rax, rdx
jne 0x140010141
sub rsi, rbx
sar rsi, 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 0
mov qword [rbp - 0x78], 0
mov r8, rsi
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.140001ad0
or edi, 0x380
lea r14, [rsp + 0x70]
cmp qword [rbp - 0x78], 7
cmova r14, qword [rsp + 0x70]
mov rsi, qword [rbp - 0x80]
call fcn.140039634
mov r15d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
xor eax, eax
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x70], al
bts edi, 0xd
mov dword [rsp + 0x30], edi
test rsi, rsi
je 0x140010250
cmp rsi, 0x7fffffff
ja 0x140010ace
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, esi
mov rdx, r14
mov ecx, r15d
call fcn.1400396a4
mov rbx, rax
mov qword [rsp + 0x50], rax
shr rax, 0x20
test eax, eax
jne 0x140010ac4
movsxd rdx, ebx
xor r8d, r8d
lea rcx, [rbp + 0x70]
call fcn.14001a500
lea r9, [rbp + 0x70]
cmp qword [rbp + 0x88], 0xf
cmova r9, qword [rbp + 0x70]
mov dword [rsp + 0x20], ebx
mov r8d, esi
mov rdx, r14
mov ecx, r15d
call fcn.1400396a4
mov qword [rsp + 0x50], rax
shr rax, 0x20
test eax, eax
jne 0x140010aba
btr edi, 0xd
or edi, 0x1c00
lea rcx, [rsp + 0x70]
call fcn.14000f960
lea rcx, [r13 + 0x20]
cmp qword [r13 + 0x38], 7
jbe 0x140010273
mov rcx, qword [r13 + 0x20]
mov rax, qword [r13 + 0x30]
lea rsi, [rcx + rax*2]
mov rbx, rsi
mov rdx, rsi
call fcn.14000e700
cmp rax, rsi
je 0x1400102cc
nop dword [rax + rax]
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x14001029f
cmp cx, 0x2f
jne 0x1400102a8
add rax, 2
cmp rax, rsi
jne 0x140010290
cmp rax, rsi
je 0x1400102cc
nop dword [rax]
lea r8, [rbx - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x1400102cc
cmp cx, 0x2f
je 0x1400102cc
mov rbx, r8
cmp rax, r8
jne 0x1400102b0
mov r8d, 0x3a
mov rdx, rsi
mov rcx, rbx
call fcn.1400393d0
cmp rbx, rax
je 0x14001031f
lea rdx, [rax - 2]
cmp rbx, rdx
je 0x14001031f
cmp word [rdx], 0x2e
jne 0x140010302
lea rcx, [rdx - 2]
cmp rbx, rcx
jne 0x140010322
cmp word [rcx], 0x2e
jne 0x140010322
jmp 0x14001031f
sub rdx, 2
cmp rbx, rdx
je 0x14001031f
nop dword [rax + rax]
cmp word [rdx], 0x2e
je 0x140010322
sub rdx, 2
cmp rbx, rdx
jne 0x140010310
mov rdx, rax
sub rax, rdx
sar rax, 1
xorps xmm0, xmm0
movups xmmword [rbp - 0x70], xmm0
xor ebx, ebx
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x58], rbx
mov r8, rax
lea rcx, [rbp - 0x70]
call fcn.140001ad0
or edi, 0x70
lea r14, [rbp - 0x70]
cmp qword [rbp - 0x58], 7
cmova r14, qword [rbp - 0x70]
mov rsi, qword [rbp - 0x60]
call fcn.140039634
mov r15d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], rbx
mov qword [rbp + 0x58], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x40], bl
or edi, 8
mov dword [rsp + 0x30], edi
test rsi, rsi
je 0x1400103f9
cmp rsi, 0x7fffffff
ja 0x140010aed
mov dword [rsp + 0x20], ebx
xor r9d, r9d
mov r8d, esi
mov rdx, r14
mov ecx, eax
call fcn.1400396a4
mov rbx, rax
mov qword [rsp + 0x50], rax
shr rax, 0x20
test eax, eax
jne 0x140010ae3
movsxd rdx, ebx
xor r8d, r8d
lea rcx, [rbp + 0x40]
call fcn.14001a500
lea r9, [rbp + 0x40]
cmp qword [rbp + 0x58], 0xf
cmova r9, qword [rbp + 0x40]
mov dword [rsp + 0x20], ebx
mov r8d, esi
mov rdx, r14
mov ecx, r15d
call fcn.1400396a4
mov qword [rsp + 0x50], rax
shr rax, 0x20
test eax, eax
jne 0x140010ad9
and edi, 0xfffffff7
or edi, 7
mov dword [rsp + 0x30], edi
lea rcx, [rbp - 0x70]
call fcn.14000f960
mov eax, dword [0x14003ec14]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x14003ec18]
mov byte [rsp + 0x48], 0x2e
xor byte [rsp + 0x49], 0x32
xor byte [rsp + 0x4a], 0x33
xor byte [rsp + 0x4b], 0x34
xor al, 0x35
mov byte [rsp + 0x4c], al
lea rcx, [rsp + 0x48]
mov rax, r12
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x140010440
lea rcx, [rbp + 0x40]
mov rbx, qword [rbp + 0x58]
cmp rbx, 0xf
cmova rcx, qword [rbp + 0x40]
mov r8, qword [rbp + 0x50]
cmp r8, rax
jne 0x1400108ac
lea rdx, [rsp + 0x48]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400108ac
lea rdx, [rbp + 0x90]
cmp qword [rbp + 0xa8], 0xf
cmova rdx, qword [rbp + 0x90]
lea rcx, [rbp + 0x70]
cmp qword [rbp + 0x88], 0xf
cmova rcx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x80]
cmp r8, qword [rbp + 0xa0]
jne 0x1400104be
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400108ac
lea rcx, [r13 + 0x20]
cmp qword [r13 + 0x38], 7
jbe 0x1400104cd
mov rcx, qword [r13 + 0x20]
call fcn.140039cc8
mov qword [rsp + 0x50], rax
mov rcx, rax
shr rcx, 0x20
test ecx, ecx
jne 0x140010a83
test al, al
jne 0x1400108a8
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140010574
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140010574
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0xc88ddc8c
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001056f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140010550
cmp edx, 0xad605d37
je 0x140010579
test r9d, r9d
jne 0x140010530
mov rax, qword [rax]
jmp 0x140010500
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
movups xmm0, xmmword [0x14003ec20]
movups xmmword [rbp - 0x50], xmm0
movsd xmm0, qword [0x14003ec30]
movsd qword [rbp - 0x40], xmm0
movzx eax, byte [0x14003ec38]
mov byte [rbp - 0x38], al
xor r8d, r8d
cmp dword [0x1401fec30], 2
jl 0x1400106fe
movdqa xmm5, xmmword [0x140040b80]
movdqa xmm4, xmmword [0x140040c40]
movdqa xmm6, xmmword [0x140040ba0]
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x4c]
mov edx, dword [rsp + 0x50]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140040c10]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140040c10]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x1400105f1
cmp r8d, 0x19
jge 0x140010743
movsxd rax, r8d
lea r9, [rbp - 0x50]
add r9, rax
nop dword [rax + rax]
mov eax, 0x8fb823ef
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x19
jl 0x140010710
lea rcx, [rbp - 0x50]
call r11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x1400107d4
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x1400107d4
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x2c86b5f
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x1400107cf
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x1400107b0
cmp edx, 0xc3f0efc2
je 0x1400107d9
test r9d, r9d
jne 0x140010790
mov rax, qword [rax]
jmp 0x140010760
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0xbb8
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x140010886
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140010886
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r11 + r9*4]
mov ecx, dword [rdx + r10]
add rcx, r10
mov r8d, 0x85cb782f
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x140010881
nop
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x140010860
cmp r8d, 0x441e71a3
je 0x14001088b
test r9d, r9d
jne 0x140010840
mov rax, qword [rax]
jmp 0x140010810
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov ecx, dword [rbx + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
call rax
mov edi, dword [rsp + 0x30]
mov rbx, qword [rbp + 0x58]
cmp rbx, 0xf
jbe 0x1400108e0
lea rdx, [rbx + 1]
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400108db
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140010944
call fcn.140039fd0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x40], 0
mov rdx, qword [rbp + 0x88]
cmp rdx, 0xf
jbe 0x14001092e
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010929
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001094b
call fcn.140039fd0
lea rcx, [rbp + 0x60]
call fcn.14000dfa0
test eax, eax
jne 0x140010a98
jmp 0x1400100f0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rcx, qword [rbp + 0x68]
test rcx, rcx
je 0x14001098c
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14001098c
mov rbx, qword [rbp + 0x68]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14001098c
mov rcx, qword [rbp + 0x68]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
nop
mov rcx, qword [rbp + 0x38]
test rcx, rcx
je 0x1400109c5
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1400109c5
mov rbx, qword [rbp + 0x38]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r12d
cmp r12d, 1
jne 0x1400109c5
mov rcx, qword [rbp + 0x38]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
nop
mov rdx, qword [rbp + 0xa8]
cmp rdx, 0xf
jbe 0x140010a0a
inc rdx
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010a04
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140010a04
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039fd0
nop
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0xf
jbe 0x140010a4e
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010a49
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140010a49
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140039fd0
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.14003a390
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea r8, [r13 + 0x20]
mov edx, dword [rsp + 0x54]
lea rcx, [0x14003ebb8]
call fcn.14000f7b0
nop
mov edx, eax
lea rcx, str.directory_iterator::operator
call fcn.14000f750
nop
lea r8, [rbp - 0x20]
mov edx, eax
lea rcx, str.directory_iterator::directory_iterator
call fcn.14000f7b0
nop
mov ecx, dword [rsp + 0x54]
call fcn.14000f860
int3
mov ecx, dword [rsp + 0x54]
call fcn.14000f860
int3
mov ecx, reloc.WS2_32.dll_shutdown
call fcn.14000f820
nop
mov ecx, dword [rsp + 0x54]
call fcn.14000f860
int3
mov ecx, dword [rsp + 0x54]
call fcn.14000f860
int3
mov ecx, reloc.WS2_32.dll_shutdown
call fcn.14000f820
int3