Function at 0x100513e0
Capabilities:
Create directory
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008b91c
mov eax, dword fs:[0]
push eax
sub esp, 0x80
push esi
push edi
mov eax, dword [0x100d7010]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0
push str.revlimiter
mov dword [ebp - 0x10], 0
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push 0xb0
call fcn.100653bb
mov edi, eax
mov dword [ebp - 0x14], edi
push 0xb0
push 0
push edi
mov dword [ebp - 4], 0
call fcn.100679f0
mov dword [edi], 0x100af524
mov dword [edi + 0x70], 0
mov dword [edi + 0x90], 0
mov dword [edi + 0x94], 0
mov dword [edi + 0x98], 0
mov dword [edi + 0x68], vtable.std::basic_ios_char__struct_std::char_traits_char__.0
mov byte [ebp - 4], 1
lea esi, [edi + 4]
mov eax, dword [edi]
add esp, 0xc
mov dword [ebp - 0x10], 1
mov eax, dword [eax + 4]
push esi
mov dword [edi + eax], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov eax, dword [edi]
mov ecx, dword [eax + 4]
lea eax, [ecx - 8]
mov dword [ecx + edi - 4], eax
mov eax, dword [edi]
mov ecx, dword [eax + 4]
add ecx, edi
call fcn.10053680
mov dword [ebp - 4], 3
mov ecx, esi
mov eax, dword [edi]
mov eax, dword [eax + 4]
mov dword [edi + eax], vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov eax, dword [edi]
mov edx, dword [eax + 4]
lea eax, [edx - 0x68]
mov dword [edx + edi - 4], eax
call fcn.100532b0
push ecx
push 2
push str.revlimiter_called.txt
mov ecx, esi
mov byte [ebp - 4], 4
call fcn.100531f0
test eax, eax
jne 0x10051507
mov eax, dword [edi]
push 0
mov ecx, dword [eax + 4]
xor eax, eax
add ecx, edi
cmp dword [ecx + 0x38], eax
sete al
lea eax, [eax*4 + 2]
or eax, dword [ecx + 0xc]
push eax
call fcn.100512b0
mov dword [ebp - 4], 0xffffffff
push str.C:WINDOWS_system32dinput8.dll
mov dword [0x100d9274], edi
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x100d9348], eax
test eax, eax
je 0x1005173d
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x100af68c
push eax
call esi
mov dword [0x100d92a8], eax
test eax, eax
jne 0x1005157e
push str.Cant_find_function_DirectInput8Create
lea ecx, [ebp - 0x5c]
call fcn.10052b10
push str._nError_code:
mov ecx, eax
mov dword [ebp - 4], 7
call fcn.100529e0
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea ecx, [ebp - 0x44]
call fcn.10050850
mov byte [ebp - 4], 8
jmp 0x10051773
push 0x100af6c8
push dword [0x100d9348]
call esi
mov dword [0x100d92ac], eax
test eax, eax
jne 0x100515cf
push str.Cant_find_function_DllCanUnloadNow
lea ecx, [ebp - 0x5c]
call fcn.10052b10
push str._nError_code:
mov ecx, eax
mov dword [ebp - 4], 9
call fcn.100529e0
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea ecx, [ebp - 0x44]
call fcn.10050850
mov byte [ebp - 4], 0xa
jmp 0x10051773
push 0x100af6fc
push dword [0x100d9348]
call esi
mov dword [0x100d92a4], eax
test eax, eax
jne 0x10051620
push str.Cant_find_function_DllGetClassObject
lea ecx, [ebp - 0x5c]
call fcn.10052b10
push str._nError_code:
mov ecx, eax
mov dword [ebp - 4], 0xb
call fcn.100529e0
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea ecx, [ebp - 0x44]
call fcn.10050850
mov byte [ebp - 4], 0xc
jmp 0x10051773
push 0x100af738
push dword [0x100d9348]
call esi
mov dword [0x100d92b0], eax
test eax, eax
jne 0x10051671
push str.Cant_find_function_DllRegisterServer
lea ecx, [ebp - 0x5c]
call fcn.10052b10
push str._nError_code:
mov ecx, eax
mov dword [ebp - 4], 0xd
call fcn.100529e0
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea ecx, [ebp - 0x44]
call fcn.10050850
mov byte [ebp - 4], 0xe
jmp 0x10051773
push 0x100af774
push dword [0x100d9348]
call esi
mov dword [0x100d92a0], eax
test eax, eax
jne 0x100516c2
push str.Cant_find_function_DllUnregisterServer
lea ecx, [ebp - 0x5c]
call fcn.10052b10
push str._nError_code:
mov ecx, eax
mov dword [ebp - 4], 0xf
call fcn.100529e0
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea ecx, [ebp - 0x44]
call fcn.10050850
mov byte [ebp - 4], 0x10
jmp 0x10051773
push 0x100af7b0
push dword [0x100d9348]
call esi
mov dword [0x100d92b4], eax
test eax, eax
jne 0x1005172c
push str.Cant_find_function_GetdfDIJoystick
lea ecx, [ebp - 0x74]
call fcn.10052b10
push str._nError_code:
mov ecx, eax
mov dword [ebp - 4], 0x11
call fcn.100529e0
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea ecx, [ebp - 0x8c]
call fcn.10050850
push eax
mov ecx, esi
mov byte [ebp - 4], 0x12
call fcn.10052a50
push eax
lea ecx, [ebp - 0x2c]
call fcn.100507b0
push 0x100d593c
lea eax, [ebp - 0x2c]
jmp 0x1005178c
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push str.Cant_load_original_dinput8.dll
lea ecx, [ebp - 0x44]
call fcn.10052b10
push str._nError_code:
mov ecx, eax
mov dword [ebp - 4], 5
call fcn.100529e0
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea ecx, [ebp - 0x5c]
call fcn.10050850
mov byte [ebp - 4], 6
push eax
mov ecx, esi
call fcn.10052a50
push eax
lea ecx, [ebp - 0x20]
call fcn.100507b0
push 0x100d593c
lea eax, [ebp - 0x20]
push eax
call fcn.10067b4a
int3