Function at 0x229154940
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 [0x2291611b0], 0
mov rbx, rcx
jne 0x229154986
lea rcx, [0x22915d8a0]
call fcn.2291551d0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x2291611b0], rax
call fcn.229155252
cmp qword [0x229161190], 0
jne 0x2291549be
lea rcx, [0x22915d8bd]
call fcn.229155150
mov rcx, qword [0x2291611b0]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161190], rax
call fcn.229155252
cmp qword [0x229161188], 0
jne 0x2291549ef
lea rcx, [0x22915d8d8]
call fcn.2291551d0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x229161188], rax
call fcn.229155252
cmp qword [0x229161168], 0
jne 0x229154a27
lea rcx, [0x22915d8f3]
call fcn.229155150
mov rcx, qword [0x229161188]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161168], rax
call fcn.229155252
cmp qword [0x229161158], 0
jne 0x229154a58
lea rcx, [0x22915d908]
call fcn.2291551d0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x229161158], rax
call fcn.229155252
cmp qword [0x229161150], 0
jne 0x229154a90
lea rcx, [0x22915d927]
call fcn.229155150
mov rcx, qword [0x229161158]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161150], rax
call fcn.229155252
cmp qword [0x229161148], 0
jne 0x229154ac8
lea rcx, [0x22915d93e]
call fcn.229155150
mov rcx, qword [0x229161158]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161148], rax
call fcn.229155252
cmp qword [0x229161140], 0
jne 0x229154b00
lea rcx, [0x22915d95f]
call fcn.229155150
mov rcx, qword [0x229161158]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161140], rax
call fcn.229155252
cmp qword [0x229161138], 0
jne 0x229154b38
lea rcx, [0x22915d97c]
call fcn.229155150
mov rcx, qword [0x229161158]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161138], rax
call fcn.229155252
cmp qword [0x229161130], 0
jne 0x229154b70
lea rcx, [0x22915d9a0]
call fcn.229155150
mov rcx, qword [0x229161158]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161130], rax
call fcn.229155252
cmp qword [0x229161128], 0
jne 0x229154ba8
lea rcx, [0x22915d9be]
call fcn.229155150
mov rcx, qword [0x229161158]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161128], rax
call fcn.229155252
cmp qword [0x229161120], 0
jne 0x229154be0
lea rcx, [0x22915d9d7]
call fcn.229155150
mov rcx, qword [0x229161158]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161120], rax
call fcn.229155252
cmp qword [0x229161118], 0
jne 0x229154c11
lea rcx, [0x22915d9ef]
call fcn.2291551d0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x229161118], rax
call fcn.229155252
cmp qword [0x229161110], 0
jne 0x229154c49
lea rcx, [0x22915da0a]
call fcn.229155150
mov rcx, qword [0x229161118]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161110], rax
call fcn.229155252
mov rax, qword [0x229161190]
test rax, rax
je 0x229154c57
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 [0x229161150]
test eax, eax
jne 0x22915512b
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x5c]
call qword [0x229161148]
test eax, eax
je 0x229154cb7
xor r12d, r12d
jmp 0x229155120
mov ecx, dword [rsp + 0x60]
call fcn.229154520
mov r15, rax
test rax, rax
je 0x229154caf
mov edx, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x5c]
mov r8, rax
call qword [0x229161140]
mov r12d, eax
test eax, eax
je 0x229154ce8
xor r12d, r12d
jmp 0x229155118
lea rcx, [0x22915da28]
mov edi, dword [rsp + 0x5c]
mov rsi, r15
call fcn.2291551d0
mov r13, rax
cmp edi, r12d
je 0x229154d32
mov rcx, qword [rsi + 0x40]
mov rdx, r13
mov r14, rsi
add rsi, 0x68
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x229154d2d
movups xmm0, xmmword [r14]
mov esi, 1
movups xmmword [rsp + 0x88], xmm0
jmp 0x229154d34
inc r12d
jmp 0x229154cfe
xor esi, esi
mov rcx, r13
call fcn.229155252
test esi, esi
je 0x229154ce0
cmp qword [0x2291611b0], 0
jne 0x229154d71
lea rcx, [0x22915d8a0]
call fcn.2291551d0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x2291611b0], rax
call fcn.229155252
cmp qword [0x2291611a8], 0
jne 0x229154da9
lea rcx, [0x22915da45]
call fcn.229155150
mov rcx, qword [0x2291611b0]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x2291611a8], rax
call fcn.229155252
cmp qword [0x2291611a0], 0
jne 0x229154de1
lea rcx, [0x22915da53]
call fcn.229155150
mov rcx, qword [0x2291611b0]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x2291611a0], rax
call fcn.229155252
cmp qword [0x229161198], 0
jne 0x229154e19
lea rcx, [0x22915da6c]
call fcn.229155150
mov rcx, qword [0x2291611b0]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161198], rax
call fcn.229155252
cmp qword [0x229161188], 0
jne 0x229154e4a
lea rcx, [0x22915d8d8]
call fcn.2291551d0
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, r12
mov qword [0x229161188], rax
call fcn.229155252
cmp qword [0x229161180], 0
jne 0x229154e82
lea rcx, [0x22915da7e]
call fcn.229155150
mov rcx, qword [0x229161188]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161180], rax
call fcn.229155252
cmp qword [0x229161178], 0
jne 0x229154eba
lea rcx, [0x22915da9d]
call fcn.229155150
mov rcx, qword [0x229161188]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161178], rax
call fcn.229155252
cmp qword [0x229161170], 0
jne 0x229154ef2
lea rcx, [0x22915dab2]
call fcn.229155150
mov rcx, qword [0x229161188]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161170], rax
call fcn.229155252
cmp qword [0x229161168], 0
jne 0x229154f2a
lea rcx, [0x22915d8f3]
call fcn.229155150
mov rcx, qword [0x229161188]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161168], rax
call fcn.229155252
cmp qword [0x229161160], 0
jne 0x229154f62
lea rcx, [0x22915dacd]
call fcn.229155150
mov rcx, qword [0x229161188]
mov r12, rax
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
mov qword [0x229161160], rax
call fcn.229155252
xor ecx, ecx
call qword [0x2291611a8]
mov r12, rax
test rax, rax
je 0x229154ce0
mov rcx, rax
call qword [0x229161170]
mov r13, rax
test rax, rax
je 0x229155012
xor ecx, ecx
call qword [0x2291611a0]
mov ecx, 1
mov esi, eax
call qword [0x2291611a0]
mov edx, esi
mov rcx, r12
mov edi, eax
mov r8d, eax
call qword [0x229161180]
mov r14, rax
test rax, rax
je 0x229155006
mov rdx, rax
mov rcx, r13
call qword [0x229161178]
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 [0x229161160]
test eax, eax
jne 0x229155006
mov rcx, r14
xor r14d, r14d
call qword [0x229161168]
mov rcx, r13
mov r13, r14
call qword [0x229161168]
xor ecx, ecx
mov rdx, r12
call qword [0x229161198]
test r13, r13
je 0x229154ce0
lea r8, [rsp + 0x70]
xor edx, edx
mov rcx, r13
xor r12d, r12d
call qword [0x229161138]
test eax, eax
jne 0x22915510f
xor ecx, ecx
lea r8, [rsp + 0x78]
mov edx, 1
call qword [0x229161110]
test eax, eax
jne 0x229155104
xor r9d, r9d
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
lea r8, [rsp + 0x88]
call qword [0x229161130]
test eax, eax
jne 0x2291550f6
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.229154520
mov r12, rax
test rax, rax
je 0x2291550f6
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 0x2291550ee
test rbx, rbx
je 0x2291550f9
mov eax, dword [rsp + 0xc0]
mov dword [rbx], eax
jmp 0x2291550f9
mov rcx, r12
call fcn.229154578
xor r12d, r12d
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x70]
call qword [0x229161128]
mov rcx, r13
call qword [0x229161168]
mov rcx, r15
call fcn.229154578
mov rcx, qword [rsp + 0x68]
call qword [0x229161120]
mov rax, r12
add rsp, 0x100
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret