Function at 0x69905220
Capabilities:
Link many functions at runtime

Disassembly:
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x100
cmp qword [0x6990e1a0], 0
mov rbx, rcx
jne 0x69905266
lea rcx, [0x6990b740]
call fcn.69905ab0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x6990e1a0], rax
call fcn.69905b32
cmp qword [0x6990e180], 0
jne 0x6990529e
lea rcx, [0x6990b75d]
call fcn.69905a30
mov rcx, qword [0x6990e1a0]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e180], rax
call fcn.69905b32
cmp qword [0x6990e178], 0
jne 0x699052cf
lea rcx, [0x6990b778]
call fcn.69905ab0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x6990e178], rax
call fcn.69905b32
cmp qword [0x6990e158], 0
jne 0x69905307
lea rcx, [0x6990b793]
call fcn.69905a30
mov rcx, qword [0x6990e178]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e158], rax
call fcn.69905b32
cmp qword [0x6990e148], 0
jne 0x69905338
lea rcx, [0x6990b7a8]
call fcn.69905ab0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x6990e148], rax
call fcn.69905b32
cmp qword [0x6990e140], 0
jne 0x69905370
lea rcx, [0x6990b7c7]
call fcn.69905a30
mov rcx, qword [0x6990e148]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e140], rax
call fcn.69905b32
cmp qword [0x6990e138], 0
jne 0x699053a8
lea rcx, [0x6990b7de]
call fcn.69905a30
mov rcx, qword [0x6990e148]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e138], rax
call fcn.69905b32
cmp qword [0x6990e130], 0
jne 0x699053e0
lea rcx, [0x6990b7ff]
call fcn.69905a30
mov rcx, qword [0x6990e148]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e130], rax
call fcn.69905b32
cmp qword [0x6990e128], 0
jne 0x69905418
lea rcx, [0x6990b81c]
call fcn.69905a30
mov rcx, qword [0x6990e148]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e128], rax
call fcn.69905b32
cmp qword [0x6990e120], 0
jne 0x69905450
lea rcx, [0x6990b840]
call fcn.69905a30
mov rcx, qword [0x6990e148]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e120], rax
call fcn.69905b32
cmp qword [0x6990e118], 0
jne 0x69905488
lea rcx, [0x6990b85e]
call fcn.69905a30
mov rcx, qword [0x6990e148]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e118], rax
call fcn.69905b32
cmp qword [0x6990e110], 0
jne 0x699054c0
lea rcx, [0x6990b877]
call fcn.69905a30
mov rcx, qword [0x6990e148]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e110], rax
call fcn.69905b32
cmp qword [0x6990e108], 0
jne 0x699054f1
lea rcx, [0x6990b88f]
call fcn.69905ab0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x6990e108], rax
call fcn.69905b32
cmp qword [0x6990e100], 0
jne 0x69905529
lea rcx, [0x6990b8aa]
call fcn.69905a30
mov rcx, qword [0x6990e108]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e100], rax
call fcn.69905b32
mov rax, qword [0x6990e180]
test rax, rax
je 0x69905537
call rax
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0x68]
xor r8d, r8d
mov dword [rsp + 0x98], 1
mov qword [rsp + 0xa0], 0
xor r12d, r12d
mov qword [rsp + 0xa8], 0
call qword [0x6990e140]
test eax, eax
jne 0x69905a0b
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x5c]
call qword [0x6990e138]
test eax, eax
je 0x69905597
xor r12d, r12d
jmp 0x69905a00
mov ecx, dword [rsp + 0x60]
call fcn.69904e00
mov r15, rax
test rax, rax
je 0x6990558f
mov edx, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x5c]
mov r8, rax
call qword [0x6990e130]
mov r12d, eax
test eax, eax
je 0x699055c8
xor r12d, r12d
jmp 0x699059f8
lea rcx, [0x6990b8c8]
mov edi, dword [rsp + 0x5c]
mov rsi, r15
call fcn.69905ab0
mov r13, rax
cmp edi, r12d
je 0x69905612
mov rcx, qword [rsi + 0x40]
mov rdx, r13
mov r14, rsi
add rsi, 0x68
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x6990560d
movups xmm0, xmmword [r14]
mov esi, 1
movups xmmword [rsp + 0x88], xmm0
jmp 0x69905614
inc r12d
jmp 0x699055de
xor esi, esi
mov rcx, r13
call fcn.69905b32
test esi, esi
je 0x699055c0
cmp qword [0x6990e1a0], 0
jne 0x69905651
lea rcx, [0x6990b740]
call fcn.69905ab0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x6990e1a0], rax
call fcn.69905b32
cmp qword [0x6990e198], 0
jne 0x69905689
lea rcx, [0x6990b8e5]
call fcn.69905a30
mov rcx, qword [0x6990e1a0]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e198], rax
call fcn.69905b32
cmp qword [0x6990e190], 0
jne 0x699056c1
lea rcx, [0x6990b8f3]
call fcn.69905a30
mov rcx, qword [0x6990e1a0]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e190], rax
call fcn.69905b32
cmp qword [0x6990e188], 0
jne 0x699056f9
lea rcx, [0x6990b90c]
call fcn.69905a30
mov rcx, qword [0x6990e1a0]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e188], rax
call fcn.69905b32
cmp qword [0x6990e178], 0
jne 0x6990572a
lea rcx, [0x6990b778]
call fcn.69905ab0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x6990e178], rax
call fcn.69905b32
cmp qword [0x6990e170], 0
jne 0x69905762
lea rcx, [0x6990b91e]
call fcn.69905a30
mov rcx, qword [0x6990e178]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e170], rax
call fcn.69905b32
cmp qword [0x6990e168], 0
jne 0x6990579a
lea rcx, [0x6990b93d]
call fcn.69905a30
mov rcx, qword [0x6990e178]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e168], rax
call fcn.69905b32
cmp qword [0x6990e160], 0
jne 0x699057d2
lea rcx, [0x6990b952]
call fcn.69905a30
mov rcx, qword [0x6990e178]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e160], rax
call fcn.69905b32
cmp qword [0x6990e158], 0
jne 0x6990580a
lea rcx, [0x6990b793]
call fcn.69905a30
mov rcx, qword [0x6990e178]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e158], rax
call fcn.69905b32
cmp qword [0x6990e150], 0
jne 0x69905842
lea rcx, [0x6990b96d]
call fcn.69905a30
mov rcx, qword [0x6990e178]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x6990e150], rax
call fcn.69905b32
xor ecx, ecx
call qword [0x6990e198]
mov r12, rax
test rax, rax
je 0x699055c0
mov rcx, rax
call qword [0x6990e160]
mov r13, rax
test rax, rax
je 0x699058f2
xor ecx, ecx
call qword [0x6990e190]
mov ecx, 1
mov esi, eax
call qword [0x6990e190]
mov edx, esi
mov rcx, r12
mov edi, eax
mov r8d, eax
call qword [0x6990e170]
mov r14, rax
test rax, rax
je 0x699058e6
mov rdx, rax
mov rcx, r13
call qword [0x6990e168]
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x40], 0xcc0020
mov r9d, esi
mov rcx, r13
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x20], edi
call qword [0x6990e150]
test eax, eax
jne 0x699058e6
mov rcx, r14
xor r14d, r14d
call qword [0x6990e158]
mov rcx, r13
mov r13, r14
call qword [0x6990e158]
xor ecx, ecx
mov rdx, r12
call qword [0x6990e188]
test r13, r13
je 0x699055c0
lea r8, [rsp + 0x70]
xor edx, edx
mov rcx, r13
xor r12d, r12d
call qword [0x6990e128]
test eax, eax
jne 0x699059ef
xor ecx, ecx
lea r8, [rsp + 0x78]
mov edx, 1
call qword [0x6990e100]
test eax, eax
jne 0x699059e4
xor r9d, r9d
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
lea r8, [rsp + 0x88]
call qword [0x6990e120]
test eax, eax
jne 0x699059d6
mov rcx, qword [rsp + 0x78]
lea r9, [rsp + 0x80]
xor r8d, r8d
xor edx, edx
mov rax, qword [rcx]
call qword [rax + 0x28]
mov rcx, qword [rsp + 0x78]
mov r8d, 1
lea rdx, [rsp + 0xb0]
mov rax, qword [rcx]
call qword [rax + 0x60]
mov ecx, dword [rsp + 0xc0]
call fcn.69904e00
mov r12, rax
test rax, rax
je 0x699059d6
mov rcx, qword [rsp + 0x78]
mov r8d, dword [rsp + 0xc0]
lea r9, [rsp + 0x64]
mov rdx, r12
mov rax, qword [rcx]
call qword [rax + 0x18]
test eax, eax
jne 0x699059ce
test rbx, rbx
je 0x699059d9
mov eax, dword [rsp + 0xc0]
mov dword [rbx], eax
jmp 0x699059d9
mov rcx, r12
call fcn.69904e58
xor r12d, r12d
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x70]
call qword [0x6990e118]
mov rcx, r13
call qword [0x6990e158]
mov rcx, r15
call fcn.69904e58
mov rcx, qword [rsp + 0x68]
call qword [0x6990e110]
mov rax, r12
add rsp, 0x100
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret