Function at 0x40dc10
Capabilities:
Create process on windows
Create process suspended
Resume thread
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x8558
call fcn.00413110
mov eax, dword [0x43f100]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
cmp dword [0x4502a0], 7
mov dword [ebp - 0x84e4], eax
mov eax, 0x45028c
cmova eax, dword [0x45028c]
push esi
push eax
call fcn.00411170
push 0x450274
call fcn.00410a90
add esp, 8
test al, al
jne 0x40dcf0
mov ecx, dword [0x45029c]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x26
jb 0x40fc2c
cmp dword [0x4502a0], 7
mov eax, 0x45028c
push ecx
cmova eax, dword [0x45028c]
lea ecx, [ebp - 0x8280]
push eax
push 0x26
push str.Couldnt_find_the_configuration_file:
push 0x45028c
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x8280]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8280]
call fcn.00404be0
push 0x10
push 0x432fb0
push str.Couldnt_find_the_configuration_file_ColdClientLoader.ini.
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
call fcn.00406ba0
mov eax, 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00412f32
mov esp, ebp
pop ebp
ret 0x10
lea eax, [ebp - 0x8340]
push eax
call fcn.0040fcd0
push 0
push str.SteamClientDll
mov esi, eax
lea eax, [ebp - 0x8328]
push str.SteamClient
push eax
call fcn.0040a2f0
push esi
push eax
lea eax, [ebp - 0x8310]
push eax
call fcn.00410ca0
mov esi, eax
add esp, 0x20
cmp esi, 0x43f010
je 0x40dd65
mov ecx, 0x43f010
call fcn.00404be0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [0x43f010], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x43f020], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x8310]
call fcn.00404be0
lea ecx, [ebp - 0x8328]
call fcn.00404be0
lea ecx, [ebp - 0x8340]
call fcn.00404be0
lea eax, [ebp - 0x8388]
push eax
call fcn.0040fcd0
push 0
push str.SteamClient64Dll
mov esi, eax
lea eax, [ebp - 0x8370]
push str.SteamClient
push eax
call fcn.0040a2f0
push esi
push eax
lea eax, [ebp - 0x8358]
push eax
call fcn.00410ca0
mov esi, eax
add esp, 0x20
cmp esi, 0x43f028
je 0x40ddfb
mov ecx, 0x43f028
call fcn.00404be0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [0x43f028], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x43f038], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
push ebx
push edi
lea ecx, [ebp - 0x8358]
call fcn.00404be0
lea ecx, [ebp - 0x8370]
call fcn.00404be0
lea ecx, [ebp - 0x8388]
call fcn.00404be0
lea eax, [ebp - 0x83b8]
push eax
call fcn.0040fcd0
push 0
push 0x43303c
mov esi, eax
lea eax, [ebp - 0x83a0]
push str.SteamClient
push eax
call fcn.0040a2f0
push esi
push eax
lea eax, [ebp - 0x80d8]
push eax
call fcn.00410ca0
add esp, 0x20
lea ecx, [ebp - 0x83a0]
call fcn.00404be0
lea ecx, [ebp - 0x83b8]
call fcn.00404be0
lea eax, [ebp - 0x84c0]
push eax
call fcn.0040fcd0
push 0
push str.ExeRunDir
mov esi, eax
lea eax, [ebp - 0x83d0]
push str.SteamClient
push eax
call fcn.0040a2f0
push esi
push eax
lea eax, [ebp - 0x8120]
push eax
call fcn.00410ca0
add esp, 0x20
lea ecx, [ebp - 0x83d0]
call fcn.00404be0
lea ecx, [ebp - 0x84c0]
call fcn.00404be0
push 0
push str.ExeCommandLine
lea eax, [ebp - 0x8180]
push str.SteamClient
push eax
call fcn.0040a2f0
push 0
push str.AppId
lea eax, [ebp - 0x8060]
push str.SteamClient
push eax
call fcn.0040a2f0
push 0
push str.ForceInjectSteamClient
lea eax, [ebp - 0x81f0]
push str.Injection
push eax
call fcn.0040a2f0
lea eax, [ebp - 0x8400]
push eax
call fcn.0040fcd0
push 0
push str.DllsToInjectFolder
mov esi, eax
lea eax, [ebp - 0x83e8]
push str.Injection
push eax
call fcn.0040a2f0
add esp, 0x44
push esi
push eax
lea eax, [ebp - 0x8168]
push eax
call fcn.00410ca0
add esp, 0xc
lea ecx, [ebp - 0x83e8]
call fcn.00404be0
lea ecx, [ebp - 0x8400]
call fcn.00404be0
push 0x4329a8
push str.IgnoreInjectionError
lea eax, [ebp - 0x81d8]
push str.Injection
push eax
call fcn.0040a2f0
push 0x43311c
push 0x433120
lea eax, [ebp - 0x81c0]
push str.Injection
push eax
call fcn.0040a2f0
push 0x43311c
push str.Mode
lea eax, [ebp - 0x8078]
push str.Persistence
push eax
call fcn.0040a2f0
push 0
push str.ResumeByDebugger
lea eax, [ebp - 0x81a8]
push str.Debug
push eax
call fcn.0040a2f0
add esp, 0x40
lea eax, [ebp - 0x81f0]
push eax
call fcn.0040c970
lea eax, [ebp - 0x81d8]
push eax
call fcn.0040c970
lea eax, [ebp - 0x81c0]
push eax
call fcn.0040c970
lea eax, [ebp - 0x81a8]
push eax
call fcn.0040c970
mov edi, dword [ebp - 0x8064]
lea eax, [ebp - 0x8078]
mov ebx, dword [ebp - 0x8078]
add esp, 0x10
mov esi, dword [ebp - 0x8068]
cmp edi, 7
cmova eax, ebx
cmp esi, 1
jne 0x40e025
push esi
push 0x43311c
push eax
call fcn.00409580
add esp, 0xc
test eax, eax
je 0x40e079
lea eax, [ebp - 0x8078]
push 0x4329a8
push eax
call fcn.00401590
add esp, 8
test al, al
je 0x40e079
lea eax, [ebp - 0x8078]
push 0x4331ac
push eax
call fcn.00401590
add esp, 8
test al, al
je 0x40e079
push 1
push 0x43311c
lea ecx, [ebp - 0x8078]
call fcn.00407a40
mov edi, dword [ebp - 0x8064]
mov esi, dword [ebp - 0x8068]
mov ebx, dword [ebp - 0x8078]
mov ecx, dword [ebp - 0x80c8]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x12
jb 0x40fc31
cmp dword [ebp - 0x80c4], 7
lea eax, [ebp - 0x80d8]
push ecx
cmova eax, dword [ebp - 0x80d8]
lea ecx, [ebp - 0x8138]
push eax
push 0x12
push 0x4331b0
lea eax, [ebp - 0x80d8]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x8138]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8138]
call fcn.00404be0
mov ecx, dword [ebp - 0x8110]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x18
jb 0x40fc36
cmp dword [ebp - 0x810c], 7
lea eax, [ebp - 0x8120]
push ecx
cmova eax, dword [ebp - 0x8120]
lea ecx, [ebp - 0x8108]
push eax
push 0x18
push str.SteamClient::ExeRunDir:
lea eax, [ebp - 0x8120]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x8108]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8108]
call fcn.00404be0
mov ecx, dword [ebp - 0x8170]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x1d
jb 0x40fc3b
cmp dword [ebp - 0x816c], 7
lea eax, [ebp - 0x8180]
push ecx
cmova eax, dword [ebp - 0x8180]
lea ecx, [ebp - 0x8268]
push eax
push 0x1d
push str.SteamClient::ExeCommandLine:
lea eax, [ebp - 0x8180]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x8268]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8268]
call fcn.00404be0
mov ecx, dword [ebp - 0x8050]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x14
jb 0x40fc40
cmp dword [ebp - 0x804c], 7
lea eax, [ebp - 0x8060]
push ecx
cmova eax, dword [ebp - 0x8060]
lea ecx, [ebp - 0x8250]
push eax
push 0x14
push str.SteamClient::AppId:
lea eax, [ebp - 0x8060]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x8250]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8250]
call fcn.00404be0
mov ecx, dword [0x43f020]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x1a
jb 0x40fc45
cmp dword [0x43f024], 7
mov eax, 0x43f010
push ecx
cmova eax, dword [0x43f010]
lea ecx, [ebp - 0x8238]
push eax
push 0x1a
push str.SteamClient::SteamClient:
push 0x43f010
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x8238]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8238]
call fcn.00404be0
mov ecx, dword [0x43f038]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x1f
jb 0x40fc4a
cmp dword [0x43f03c], 7
mov eax, 0x43f028
push ecx
cmova eax, dword [0x43f028]
lea ecx, [ebp - 0x8220]
push eax
push 0x1f
push str.SteamClient::SteamClient64Dll:
push 0x43f028
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x8220]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8220]
call fcn.00404be0
mov eax, 0x7ffffffe
sub eax, esi
cmp eax, 0x1d
jb 0x40fc4f
push esi
cmp edi, 7
lea eax, [ebp - 0x8078]
lea ecx, [ebp - 0x8208]
cmova eax, ebx
push eax
push 0x1d
push str.SteamClient::PersistentMode:
lea eax, [ebp - 0x8078]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x8208]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8208]
call fcn.00404be0
mov ecx, dword [ebp - 0x81e0]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x25
jb 0x40fc54
cmp dword [ebp - 0x81dc], 7
lea eax, [ebp - 0x81f0]
push ecx
cmova eax, dword [ebp - 0x81f0]
lea ecx, [ebp - 0x80f0]
push eax
push 0x25
push str.SteamClient::ForceInjectSteamClient:
lea eax, [ebp - 0x81f0]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x80f0]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x80f0]
call fcn.00404be0
mov ecx, dword [ebp - 0x8158]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x1f
jb 0x40fc59
cmp dword [ebp - 0x8154], 7
lea eax, [ebp - 0x8168]
push ecx
cmova eax, dword [ebp - 0x8168]
lea ecx, [ebp - 0x8150]
push eax
push 0x1f
push str.Injection::DllsToInjectFolder:
lea eax, [ebp - 0x8168]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x8150]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8150]
call fcn.00404be0
mov ecx, dword [ebp - 0x81c8]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x21
jb 0x40fc5e
cmp dword [ebp - 0x81c4], 7
lea eax, [ebp - 0x81d8]
push ecx
cmova eax, dword [ebp - 0x81d8]
lea ecx, [ebp - 0x82f8]
push eax
push 0x21
push str.Injection::IgnoreInjectionError:
lea eax, [ebp - 0x81d8]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x82f8]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x82f8]
call fcn.00404be0
mov ecx, dword [ebp - 0x81b0]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x27
jb 0x40fc63
cmp dword [ebp - 0x81ac], 7
lea eax, [ebp - 0x81c0]
push ecx
cmova eax, dword [ebp - 0x81c0]
lea ecx, [ebp - 0x82e0]
push eax
push 0x27
push str.Injection::IgnoreLoaderArchDifference:
lea eax, [ebp - 0x81c0]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x82e0]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x82e0]
call fcn.00404be0
mov ecx, dword [ebp - 0x8198]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x19
jb 0x40fc68
cmp dword [ebp - 0x8194], 7
lea eax, [ebp - 0x81a8]
push ecx
cmova eax, dword [ebp - 0x81a8]
lea ecx, [ebp - 0x82c8]
push eax
push 0x19
push str.Debug::ResumeByDebugger:
lea eax, [ebp - 0x81a8]
push eax
push dword [ebp - 0x84dc]
call fcn.00403e00
lea eax, [ebp - 0x82c8]
push eax
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x82c8]
call fcn.00404be0
push 0x43f028
call fcn.00410a90
add esp, 4
test al, al
jne 0x40e550
push str.Couldnt_find_the_requested_SteamClient64Dll
call fcn.00406ba0
add esp, 4
push 0x10
push 0x432fb0
push str.Couldnt_find_the_requested_SteamClient64Dll.
jmp 0x40e763
push 0x43f010
call fcn.00410a90
add esp, 4
test al, al
jne 0x40e57f
push str.Couldnt_find_the_requested_SteamClientDll
call fcn.00406ba0
add esp, 4
push 0x10
push 0x432fb0
push str.Couldnt_find_the_requested_SteamClientDll.
jmp 0x40e763
lea eax, [ebp - 0x80d8]
push eax
call fcn.00410a90
add esp, 4
test al, al
jne 0x40e5b0
push str.Couldnt_find_the_requested_Exe_file
call fcn.00406ba0
add esp, 4
push 0x10
push 0x432fb0
push str.Couldnt_find_the_requested_Exe_file.
jmp 0x40e763
cmp dword [ebp - 0x8110], 0
jne 0x40e737
push 0
lea eax, [ebp - 0x80d8]
push eax
lea ecx, [ebp - 0x8418]
call fcn.00401500
mov edi, eax
cmp dword [eax + 0x14], 7
jbe 0x40e5db
mov edi, dword [eax]
mov eax, dword [eax + 0x10]
lea esi, [edi + eax*2]
push esi
push edi
call fcn.004061b0
add esp, 8
cmp eax, esi
je 0x40e645
nop
movzx ecx, word [eax]
cmp ecx, 0x5c
je 0x40e5fd
cmp ecx, 0x2f
jne 0x40e604
add eax, 2
cmp eax, esi
jne 0x40e5f0
cmp eax, esi
je 0x40e645
nop dword [eax + eax]
movzx edx, word [esi - 2]
cmp edx, 0x5c
je 0x40e627
cmp edx, 0x2f
je 0x40e627
add esi, 0xfffffffe
cmp eax, esi
jne 0x40e610
jmp 0x40e645
cmp eax, esi
je 0x40e645
nop dword [eax + eax]
movzx edx, word [esi - 2]
cmp edx, 0x5c
je 0x40e63e
cmp edx, 0x2f
jne 0x40e645
add esi, 0xfffffffe
cmp eax, esi
jne 0x40e630
sub esi, edi
mov dword [ebp - 0x8098], 0
sar esi, 1
lea ecx, [ebp - 0x80a8]
push esi
xorps xmm0, xmm0
mov dword [ebp - 0x8094], 0
push edi
movups xmmword [ebp - 0x80a8], xmm0
call fcn.00401a30
lea eax, [ebp - 0x80a8]
push eax
lea ecx, [ebp - 0x82b0]
call fcn.00403aa0
lea eax, [ebp - 0x82b0]
push eax
lea ecx, [ebp - 0x8120]
call fcn.004051d0
lea ecx, [ebp - 0x82b0]
call fcn.00404be0
mov ecx, dword [ebp - 0x8094]
cmp ecx, 7
jbe 0x40e6e3
mov edx, dword [ebp - 0x80a8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e6d9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
xor eax, eax
mov dword [ebp - 0x8098], 0
lea ecx, [ebp - 0x8418]
mov dword [ebp - 0x8094], 7
mov word [ebp - 0x80a8], ax
call fcn.00404be0
lea eax, [ebp - 0x8120]
push eax
lea eax, [ebp - 0x8430]
push str.Setting_ExeRunDir_to:
push eax
call fcn.004017a0
push eax
call fcn.00406ba0
add esp, 0x10
lea ecx, [ebp - 0x8430]
call fcn.00404be0
lea eax, [ebp - 0x8120]
push eax
call fcn.00410930
add esp, 4
test al, al
jne 0x40e77a
push str.Couldnt_find_the_requested_Exe_run_dir
call fcn.00406ba0
add esp, 4
push 0x10
push 0x432fb0
push str.Couldnt_find_the_requested_Exe_run_dir.
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
call fcn.00406ba0
mov esi, 1
jmp 0x40fba9
mov edi, dword [sym.imp.USER32.dll_MessageBoxA]
xor bh, bh
cmp dword [ebp - 0x8158], 0
je 0x40e7bd
lea eax, [ebp - 0x8168]
push eax
call fcn.00410930
mov bh, al
add esp, 4
test bh, bh
jne 0x40e7bd
push str.Couldnt_find_the_requested_folder_of_dlls_to_inject
call fcn.00406ba0
add esp, 4
push 0x10
push 0x432fb0
push str.Couldnt_find_the_requested_folder_of_dlls_to_inject.
push 0
call edi
lea eax, [ebp - 0x80d8]
push eax
lea eax, [ebp - 0x8514]
push eax
call fcn.0040a4e0
mov esi, dword [ebp - 0x8514]
add esp, 8
cmp esi, dword [ebp - 0x8510]
jne 0x40e80d
push str.Couldnt_read_the_exe_header
call fcn.00406ba0
add esp, 4
push 0x10
push 0x432fb0
push str.Couldnt_read_the_exe_header.
push 0
call edi
call fcn.00406ba0
mov esi, 1
jmp 0x40fb9e
push esi
call fcn.00410350
mov bl, al
push esi
mov byte [ebp - 0x84e8], bl
call fcn.00410390
add esp, 8
test bl, bl
jne 0x40e9d7
test al, al
je 0x40e9df
mov ecx, str.Detected_exe_arch:_x32
test bl, bl
mov eax, str.Detected_exe_arch:_x64
cmovne eax, ecx
push eax
call fcn.00406ba0
cmp byte [0x4502b0], 0
mov ecx, str.Detected_loader_arch:_x64
mov eax, str.Detected_loader_arch:_x32
cmove eax, ecx
push eax
call fcn.00406ba0
add esp, 8
cmp byte [0x4502b0], bl
je 0x40e894
push str.Arch_of_loader_and_requested_exe_are_different__it_is_advised_to_use_the_appropriate_one
call fcn.00406ba0
add esp, 4
cmp dword [ebp - 0x81b0], 0
jne 0x40e894
push 0
push 0x432fb0
push str.Arch_of_loader_and_requested_exe_are_different__nit_is_advised_to_use_the_appropriate_one.
push 0
call edi
mov eax, dword [ebp - 0x81c8]
mov dword [ebp - 0x84f4], eax
test bh, bh
je 0x40ea68
xor eax, eax
mov dword [ebp - 0x8038], 0
xorps xmm0, xmm0
mov dword [ebp - 0x8034], 7
movups xmmword [ebp - 0x8048], xmm0
mov word [ebp - 0x8048], ax
lea eax, [ebp - 0x8048]
push eax
push dword [ebp - 0x84e8]
lea eax, [ebp - 0x8168]
push eax
lea eax, [ebp - 0x818c]
push eax
call fcn.00408310
mov esi, eax
add esp, 0x10
cmp esi, 0x4502a4
je 0x40e933
mov ecx, 0x4502a4
call fcn.004075c0
mov ecx, dword [esi]
mov dword [0x4502a4], ecx
mov ecx, dword [esi + 4]
mov dword [0x4502a8], ecx
mov eax, dword [esi + 8]
mov dword [0x4502ac], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
lea ecx, [ebp - 0x818c]
call fcn.004075c0
cmp dword [ebp - 0x8038], 0
je 0x40ea0b
cmp dword [ebp - 0x84f4], 0
jne 0x40ea0b
push str._nContinue__
lea eax, [ebp - 0x8048]
push eax
lea eax, [ebp - 0x8460]
push str.The_following_dlls_cannot_be_injected:_n
push eax
call fcn.004017a0
add esp, 0xc
push eax
lea eax, [ebp - 0x8448]
push eax
call fcn.004016c0
add esp, 0xc
cmp dword [eax + 0x14], 7
jbe 0x40e990
mov eax, dword [eax]
push 4
push str.ColdClientLoader
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x8448]
mov esi, eax
call fcn.00404be0
lea ecx, [ebp - 0x8460]
call fcn.00404be0
cmp esi, 6
je 0x40ea0b
call fcn.00406ba0
lea ecx, [ebp - 0x8048]
call fcn.00404be0
mov esi, 1
jmp 0x40fb9e
test al, al
je 0x40e834
push str.The_requested_exe_is_invalid__neither_32_nor_64_bit_
call fcn.00406ba0
add esp, 4
push 0x10
push 0x432fb0
push str.The_requested_exe_is_invalid__neither_32_nor_64_bit_
push 0
call edi
call fcn.00406ba0
mov esi, 1
jmp 0x40fb9e
mov ecx, dword [ebp - 0x8034]
cmp ecx, 7
jbe 0x40ea4b
mov edx, dword [ebp - 0x8048]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ea41
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc72
push ecx
push edx
call fcn.00412cce
add esp, 8
xor eax, eax
mov dword [ebp - 0x8038], 0
mov dword [ebp - 0x8034], 7
mov word [ebp - 0x8048], ax
cmp dword [ebp - 0x81e0], 0
je 0x40ea98
lea eax, [ebp - 0x84dc]
mov ecx, 0x4502a4
test bl, bl
je 0x40ea87
push 0x43f010
jmp 0x40ea8c
push 0x43f028
push dword [0x4502a4]
push eax
call fcn.0040aac0
lea eax, [ebp - 0x8078]
push 0x4331ac
push eax
call fcn.00401590
add esp, 8
test al, al
je 0x40eb14
cmp dword [ebp - 0x8050], 0
je 0x40eaed
cmp dword [ebp - 0x804c], 7
lea eax, [ebp - 0x8060]
cmova eax, dword [ebp - 0x8060]
cmp word [eax], 0
je 0x40eaed
lea eax, [ebp - 0x8060]
push eax
call fcn.0040c6b0
mov ebx, dword [ebp - 0x84e4]
add esp, 4
jmp 0x40ed49
push str.You_forgot_to_set_the_AppId
call fcn.00406ba0
add esp, 4
push 0x10
push 0x432fb0
push str.You_forgot_to_set_the_AppId.
push 0
call edi
mov esi, 1
jmp 0x40fb9e
lea ecx, [ebp - 0x8060]
call fcn.00408070
mov ebx, dword [ebp - 0x84e4]
test ebx, ebx
je 0x40eb57
cmp word [ebx], 0
je 0x40eb57
push ebx
lea ecx, [ebp - 0x84d8]
call fcn.00403ba0
push eax
lea ecx, [ebp - 0x8090]
call fcn.00403a50
lea ecx, [ebp - 0x84d8]
call fcn.00404be0
jmp 0x40ebed
xorps xmm0, xmm0
mov dword [ebp - 0x80b0], 0
xor eax, eax
mov dword [ebp - 0x80ac], 7
movups xmmword [ebp - 0x80c0], xmm0
mov word [ebp - 0x80c0], ax
lea ecx, [ebp - 0x8090]
lea eax, [ebp - 0x80c0]
push eax
call fcn.00403a50
mov ecx, dword [ebp - 0x80ac]
cmp ecx, 7
jbe 0x40ebd0
mov edx, dword [ebp - 0x80c0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ebc6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc77
push ecx
push edx
call fcn.00412cce
add esp, 8
xor eax, eax
mov dword [ebp - 0x80b0], 0
mov dword [ebp - 0x80ac], 7
mov word [ebp - 0x80c0], ax
push 0x4338ec
lea eax, [ebp - 0x8090]
push eax
lea eax, [ebp - 0x8490]
push 0x4338f0
push eax
call fcn.004017a0
add esp, 0xc
push eax
lea eax, [ebp - 0x8478]
push eax
call fcn.004016c0
push eax
call fcn.00406ba0
add esp, 0x10
lea ecx, [ebp - 0x8478]
call fcn.00404be0
lea ecx, [ebp - 0x8490]
call fcn.00404be0
push 0
push str.steam:__run_
lea ecx, [ebp - 0x8090]
call fcn.00409ee0
lea ecx, [ebp - 0x8090]
push 0
test eax, eax
jne 0x40ec94
push 0x43395c
call fcn.00409fc0
push eax
push 0xd
lea eax, [ebp - 0x84a8]
push eax
lea ecx, [ebp - 0x8090]
call fcn.0040c890
push eax
lea ecx, [ebp - 0x8060]
call fcn.004051d0
lea ecx, [ebp - 0x84a8]
call fcn.00404be0
mov eax, str.persistent_mode_2_got_steam_launch_cmd_1
jmp 0x40eceb
push str.____steam:__rungameid_
call fcn.00409ee0
test eax, eax
jne 0x40ece6
push eax
push 0x43395c
lea ecx, [ebp - 0x8090]
call fcn.00409fc0
push eax
push 0x17
lea eax, [ebp - 0x8298]
push eax
lea ecx, [ebp - 0x8090]
call fcn.0040c890
push eax
lea ecx, [ebp - 0x8060]
call fcn.004051d0
lea ecx, [ebp - 0x8298]
call fcn.00404be0
mov eax, str.persistent_mode_2_got_steam_launch_cmd_2
jmp 0x40eceb
mov eax, str.persistent_mode_2_didnt_detect_a_valid_steam_launch_cmd
push eax
call fcn.00406ba0
add esp, 4
cmp dword [ebp - 0x8050], 0
je 0x40ed31
lea eax, [ebp - 0x8060]
push eax
call fcn.0040c6b0
lea eax, [ebp - 0x8060]
push eax
lea eax, [ebp - 0x20]
push str.persistent_mode_2_will_use_app_id_
push eax
call fcn.004017a0
push eax
call fcn.00406ba0
add esp, 0x14
lea ecx, [ebp - 0x20]
call fcn.00404be0
jmp 0x40ed3e
push str.persistent_mode_2_didnt_find_app_id
call fcn.00406ba0
add esp, 4
lea ecx, [ebp - 0x8090]
call fcn.00404be0
call fcn.0040b6f0
test al, al
jne 0x40ed71
call fcn.00406ba0
push 0x10
push 0x432fb0
push str.Unable_to_patch_Registry__HKCU_.
push 0
call edi
mov esi, 1
jmp 0x40fb9e
call fcn.0040b970
test al, al
jne 0x40ed9e
call fcn.00407d40
call fcn.00406ba0
push 0x10
push 0x432fb0
push str.Unable_to_patch_Registry__HKLM_.
push 0
call edi
mov esi, 1
jmp 0x40fb9e
call fcn.0040b2e0
lea eax, [ebp - 0x8078]
push 0x4331ac
push eax
call fcn.00401590
add esp, 8
test al, al
jne 0x40edc8
cmp dword [ebp - 0x8050], 0
je 0x40fb10
push 0x44
lea eax, [ebp - 0x8558]
push 0
push eax
call fcn.00414a30
add esp, 0xc
lea eax, [ebp - 0x8558]
mov ecx, 0x44
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x40ede6
xorps xmm0, xmm0
mov dword [ebp - 0x8558], 0x44
movups xmmword [ebp - 0x8504], xmm0
mov ecx, 0x10
lea eax, [ebp - 0x8504]
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x40ee10
push str.spawning_the_requested_EXE_file
call fcn.00406ba0
push 0x8000
lea eax, [ebp - 0x8030]
push 0
push eax
call fcn.00414a30
cmp dword [ebp - 0x816c], 7
lea ecx, [ebp - 0x8180]
push ebx
cmova ecx, dword [ebp - 0x8180]
lea eax, [ebp - 0x80d8]
cmp dword [ebp - 0x80c4], 7
push ecx
cmova eax, dword [ebp - 0x80d8]
push eax
push str.__ls___ls__ls
lea eax, [ebp - 0x8030]
push 0x4000
push eax
call fcn.0040dbd0
add esp, 0x28
lea edx, [ebp - 0x8504]
cmp dword [ebp - 0x810c], 7
lea eax, [ebp - 0x8120]
lea ecx, [ebp - 0x80d8]
cmova eax, dword [ebp - 0x8120]
cmp dword [ebp - 0x80c4], 7
push edx
cmova ecx, dword [ebp - 0x80d8]
lea edx, [ebp - 0x8558]
push edx
push eax
push 0
push 4
push 1
push 0
push 0
lea eax, [ebp - 0x8030]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x40ef0a
push str.Unable_to_load_the_requested_EXE_file
call fcn.00406ba0
add esp, 4
call fcn.00407d40
call fcn.00407ee0
call fcn.00407b90
call fcn.00406ba0
push 0x10
push 0x432fb0
push str.Unable_to_load_the_requested_EXE_file.
push 0
call edi
mov esi, 1
jmp 0x40fb9e
mov ecx, dword [0x4502a8]
mov eax, 0x2aaaaaab
sub ecx, dword [0x4502a4]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
lea eax, [ebp - 0x8033]
push eax
call fcn.004027e0
add esp, 8
lea ecx, [ebp - 0x84e9]
push ecx
lea ecx, [ebp - 0x8033]
push ecx
push eax
lea ecx, [ebp - 0x82b0]
call fcn.00401320
push str._dlls
lea eax, [ebp - 0x82b0]
push eax
lea eax, [ebp - 0x8298]
push str.injecting
push eax
call fcn.00401650
add esp, 0xc
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.004015e0
push eax
call fcn.00406ba0
add esp, 0x10
lea ecx, [ebp - 0x20]
call fcn.00404b90
lea ecx, [ebp - 0x8298]
call fcn.00404b90
lea ecx, [ebp - 0x82b0]
call fcn.00404b90
mov eax, dword [0x4502a8]
mov edi, dword [0x4502a4]
mov dword [ebp - 0x84e8], eax
cmp edi, eax
je 0x40f76d
nop dword [eax + eax]
mov ecx, dword [edi + 0x10]
mov eax, 0x7ffffffe
sub eax, ecx
cmp eax, 0x10
jb 0x40fc2c
cmp dword [edi + 0x14], 7
mov eax, edi
jbe 0x40efdd
mov eax, dword [edi]
push ecx
push eax
push 0x10
push str.Injecting_dll:_
push edi
push dword [ebp - 0x84dc]
lea ecx, [ebp - 0x8138]
call fcn.00403e00
push str._...
lea eax, [ebp - 0x8138]
push eax
lea eax, [ebp - 0x80f0]
push eax
call fcn.004016c0
push eax
call fcn.00406ba0
mov ecx, dword [ebp - 0x80dc]
add esp, 0x10
cmp ecx, 7
jbe 0x40f059
mov edx, dword [ebp - 0x80f0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f04f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x8124]
xor eax, eax
mov dword [ebp - 0x80e0], 0
mov dword [ebp - 0x80dc], 7
mov word [ebp - 0x80f0], ax
cmp ecx, 7
jbe 0x40f0b6
mov edx, dword [ebp - 0x8138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f0ac
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
lea eax, [ebp - 0x84e4]
mov dword [ebp - 0x84e4], 0
push eax
push edi
push dword [ebp - 0x8504]
call fcn.004103d0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x40f751
lea eax, [ebp - 6]
push esi
push eax
call fcn.00402820
add esp, 8
lea ecx, [ebp - 0x84e9]
push ecx
lea ecx, [ebp - 6]
push ecx
push eax
lea ecx, [ebp - 0x8280]
call fcn.004013e0
lea eax, [ebp - 0x8108]
push esi
push eax
call fcn.004101a0
push eax
lea eax, [ebp - 0x8268]
push eax
call fcn.00410b80
mov edx, dword [ebp - 0x84e4]
xorps xmm0, xmm0
mov ecx, edx
mov dword [ebp - 0x8080], 0
add esp, 0x10
mov dword [ebp - 0x807c], 0
mov ebx, eax
movups xmmword [ebp - 0x8090], xmm0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40f150
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x8090]
call fcn.004019a0
lea eax, [ebp - 0x8090]
push eax
lea eax, [ebp - 0x8250]
push eax
call fcn.00410b80
add esp, 8
mov esi, eax
lea eax, [ebp - 0x8238]
push 0x4327dc
push edi
push str.Failed_to_inject_the_dll:
push eax
call fcn.004017a0
add esp, 0xc
push eax
lea eax, [ebp - 0x8220]
push eax
call fcn.004016c0
add esp, 0xc
lea ecx, [ebp - 0x8150]
push esi
push eax
push dword [ebp - 0x84dc]
call fcn.00403bf0
push 0x4327dc
lea eax, [ebp - 0x8150]
push eax
lea eax, [ebp - 0x8208]
push eax
call fcn.004016c0
add esp, 0xc
lea ecx, [ebp - 0x80a8]
push ebx
push eax
push dword [ebp - 0x84dc]
call fcn.00403bf0
push 1
push 0x4327dc
lea ecx, [ebp - 0x80a8]
call fcn.004079d0
mov dword [ebp - 0x8038], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x8048], xmm0
mov dword [ebp - 0x8034], 0
xor ecx, ecx
movups xmm0, xmmword [eax]
push 0xd
push str.Error_code_
movups xmmword [ebp - 0x8048], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x8038], xmm0
mov word [eax], cx
lea ecx, [ebp - 0x8048]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
call fcn.004079d0
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x8138], xmm0
movq xmm0, qword [eax + 0x10]
mov word [eax], cx
lea ecx, [ebp - 0x80c0]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
lea eax, [ebp - 0x8280]
push eax
lea eax, [ebp - 0x8138]
movq qword [ebp - 0x8128], xmm0
push eax
push dword [ebp - 0x84dc]
call fcn.00403bf0
push 0x4327dc
lea eax, [ebp - 0x80c0]
push eax
lea eax, [ebp - 0x80f0]
push eax
call fcn.004016c0
mov ecx, dword [ebp - 0x80ac]
add esp, 0xc
cmp ecx, 7
jbe 0x40f2f9
mov edx, dword [ebp - 0x80c0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f2ef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x8124]
xor eax, eax
mov dword [ebp - 0x80b0], 0
mov dword [ebp - 0x80ac], 7
mov word [ebp - 0x80c0], ax
cmp ecx, 7
jbe 0x40f356
mov edx, dword [ebp - 0x8138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f34c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x8034]
cmp ecx, 7
jbe 0x40f396
mov edx, dword [ebp - 0x8048]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f38c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x8094]
xor eax, eax
mov dword [ebp - 0x8038], 0
mov dword [ebp - 0x8034], 7
mov word [ebp - 0x8048], ax
cmp ecx, 7
jbe 0x40f3f3
mov edx, dword [ebp - 0x80a8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f3e9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x81f4]
xor eax, eax
mov dword [ebp - 0x8098], 0
mov dword [ebp - 0x8094], 7
mov word [ebp - 0x80a8], ax
cmp ecx, 7
jbe 0x40f450
mov edx, dword [ebp - 0x8208]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f446
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x813c]
xor eax, eax
mov dword [ebp - 0x81f8], 0
mov dword [ebp - 0x81f4], 7
mov word [ebp - 0x8208], ax
cmp ecx, 7
jbe 0x40f4ad
mov edx, dword [ebp - 0x8150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f4a3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x820c]
xor eax, eax
mov dword [ebp - 0x8140], 0
mov dword [ebp - 0x813c], 7
mov word [ebp - 0x8150], ax
cmp ecx, 7
jbe 0x40f50a
mov edx, dword [ebp - 0x8220]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f500
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x8224]
xor eax, eax
mov dword [ebp - 0x8210], 0
mov dword [ebp - 0x820c], 7
mov word [ebp - 0x8220], ax
cmp ecx, 7
jbe 0x40f567
mov edx, dword [ebp - 0x8238]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f55d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x823c]
xor eax, eax
mov dword [ebp - 0x8228], 0
mov dword [ebp - 0x8224], 7
mov word [ebp - 0x8238], ax
cmp ecx, 7
jbe 0x40f5c4
mov edx, dword [ebp - 0x8250]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f5ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x807c]
xor eax, eax
mov dword [ebp - 0x8240], 0
mov dword [ebp - 0x823c], 7
mov word [ebp - 0x8250], ax
cmp ecx, 0xf
jbe 0x40f61b
mov edx, dword [ebp - 0x8090]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f611
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x8254]
mov dword [ebp - 0x8080], 0
mov dword [ebp - 0x807c], 0xf
mov byte [ebp - 0x8090], 0
cmp ecx, 7
jbe 0x40f676
mov edx, dword [ebp - 0x8268]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f66c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x80f4]
xor eax, eax
mov dword [ebp - 0x8258], 0
mov dword [ebp - 0x8254], 7
mov word [ebp - 0x8268], ax
cmp ecx, 0xf
jbe 0x40f6cd
mov edx, dword [ebp - 0x8108]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f6c3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
mov ecx, dword [ebp - 0x826c]
mov dword [ebp - 0x80f8], 0
mov dword [ebp - 0x80f4], 0xf
mov byte [ebp - 0x8108], 0
cmp ecx, 7
jbe 0x40f728
mov edx, dword [ebp - 0x8280]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40f71e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40fc6d
push ecx
push edx
call fcn.00412cce
add esp, 8
lea eax, [ebp - 0x80f0]
push eax
call fcn.00406ba0
add esp, 4
cmp dword [ebp - 0x84f4], 0
je 0x40f7ed
lea ecx, [ebp - 0x80f0]
call fcn.00404be0
jmp 0x40f75e
push str.Injected_
call fcn.00406ba0
add esp, 4
add edi, 0x18
cmp edi, dword [ebp - 0x84e8]
jne 0x40efc0
cmp dword [ebp - 0x8198], 0
jne 0x40fa60
push str.resuming_the_main_thread_of_the_exe
call fcn.00406ba0
lea eax, [ebp - 0x8078]
push 0x4331ac
push eax
call fcn.00401540
add esp, 0xc
test al, al
je 0x40fa49
lea eax, [ebp - 0x84e0]
push eax
call fcn.0040aeb0
mov ecx, dword [ebp - 0x84dc]
add esp, 4
cmp ecx, 0x7ffffffe
jg 0x40f85e
mov eax, dword [ebp - 0x84e0]
jl 0x40f7d4
cmp eax, 0xd5fa0dff
jae 0x40f85e
add eax, 0x2a05f200
mov dword [ebp - 0x84f4], eax
adc ecx, 1
mov dword [ebp - 0x84e4], ecx
jmp 0x40f872
push 1
push dword [ebp - 0x8504]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push dword [ebp - 0x8504]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call esi
push dword [ebp - 0x8500]
call esi
call fcn.00407d40
call fcn.00407ee0
call fcn.00407b90
call fcn.00406ba0
cmp dword [ebp - 0x80dc], 7
lea eax, [ebp - 0x80f0]
push 0x10
cmova eax, dword [ebp - 0x80f0]
push str.ColdClientLoader
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x80f0]
call fcn.00404be0
mov esi, 1
jmp 0x40fb9e
mov dword [ebp - 0x84f4], 0xffffffff
mov dword [ebp - 0x84e4], 0x7fffffff
call fcn.004115b7
mov edi, eax
mov esi, edx
mov dword [ebp - 0x84dc], edi
mov dword [ebp - 0x8508], esi
call fcn.004115a0
mov ebx, eax
mov eax, edx
mov dword [ebp - 0x84e8], ebx
mov dword [ebp - 0x84f0], eax
cmp edi, 0x989680
jne 0x40f8c2
test esi, esi
jne 0x40f8c2
mov ecx, 0x64
mul ecx
mov ebx, eax
mov eax, dword [ebp - 0x84e8]
mul ecx
add ebx, edx
mov esi, eax
jmp 0x40f987
cmp edi, 0x16e3600
jne 0x40f92c
test esi, esi
jne 0x40f92c
push esi
push edi
push eax
push ebx
call fcn.00412f40
push 0
push 0x16e3600
mov esi, edx
mov edi, eax
push esi
push edi
call fcn.004130d0
sub ebx, eax
mov eax, dword [ebp - 0x84f0]
push 0
push 0x3b9aca00
sbb eax, edx
push eax
push ebx
call fcn.004130d0
push 0
push 0x16e3600
push edx
push eax
call fcn.00412f40
mov dword [ebp - 0x84f0], eax
mov ecx, 0x3b9aca00
mov eax, esi
mov ebx, edx
mov esi, dword [ebp - 0x84f0]
mul ecx
mov ecx, eax
mov eax, edi
jmp 0x40f97a
push ebx
push esi
push edi
push eax
push ebx
call fcn.00412ff0
mov esi, ebx
pop ebx
nop
push 0
push 0x3b9aca00
push esi
push ecx
mov ebx, eax
mov edi, edx
call fcn.004130d0
push dword [ebp - 0x8508]
push dword [ebp - 0x84dc]
push edx
push eax
call fcn.00412f40
mov esi, eax
mov dword [ebp - 0x84dc], edx
mov ecx, 0x3b9aca00
mov eax, edi
mul ecx
mov ecx, eax
mov eax, ebx
mov ebx, dword [ebp - 0x84dc]
mov edx, 0x3b9aca00
mul edx
add ecx, edx
add esi, eax
adc ebx, ecx
mov dword [ebp - 0x84f0], esi
cmp ebx, dword [ebp - 0x84e4]
jg 0x40fa49
jl 0x40f9a7
cmp esi, dword [ebp - 0x84f4]
jae 0x40fa49
call fcn.00411672
push 0
push 0x64
push edx
push eax
call fcn.004130d0
mov edi, dword [ebp - 0x84f4]
mov esi, eax
sub edi, dword [ebp - 0x84f0]
mov eax, dword [ebp - 0x84e4]
mov ecx, edi
sbb eax, ebx
mov dword [ebp - 0x84e8], edx
mov edx, eax
mov dword [ebp - 0x84dc], eax
call fcn.00413140
comisd xmm0, xmmword [0x433d60]
jbe 0x40f9ff
mov eax, dword [ebp - 0x84e8]
add esi, 0xad160000
adc eax, 0x311cd
jmp 0x40fa0d
mov eax, dword [ebp - 0x84dc]
add esi, edi
adc eax, dword [ebp - 0x84e8]
push 0
push 0x3b9aca00
push eax
push esi
call fcn.00412f40
mov dword [ebp - 0x8190], eax
imul eax, eax, 0x3b9aca00
mov dword [ebp - 0x818c], edx
sub esi, eax
lea eax, [ebp - 0x8190]
push eax
mov dword [ebp - 0x8188], esi
call fcn.00411699
add esp, 4
jmp 0x40f872
push dword [ebp - 0x8500]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
mov edi, dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40faec
push str._and_resume_its_main_thread
push dword [ebp - 0x84fc]
lea eax, [ebp - 0x8298]
push eax
call fcn.0040ca60
push eax
lea eax, [ebp - 0x20]
push str.Attach_a_debugger_now_to_PID
push eax
call fcn.00401650
add esp, 0x14
push eax
lea eax, [ebp - 0x8108]
push eax
call fcn.004015e0
add esp, 0xc
lea ecx, [ebp - 0x20]
call fcn.00404b90
lea ecx, [ebp - 0x8298]
call fcn.00404b90
lea eax, [ebp - 0x8108]
push eax
call fcn.00406ba0
mov edi, dword [sym.imp.USER32.dll_MessageBoxA]
lea eax, [ebp - 0x8108]
add esp, 4
cmp dword [ebp - 0x80f4], 0xf
cmova eax, dword [ebp - 0x8108]
push 0
push 0x432fb0
push eax
push 0
call edi
lea ecx, [ebp - 0x8108]
call fcn.00404b90
push 0xffffffffffffffff
push dword [ebp - 0x8500]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push dword [ebp - 0x8504]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
call esi
push dword [ebp - 0x8500]
call esi
lea eax, [ebp - 0x8078]
push 0x4329a8
push eax
call fcn.00401540
add esp, 8
test al, al
je 0x40fb36
push 0
push str.Cold_Client_Loader__waiting_
push str.Press_OK_when_you_have_finished_playing_to_close_the_loader
jmp 0x40fb63
lea eax, [ebp - 0x8078]
push 0x4331ac
push eax
call fcn.00401540
add esp, 8
test al, al
je 0x40fb67
cmp dword [ebp - 0x8050], 0
jne 0x40fb67
push 0
push str.Cold_Client_Loader__waiting_
push str.Start_the_game__then_press_OK_when_you_have_finished_playing_to_close_the_loader
push 0
call edi
lea eax, [ebp - 0x8078]
push 0x4331ac
push eax
call fcn.00401590
add esp, 8
test al, al
jne 0x40fb88
cmp dword [ebp - 0x8050], 0
jne 0x40fb97
call fcn.00407d40
call fcn.00407ee0
call fcn.00407b90
call fcn.00406ba0
xor esi, esi
lea ecx, [ebp - 0x8514]
call fcn.00404c80
lea ecx, [ebp - 0x81a8]
call fcn.00404be0
lea ecx, [ebp - 0x8078]
call fcn.00404be0
lea ecx, [ebp - 0x81c0]
call fcn.00404be0
lea ecx, [ebp - 0x81d8]
call fcn.00404be0
lea ecx, [ebp - 0x8168]
call fcn.00404be0
lea ecx, [ebp - 0x81f0]
call fcn.00404be0
lea ecx, [ebp - 0x8060]
call fcn.00404be0
lea ecx, [ebp - 0x8180]
call fcn.00404be0
lea ecx, [ebp - 0x8120]
call fcn.00404be0
lea ecx, [ebp - 0x80d8]
call fcn.00404be0
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop ebx
xor ecx, ebp
pop esi
call fcn.00412f32
mov esp, ebp
pop ebp
ret 0x10
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00407650
call fcn.00417acf
call fcn.00417acf
call fcn.00417acf
int3