Function at 0x10052f80
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xcc
push ebx
push esi
push edi
push 0x10052c60
push 0xfffffffffffffffc
push dword [0x100f23dc]
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov ebx, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea edi, [esp + 0x20]
mov dword [0x100eeab0], eax
mov dword [esp + 0x20], str.client.dll
mov dword [esp + 0x24], str.engine.dll
mov dword [esp + 0x28], str.server.dll
mov dword [esp + 0x2c], str.studiorender.dll
mov dword [esp + 0x30], str.materialsystem.dll
mov dword [esp + 0x34], str.shaderapidx9.dll
mov dword [esp + 0x38], str.vstdlib.dll
mov dword [esp + 0x3c], str.vguimatsurface.dll
push ecx
push dword [edi]
mov dword [esp + 0x20], 0x4c201b0
mov byte [esp + 0x24], 0
call ebx
mov ecx, eax
call fcn.10053630
sub esp, 8
mov esi, eax
mov ecx, esp
lea eax, [esp + 0x29]
push ecx
push eax
lea eax, [esp + 0x2c]
push eax
call fcn.10053320
mov ecx, esi
call fcn.10053540
add edi, 4
lea eax, [esp + 0x4c]
add esp, 0xc
cmp edi, eax
jne 0x10052ff1
movaps xmm0, xmmword [0x100ddf40]
lea edi, [esp + 0x11]
movups xmmword [esp + 0x40], xmm0
push 1
movaps xmm0, xmmword [0x100dd920]
movups xmmword [esp + 0x54], xmm0
push 0xb
movaps xmm0, xmmword [0x100dd830]
movups xmmword [esp + 0x68], xmm0
mov byte [esp + 0x18], 0xff
xorps xmm0, xmm0
mov dword [esp + 0xb8], 0xb
push str.engine
movups xmmword [esp + 0x7c], xmm0
movups xmmword [esp + 0x8c], xmm0
movups xmmword [esp + 0x9c], xmm0
movups xmmword [esp + 0xac], xmm0
call ebx
lea edx, [esp + 0x48]
mov ecx, eax
call fcn.100535c0
push ecx
mov ecx, esp
mov esi, eax
push ecx
push edi
lea eax, [esp + 0x24]
push eax
call fcn.10053320
mov ecx, esi
call fcn.10053540
movaps xmm0, xmmword [0x100dd9a0]
lea edi, [esp + 0x1e]
movups xmmword [esp + 0x4c], xmm0
add esp, 0xc
mov word [esp + 0x10], 0xc085
movaps xmm0, xmmword [0x100dded0]
movups xmmword [esp + 0x50], xmm0
mov dword [esp + 0xd0], 0
movaps xmm0, xmmword [0x100dd870]
movups xmmword [esp + 0x60], xmm0
push 0
movaps xmm0, xmmword [0x100dd740]
movups xmmword [esp + 0x74], xmm0
mov dword [esp + 0xd8], 0xe
xorps xmm0, xmm0
push 0xe
push 0x100d42d8
movups xmmword [esp + 0x8c], xmm0
movups xmmword [esp + 0x9c], xmm0
movups xmmword [esp + 0xac], xmm0
movups xmmword [esp + 0xbc], xmm0
movups xmmword [esp + 0xcc], xmm0
call ebx
lea edx, [esp + 0x48]
mov ecx, eax
call fcn.100535c0
push ecx
mov ecx, esp
mov esi, eax
push ecx
push edi
lea eax, [esp + 0x24]
push eax
call fcn.10053320
mov ecx, esi
call fcn.10053540
movaps xmm0, xmmword [0x100dd910]
lea edi, [esp + 0x1e]
add esp, 0xc
mov word [esp + 0x10], 0xc085
movups xmmword [esp + 0x40], xmm0
mov dword [esp + 0x80], 0
movaps xmm0, xmmword [0x100dd750]
movups xmmword [esp + 0x50], xmm0
mov dword [esp + 0x84], 6
xorps xmm0, xmm0
push 0
movups xmmword [esp + 0x64], xmm0
push 6
movups xmmword [esp + 0x78], xmm0
push 0x100d42d8
call ebx
lea edx, [esp + 0x48]
mov ecx, eax
call fcn.100535c0
push ecx
mov ecx, esp
mov esi, eax
push ecx
push edi
lea eax, [esp + 0x24]
push eax
call fcn.10053320
mov ecx, esi
call fcn.10053540
movaps xmm0, xmmword [0x100ddb40]
lea edi, [esp + 0x21]
movups xmmword [esp + 0x4c], xmm0
add esp, 0xc
mov dword [esp + 0x10], 0x1b8
movaps xmm0, xmmword [0x100dda10]
movups xmmword [esp + 0x50], xmm0
mov byte [esp + 0x14], 0
movaps xmm0, xmmword [0x100dd820]
movups xmmword [esp + 0x60], xmm0
push 0
xorps xmm0, xmm0
movups xmmword [esp + 0x74], xmm0
push 0xb
movups xmmword [esp + 0x88], xmm0
push 0x100d42d8
movups xmmword [esp + 0x9c], xmm0
movups xmmword [esp + 0xac], xmm0
movaps xmm0, xmmword [0x100dd8e0]
movups xmmword [esp + 0xbc], xmm0
call ebx
lea edx, [esp + 0x48]
mov ecx, eax
call fcn.100535c0
push ecx
mov ecx, esp
mov esi, eax
push ecx
push edi
lea eax, [esp + 0x24]
push eax
call fcn.10053320
mov ecx, esi
call fcn.10053540
add esp, 0xc
xor esi, esi
mov ecx, 1
mov ebx, 0x100eeacc
xor eax, eax
lock cmpxchg dword [ebx], ecx
test eax, eax
je 0x100532b1
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp esi, 0x20
jae 0x1005329d
push 0
jmp 0x1005329f
push 1
call edi
inc esi
mov ecx, 1
xor eax, eax
lock cmpxchg dword [ebx], ecx
test eax, eax
jne 0x10053294
cmp dword [0x100eead0], 0
jne 0x100532cb
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_HeapCreate]
mov dword [0x100eead0], eax
xor eax, eax
xchg dword [ebx], eax
mov edi, dword [0x100f2044]
mov esi, dword [0x100f2040]
cmp esi, edi
je 0x1005330e
nop
mov edx, dword [esi]
mov ecx, dword [edx + 8]
test ecx, ecx
jne 0x100532fc
mov eax, dword [edx]
test eax, eax
je 0x100532fc
mov eax, dword [eax]
mov ecx, dword [edx + 4]
mov eax, dword [eax]
mov ecx, dword [eax + ecx*4]
mov dword [edx + 8], ecx
push dword [edx + 0x10]
mov edx, dword [edx + 0xc]
call fcn.10054e10
add esi, 4
cmp esi, edi
jne 0x100532e0
call fcn.10055130
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret