Function at 0x10017cd4
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime

Disassembly:
sub esp, 0x114
mov eax, dword [0x10038390]
xor eax, esp
mov dword [esp + 0x110], eax
sub dword [esp + 0x11c], 1
jne 0x10018147
call fcn.1001783d
test al, al
jne 0x10018147
push ebx
push ebp
push esi
push edi
push 0x6b
pop eax
push 0x65
pop ebp
push 0x72
mov word [esp + 0x54], ax
pop eax
push 0x6e
mov word [esp + 0x58], ax
pop eax
push 0x6c
pop ecx
push 0x33
mov word [esp + 0x5a], ax
pop eax
push 0x32
mov word [esp + 0x60], ax
pop eax
push 0x2e
pop ebx
push 0x64
pop edx
push 0x53
mov word [esp + 0x62], ax
xor eax, eax
mov word [esp + 0x6c], ax
pop eax
push 0x68
mov word [esp + 0x3c], ax
pop eax
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push 0x77
mov word [esp + 0x3e], ax
pop eax
push 0x61
mov word [esp + 0x42], ax
pop eax
push 0x70
mov word [esp + 0x44], ax
pop eax
mov word [esp + 0x42], ax
push 0x69
pop eax
mov word [esp + 0x44], ax
xor eax, eax
mov word [esp + 0x4e], ax
lea eax, [esp + 0x50]
push eax
mov word [esp + 0x56], bp
mov word [esp + 0x5c], bp
mov word [esp + 0x5e], cx
mov word [esp + 0x64], bx
mov word [esp + 0x66], dx
mov word [esp + 0x68], cx
mov word [esp + 0x6a], cx
mov word [esp + 0x40], cx
mov word [esp + 0x4a], bx
mov word [esp + 0x4c], dx
mov word [esp + 0x4e], cx
mov word [esp + 0x50], cx
call esi
mov ebx, eax
lea eax, [esp + 0x38]
push eax
call esi
mov edi, eax
push 0x4d
pop ecx
push 0x6f
pop edx
test ebx, ebx
je 0x10017f30
test edi, edi
je 0x10017f30
movaps xmm0, xmmword [0x1002b210]
xor eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push ebp
movups xmmword [esp + 0x100], xmm0
mov byte [esp + 0x14], cl
movaps xmm0, xmmword [str.DisableThreadLibQueryPerformanceGetModuleFileNamPathRemoveFileSp.]
pop ecx
push 0x61
movups xmmword [esp + 0xd0], xmm0
mov byte [esp + 0x15], dl
movaps xmm0, xmmword [0x1002b220]
pop edx
mov byte [esp + 0xfb], al
lea eax, [esp + 0x10]
movups xmmword [esp + 0xe8], xmm0
push eax
movaps xmm0, xmmword [str.PathFileExistsW]
push ebx
mov byte [esp + 0x1a], 0x76
mov byte [esp + 0x1b], cl
mov word [esp + 0x1c], 0x6946
mov byte [esp + 0x1e], 0x6c
mov byte [esp + 0x1f], cl
mov dword [esp + 0x20], 0x577845
mov byte [esp + 0x114], cl
mov word [esp + 0x115], 0x57
mov byte [esp + 0xe4], 0x72
mov byte [esp + 0xe5], dl
mov word [esp + 0xe6], 0x7972
mov byte [esp + 0xe8], 0x43
mov byte [esp + 0xe9], dl
mov dword [esp + 0xea], 0x736c6c
mov byte [esp + 0x100], cl
mov word [esp + 0x101], 0x5763
mov byte [esp + 0x24], 0x50
mov byte [esp + 0x25], dl
mov dword [esp + 0x26], 0x70416874
mov byte [esp + 0x2a], 0x70
mov byte [esp + 0x2b], cl
mov dword [esp + 0x2c], 0x57646e
movups xmmword [esp + 0x118], xmm0
call esi
mov dword [0x10038d58], eax
lea eax, [esp + 0xfc]
push eax
push ebx
call esi
mov dword [0x10038d5c], eax
lea eax, [esp + 0xcc]
push eax
push ebx
call esi
mov dword [0x10038d6c], eax
lea eax, [esp + 0xe8]
push eax
push edi
call esi
mov dword [0x10038d60], eax
lea eax, [esp + 0x1c]
push eax
push edi
call esi
mov dword [0x10038d64], eax
lea eax, [esp + 0x110]
push eax
push edi
call esi
push 0x6f
mov dword [0x10038d68], eax
pop edx
push 0x75
pop ecx
push 0x70
pop ebx
push 0x2d
pop eax
push 0x63
mov word [esp + 0x7c], ax
pop eax
push 0x6c
mov word [esp + 0x7e], ax
mov word [esp + 0x78], dx
mov word [esp + 0x7a], dx
pop edx
push 0x61
pop esi
push 0x73
pop eax
push 0x69
mov word [esp + 0x84], ax
mov word [esp + 0x86], ax
pop eax
push 0x63
mov word [esp + 0x88], ax
pop eax
push 0x73
mov word [esp + 0x8a], ax
pop eax
push 0x68
mov word [esp + 0x8c], ax
pop eax
push 0x2e
pop edi
push 0x78
mov word [esp + 0x8e], ax
pop eax
push 0x43
mov word [esp + 0x9a], ax
xor eax, eax
mov word [esp + 0x9e], ax
pop eax
push 0x73
mov word [esp + 0xa0], ax
pop eax
push 0x69
mov word [esp + 0xa6], ax
mov word [esp + 0xa8], ax
pop eax
push 0x63
mov word [esp + 0xaa], ax
pop eax
push 0x53
mov word [esp + 0xac], ax
pop eax
push 0x74
mov word [esp + 0xae], ax
pop eax
push 0x72
mov word [esp + 0xb0], ax
pop eax
push 0x74
mov word [esp + 0xb4], ax
pop eax
push 0x4d
mov word [esp + 0xb6], ax
mov word [esp + 0x70], cx
mov word [esp + 0x72], bx
mov word [esp + 0x74], cx
mov word [esp + 0x76], bx
mov word [esp + 0x80], dx
mov word [esp + 0x82], si
mov word [esp + 0x90], bp
mov word [esp + 0x92], dx
mov word [esp + 0x94], dx
mov word [esp + 0x96], di
mov word [esp + 0x98], bp
mov word [esp + 0x9c], bp
mov word [esp + 0xa2], dx
mov word [esp + 0xa4], si
mov word [esp + 0xb2], si
pop eax
push 0x6e
mov word [esp + 0xb8], ax
pop eax
push 0x44
mov word [esp + 0xbc], ax
pop eax
push 0x4c
mov word [esp + 0xc0], ax
pop eax
mov word [esp + 0xbe], ax
mov word [esp + 0xc0], ax
push 0x64
pop eax
mov word [esp + 0xc4], ax
xor eax, eax
mov word [esp + 0xca], ax
push 0x6f
pop eax
mov word [esp + 0x32], ax
push 0x78
pop eax
mov word [esp + 0x34], ax
xor eax, eax
mov word [esp + 0x36], ax
lea eax, [esp + 0x6c]
push eax
mov word [esp + 0xba], bp
mov word [esp + 0xbe], cx
mov word [esp + 0xc6], di
mov word [esp + 0xca], dx
mov word [esp + 0xcc], dx
mov word [esp + 0x2c], cx
mov word [esp + 0x2e], bx
mov word [esp + 0x30], cx
mov word [esp + 0x32], bx
mov word [esp + 0x34], di
call fcn.10017ada
lea eax, [esp + 0xa0]
push eax
call fcn.10017ada
lea eax, [esp + 0x30]
push eax
call fcn.10017ada
add esp, 0xc
call fcn.100174ca
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x110]
xor eax, eax
xor ecx, esp
inc eax
call fcn.10018161
add esp, 0x114
ret 0xc