Function at 0x1400b79b0
Capabilities:
Set socket configuration

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x458
mov rdi, rcx
mov rsi, qword [rcx + 0xd8]
mov r14, qword [rcx + 0xe0]
mov rcx, rsi
call qword [r14 + 0xb8]
test rax, rax
je 0x1400b7a4c
mov rbx, rax
mov dword [rsp + 0xe8], 0
mov rcx, qword [rax]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0xe8]
mov edx, 0xffff
mov r8d, 0x1006
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x1400b7a67
mov dword [rsp + 0xe8], 0
mov rcx, qword [rbx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0xe8]
mov edx, 0xffff
mov r8d, 0x1005
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x1400b7a67
movabs rbp, 0x8000000000000000
cmp qword [rdi + 8], rbp
jne 0x1400b7ad9
mov rcx, rbp
mov rsi, rcx
jmp 0x1400b7cf1
call sub.ws2_32.dll_WSAGetLastError
mov ebx, eax
shl rbx, 0x20
cmp qword [rdi + 0xb8], 0
je 0x1400b7a9f
mov r8, qword [rdi + 0xb0]
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [rdi + 0xd8]
mov r14, qword [rdi + 0xe0]
or rbx, 2
mov rcx, rsi
call qword [r14]
cmp qword [r14 + 8], 0
je 0x1400b7acc
cmp qword [r14 + 0x10], 0x11
jb 0x1400b7abb
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
mov rcx, rdi
call fcn.1400b78d0
jmp 0x1400b8a83
mov rbx, qword [rdi]
cmp rbx, 0xffffffffffffffff
je 0x1400b7aed
lock inc qword [rbx + 8]
jle 0x1400b82bf
mov r15, qword [rdi + 0x10]
mov rsi, qword [rdi + 0x18]
mov r13d, 1
mov r14d, 1
test rsi, rsi
je 0x1400b7b29
js 0x1400b82bf
movzx eax, byte [0x140259141]
xor ecx, ecx
mov rdx, rsi
call fcn.14008b700
mov r14, rax
test rax, rax
je 0x1400b82bf
mov rcx, r14
mov rdx, r15
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov r12, qword [rdi + 0x28]
mov r15, qword [rdi + 0x30]
test r15, r15
je 0x1400b7b67
js 0x1400b82bf
movzx eax, byte [0x140259141]
xor ecx, ecx
mov rdx, r15
call fcn.14008b700
mov r13, rax
test rax, rax
je 0x1400b82bf
mov qword [rsp + 0x38], r13
mov rcx, r13
mov rdx, r12
mov r8, r15
call sub.msvcrt.dll_memcpy
movzx r8d, word [rdi + 0x88]
movzx r9d, word [rdi + 0x8a]
cmp qword [rdi + 0x38], rbp
jne 0x1400b7b98
mov r12, rbp
jmp 0x1400b7ce7
mov r13, qword [rdi + 0x40]
mov r12, qword [rdi + 0x48]
test r12, r12
mov word [rsp + 0x2e], r8w
mov word [rsp + 0x2c], r9w
je 0x1400b7bd5
js 0x1400b82bf
movzx eax, byte [0x140259141]
xor ecx, ecx
mov rdx, r12
call fcn.14008b700
mov rcx, rax
test rax, rax
jne 0x1400b7bda
jmp 0x1400b82bf
mov ecx, 1
mov qword [rsp + 0x48], rcx
mov rdx, r13
mov r8, r12
call sub.msvcrt.dll_memcpy
mov r10d, dword [rdi + 0x80]
cmp qword [rdi + 0x50], rbp
mov dword [rsp + 0x44], r10d
jne 0x1400b7c16
mov r13, rbp
cmp qword [rdi + 0x68], r13
movzx r8d, word [rsp + 0x2e]
movzx r9d, word [rsp + 0x2c]
jne 0x1400b7c7d
jmp 0x1400b7cdb
mov r13, qword [rdi + 0x58]
mov rbp, qword [rdi + 0x60]
test rbp, rbp
je 0x1400b7c47
js 0x1400b82bf
movzx eax, byte [0x140259141]
xor ecx, ecx
mov rdx, rbp
call fcn.14008b700
mov rcx, rax
test rax, rax
jne 0x1400b7c4c
jmp 0x1400b82bf
mov ecx, 1
mov qword [rsp + 0x50], rcx
mov rdx, r13
mov r8, rbp
call sub.msvcrt.dll_memcpy
movabs r13, 0x8000000000000000
mov r10d, dword [rsp + 0x44]
cmp qword [rdi + 0x68], r13
movzx r8d, word [rsp + 0x2e]
movzx r9d, word [rsp + 0x2c]
je 0x1400b7c11
mov rdx, qword [rdi + 0x70]
mov r13, qword [rdi + 0x78]
test r13, r13
je 0x1400b7cb8
mov qword [rsp + 0x30], rdx
js 0x1400b82bf
movzx eax, byte [0x140259141]
xor ecx, ecx
mov rdx, r13
call fcn.14008b700
mov rcx, rax
test rax, rax
mov rdx, qword [rsp + 0x30]
jne 0x1400b7cbd
jmp 0x1400b82bf
mov ecx, 1
mov qword [rsp + 0x30], rcx
mov r8, r13
call sub.msvcrt.dll_memcpy
movzx r8d, word [rsp + 0x2e]
movzx r9d, word [rsp + 0x2c]
mov r10d, dword [rsp + 0x44]
mov r11, qword [rsp + 0x50]
movzx eax, byte [rdi + 0x84]
movabs rcx, 0x8000000000000000
mov qword [rsp + 0x2a8], rbx
mov qword [rsp + 0x2b0], rsi
mov qword [rsp + 0x2b8], r14
mov qword [rsp + 0x2c0], rsi
mov qword [rsp + 0x2c8], r15
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x2d0], rdx
mov qword [rsp + 0x2d8], r15
mov qword [rsp + 0x2e0], r12
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x2e8], rdx
mov qword [rsp + 0x2f0], r12
mov qword [rsp + 0x2f8], rbp
mov qword [rsp + 0x300], r11
mov qword [rsp + 0x308], rbp
mov qword [rsp + 0x310], r13
mov rdx, qword [rsp + 0x30]
mov qword [rsp + 0x318], rdx
mov qword [rsp + 0x320], r13
mov dword [rsp + 0x328], r10d
mov byte [rsp + 0x32c], al
mov word [rsp + 0x330], r8w
mov word [rsp + 0x332], r9w
cmp rsi, rcx
mov rbp, rcx
je 0x1400b7f8f
cmp rbx, 0xffffffffffffffff
je 0x1400b7f8f
lea r14, [rsp + 0x2b0]
mov rax, qword [rbx]
nop word cs:[rax + rax]
test rax, rax
je 0x1400b7f8f
js 0x1400b82bf
lea rcx, [rax + 1]
lock cmpxchg qword [rbx], rcx
jne 0x1400b7dd0
mov qword [rsp + 0x58], rbx
cmp qword [rbx + 0x90], 0
je 0x1400b801d
cmp qword [rbx + 0x98], 0
je 0x1400b801d
lea r13, [rbx + 0x38]
mov rcx, r13
call sub.KERNEL32.dll_AcquireSRWLockExclusive
lea r15, [rsp + 0x1d0]
mov rcx, r15
mov rdx, r14
call fcn.1400d4c00
lea rdx, [rbx + 0x60]
lea rcx, [rsp + 0xe8]
mov qword [rsp + 0x48], rdx
mov r8, r15
call fcn.1400d1740
cmp qword [rsp + 0xe8], 0
je 0x1400b80ac
mov qword [rsp + 0x38], r13
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x3d0]
mov r8d, 0x88
call sub.msvcrt.dll_memcpy
mov r12, qword [rsp + 0x178]
mov r13, qword [rsp + 0x180]
movzx eax, byte [0x140259141]
mov edx, 0xe8
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x1400b82bf
mov r15, rax
mov r8d, 0xe8
mov rcx, rax
mov rdx, rdi
call sub.msvcrt.dll_memcpy
mov rdi, qword [r12]
mov rax, qword [r12 + 8]
mov rcx, rax
and rcx, r13
movdqu xmm0, xmmword [rdi + rcx]
pmovmskb edx, xmm0
test edx, edx
jne 0x1400b7ef7
mov r8d, 0x10
nop word cs:[rax + rax]
add rcx, r8
and rcx, rax
movdqu xmm0, xmmword [rdi + rcx]
pmovmskb edx, xmm0
add r8, 0x10
test edx, edx
je 0x1400b7ee0
tzcnt edx, edx
add rdx, rcx
and rdx, rax
movzx ecx, byte [rdi + rdx]
test cl, cl
js 0x1400b7f19
movdqa xmm0, xmmword [rdi]
pmovmskb ecx, xmm0
tzcnt edx, ecx
movzx ecx, byte [rdi + rdx]
shr r13, 0x39
lea r8, [rdx - 0x10]
and r8, rax
mov byte [rdi + rdx], r13b
mov byte [rdi + r8 + 0x10], r13b
neg rdx
imul rsi, rdx, 0xa8
and cl, 1
movzx eax, cl
sub qword [r12 + 0x10], rax
lea rcx, [rdi + rsi]
add rcx, 0xffffffffffffff58
lea rdx, [rsp + 0x3d0]
mov r8d, 0x88
call sub.msvcrt.dll_memcpy
mov qword [rdi + rsi - 0x20], 1
mov qword [rdi + rsi - 0x18], r15
mov qword [rdi + rsi - 0x10], 0
mov qword [rdi + rsi - 8], 1
inc qword [r12 + 0x18]
mov r13, qword [rsp + 0x38]
jmp 0x1400b8583
cmp qword [rdi + 0xb8], 0
je 0x1400b7fae
mov r8, qword [rdi + 0xb0]
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [rdi + 0xd8]
mov rbx, qword [rdi + 0xe0]
mov rcx, rsi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x1400b7fe4
cmp qword [rbx + 0x10], 0x11
jb 0x1400b7fd3
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
cmp qword [rdi + 8], rbp
je 0x1400b8a74
mov r8, qword [rdi]
add rdi, 8
cmp r8, 0xffffffffffffffff
je 0x1400b8010
lock dec qword [r8 + 8]
jne 0x1400b8010
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov rcx, rdi
call fcn.1400bb2b0
jmp 0x1400b8a74
cmp qword [rdi + 0xb8], 0
je 0x1400b803c
mov r8, qword [rdi + 0xb0]
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [rdi + 0xd8]
mov r14, qword [rdi + 0xe0]
mov rcx, rsi
call qword [r14]
cmp qword [r14 + 8], 0
je 0x1400b8073
cmp qword [r14 + 0x10], 0x11
jb 0x1400b8062
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
cmp qword [rdi + 8], rbp
je 0x1400b8a64
mov r8, qword [rdi]
add rdi, 8
cmp r8, 0xffffffffffffffff
je 0x1400b809f
lock dec qword [r8 + 8]
jne 0x1400b809f
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov rcx, rdi
call fcn.1400bb2b0
jmp 0x1400b8a64
lea rdx, [rsp + 0xf0]
lea r15, [rsp + 0x3d0]
mov r8d, 0x88
mov rcx, r15
call sub.msvcrt.dll_memcpy
mov r12, qword [rsp + 0x178]
mov rsi, qword [rsp + 0x180]
lea rcx, [rsp + 0x338]
mov r8d, 0x88
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x3c0], r12
mov qword [rsp + 0x3c8], rsi
mov rax, qword [r12 - 0x20]
mov r15, qword [r12 - 8]
cmp r15, rax
jne 0x1400b8123
lea rcx, [r12 - 0x20]
call fcn.1400bb160
mov rax, qword [r12 - 0x20]
mov r15, qword [r12 - 8]
mov rcx, qword [r12 - 0x10]
add rcx, r15
xor edx, edx
cmp rcx, rax
cmovae rdx, rax
sub rcx, rdx
imul rcx, rcx, 0xe8
add rcx, qword [r12 - 0x18]
mov r8d, 0xe8
mov rdx, rdi
call sub.msvcrt.dll_memcpy
lea rax, [r15 + 1]
mov qword [r12 - 8], rax
cmp rax, qword [rbx + 0x98]
jbe 0x1400b856c
mov rax, qword [r12 - 0x10]
lea rcx, [rax + 1]
mov rdx, qword [r12 - 0x20]
mov r8, qword [r12 - 0x18]
xor r9d, r9d
cmp rcx, rdx
cmovae r9, rdx
neg r9
lea rcx, [rax + r9]
inc rcx
mov qword [r12 - 0x10], rcx
mov qword [r12 - 8], r15
imul rax, rax, 0xe8
mov rsi, qword [r8 + rax]
mov rdi, qword [r8 + rax + 8]
lea rdx, [r8 + rax]
add rdx, 0x10
lea rcx, [rsp + 0x1d0]
mov r8d, 0xd8
call sub.msvcrt.dll_memcpy
lea rax, [rbp + 1]
cmp rdi, rax
je 0x1400b82bf
mov qword [rsp + 0x38], r13
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0xf0], rdi
lea rcx, [rsp + 0xf8]
lea rdx, [rsp + 0x1d0]
mov r8d, 0xd8
call sub.msvcrt.dll_memcpy
mov r15, qword [rbx + 0x40]
mov rdx, qword [rbx + 0x58]
test rdx, rdx
mov qword [rsp + 0x30], rdx
je 0x1400b8235
mov rax, qword [rbx + 0x50]
xor ecx, ecx
cmp rax, r15
cmovae rcx, r15
sub rax, rcx
mov rcx, r15
sub rcx, rax
mov r13, rdx
sub r13, rcx
jbe 0x1400b823b
mov rcx, r15
jmp 0x1400b8242
xor eax, eax
xor ecx, ecx
jmp 0x1400b823f
lea rcx, [rax + rdx]
xor r13d, r13d
mov r12, qword [rbx + 0x48]
mov rdx, rax
shl rdx, 7
lea rsi, [rdx + rax*8]
mov rax, rcx
shl rax, 7
lea rdi, [rax + rcx*8]
xor ebp, ebp
cmp rdi, rsi
je 0x1400b8282
lea rcx, [r12 + rsi]
mov rdx, r14
call fcn.1400c33d0
test al, al
jne 0x1400b82c1
inc rbp
add rsi, 0x88
cmp rdi, rsi
jne 0x1400b8263
mov rax, r13
shl rax, 7
lea rsi, [rax + r13*8]
mov r13, r12
mov rdi, qword [rsp + 0x30]
test rsi, rsi
je 0x1400b82bf
mov rcx, r13
mov rdx, r14
call fcn.1400c33d0
test al, al
jne 0x1400b82c6
add r13, 0x88
inc rbp
add rsi, 0xffffffffffffff78
test rsi, rsi
jne 0x1400b829a
ud2
mov rdi, qword [rsp + 0x30]
cmp rdi, rbp
jbe 0x1400b82bf
mov r8, qword [rbx + 0x50]
lea r9, [r8 + rbp]
xor eax, eax
cmp r9, r15
cmovae rax, r15
sub r9, rax
mov rax, r9
shl rax, 7
lea rax, [rax + r9*8]
mov r13, qword [r12 + rax]
movups xmm0, xmmword [r12 + rax + 0x78]
movaps xmmword [rsp + 0x240], xmm0
movups xmm0, xmmword [r12 + rax + 0x68]
movaps xmmword [rsp + 0x230], xmm0
movups xmm0, xmmword [r12 + rax + 0x58]
movaps xmmword [rsp + 0x220], xmm0
movups xmm0, xmmword [r12 + rax + 0x48]
movaps xmmword [rsp + 0x210], xmm0
movups xmm0, xmmword [r12 + rax + 0x38]
movaps xmmword [rsp + 0x200], xmm0
movups xmm0, xmmword [r12 + rax + 0x28]
movaps xmmword [rsp + 0x1f0], xmm0
movups xmm0, xmmword [r12 + rax + 0x18]
movaps xmmword [rsp + 0x1e0], xmm0
movups xmm0, xmmword [r12 + rax + 8]
movaps xmmword [rsp + 0x1d0], xmm0
mov rax, rbp
not rax
add rax, rdi
cmp rax, rbp
jae 0x1400b838a
lea rcx, [r9 + 1]
xor edx, edx
cmp rcx, r15
cmovae rdx, r15
neg rdx
lea r8, [r9 + rdx]
inc r8
mov qword [rsp + 0x20], rax
jmp 0x1400b83aa
lea rax, [r8 + 1]
xor ecx, ecx
cmp rax, r15
cmovae rcx, r15
neg rcx
lea r9, [r8 + rcx]
inc r9
mov qword [rbx + 0x50], r9
mov qword [rsp + 0x20], rbp
mov rcx, r15
mov rdx, r12
call fcn.1400bae90
dec rdi
mov qword [rbx + 0x58], rdi
movaps xmm0, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmm0, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0xc0], xmm0
movaps xmm0, xmmword [rsp + 0x220]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmm0, xmmword [rsp + 0x210]
movaps xmmword [rsp + 0xa0], xmm0
movdqa xmm0, xmmword [rsp + 0x1d0]
movdqa xmm1, xmmword [rsp + 0x1e0]
movaps xmm2, xmmword [rsp + 0x1f0]
movaps xmm3, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x90], xmm3
movaps xmmword [rsp + 0x80], xmm2
movdqa xmmword [rsp + 0x70], xmm1
movdqa xmmword [rsp + 0x60], xmm0
movabs rax, 0x8000000000000000
cmp r13, rax
je 0x1400b82bf
mov qword [rsp + 0x1d0], r13
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movaps xmm3, xmmword [rsp + 0x90]
movups xmmword [rsp + 0x1d8], xmm0
movdqu xmmword [rsp + 0x1e8], xmm1
movups xmmword [rsp + 0x1f8], xmm2
movups xmmword [rsp + 0x208], xmm3
movaps xmm0, xmmword [rsp + 0xa0]
movups xmmword [rsp + 0x218], xmm0
movaps xmm0, xmmword [rsp + 0xb0]
movups xmmword [rsp + 0x228], xmm0
movaps xmm0, xmmword [rsp + 0xc0]
movups xmmword [rsp + 0x238], xmm0
movdqa xmm0, xmmword [rsp + 0xd0]
movdqu xmmword [rsp + 0x248], xmm0
lea rcx, [rsp + 0x1d0]
call fcn.1400bb2b0
cmp qword [rsp + 0x1a0], 0
je 0x1400b8501
mov r8, qword [rsp + 0x198]
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov r15, qword [rsp + 0x1c0]
mov rsi, qword [rsp + 0x1c8]
mov rcx, r15
call qword [rsi]
cmp qword [rsi + 8], 0
movabs rbp, 0x8000000000000000
mov r13, qword [rsp + 0x38]
je 0x1400b8548
cmp qword [rsi + 0x10], 0x11
jb 0x1400b8537
mov r15, qword [r15 - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, r15
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0xf0], rbp
je 0x1400b856c
mov rcx, qword [rsp + 0xe8]
call fcn.1400c68e0
lea rcx, [rsp + 0xf0]
call fcn.1400bb2b0
cmp qword [rsp + 0x338], rbp
je 0x1400b8583
lea rcx, [rsp + 0x338]
call fcn.1400bb2b0
lea rcx, [rsp + 0xe8]
mov rdx, r14
call fcn.1400d4c00
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x58]
cmp rdi, rax
jne 0x1400b85b1
lea rcx, [rbx + 0x40]
call fcn.1400bb200
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x58]
mov rcx, qword [rbx + 0x50]
add rcx, rdi
xor edx, edx
cmp rcx, rax
cmovae rdx, rax
sub rcx, rdx
mov rax, rcx
shl rax, 7
lea rcx, [rax + rcx*8]
add rcx, qword [rbx + 0x48]
lea rdx, [rsp + 0xe8]
mov r8d, 0x88
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [rbx + 0x58], rdi
mov rsi, qword [rbx + 0x90]
mov rcx, r13
call fcn.140114ee8
cmp rdi, rsi
jbe 0x1400b8a64
cmp qword [rbx + 0x90], 0
je 0x1400b82bf
cmp qword [rbx + 0x98], 0
je 0x1400b82bf
mov rcx, r13
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rcx, qword [rbx + 0x58]
test rcx, rcx
je 0x1400b82bf
mov rdx, qword [rbx + 0x50]
lea r8, [rdx + 1]
mov r9, qword [rbx + 0x40]
mov rax, qword [rbx + 0x48]
xor r10d, r10d
cmp r8, r9
cmovae r10, r9
neg r10
lea r8, [rdx + r10]
inc r8
mov qword [rbx + 0x50], r8
dec rcx
mov qword [rbx + 0x58], rcx
mov rcx, rdx
shl rcx, 7
lea rdx, [rcx + rdx*8]
mov rcx, qword [rax + rdx]
cmp rcx, rbp
je 0x1400b82bf
add rax, rdx
mov qword [rsp + 0x60], rcx
movups xmm0, xmmword [rax + 8]
movdqu xmm1, xmmword [rax + 0x18]
movups xmm2, xmmword [rax + 0x28]
movups xmm3, xmmword [rax + 0x38]
movups xmmword [rsp + 0x68], xmm0
movdqu xmmword [rsp + 0x78], xmm1
movups xmmword [rsp + 0x88], xmm2
movups xmmword [rsp + 0x98], xmm3
movups xmm0, xmmword [rax + 0x48]
movups xmmword [rsp + 0xa8], xmm0
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0xb8], xmm0
movups xmm0, xmmword [rax + 0x68]
movups xmmword [rsp + 0xc8], xmm0
movdqu xmm0, xmmword [rax + 0x78]
movdqu xmmword [rsp + 0xd8], xmm0
lea rcx, [rsp + 0xe8]
lea r8, [rsp + 0x60]
mov rdx, qword [rsp + 0x48]
call fcn.1400d1740
cmp qword [rsp + 0xe8], 0
jne 0x1400b82bf
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x338]
mov r8d, 0x98
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x3c0]
mov r14, qword [rax - 8]
test r14, r14
je 0x1400b82bf
mov rcx, qword [rax - 0x10]
lea rdx, [rcx + 1]
mov r8, qword [rax - 0x20]
mov r9, qword [rax - 0x18]
xor r10d, r10d
cmp rdx, r8
cmovae r10, r8
neg r10
lea rdx, [rcx + r10]
inc rdx
mov qword [rax - 0x10], rdx
dec r14
mov qword [rax - 8], r14
imul rax, rcx, 0xe8
mov rdi, qword [r9 + rax]
mov rsi, qword [r9 + rax + 8]
lea rdx, [r9 + rax]
add rdx, 0x10
lea rcx, [rsp + 0x1d0]
mov r8d, 0xd8
call sub.msvcrt.dll_memcpy
lea rax, [rbp + 1]
cmp rsi, rax
je 0x1400b82bf
mov qword [rsp + 0xe8], rdi
lea rdi, [rsp + 0xf0]
mov qword [rsp + 0xf0], rsi
lea rcx, [rsp + 0xf8]
lea rdx, [rsp + 0x1d0]
mov r8d, 0xd8
call sub.msvcrt.dll_memcpy
test r14, r14
je 0x1400b886f
cmp qword [rsp + 0x1a0], 0
je 0x1400b87fd
mov r8, qword [rsp + 0x198]
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov r14, qword [rsp + 0x1c0]
mov rsi, qword [rsp + 0x1c8]
mov rcx, r14
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1400b8835
cmp qword [rsi + 0x10], 0x11
jb 0x1400b8824
mov r14, qword [r14 - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, r14
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0xf0], rbp
je 0x1400b8854
mov rcx, qword [rsp + 0xe8]
call fcn.1400c68e0
mov rcx, rdi
call fcn.1400bb2b0
cmp qword [rsp + 0x338], rbp
je 0x1400b8a5c
lea rcx, [rsp + 0x338]
jmp 0x1400b8a57
mov rdx, qword [rsp + 0x3c0]
mov rax, qword [rsp + 0x3c8]
mov rcx, qword [rax]
mov r9, rcx
sub r9, rdx
sar r9, 3
movabs r8, 0xcf3cf3cf3cf3cf3d
imul r8, r9
lea r9, [r8 - 0x10]
and r9, qword [rax + 8]
movdqu xmm0, xmmword [rcx + r9]
pcmpeqd xmm1, xmm1
pcmpeqb xmm0, xmm1
psllw xmm0, 7
pmovmskb r11d, xmm0
movdqu xmm0, xmmword [rcx + r8]
pcmpeqb xmm0, xmm1
pmovmskb r10d, xmm0
test r11d, r11d
je 0x1400b88d9
bsr r11w, r11w
xor r11d, 0xf
jmp 0x1400b88de
mov r11w, 0x10
mov r14, qword [rsp + 0x338]
or r10d, 0x10000
tzcnt r10d, r10d
add r11d, r10d
mov r10b, pe_nt_image_headers64
cmp r11w, 0xf
ja 0x1400b8906
inc qword [rax + 0x10]
mov r10b, 0xff
mov rdi, r13
mov byte [rcx + r8], r10b
mov byte [rcx + r9 + 0x10], r10b
dec qword [rax + 0x18]
add rdx, 0xffffffffffffff58
lea rcx, [rsp + 0x1d0]
mov r8d, 0xa8
call sub.msvcrt.dll_memcpy
mov rsi, rbp
cmp r14, rbp
je 0x1400b8945
lea rcx, [rsp + 0x338]
call fcn.1400bb2b0
mov r13, qword [rsp + 0x258]
mov r12, qword [rsp + 0x260]
mov rbp, qword [rsp + 0x268]
mov r14, qword [rsp + 0x270]
lea rcx, [rsp + 0x1d0]
call fcn.1400bb2b0
test r14, r14
je 0x1400b8996
xor eax, eax
cmp rbp, r13
cmovae rax, r13
sub rbp, rax
mov rax, r13
sub rax, rbp
mov r15, r14
sub r15, rax
jbe 0x1400b899d
mov r14, r13
jmp 0x1400b89a3
xor ebp, ebp
xor r14d, r14d
jmp 0x1400b89a0
add r14, rbp
xor r15d, r15d
imul rcx, rbp, 0xe8
add rcx, r12
sub r14, rbp
mov rdx, r14
call fcn.1400bb370
mov rcx, r12
mov rdx, r15
call fcn.1400bb370
test r13, r13
je 0x1400b89d9
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, r12
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x1a0], 0
mov r15, rsi
mov r13, rdi
je 0x1400b8a00
mov r8, qword [rsp + 0x198]
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov r14, qword [rsp + 0x1c0]
mov rsi, qword [rsp + 0x1c8]
mov rcx, r14
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x1400b8a38
cmp qword [rsi + 0x10], 0x11
jb 0x1400b8a27
mov r14, qword [r14 - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, r14
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0xf0], r15
je 0x1400b8a5c
mov rcx, qword [rsp + 0xe8]
call fcn.1400c68e0
lea rcx, [rsp + 0xf0]
call fcn.1400bb2b0
mov rcx, r13
call fcn.140114ee8
lock dec qword [rbx]
jne 0x1400b8a74
lea rcx, [rsp + 0x58]
call fcn.1400c5e40
lea rcx, [rsp + 0x2a8]
call fcn.1400b78d0
xor ebx, ebx
mov rax, rbx
add rsp, 0x458
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret