Function at 0x10007a9d4
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x310
mov rax, qword [0x100086110]
xor rax, rsp
mov qword [rsp + 0x300], rax
mov rbx, rcx
lea rcx, [rsp + 0x60]
mov r15, r8
mov dword [rsp + 0x80], edx
call fcn.10007d40c
mov rcx, qword [0x100087a50]
lea r14, [0x100087a50]
cmp rcx, r14
je 0x10007aa48
test byte [rcx + 0x3c], 1
je 0x10007aa48
cmp byte [rcx + 0x39], 7
jb 0x10007aa48
mov rcx, qword [rcx + 0x30]
lea r8, [0x100022090]
mov edx, 0x11
call fcn.100070d94
xor r12d, r12d
mov rcx, rbx
mov dword [r15], r12d
call fcn.1000754ac
lea ebp, [r12 + 2]
lea esi, [rbp + 2]
mov rcx, rbx
cmp eax, esi
jne 0x10007ab09
lea r8, [rsp + 0x60]
xor edx, edx
call fcn.100075298
mov r9, qword [rsp + 0x60]
cmp eax, r12d
mov ebx, eax
jl 0x10007ab1a
cmp r9, r12
je 0x10007aa9a
mov rcx, r9
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r9, qword [rsp + 0x60]
jmp 0x10007aa9d
mov eax, r12d
cmp eax, 3
jl 0x10007ab02
mov r13d, 0x5c
cmp word [r9], r13w
jne 0x10007ab02
cmp word [r9 + 2], r13w
jne 0x10007ab02
mov edi, ebp
cmp r9, r12
je 0x10007aacc
mov rcx, r9
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r9, qword [rsp + 0x60]
jmp 0x10007aacf
mov eax, r12d
cmp edi, eax
jg 0x10007ab1a
cmp r13w, word [rsi + r9]
je 0x10007aae1
inc edi
add rsi, rbp
jmp 0x10007aab7
movsxd rax, edi
lea rcx, [rsp + 0x60]
or r8d, 0xffffffff
mov word [r9 + rax*2], r12w
mov rdx, qword [rsp + 0x60]
add rdx, 4
call fcn.10007d57c
jmp 0x10007ab13
mov ebx, 0x80070057
jmp 0x10007ab1a
lea rdx, [rsp + 0x60]
call fcn.10007592c
mov r9, qword [rsp + 0x60]
mov ebx, eax
mov rcx, qword [0x100087a50]
cmp rcx, r14
je 0x10007ab4e
test byte [rcx + 0x3c], 1
je 0x10007ab4e
cmp byte [rcx + 0x39], 7
jb 0x10007ab4e
mov rcx, qword [rcx + 0x30]
lea r8, [0x100022090]
mov edx, 0x12
call fcn.100079cfc
mov rcx, qword [0x100087a50]
cmp ebx, r12d
jl 0x10007b128
lea rcx, [0x100032060]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rsi, rax
cmp rax, r12
je 0x10007b10c
lea rdx, [0x100032080]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [0x100032090]
mov rcx, rsi
mov rdi, rax
mov qword [rsp + 0x78], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [0x1000320a0]
mov rcx, rsi
mov r14, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [0x1000320b0]
mov rcx, rsi
mov r13, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [0x1000320c0]
mov rcx, rsi
mov rbx, rax
mov qword [rsp + 0x278], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [0x1000320d0]
mov rcx, rsi
mov rbp, rax
mov qword [rsp + 0x270], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x90], rax
cmp rdi, r12
je 0x10007b0e5
cmp r13, r12
je 0x10007b0e5
cmp rbx, r12
je 0x10007b0e5
cmp r14, r12
je 0x10007ac2b
cmp rbp, r12
je 0x10007ac2b
mov ebx, 1
cmp rax, r12
jne 0x10007ac2e
mov ebx, r12d
lea rcx, [0x1000320e8]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rbp, rax
cmp rax, r12
je 0x10007b0e5
lea rdx, [0x100032100]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [0x100032110]
mov rcx, rbp
mov r12, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [0x100032120]
mov rcx, rbp
mov qword [rsp + 0x88], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [0x100032130]
mov rcx, rbp
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor ecx, ecx
mov qword [rsp + 0x98], rax
cmp r12, rcx
je 0x10007b0c2
cmp qword [rsp + 0x88], rcx
je 0x10007b0c2
cmp rdi, rcx
je 0x10007b0c2
cmp rax, rcx
je 0x10007b0c2
mov word [rsp + 0xd0], cx
lea rcx, [rsp + 0xd2]
xor edx, edx
mov r8d, 0x196
call sub.msvcrt.dll_memset
lea rdx, [rsp + 0xd0]
mov ecx, 0x202
call r12
xor r12d, r12d
cmp eax, r12d
jne 0x10007b0b4
lea r8d, [r12 + 0x30]
lea rcx, [rsp + 0xa0]
xor edx, edx
mov qword [rsp + 0x70], r12
call sub.msvcrt.dll_memset
mov r11d, dword [rsp + 0xa4]
mov rcx, qword [rsp + 0x60]
lea eax, [r12 + 2]
cmp ebx, r12d
cmove r11d, eax
lea r9, [rsp + 0x70]
lea r8, [rsp + 0xa0]
xor edx, edx
mov dword [rsp + 0xa4], r11d
call rdi
cmp eax, r12d
jne 0x10007b05c
mov rax, qword [rsp + 0x70]
mov ecx, dword [rax + 4]
lea eax, [r12 + 2]
cmp ecx, eax
jne 0x10007ae9e
call qword [rsp + 0x78]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x10007ae44
mov rcx, qword [rsp + 0x70]
lea r9d, [r12 + 8]
mov r12d, dword [rsp + 0x80]
mov rdx, qword [rcx + 0x20]
mov dword [rsp + 0x38], r12d
lea rax, [rsp + 0x280]
mov edx, dword [rdx + 4]
mov dword [rsp + 0x30], 0x30
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x270]
xor r14d, r14d
mov rcx, rdi
mov qword [rsp + 0x20], r14
call qword [rsp + 0x278]
cmp eax, r14d
je 0x10007add2
mov ebx, r14d
jmp 0x10007ae39
mov dword [r15], 1
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r14d
cmovle ebx, eax
cmp ebx, r14d
jge 0x10007ae39
mov rcx, qword [0x100087a50]
lea rdx, [0x100087a50]
cmp rcx, rdx
je 0x10007ae39
test byte [rcx + 0x3c], 1
je 0x10007ae39
cmp byte [rcx + 0x39], 2
jb 0x10007ae39
mov edx, 0x13
mov r9, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x30]
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], eax
lea r8, [0x100022090]
mov dword [rsp + 0x20], r12d
call fcn.100079d84
mov rcx, rdi
call r13
jmp 0x10007b04e
mov dword [r15], 1
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r12d
cmovle ebx, eax
cmp ebx, r12d
jge 0x10007b04e
mov rcx, qword [0x100087a50]
lea rdx, [0x100087a50]
cmp rcx, rdx
je 0x10007b04e
test byte [rcx + 0x3c], 1
je 0x10007b04e
cmp byte [rcx + 0x39], 2
jb 0x10007b04e
mov edx, 0x14
jmp 0x10007b02a
mov eax, 0x17
cmp ecx, eax
jne 0x10007b049
cmp ebx, r12d
je 0x10007b049
call r14
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x10007afec
mov rcx, qword [rsp + 0x70]
mov dword [rsp + 0x78], r12d
lea rdx, [rsp + 0x78]
mov rcx, qword [rcx + 0x20]
call qword [rsp + 0x90]
mov ebx, dword [rsp + 0x78]
lea rcx, [rsp + 0x280]
cmp eax, r12d
cmovne ebx, r12d
xor edx, edx
lea r8d, [rdx + 0x1c]
mov dword [rsp + 0x78], ebx
call sub.msvcrt.dll_memset
mov r12d, dword [rsp + 0x80]
mov edx, 0x17
mov dword [rsp + 0x58], r12d
mov dword [rsp + 0x50], 0x4c
lea eax, [rdx - 0xf]
mov word [rsp + 0x280], dx
lea rcx, [rsp + 0x2b0]
xor r14d, r14d
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], r14
mov word [rsp + 0x38], ax
lea rax, [rsp + 0x278]
and ebx, 0xfffffff
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x70]
bts ebx, 0x1c
mov dword [rsp + 0x298], ebx
mov rcx, qword [rax + 0x20]
lea rax, [rsp + 0x280]
mov qword [rsp + 0x28], rcx
xor r8d, r8d
xor edx, edx
mov rcx, rdi
mov qword [rsp + 0x20], rax
call qword [rsp + 0x270]
cmp eax, r14d
jne 0x10007adcd
mov dword [r15], 1
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r14d
cmovle ebx, eax
cmp ebx, r14d
jge 0x10007ae39
mov rcx, qword [0x100087a50]
lea rdx, [0x100087a50]
cmp rcx, rdx
je 0x10007ae39
test byte [rcx + 0x3c], 1
je 0x10007ae39
cmp byte [rcx + 0x39], 2
jb 0x10007ae39
lea edx, [r14 + 0x15]
jmp 0x10007ae17
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r12d
cmovle ebx, eax
cmp ebx, r12d
jge 0x10007b04e
mov rcx, qword [0x100087a50]
lea rdx, [0x100087a50]
cmp rcx, rdx
je 0x10007b04e
test byte [rcx + 0x3c], 1
je 0x10007b04e
cmp byte [rcx + 0x39], 2
jb 0x10007b04e
mov edx, 0x17
mov r9, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x30]
lea r8, [0x100022090]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], eax
call fcn.100079e44
jmp 0x10007b04e
mov ebx, 0x80004005
mov rcx, qword [rsp + 0x70]
call qword [rsp + 0x98]
jmp 0x10007b0ab
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r12d
cmovle ebx, eax
cmp ebx, r12d
jge 0x10007b0ab
mov rcx, qword [0x100087a50]
lea rdx, [0x100087a50]
cmp rcx, rdx
je 0x10007b0ab
test byte [rcx + 0x3c], 1
je 0x10007b0ab
cmp byte [rcx + 0x39], 2
jb 0x10007b0ab
mov rcx, qword [rcx + 0x30]
lea r8, [0x100022090]
mov edx, 0x18
mov r9d, eax
mov dword [rsp + 0x20], ebx
call fcn.100079cac
call qword [rsp + 0x88]
jmp 0x10007b0da
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r12d
jmp 0x10007b0d7
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor r14d, r14d
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r14d
cmovle ebx, eax
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x10007b0fa
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r12d
cmovle ebx, eax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
lea r14, [0x100087a50]
jmp 0x10007b121
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
cmp eax, r12d
cmovle ebx, eax
mov rcx, qword [0x100087a50]
cmp rcx, r14
je 0x10007b14e
test byte [rcx + 0x3c], 1
je 0x10007b14e
cmp byte [rcx + 0x39], 7
jb 0x10007b14e
mov rcx, qword [rcx + 0x30]
lea r8, [0x100022090]
mov edx, 0x19
call fcn.100070d94
lea rcx, [rsp + 0x60]
call fcn.10007d970
mov eax, ebx
mov rcx, qword [rsp + 0x300]
xor rcx, rsp
call fcn.10007fa70
mov rbx, qword [rsp + 0x368]
add rsp, 0x310
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret