Function at 0x1004491f
Capabilities:
Access peb ldr_data

Disassembly:
mov eax, 0x1008b652
call fcn.10089aec
sub esp, 0x38
push ebx
push esi
push edi
push 0x104
mov ebx, ecx
mov edi, 0x1018d778
push edi
xor eax, eax
push eax
mov dword [ebx], vtable.MySteam.0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push 0x5c
pop esi
push esi
push edi
call dword [sym.imp.msvcrt.dll_wcsrchr]
pop ecx
pop ecx
push 0x7d
pop edx
push 0x6e
xor ecx, ecx
mov word [eax + 2], cx
mov word [ebp - 0x42], si
mov word [ebp - 0x40], dx
pop eax
mov word [ebp - 0x3e], ax
push 0x6a
pop ecx
mov word [ebp - 0x3c], cx
push 0x76
pop eax
mov word [ebp - 0x3a], ax
push 0x4d
pop eax
mov word [ebp - 0x38], ax
mov ax, word [0x1009be0c]
mov word [ebp - 0x36], cx
mov word [ebp - 0x34], dx
mov word [ebp - 0x32], cx
push 9
pop ecx
add ax, cx
mov word [ebp - 0x30], cx
mov word [ebp - 0x2e], ax
mov ax, word [0x1009be0e]
add ax, cx
mov word [ebp - 0x2c], ax
mov ax, word [0x1009be10]
add ax, cx
mov word [ebp - 0x2a], ax
mov ax, word [0x1009be12]
add ax, cx
mov word [ebp - 0x28], ax
mov ax, word [str.Direct3DCreate9]
add ax, cx
mov word [ebp - 0x26], ax
mov ax, word [0x1009be16]
add ax, cx
mov word [ebp - 0x24], ax
mov ax, word [0x1009be18]
add ax, cx
mov word [ebp - 0x22], ax
mov ax, word [0x1009be1a]
add ax, cx
mov word [ebp - 0x20], ax
mov ax, word [0x1009be1c]
add ax, cx
mov word [ebp - 0x1e], ax
xor eax, eax
mov word [ebp - 0x1c], ax
mov ax, word [ebp - 0x42]
xor eax, eax
sub word [ebp + eax*2 - 0x42], cx
inc eax
cmp eax, 0x13
jb 0x10044a19
lea edx, [ebp - 0x42]
xor ecx, ecx
mov esi, edx
mov ax, word [edx]
add edx, 2
cmp ax, cx
jne 0x10044a2b
sub edx, esi
sub edi, 2
mov ax, word [edi + 2]
add edi, 2
cmp ax, cx
jne 0x10044a3b
mov ecx, edx
xor eax, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0x104
mov edi, 0x1018d670
push edi
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x5c
push edi
call dword [sym.imp.msvcrt.dll_strrchr]
pop ecx
pop ecx
xor ecx, ecx
mov byte [eax + 1], cl
mov byte [ebp - 0x1a], 0x5f
mov byte [ebp - 0x19], 0x80
mov byte [ebp - 0x18], 0x71
mov byte [ebp - 0x17], 0x6d
mov byte [ebp - 0x16], 0x79
mov byte [ebp - 0x15], 0x50
mov byte [ebp - 0x14], 0x6d
mov byte [ebp - 0x13], 0x80
mov byte [ebp - 0x12], 0x6d
mov byte [ebp - 0x11], cl
mov al, byte [ebp - 0x1a]
mov eax, ecx
sub byte [ebp + eax - 0x1a], 0xc
inc eax
cmp eax, 9
jb 0x10044aa5
lea edx, [ebp - 0x1a]
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x10044ab5
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10044abf
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 4
call fcn.1007a4b1
push 0x20
mov dword [eax], vtable.IMySteamAppList.0
mov dword [ebx + 4], eax
call fcn.1007a4b1
push 0x38
pop edi
push edi
mov dword [eax], vtable.IMySteamApps.7.0
mov dword [eax + 4], vtable.IMySteamApps.4.0
mov dword [eax + 8], vtable.IMySteamApps.2.0
mov dword [eax + 0xc], vtable.IMySteamApps.0
mov dword [eax + 0x10], vtable.IMySteamApps.3.0
mov dword [eax + 0x14], vtable.IMySteamApps.6.0
mov dword [eax + 0x18], vtable.IMySteamApps.5.0
mov dword [eax + 0x1c], vtable.IMySteamApps.1.0
mov dword [ebx + 8], eax
call fcn.1007a4b1
push 0x1c
mov dword [eax], vtable.IMySteamClient.4.0
mov dword [eax + 4], vtable.IMySteamClient.1.0
mov dword [eax + 8], vtable.IMySteamClient.13.0
mov dword [eax + 0xc], vtable.IMySteamClient.2.0
mov dword [eax + 0x10], vtable.IMySteamClient.3.0
mov dword [eax + 0x14], vtable.IMySteamClient.6.0
mov dword [eax + 0x18], vtable.IMySteamClient.9.0
mov dword [eax + 0x1c], vtable.IMySteamClient.5.0
mov dword [eax + 0x20], vtable.IMySteamClient.7.0
mov dword [eax + 0x24], vtable.IMySteamClient.8.0
mov dword [eax + 0x28], vtable.IMySteamClient.10.0
mov dword [eax + 0x2c], vtable.IMySteamClient.11.0
mov dword [eax + 0x30], vtable.IMySteamClient.0
mov dword [eax + 0x34], vtable.IMySteamClient.12.0
mov dword [ebx + 0xc], eax
call fcn.1007a4b1
mov dword [ebp - 0x10], eax
push 0x30
mov dword [eax + 4], vtable.ISteamController004.0
mov dword [eax + 8], vtable.ISteamController005.0
mov dword [eax + 0xc], vtable.ISteamController006.0
mov dword [eax + 0x10], vtable.ISteamController007.0
mov dword [eax + 0x14], vtable.ISteamController008.0
and dword [eax + 0x18], 0
mov dword [eax], vtable.IMySteamController.3.0
mov dword [eax + 4], vtable.IMySteamController.4.0
mov dword [eax + 8], vtable.IMySteamController.2.0
mov dword [eax + 0xc], vtable.IMySteamController.0
mov dword [eax + 0x10], vtable.IMySteamController.1.0
mov dword [eax + 0x14], vtable.IMySteamController.5.0
mov dword [ebx + 0x10], eax
call fcn.1007a4b1
push 0x28
mov dword [eax], vtable.IMySteamFriends.8.0
mov dword [eax + 4], vtable.IMySteamFriends.6.0
mov dword [eax + 8], vtable.IMySteamFriends.7.0
mov dword [eax + 0xc], vtable.IMySteamFriends.5.0
mov dword [eax + 0x10], vtable.IMySteamFriends.9.0
mov dword [eax + 0x14], vtable.IMySteamFriends.1.0
mov dword [eax + 0x18], vtable.IMySteamFriends.11.0
mov dword [eax + 0x1c], vtable.IMySteamFriends.4.0
mov dword [eax + 0x20], vtable.IMySteamFriends.10.0
mov dword [eax + 0x24], vtable.IMySteamFriends.3.0
mov dword [eax + 0x28], vtable.IMySteamFriends.2.0
mov dword [eax + 0x2c], vtable.IMySteamFriends.0
mov dword [ebx + 0x14], eax
call fcn.1007a4b1
mov dword [eax], vtable.IMySteamGameServer.8.0
mov dword [eax + 4], vtable.IMySteamGameServer.9.0
mov dword [eax + 8], vtable.IMySteamGameServer.1.0
mov dword [eax + 0xc], vtable.IMySteamGameServer.0
mov dword [eax + 0x10], vtable.IMySteamGameServer.4.0
mov dword [eax + 0x14], vtable.IMySteamGameServer.7.0
mov dword [eax + 0x18], vtable.IMySteamGameServer.6.0
mov dword [eax + 0x1c], vtable.IMySteamGameServer.5.0
mov dword [eax + 0x20], vtable.IMySteamGameServer.3.0
mov dword [eax + 0x24], vtable.IMySteamGameServer.2.0
push 4
mov dword [ebx + 0x18], eax
call fcn.1007a4b1
push 0x10
mov dword [eax], vtable.IMySteamGameServerStats.0
mov dword [ebx + 0x1c], eax
call fcn.1007a4b1
push 0xc
mov dword [eax], vtable.IMySteamHTMLSurface.2.0
mov dword [eax + 4], vtable.IMySteamHTMLSurface.1.0
mov dword [eax + 8], vtable.IMySteamHTMLSurface.3.0
mov dword [eax + 0xc], vtable.IMySteamHTMLSurface.0
mov dword [ebx + 0x20], eax
call fcn.1007a4b1
push 0x258
mov dword [eax], vtable.IMySteamHTTP.2.0
mov dword [eax + 4], vtable.IMySteamHTTP.0
mov dword [eax + 8], vtable.IMySteamHTTP.1.0
mov dword [ebx + 0x24], eax
call fcn.1007a4b1
add esp, 0x28
mov dword [ebp - 0x10], eax
and dword [ebp - 4], 0
mov ecx, eax
call fcn.1003c463
or dword [ebp - 4], 0xffffffff
push 4
mov dword [ebx + 0x28], eax
call fcn.1007a4b1
push edi
mov dword [eax], vtable.IMySteamMasterServerUpdater.0
mov dword [ebx + 0x2c], eax
call fcn.1007a4b1
mov esi, eax
mov dword [ebp - 0x10], esi
push edi
xor eax, eax
mov dword [ebp - 4], 1
push eax
push esi
call sub.msvcrt.dll_memset
add esp, 0x14
mov ecx, esi
call fcn.10045044
or esi, 0xffffffff
mov dword [ebp - 4], esi
push 8
mov dword [ebx + 0x30], eax
call fcn.1007a4b1
push 4
mov dword [eax], vtable.IMySteamMatchmakingServers.1.0
mov dword [eax + 4], vtable.IMySteamMatchmakingServers.0
mov dword [ebx + 0x34], eax
call fcn.1007a4b1
push 4
mov dword [eax], vtable.IMySteamMusic.0
mov dword [ebx + 0x38], eax
call fcn.1007a4b1
push edi
mov dword [eax], vtable.IMySteamMusicRemote.0
mov dword [ebx + 0x3c], eax
call fcn.1007a4b1
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ecx, eax
mov dword [ebp - 4], 2
call fcn.100442fe
add edi, 0x50
mov dword [ebp - 4], esi
push edi
mov dword [ebx + 0x40], eax
call fcn.1007a4b1
pop ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 4], 3
mov ecx, eax
call fcn.1003f10b
mov dword [ebp - 4], esi
push 0x10
mov dword [ebx + 0x44], eax
call fcn.1007a4b1
mov dword [ebp - 0x10], eax
push 0x50
mov dword [eax + 4], vtable.ISteamScreenshots002.0
mov dword [eax + 8], vtable.ISteamScreenshots003.0
mov dword [eax], vtable.IMySteamScreenshots.1.0
mov dword [eax + 4], vtable.IMySteamScreenshots.2.0
mov dword [eax + 8], vtable.IMySteamScreenshots.0
mov byte [eax + 0xc], 0
mov dword [ebx + 0x48], eax
call fcn.1007a4b1
pop ecx
pop ecx
mov dword [ebp - 0x10], eax
mov ecx, eax
mov dword [ebp - 4], 4
call fcn.10040da6
mov dword [ebp - 4], esi
push 4
mov dword [ebx + 0x4c], eax
call fcn.1007a4b1
push 0x38
mov dword [eax], vtable.IMySteamUnifiedMessages.0
mov dword [ebx + 0x50], eax
call fcn.1007a4b1
push 0x2ec
mov dword [eax], vtable.IMySteamUser.7.0
mov dword [eax + 4], vtable.IMySteamUser.4.0
mov dword [eax + 8], vtable.IMySteamUser.8.0
mov dword [eax + 0xc], vtable.IMySteamUser.9.0
mov dword [eax + 0x10], vtable.IMySteamUser.13.0
mov dword [eax + 0x14], vtable.IMySteamUser.2.0
mov dword [eax + 0x18], vtable.IMySteamUser.1.0
mov dword [eax + 0x1c], vtable.IMySteamUser.12.0
mov dword [eax + 0x20], vtable.IMySteamUser.6.0
mov dword [eax + 0x24], vtable.IMySteamUser.10.0
mov dword [eax + 0x28], vtable.IMySteamUser.11.0
mov dword [eax + 0x2c], vtable.IMySteamUser.3.0
mov dword [eax + 0x30], vtable.IMySteamUser.0
mov dword [eax + 0x34], vtable.IMySteamUser.5.0
mov dword [ebx + 0x54], eax
call fcn.1007a4b1
add esp, 0xc
mov dword [ebp - 0x10], eax
mov ecx, eax
mov dword [ebp - 4], 5
call fcn.10042413
mov dword [ebp - 4], esi
push 0x20
mov dword [ebx + 0x58], eax
call fcn.1007a4b1
push 8
mov dword [eax], vtable.IMySteamUtils.1.0
mov dword [eax + 4], vtable.IMySteamUtils.3.0
mov dword [eax + 8], vtable.IMySteamUtils.7.0
mov dword [eax + 0xc], vtable.IMySteamUtils.4.0
mov dword [eax + 0x10], vtable.IMySteamUtils.6.0
mov dword [eax + 0x14], vtable.IMySteamUtils.2.0
mov dword [eax + 0x18], vtable.IMySteamUtils.5.0
mov dword [eax + 0x1c], vtable.IMySteamUtils.0
mov dword [ebx + 0x5c], eax
call fcn.1007a4b1
push 4
mov dword [eax], vtable.IMySteamVideo.0
mov dword [eax + 4], vtable.IMySteamVideo.1.0
mov dword [ebx + 0x60], eax
call fcn.1007a4b1
push 4
mov dword [eax], vtable.IMySteamParentalSettings.0
mov dword [ebx + 0x64], eax
call fcn.1007a4b1
push edi
mov dword [eax], vtable.IMySteamAppTicket.0
mov dword [ebx + 0x68], eax
call fcn.1007a4b1
mov esi, eax
mov dword [ebp - 0x10], esi
push edi
xor eax, eax
mov dword [ebp - 4], 6
push eax
push esi
call sub.msvcrt.dll_memset
add esp, 0x20
mov ecx, esi
call fcn.100450b3
or dword [ebp - 4], 0xffffffff
push 4
mov dword [ebx + 0x6c], eax
call fcn.1007a4b1
push 4
mov dword [eax], vtable.IMySteamGameSearch.0
mov dword [ebx + 0x70], eax
call fcn.1007a4b1
push 8
mov dword [eax], vtable.IMySteamParties.0
mov dword [ebx + 0x74], eax
call fcn.1007a4b1
push 4
mov dword [eax], vtable.IMySteamRemotePlay.0
mov dword [eax + 4], vtable.IMySteamRemotePlay.1.0
mov dword [ebx + 0x78], eax
call fcn.1007a4b1
push 0x1c
mov dword [eax], vtable.IMySteamNetworkingMessages.0
mov dword [ebx + 0x7c], eax
call fcn.1007a4b1
push 0x10
mov dword [eax], vtable.IMySteamNetworkingSockets.1.0
mov dword [eax + 4], vtable.IMySteamNetworkingSockets.3.0
mov dword [eax + 8], vtable.IMySteamNetworkingSockets.5.0
mov dword [eax + 0xc], vtable.IMySteamNetworkingSockets.4.0
mov dword [eax + 0x10], vtable.IMySteamNetworkingSockets.6.0
mov dword [eax + 0x14], vtable.IMySteamNetworkingSockets.2.0
mov dword [eax + 0x18], vtable.IMySteamNetworkingSockets.0
mov dword [ebx + 0x80], eax
call fcn.1007a4b1
mov ecx, dword [ebp - 0xc]
add esp, 0x18
mov dword [eax], vtable.IMySteamNetworkingUtils.2.0
mov dword [eax + 4], vtable.IMySteamNetworkingUtils.1.0
mov dword [eax + 8], vtable.IMySteamNetworkingUtils.0
mov dword [eax + 0xc], vtable.IMySteamNetworkingUtils.3.0
pop edi
mov dword [ebx + 0x84], eax
mov eax, ebx
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret