Function at 0x10043eba
Capabilities:
Access peb ldr_data

Disassembly:
mov eax, 0x1008a20d
call fcn.1008863c
sub esp, 0x38
push ebx
push esi
push edi
push 0x104
mov ebx, ecx
mov edi, 0x1018b740
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 [str.SteamData]
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 [0x1009ad76]
add ax, cx
mov word [ebp - 0x2c], ax
mov ax, word [0x1009ad78]
add ax, cx
mov word [ebp - 0x2a], ax
mov ax, word [0x1009ad7a]
add ax, cx
mov word [ebp - 0x28], ax
mov ax, word [0x1009ad7c]
add ax, cx
mov word [ebp - 0x26], ax
mov ax, word [0x1009ad7e]
add ax, cx
mov word [ebp - 0x24], ax
mov ax, word [str.Direct3DCreate9]
add ax, cx
mov word [ebp - 0x22], ax
mov ax, word [0x1009ad82]
add ax, cx
mov word [ebp - 0x20], ax
mov ax, word [0x1009ad84]
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 0x10043fb4
lea edx, [ebp - 0x42]
xor ecx, ecx
mov esi, edx
mov ax, word [edx]
add edx, 2
cmp ax, cx
jne 0x10043fc6
sub edx, esi
sub edi, 2
mov ax, word [edi + 2]
add edi, 2
cmp ax, cx
jne 0x10043fd6
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, 0x1018b638
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], 0x60
mov byte [ebp - 0x19], 0x81
mov byte [ebp - 0x18], 0x72
push 0x6e
pop eax
mov byte [ebp - 0x17], al
mov byte [ebp - 0x16], 0x7a
mov byte [ebp - 0x15], 0x51
mov byte [ebp - 0x14], al
mov byte [ebp - 0x13], 0x81
mov byte [ebp - 0x12], al
mov byte [ebp - 0x11], cl
mov al, byte [ebp - 0x1a]
mov eax, ecx
sub byte [ebp + eax - 0x1a], 0xd
inc eax
cmp eax, 9
jb 0x10044040
lea edx, [ebp - 0x1a]
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x10044050
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x1004405a
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.10078fef
push 0x20
mov dword [eax], vtable.IMySteamAppList.0
mov dword [ebx + 4], eax
call fcn.10078fef
push 0x34
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.10078fef
push 0x1c
mov dword [eax], vtable.IMySteamClient.4.0
mov dword [eax + 4], vtable.IMySteamClient.1.0
mov dword [eax + 8], vtable.IMySteamClient.12.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 [ebx + 0xc], eax
call fcn.10078fef
mov dword [ebp - 0x10], eax
xor esi, esi
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
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 [eax + 0x18], esi
mov dword [ebx + 0x10], eax
call fcn.10078fef
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.10078fef
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.10078fef
push 0x10
mov dword [eax], vtable.IMySteamGameServerStats.0
mov dword [ebx + 0x1c], eax
call fcn.10078fef
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.10078fef
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.10078fef
add esp, 0x28
mov dword [ebp - 0x10], eax
mov ecx, eax
mov dword [ebp - 4], esi
call fcn.1003baee
or dword [ebp - 4], 0xffffffff
push 4
mov dword [ebx + 0x28], eax
call fcn.10078fef
push 0x38
pop edi
push edi
mov dword [eax], vtable.IMySteamMasterServerUpdater.0
mov dword [ebx + 0x2c], eax
call fcn.10078fef
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.100445ca
or esi, 0xffffffff
mov dword [ebp - 4], esi
push 8
mov dword [ebx + 0x30], eax
call fcn.10078fef
push 4
mov dword [eax], vtable.IMySteamMatchmakingServers.1.0
mov dword [eax + 4], vtable.IMySteamMatchmakingServers.0
mov dword [ebx + 0x34], eax
call fcn.10078fef
push 4
mov dword [eax], vtable.IMySteamMusic.0
mov dword [ebx + 0x38], eax
call fcn.10078fef
push edi
mov dword [eax], vtable.IMySteamMusicRemote.0
mov dword [ebx + 0x3c], eax
call fcn.10078fef
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ecx, eax
mov dword [ebp - 4], 2
call fcn.10043915
mov dword [ebp - 4], esi
push 0x88
mov dword [ebx + 0x40], eax
call fcn.10078fef
pop ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 4], 3
mov ecx, eax
call fcn.1003e712
mov dword [ebp - 4], esi
push 0xc
mov dword [ebx + 0x44], eax
call fcn.10078fef
push 0x50
mov dword [eax], vtable.IMySteamScreenshots.1.0
mov dword [eax + 4], vtable.IMySteamScreenshots.2.0
mov dword [eax + 8], vtable.IMySteamScreenshots.0
mov dword [ebx + 0x48], eax
call fcn.10078fef
pop ecx
pop ecx
mov dword [ebp - 0x10], eax
mov ecx, eax
mov dword [ebp - 4], 4
call fcn.10040369
mov dword [ebp - 4], esi
push 4
mov dword [ebx + 0x4c], eax
call fcn.10078fef
push edi
mov dword [eax], vtable.IMySteamUnifiedMessages.0
mov dword [ebx + 0x50], eax
call fcn.10078fef
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.10078fef
add esp, 0xc
mov dword [ebp - 0x10], eax
mov ecx, eax
mov dword [ebp - 4], 5
call fcn.10041957
mov dword [ebp - 4], esi
push 0x20
mov dword [ebx + 0x58], eax
call fcn.10078fef
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.10078fef
push 4
pop edi
push edi
mov dword [eax], vtable.IMySteamVideo.0
mov dword [eax + 4], vtable.IMySteamVideo.1.0
mov dword [ebx + 0x60], eax
call fcn.10078fef
push edi
mov dword [eax], vtable.IMySteamParentalSettings.0
mov dword [ebx + 0x64], eax
call fcn.10078fef
push 0x60
mov dword [eax], vtable.IMySteamAppTicket.0
mov dword [ebx + 0x68], eax
call fcn.10078fef
mov esi, eax
push 0x50
xor eax, eax
lea ecx, [esi + 0x10]
push eax
push ecx
call sub.msvcrt.dll_memset
mov dword [esi], vtable.IMySteamInput.0
mov dword [esi + 4], vtable.IMySteamInput.2.0
mov dword [esi + 8], vtable.IMySteamInput.3.0
mov dword [esi + 0xc], vtable.IMySteamInput.1.0
push edi
mov dword [ebx + 0x6c], esi
call fcn.10078fef
push edi
mov dword [eax], vtable.IMySteamGameSearch.0
mov dword [ebx + 0x70], eax
call fcn.10078fef
push 8
mov dword [eax], vtable.IMySteamParties.0
mov dword [ebx + 0x74], eax
call fcn.10078fef
push edi
mov dword [eax], vtable.IMySteamRemotePlay.0
mov dword [eax + 4], vtable.IMySteamRemotePlay.1.0
mov dword [ebx + 0x78], eax
call fcn.10078fef
push 0x1c
mov dword [eax], vtable.IMySteamNetworkingMessages.0
mov dword [ebx + 0x7c], eax
call fcn.10078fef
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.10078fef
mov ecx, dword [ebp - 0xc]
add esp, 0x38
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