Function at 0x1400fa3d0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x1403f80a0]
xor rax, rsp
mov qword [rbp - 0x10], rax
lea rax, [0x1400fad00]
mov qword [rbp - 0x28], rax
mov rdx, qword [0x14040e780]
cmp rdx, qword [0x14040e788]
je 0x1400fa429
mov qword [rdx], rax
add qword [0x14040e780], 8
jmp 0x1400fa439
lea r8, [rbp - 0x28]
lea rcx, [0x14040e778]
call fcn.1400fd560
lea rax, [0x1400fb9e0]
mov qword [rbp - 0x28], rax
mov rdx, qword [0x14040e798]
cmp rdx, qword [0x14040e7a0]
je 0x1400fa461
mov qword [rdx], rax
add qword [0x14040e798], 8
jmp 0x1400fa46a
lea r8, [rbp - 0x28]
call fcn.1400fd3b0
lea rax, [fcn.1400d3280]
mov qword [rbp - 0x28], rax
mov rdx, qword [0x14040e7b0]
cmp rdx, qword [0x14040e7b8]
je 0x1400fa492
mov qword [rdx], rax
add qword [0x14040e7b0], 8
jmp 0x1400fa4a2
lea r8, [rbp - 0x28]
lea rcx, [0x14040e7a8]
call fcn.1400fd560
lea rax, [0x1400fbe60]
mov qword [rbp - 0x28], rax
mov rdx, qword [0x14040e7c8]
cmp rdx, qword [0x14040e7d0]
je 0x1400fa4ca
mov qword [rdx], rax
add qword [0x14040e7c8], 8
jmp 0x1400fa4d3
lea r8, [rbp - 0x28]
call fcn.1400fd200
lea rax, [0x1400fc950]
mov qword [rbp - 0x28], rax
mov rdx, qword [0x14040e7e0]
cmp rdx, qword [0x14040e7e8]
je 0x1400fa4fb
mov qword [rdx], rax
add qword [0x14040e7e0], 8
jmp 0x1400fa50b
lea r8, [rbp - 0x28]
lea rcx, [0x14040e7d8]
call fcn.1400fd560
lea rax, [fcn.1400d3280]
mov qword [rbp - 0x28], rax
mov rdx, qword [0x14040e750]
cmp rdx, qword [0x14040e758]
je 0x1400fa533
mov qword [rdx], rax
add qword [0x14040e750], 8
jmp 0x1400fa53c
lea r8, [rbp - 0x28]
call fcn.1400fd890
lea rax, [0x1400fac70]
mov qword [rbp - 0x28], rax
mov rdx, qword [0x14040e768]
cmp rdx, qword [0x14040e770]
je 0x1400fa564
mov qword [rdx], rax
add qword [0x14040e768], 8
jmp 0x1400fa56d
lea r8, [rbp - 0x28]
call fcn.1400fd6e0
mov dword [0x14040e6c8], 1
xor r15d, r15d
cmp qword [0x14040e6e0], r15
jne 0x1400fa5f7
mov qword [rbp - 0x20], r15
xor r9d, r9d
xor r8d, r8d
lea edx, [r15 + 1]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rbp - 0x28], rax
test rax, rax
jne 0x1400fa5aa
lea edi, [rax - 0x5b]
jmp 0x1400faa25
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], r15d
lea r9, [rbp - 0x28]
lea r8, [0x1400f70b0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x14040e6e0], rax
test rax, rax
jne 0x1400fa5dd
lea edi, [rax - 0x5a]
jmp 0x1400faa25
mov edx, 0xffffffff
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edi, dword [rbp - 0x20]
test edi, edi
js 0x1400faa29
lea r12, vtable.Vanguard::Message.0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], r15
mov ecx, Ordinal_50
call fcn.140130550
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp - 0x38], rax
mov edi, reloc.WLDAP32.dll_Ordinal_26
mov rax, qword [rbp - 0x48]
test rax, rax
jne 0x1400fa677
mov ecx, edi
call fcn.140130e50
mov qword [rbp - 0x48], rax
mov dword [rbp - 0x3c], edi
mov dword [rbp - 0x40], edi
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rcx
mov word [rax + 0x18], cx
mov rax, qword [rbp - 0x48]
mov word [rax + 8], r15w
mov rcx, qword [rbp - 0x48]
mov eax, dword [rbp - 0x40]
mov dword [rcx + 4], eax
mov rax, qword [rbp - 0x48]
mov dword [rax], 2
lea rax, vtable.Vanguard::ConnectMessage.0
mov qword [rbp - 0x50], rax
mov word [rbp - 0x18], r15w
mov rdx, qword [rbp - 0x38]
mov rax, qword [rdx + 8]
mov rcx, rdx
cmp byte [rax + 0x19], 0
jne 0x1400fa6ac
nop
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400fa6a0
cmp byte [rcx + 0x19], 0
jne 0x1400fa6b9
cmp r15w, word [rcx + 0x20]
jae 0x1400fa6bc
mov rcx, rdx
cmp rcx, rdx
je 0x1400fa827
lea rdx, [rbp - 0x18]
lea rcx, [rbp - 0x38]
call fcn.1400fcee0
mov r14, qword [rax]
mov rsi, qword [rbp - 0x48]
mov eax, dword [rsi + r14 + 2]
cmp eax, 1
je 0x1400fa94e
mov ebx, dword [rbp - 0x40]
sub ebx, eax
inc ebx
test rsi, rsi
jne 0x1400fa733
cmp ebx, 0x1a
cmovb ebx, edi
mov ecx, ebx
call fcn.140130e50
mov qword [rbp - 0x48], rax
mov dword [rbp - 0x3c], ebx
mov dword [rbp - 0x40], edi
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rcx
mov word [rax + 0x18], cx
mov rax, qword [rbp - 0x48]
mov word [rax + 8], r15w
mov rcx, qword [rbp - 0x48]
mov eax, dword [rbp - 0x40]
mov dword [rcx + 4], eax
mov rsi, qword [rbp - 0x48]
jmp 0x1400fa762
cmp dword [rbp - 0x3c], ebx
jae 0x1400fa762
mov ecx, ebx
call fcn.140130e50
mov rsi, rax
mov r8d, dword [rbp - 0x40]
mov rdx, qword [rbp - 0x48]
mov rcx, rax
call fcn.1401329d0
mov rcx, qword [rbp - 0x48]
call fcn.140130510
mov qword [rbp - 0x48], rsi
mov dword [rbp - 0x3c], ebx
mov ecx, dword [rsi + r14 + 2]
mov ebx, 1
sub ebx, ecx
lea rax, [r14 + 6]
add rax, rcx
mov r8d, dword [rbp - 0x40]
sub r8, rax
lea rdx, [rsi + rax]
lea rcx, [r14 + 7]
add rcx, rsi
call fcn.1401329d0
mov ecx, dword [rbp - 0x40]
add ecx, ebx
mov dword [rbp - 0x40], ecx
mov rax, qword [rbp - 0x48]
mov dword [rax + 4], ecx
mov rcx, qword [rbp - 0x48]
movzx eax, word [rbp - 0x30]
mov word [rcx + 8], ax
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1400fa94e
nop dword [rax + rax]
mov rdx, qword [rax + 0x28]
cmp rdx, r14
jbe 0x1400fa7d2
mov ecx, ebx
add rcx, rdx
mov qword [rax + 0x28], rcx
mov rcx, qword [rax + 0x10]
cmp byte [rcx + 0x19], 0
je 0x1400fa7fe
mov rcx, qword [rax + 8]
cmp byte [rcx + 0x19], 0
jne 0x1400fa7f9
cmp rax, qword [rcx + 0x10]
jne 0x1400fa7f9
mov rax, rcx
mov rcx, qword [rcx + 8]
cmp byte [rcx + 0x19], 0
je 0x1400fa7e6
mov rax, rcx
jmp 0x1400fa81c
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
jne 0x1400fa81c
nop word [rax + rax]
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x1400fa810
cmp byte [rax + 0x19], 0
je 0x1400fa7c0
jmp 0x1400fa94e
mov ebx, dword [rbp - 0x40]
add ebx, 7
mov rsi, qword [rbp - 0x48]
test rsi, rsi
jne 0x1400fa876
cmp ebx, 0x1a
cmovb ebx, edi
mov ecx, ebx
call fcn.140130e50
mov qword [rbp - 0x48], rax
mov dword [rbp - 0x3c], ebx
mov dword [rbp - 0x40], edi
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rcx
mov word [rax + 0x18], cx
mov rax, qword [rbp - 0x48]
mov word [rax + 8], r15w
mov rcx, qword [rbp - 0x48]
mov eax, dword [rbp - 0x40]
mov dword [rcx + 4], eax
mov rsi, qword [rbp - 0x48]
jmp 0x1400fa8a5
cmp dword [rbp - 0x3c], ebx
jae 0x1400fa8a9
mov ecx, ebx
call fcn.140130e50
mov rsi, rax
mov r8d, dword [rbp - 0x40]
mov rdx, qword [rbp - 0x48]
mov rcx, rax
call fcn.1401329d0
mov rcx, qword [rbp - 0x48]
call fcn.140130510
mov qword [rbp - 0x48], rsi
mov dword [rbp - 0x3c], ebx
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rdx]
cmp byte [rcx + 0x19], 0
jne 0x1400fa922
movups xmm0, xmmword [rcx + 0x20]
psrldq xmm0, 8
movq rdx, xmm0
cmp rdx, rdi
jb 0x1400fa8d0
mov eax, dword [rsi + rdx + 2]
lea rdi, [rdx + 6]
add rdi, rax
mov rax, qword [rcx + 0x10]
cmp byte [rax + 0x19], 0
je 0x1400fa8fc
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x1400fa8f7
cmp rcx, qword [rax + 0x10]
jne 0x1400fa8f7
mov rcx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1400fa8e4
mov rcx, rax
jmp 0x1400fa91c
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1400fa91c
nop dword [rax + rax]
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400fa910
cmp byte [rcx + 0x19], 0
je 0x1400fa8b2
lea rdx, [rbp - 0x18]
lea rcx, [rbp - 0x38]
call fcn.1400fcee0
mov qword [rax], rdi
mov ecx, dword [rbp - 0x40]
add ecx, 7
mov dword [rbp - 0x40], ecx
mov rax, qword [rbp - 0x48]
mov dword [rax + 4], ecx
mov rcx, qword [rbp - 0x48]
movzx eax, word [rbp - 0x30]
mov word [rcx + 8], ax
lea rdx, [rbp - 0x18]
lea rcx, [rbp - 0x38]
call fcn.1400fcee0
mov rdx, qword [rax]
mov word [rbp - 0x28], r15w
mov dword [rbp - 0x26], 1
mov rcx, qword [rbp - 0x48]
mov eax, dword [rbp - 0x28]
mov dword [rcx + rdx], eax
movzx eax, word [rbp - 0x24]
mov word [rcx + rdx + 4], ax
movzx ecx, byte [0x1403becb0]
mov rax, qword [rbp - 0x48]
mov byte [rax + rdx + 6], cl
cmp dword [rbp - 0x40], 0x1000
jbe 0x1400fa99c
mov edi, 0xffffffa8
jmp 0x1400fa9cc
lea rbx, [0x14040e850]
mov qword [rbp - 0x28], rbx
mov rcx, rbx
call fcn.14012da90
test eax, eax
jne 0x1400faace
lea rdx, [rbp - 0x50]
call fcn.1400fcdf0
nop
mov rcx, rbx
call fcn.14012daa0
mov edi, r15d
mov qword [rbp - 0x50], r12
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x1400fa9de
call fcn.140130510
mov rcx, qword [rbp - 0x38]
mov rbx, qword [rcx + 8]
cmp byte [rbx + 0x19], 0
jne 0x1400faa1b
nop dword [rax]
mov r8, qword [rbx + 0x10]
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x38]
call fcn.1400fdbb0
mov rcx, rbx
mov rbx, qword [rbx]
mov edx, Ordinal_50
call fcn.140130510
cmp byte [rbx + 0x19], 0
je 0x1400fa9f0
mov rcx, qword [rbp - 0x38]
mov edx, Ordinal_50
call fcn.140130510
test edi, edi
jns 0x1400faa92
mov rcx, qword [0x1403fe908]
test rcx, rcx
je 0x1400faa8b
mov rdx, qword [0x14040c730]
mov rax, qword [rdx + 8]
cmp byte [rax + 0x19], 0
jne 0x1400faa61
cmp dword [rax + 0x20], 0x10000026
jge 0x1400faa55
mov rax, qword [rax + 0x10]
jmp 0x1400faa5b
mov rdx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400faa46
cmp byte [rdx + 0x19], 0
jne 0x1400faac1
cmp dword [rdx + 0x20], 0x10000026
jg 0x1400faac1
lea r8, [rdx + 0x28]
cmp qword [r8 + 0x18], 8
jb 0x1400faa7e
mov r8, qword [r8]
mov r9d, edi
mov edx, 6
call fcn.1400d88a0
mov eax, 0xe0002721
jmp 0x1400faa94
xor eax, eax
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.1401304f0
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
lea rcx, str.invalid_map_K__T__key
call fcn.14012dd34
nop
mov ecx, eax
call fcn.14012de70
int3