Function at 0x438115
Capabilities:
Check for time delay via gettickcount
Check mutex and terminate process on windows
Check mutex on windows
Create thread
Get file attributes
Set current directory
Set environment variable
Terminate process

Disassembly:
push 0x8c
mov eax, 0x4e391a
call fcn.004c1f48
mov edi, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x2c], ebx
push 3
pop esi
mov dword [ebp - 4], esi
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x38]
call fcn.0042249b
mov byte [ebp - 4], 4
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x58], ebx
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x48]
call fcn.0042249b
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 4], 5
call fcn.0046c7a0
mov byte [ebp - 4], 6
mov ecx, esp
mov dword [ebp - 0x14], esp
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [eax]
push 0x4f74f8
push ecx
call fcn.0046d760
add esp, 0x14
call fcn.00433dd5
pop ecx
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.0042201a
call fcn.0042a25e
mov dword [ebp - 0x14], eax
cmp eax, ebx
jne 0x4381bf
lea eax, [ebp - 0x14]
push str.Cannot_open_virtual_app_data._Please_check_that_file_isnt_corrupted
push eax
call fcn.0046d760
pop ecx
pop ecx
push dword [eax]
call fcn.00433e05
lea eax, [ebp + 0xc]
push eax
mov ecx, 0x52dfb8
call fcn.00424eea
push 0x52df50
mov ecx, edi
call fcn.0042a0f7
mov eax, dword [ebp + 0x24]
pop ecx
cmp eax, 0xffffffff
je 0x4381e7
mov dword [0x52dfe8], eax
mov eax, dword [0x52e018]
cmp eax, esi
je 0x438207
mov ecx, dword [ebp + 0x18]
cmp eax, 1
jne 0x4381fd
cmp dword [ecx - 0xc], ebx
jne 0x438207
cmp eax, 2
jne 0x438224
cmp dword [ecx - 0xc], ebx
jne 0x438224
push ecx
mov eax, esp
mov dword [ebp - 0x1c], esp
push str.Loader_Main:_activating_ExecWait
push eax
call fcn.0046d760
pop ecx
pop ecx
call fcn.00433dd5
or dword [ebp + 0x20], 1
pop ecx
push ecx
mov dword [ebp - 0x1c], esp
mov ecx, esp
push 0x52df5c
xor esi, esi
call fcn.00424ec9
mov ecx, esi
call fcn.0047f7a0
pop ecx
cmp word [0x52dfc0], bx
je 0x4382a0
xor eax, eax
mov word [ebp - 0x74], ax
lea edi, [ebp - 0x72]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x74]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
mov ax, word [ebp - 0x74]
cmp ax, word [0x52dfc0]
jb 0x4382a0
mov ax, word [ebp - 0x72]
cmp ax, word [0x52dfc2]
jb 0x4382a0
mov ax, word [ebp - 0x6e]
cmp ax, word [0x52dfc6]
jb 0x4382a0
push ebx
push str.Expiration
push str.Package_expired
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0x14
call dword [sym.imp.KERNEL32.dll_ExitProcess]
cmp dword [0x52dfd4], ebx
je 0x4382ad
call fcn.004373a0
mov esi, 0x52df50
call fcn.004335c6
mov dword [ebp - 0x3c], eax
cmp eax, ebx
je 0x438318
lea eax, [ebp - 0x20]
push eax
push ecx
mov dword [ebp - 0x1c], esp
mov edi, esp
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.AuthToken.dat
mov dword [ebp - 0x20], ebx
call fcn.004247f7
push edi
xor ecx, ecx
call fcn.0047ec10
pop ecx
pop ecx
mov ecx, dword [ebp - 0x3c]
mov edx, esi
call fcn.00432cdd
cmp eax, ebx
jne 0x438318
cmp dword [0x52e02c], ebx
je 0x438314
mov eax, dword [0x52e030]
cmp dword [eax - 0xc], ebx
je 0x438314
push ebx
push dword [0x52df5c]
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0x11
jmp 0x43829a
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.Vintegrate:
call fcn.004247f7
push ecx
mov byte [ebp - 4], 7
lea eax, [ebp + 0x18]
mov dword [ebp - 0x40], esp
mov ecx, esp
push eax
call fcn.00424ec9
mov byte [ebp - 4], 5
call fcn.004719e0
add esp, 0xc
cmp eax, ebx
je 0x438355
mov dword [ebp - 0x58], 1
jmp 0x438390
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.VintegrateRecursive:
call fcn.004247f7
push ecx
mov byte [ebp - 4], 8
lea eax, [ebp + 0x18]
mov dword [ebp - 0x40], esp
mov ecx, esp
push eax
call fcn.00424ec9
mov byte [ebp - 4], 5
call fcn.004719e0
add esp, 0xc
cmp eax, ebx
je 0x4383b2
mov dword [ebp - 0x58], 2
lea eax, [ebp + 0x18]
push eax
lea ecx, [ebp - 0x48]
call fcn.00424eea
push ebx
push 0x3a
lea ecx, [ebp - 0x48]
call fcn.00426eb1
push ebx
lea ecx, [ebp - 0x48]
inc eax
push ecx
call fcn.0042488e
push ecx
lea eax, [ebp + 0xc]
mov dword [ebp - 0x1c], esp
mov ecx, esp
push eax
mov esi, 0x52df50
call fcn.00424ec9
mov ecx, esi
call fcn.004371f9
lea ecx, [ebp - 0x4c]
mov dword [esp], 0x4eea54
call fcn.004247f7
push dword [ebp - 0x58]
lea eax, [ebp - 0x20]
push str.VintegrateMode_d_n
push eax
mov byte [ebp - 4], 9
call fcn.0046d760
add esp, 0xc
mov byte [ebp - 4], 0xa
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x4c]
push eax
call fcn.00425b93
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.0042201a
push dword [ebp - 0x48]
lea eax, [ebp - 0x20]
push str.VintegrateTgtPattern_s_n
push eax
call fcn.0046d760
add esp, 0xc
mov byte [ebp - 4], 0xb
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x4c]
push eax
call fcn.00425b93
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.0042201a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
lea eax, [ebp - 0x20]
push str.StartTickTime_d_n
push eax
call fcn.0046d760
add esp, 0xc
mov byte [ebp - 4], 0xc
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x4c]
push eax
call fcn.00425b93
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ecx - 0xc]
push ecx
push ecx
mov dword [ebp - 0x1c], esp
mov esi, esp
push ebx
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.RunningInfo.ini
lea edi, [eax + eax]
call fcn.004247f7
push 1
push esi
call fcn.0047e910
add esp, 0x18
call fcn.0046e130
pop ecx
mov dword [ebp - 0x1c], esp
mov esi, esp
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.VirtFiles.Prog.db
call fcn.004247f7
push esi
mov ecx, ebx
call fcn.0047ec10
pop ecx
pop ecx
call fcn.0046fe10
pop ecx
cmp eax, ebx
jne 0x438585
call fcn.00434490
test eax, eax
jne 0x43850b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x60], eax
call fcn.0042fe3c
push 0x405
mov edi, 0x52df50
call fcn.0048b180
pop ecx
push ecx
mov eax, esp
mov dword [ebp - 0x1c], esp
push dword [0x52df5c]
push str.AppVirtDll__s.dll
push eax
call fcn.0046d760
lea eax, [ebp - 0x20]
add esp, 0xc
push eax
mov ecx, ebx
call fcn.0047ec10
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xd
call fcn.00424eea
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.0042201a
push dword [0x52df68]
mov esi, dword [0x52df5c]
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov ecx, dword [0x52dfbc]
push eax
mov eax, esi
call fcn.0048b660
mov edi, 0x4eea54
cmp dword [0x52df60], ebx
je 0x4385e4
mov eax, 0x52df60
jmp 0x4385f8
mov eax, dword [0x52dfa8]
cmp dword [eax - 0xc], ebx
je 0x43850b
cmp dword [ebp + 0x10], 2
je 0x43850b
push 1
push ecx
mov eax, esp
mov dword [ebp - 0x1c], esp
push dword [0x52df5c]
push str.StartStreaming:AppID_s
push eax
call fcn.0046d760
add esp, 0xc
call fcn.0042760d
pop ecx
pop ecx
cmp eax, ebx
jne 0x43850b
push dword [0x52df5c]
lea eax, [ebp - 0x14]
push str.Cannot_stream_application__s_
push eax
call fcn.0046d760
add esp, 0xc
jmp 0x4381b8
push edi
lea ecx, [ebp - 0x78]
call fcn.004247f7
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x2c], 1
push eax
lea ecx, [ebp - 0x34]
call fcn.00424ec9
mov dword [ebp - 4], 0x10
test byte [ebp - 0x2c], 1
je 0x43861d
mov ecx, dword [ebp - 0x78]
and dword [ebp - 0x2c], 0xfffffffe
add ecx, 0xfffffff0
call fcn.0042201a
cmp dword [ebp + 0x10], 2
mov dword [ebp - 0x44], ebx
je 0x438884
mov eax, dword [0x52e04c]
cmp dword [eax - 0xc], ebx
je 0x438648
mov eax, dword [0x52e050]
cmp eax, 2
je 0x438643
cmp eax, 3
jne 0x438648
call fcn.00437991
mov eax, dword [ebp + 0x18]
cmp dword [eax - 0xc], ebx
jne 0x438719
push 0x3b
push dword [0x52df60]
call fcn.004bc598
pop ecx
pop ecx
test eax, eax
jne 0x438671
cmp dword [ebp + 0x10], 1
jne 0x438884
push edi
lea ecx, [ebp - 0x30]
call fcn.004247f7
mov byte [ebp - 4], 0x11
cmp dword [0x52e01c], ebx
je 0x4386ea
cmp dword [ebp + 0x10], 1
je 0x4386ea
push ebx
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.AutoLaunchAlways
lea edi, [ebp - 0x30]
call fcn.004247f7
push ecx
mov byte [ebp - 4], 0x12
mov eax, esp
mov dword [ebp - 0x40], esp
push dword [0x52df5c]
push str.SoftwareVOS_s
push eax
call fcn.0046d760
add esp, 0xc
push SysReAllocStringLen
mov byte [ebp - 4], 0x11
call fcn.0046e240
add esp, 0x18
cmp eax, ebx
je 0x4386ea
mov eax, dword [ebp - 0x30]
cmp dword [eax - 0xc], ebx
je 0x4386ea
mov eax, edi
push eax
lea ecx, [ebp - 0x34]
call fcn.00424eea
jmp 0x43870d
push 0x404
mov edi, 0x52df50
call fcn.0048b180
pop ecx
push ebx
push ebx
push ebx
push 0x436f30
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x44], eax
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x30]
jmp 0x43887c
push 1
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp + 0x18]
call fcn.004249e6
push 0x4f7744
mov ecx, eax
mov byte [ebp - 4], 0x13
call fcn.00424df4
neg eax
sbb al, al
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x20]
inc al
add ecx, 0xfffffff0
mov byte [ebp - 0x25], al
call fcn.0042201a
cmp byte [ebp - 0x25], bl
je 0x438884
push ebx
lea eax, [ebp + 0x18]
push eax
xor eax, eax
inc eax
call fcn.0042488e
push dword [ebp + 0x18]
call fcn.004bdf61
pop ecx
push edi
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], ebx
call fcn.004247f7
mov byte [ebp - 4], 0x14
cmp dword [ebp - 0x20], ebx
mov dword [ebp - 0x30], ebx
jle 0x438860
mov esi, 0x4f2fe8
lea eax, [ebp - 0x18]
push eax
push 0x4f2fd8
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x34]
call fcn.0042b647
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x15
call fcn.00424eea
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x64]
add ecx, 0xfffffff0
call fcn.0042201a
mov eax, dword [ebp + 0x1c]
cmp dword [eax - 0xc], ebx
je 0x43883b
lea eax, [ebp - 0x5c]
push eax
push esi
lea eax, [ebp - 0x3c]
push eax
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x5c], ebx
call fcn.0042b647
push esi
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x1c]
push eax
mov byte [ebp - 4], 0x16
call fcn.00424a46
add esp, 0xc
lea ecx, [ebp + 0x1c]
push ecx
push eax
lea eax, [ebp - 0x40]
push eax
mov byte [ebp - 4], 0x17
call fcn.0042c5b1
add esp, 0xc
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x18
call fcn.00424eea
mov ecx, dword [ebp - 0x40]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x1c]
add ecx, 0xfffffff0
call fcn.0042201a
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x3c]
add ecx, 0xfffffff0
call fcn.0042201a
cmp dword [ebp - 0x18], 0xffffffff
je 0x438964
mov eax, dword [ebp - 0x24]
cmp dword [eax - 0xc], ebx
je 0x438964
inc dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x20]
jl 0x438792
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x34]
call fcn.00424eea
push edi
lea ecx, [ebp + 0x18]
call fcn.004253c0
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
call fcn.0042201a
xor eax, eax
mov dword [ebp - 0x84], ebx
lea edi, [ebp - 0x80]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov byte [ebp - 0x98], bl
xor eax, eax
lea edi, [ebp - 0x97]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea esi, [ebp - 0x98]
lea edi, [ebp - 0x84]
call fcn.00474140
push dword [0x52df5c]
lea eax, [ebp - 0x1c]
push 0x4f7748
push eax
call fcn.0046d760
add esp, 0xc
push dword [eax]
mov eax, edi
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov ecx, dword [ebp - 0x1c]
add ecx, 0xfffffff0
mov esi, eax
call fcn.0042201a
cmp esi, ebx
je 0x438926
push ecx
mov eax, esp
mov dword [ebp - 0x40], esp
push str.Loader_Main:_waiting_on_BasicDeployMutex
push eax
call fcn.0046d760
pop ecx
pop ecx
call fcn.00433dd5
pop ecx
push 0xffffffffffffffff
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push ecx
mov eax, esp
mov dword [ebp - 0x40], esp
push str.Loader_Main:_done_waiting_on_BasicDeployMutex
push eax
call fcn.0046d760
pop ecx
pop ecx
call fcn.00433dd5
pop ecx
push ebx
push dword [ebp + 0x10]
push 0x52df50
push dword [ebp + 8]
push dword [ebp - 0x14]
call fcn.004347b1
add esp, 0x14
mov edi, eax
cmp esi, ebx
je 0x438951
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp edi, ebx
je 0x43897d
cmp edi, 7
jne 0x43896e
push str.Failed_deploying_files._Please_make_sure_application_is_not_currently_running_and_try_again.
jmp 0x4381ba
push 0xff
jmp 0x43829a
lea eax, [ebp - 0x14]
push edi
push eax
call fcn.00474710
jmp 0x4381b6
cmp dword [ebp + 0x10], 2
je 0x438a79
push ebx
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.CryptCheck.dat
call fcn.004247f7
xor esi, esi
inc esi
lea eax, [ebp - 0x18]
push esi
push eax
call fcn.0047e910
add esp, 0x14
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
mov dword [ebp - 0x24], esi
call fcn.00424ec9
call fcn.0046fe10
pop ecx
push ecx
mov dword [ebp - 0x14], esp
cmp eax, ebx
je 0x438b48
lea eax, [ebp - 0x18]
mov ecx, esp
push eax
lea esi, [ebp - 0x24]
call fcn.00424ec9
mov ecx, esi
call fcn.00437e9a
pop ecx
cmp eax, ebx
je 0x438a31
cmp dword [ebp - 0x24], ebx
jne 0x438a31
lea eax, [ebp - 0x14]
push ebx
push eax
call fcn.004747f0
add esp, 4
mov byte [ebp - 4], 0x1a
mov ecx, esp
mov dword [ebp - 0x1c], esp
push dword [eax]
push str._Loader_Main:_CryptIntegrityCheck:_bConsistent_s
push ecx
call fcn.0046d760
add esp, 0xc
call fcn.00433dd5
pop ecx
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
push str.Data_was_encrypted_with_a_different_key___method._Cannot_access_the_data_with_the_current_encryption_method._Please_remove_the_package___remove__and_restart_it.
jmp 0x4381ba
push dword [ebp - 0x24]
lea eax, [ebp - 0x14]
push eax
call fcn.004747f0
add esp, 4
mov byte [ebp - 4], 0x1b
mov ecx, esp
mov dword [ebp - 0x1c], esp
push dword [eax]
push str.Loader_Main:_CryptIntegrityCheck:_bConsistent_s
push ecx
call fcn.0046d760
add esp, 0xc
call fcn.00433dd5
pop ecx
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0042201a
push 1
lea eax, [ebp - 0x50]
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
mov edi, str.RequireManaged
push edi
call fcn.004247f7
push ecx
mov byte [ebp - 4], 0x1c
mov ecx, esp
mov dword [ebp - 0x1c], esp
mov esi, str.SoftwareCameyo
push esi
call fcn.004247f7
push reloc.OLEAUT32.dll_SysReAllocString
mov byte [ebp - 4], 0x10
call fcn.0046e4c0
add esp, 0x14
cmp eax, ebx
jne 0x438afa
push 1
lea eax, [ebp - 0x50]
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push edi
call fcn.004247f7
push ecx
mov byte [ebp - 4], 0x1d
mov ecx, esp
mov dword [ebp - 0x1c], esp
push esi
call fcn.004247f7
mov byte [ebp - 4], 0x1e
call fcn.0047e010
push eax
mov byte [ebp - 4], 0x10
call fcn.0046e4c0
add esp, 0x14
cmp eax, ebx
je 0x438ba4
cmp dword [ebp - 0x50], ebx
je 0x438ba4
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_RequireManaged
call fcn.004247f7
call fcn.00433dd5
lea eax, [ebp - 0x38]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424ec9
call fcn.004269bb
pop ecx
cmp eax, ebx
jne 0x438ba4
push ebx
push 0x4ed4c8
push str.You_are_not_allowed_to_use_unmanaged_apps.
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
push ebx
jmp 0x43829a
mov eax, esp
push str.Loader_Main:_CryptIntegrity:_saving_CryptCheck
push eax
call fcn.0046d760
pop ecx
pop ecx
call fcn.00433dd5
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424ec9
call fcn.00437c83
pop ecx
cmp eax, ebx
jne 0x438a6a
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push eax
push str._Loader_Main:_CryptIntegritySave_returned_false:_LE_d
push ecx
call fcn.0046d760
add esp, 0xc
call fcn.00433dd5
mov dword [esp], str.Could_not_save_encryption_integrity_check.
jmp 0x4381ba
mov eax, dword [0x52dfec]
cmp dword [eax - 0xc], ebx
je 0x438bc4
push ecx
mov dword [ebp - 0x14], esp
mov ecx, esp
push 0x52dfec
call fcn.00424ec9
call fcn.00436d64
pop ecx
mov eax, dword [ebp + 0x18]
mov eax, dword [eax - 0xc]
cmp eax, ebx
je 0x438c08
push 1
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp + 0x18]
call fcn.004249e6
mov byte [ebp - 4], 0x1f
or dword [ebp - 0x2c], 2
push 0x4f7744
mov ecx, eax
call fcn.00424df4
test eax, eax
je 0x438c08
push ebx
push 0x5c
lea ecx, [ebp + 0x18]
call fcn.00426eb1
mov byte [ebp - 0x25], 1
cmp eax, 0xffffffff
je 0x438c0b
mov byte [ebp - 0x25], bl
mov dword [ebp - 4], 0x10
test byte [ebp - 0x2c], 2
je 0x438c23
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
cmp byte [ebp - 0x25], bl
je 0x438d07
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x24]
call fcn.0042249b
mov byte [ebp - 4], 0x20
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x18]
call fcn.0042249b
mov byte [ebp - 4], 0x21
call fcn.00478f10
lea eax, [ebp - 0x18]
push eax
push 0x4341cb
push ebx
push dword [0x52d7ac]
push 0x52d7a4
call fcn.0048edb0
push ebx
lea eax, [ebp - 0x24]
push eax
push ebx
push ecx
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424ec9
push ecx
mov byte [ebp - 4], 0x22
lea eax, [ebp + 0x18]
mov dword [ebp - 0x1c], esp
mov ecx, esp
push eax
call fcn.00424ec9
mov byte [ebp - 4], 0x21
call fcn.0047a3a0
add esp, 0x14
cmp eax, ebx
je 0x438ced
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp + 0x18]
call fcn.00424eea
lea eax, [ebp + 0x18]
push eax
call fcn.0047d7b0
lea eax, [ebp + 0x18]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424ec9
lea eax, [ebp - 0x14]
push eax
call fcn.0047e540
pop ecx
pop ecx
push eax
lea ecx, [ebp + 0x18]
mov byte [ebp - 4], 0x23
call fcn.00424eea
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0042201a
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
call fcn.0042201a
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push dword [ebp + 0x18]
push dword [ebp - 0x34]
push dword [ebp + 0x10]
push str.Loader_Main:_AutoLaunchMode_d__AutoLaunchRaw_s__ExecCmd_s
push eax
call fcn.0046d760
add esp, 0x14
call fcn.00433dd5
cmp dword [ebp + 0x10], 2
pop ecx
je 0x439657
mov eax, dword [0x52df98]
cmp dword [eax - 0xc], ebx
je 0x438e71
mov eax, dword [ebp + 0x18]
cmp dword [eax - 0xc], ebx
je 0x438d5f
push 0x4f7da4
lea ecx, [ebp + 0x18]
call fcn.00424df4
test eax, eax
jne 0x438e71
lea esi, [ebp - 0x74]
call fcn.0048bb50
push ebx
push ebx
push ecx
mov byte [ebp - 4], 0x24
mov dword [ebp - 0x14], esp
mov ecx, esp
push 0x52df5c
call fcn.00424ec9
call fcn.0048b6d0
mov esi, eax
cmp esi, ebx
je 0x438e28
cmp dword [esi + 0x424], ebx
je 0x438e28
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x20]
call fcn.0042249b
mov byte [ebp - 4], 0x25
cmp dword [esi + 0x424], ebx
mov dword [ebp - 0x18], ebx
jle 0x438e00
lea edi, [esi + 0x428]
push dword [edi]
lea eax, [ebp - 0x14]
push 0x4f7e1c
push eax
call fcn.0046d760
add esp, 0xc
mov byte [ebp - 4], 0x26
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x20]
push eax
call fcn.00425b93
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
add edi, 8
cmp eax, dword [esi + 0x424]
jl 0x438dbb
mov esi, dword [ebp - 0x20]
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push esi
push str.AutoUpdate:_app_already_running__aborting__PIDs_s_
push eax
call fcn.0046d760
add esp, 0xc
call fcn.00433dd5
pop ecx
lea ecx, [esi - 0x10]
call fcn.0042201a
jmp 0x438e65
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_AutoUpdate:_triggering_async_autoupdate
call fcn.004247f7
call fcn.00433dd5
mov eax, dword [0x52dbf0]
pop ecx
cmp eax, ebx
je 0x438e4e
push eax
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push ebx
push ebx
push ebx
push 0x4371da
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [ebp - 0x74]
mov byte [ebp - 4], 0x10
call fcn.0048bb70
mov eax, dword [0x52dfe8]
test al, 2
je 0x438f32
mov dword [ebp - 0x1c], ebx
push eax
lea ebx, [ebp - 0x14]
call fcn.0042aa25
pop ecx
push eax
lea eax, [ebp - 0x18]
push str._Quiet__ScmDirectInit:
push eax
mov byte [ebp - 4], 0x27
call fcn.00424a9b
add esp, 0xc
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
push ecx
mov ecx, esp
mov dword [ebp - 0x40], esp
push str.open
xor ebx, ebx
call fcn.004247f7
push 1
push ecx
mov byte [ebp - 4], 0x2a
lea eax, [ebp - 0x18]
mov dword [ebp - 0x5c], esp
mov ecx, esp
push eax
lea edi, [ebp - 0x1c]
call fcn.00424ec9
push ecx
mov byte [ebp - 4], 0x2b
mov dword [ebp - 0x64], esp
mov ecx, esp
push 0x52dfb8
call fcn.00424ec9
mov byte [ebp - 4], 0x29
call fcn.0046c200
add esp, 0x10
test eax, eax
jne 0x438f21
push ecx
mov eax, esp
mov dword [ebp - 0x40], esp
push dword [ebp - 0x18]
push dword [0x52dfb8]
push str._Loader_Main:_ScmDirectInit:_could_not_execute___s___s
push eax
call fcn.0046d760
add esp, 0x10
call fcn.00433dd5
pop ecx
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0042201a
xor ebx, ebx
cmp dword [ebp - 0x58], ebx
je 0x438fd2
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x20]
call fcn.00424ec9
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 4], 0x2c
call fcn.0047d7b0
mov edi, dword [ebp - 0x20]
pop ecx
mov ecx, dword [ebp - 0x38]
push 1
push edi
call fcn.00426611
pop ecx
pop ecx
test eax, eax
je 0x438f80
push ebx
push ebx
push ebx
push 0x8000000
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
mov dword [ebp - 0x54], 2
jmp 0x438fc6
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x3c]
call fcn.0042249b
mov byte [ebp - 4], 0x2d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x3c]
push str.Could_not_inject_explorer.exe__Error_d_
push eax
call fcn.0042262f
mov esi, dword [ebp - 0x3c]
add esp, 0xc
push ebx
push str.Error
push esi
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [esi - 0x10]
mov dword [ebp - 0x54], ebx
call fcn.0042201a
mov byte [ebp - 4], 0x10
lea ecx, [edi - 0x10]
jmp 0x439652
mov eax, dword [ebp - 0x34]
cmp dword [eax - 0xc], ebx
jne 0x438fe6
mov eax, dword [ebp + 0x18]
cmp dword [eax - 0xc], ebx
je 0x439657
cmp dword [ebp - 0x44], ebx
je 0x4390da
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_Waiting_for_AutoLaunchMenu
push eax
call fcn.0046d760
pop ecx
pop ecx
call fcn.00433dd5
mov edi, 0x52df50
mov dword [esp], 0x404
call fcn.0048b180
pop ecx
push 0xffffffffffffffff
push dword [ebp - 0x44]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push dword [ebp - 0x44]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x52df60
lea ecx, [ebp - 0x34]
call fcn.00424eea
push str._Cancel_
lea ecx, [ebp - 0x34]
call fcn.00424df4
test eax, eax
jne 0x4390c1
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_cancelled_n
call fcn.004247f7
call fcn.00433dd5
pop ecx
mov ecx, dword [ebp - 0x34]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x4c]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x48]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x38]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp + 0xc]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp + 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp + 0x18]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp + 0x1c]
add ecx, 0xfffffff0
call fcn.0042201a
xor eax, eax
inc eax
jmp 0x4396d6
call fcn.00434490
test eax, eax
jne 0x4390da
call fcn.0042fe3c
push 0x405
call fcn.0048b180
pop ecx
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push dword [ebp - 0x34]
push str.Loader_Main:_AutoLaunchRaw_s
push eax
call fcn.0046d760
add esp, 0xc
call fcn.00433dd5
pop ecx
mov dword [ebp - 0x18], ebx
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x2c]
call fcn.0042249b
mov byte [ebp - 4], 0x2e
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x44]
call fcn.0042249b
push 0x3e
push ecx
mov byte [ebp - 4], 0x2f
lea eax, [ebp - 0x34]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
lea edi, [ebp - 0x18]
call fcn.00424ec9
lea eax, [ebp - 0x14]
push eax
call fcn.00471360
add esp, 0xc
mov byte [ebp - 4], 0x30
call fcn.0042493d
push eax
lea ecx, [ebp - 0x2c]
call fcn.00424eea
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
push 0x3e
push ecx
lea eax, [ebp - 0x34]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424ec9
lea eax, [ebp - 0x14]
push eax
call fcn.00471360
add esp, 0xc
mov byte [ebp - 4], 0x31
call fcn.0042493d
push eax
lea ecx, [ebp - 0x44]
call fcn.00424eea
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
push 1
push 1
push 0xffffffffffffffff
push ecx
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424ec9
lea eax, [ebp - 0x14]
push eax
call fcn.0047eda0
add esp, 0x14
mov byte [ebp - 4], 0x32
push eax
lea ecx, [ebp - 0x2c]
call fcn.00424eea
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push dword [ebp - 0x2c]
push str.Loader_Main:_AutoLaunchCmd_s
push eax
call fcn.0046d760
add esp, 0xc
call fcn.00433dd5
mov eax, esp
mov dword [ebp - 0x14], esp
push dword [ebp - 0x38]
push str.Loader_Main:_Loading_DLL_to_get_myself_hooked:__s
push eax
call fcn.0046d760
add esp, 0xc
call fcn.00433dd5
mov edi, dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov dword [esp], str.TRUE
push str.CAMEYO_VIRTUALAPP
call edi
cmp dword [0x52e050], ebx
je 0x439256
push 0x6f
push 0x10
lea eax, [ebp - 0x14]
push 0x52e054
push eax
call fcn.00474ac0
add esp, 0x10
push dword [eax]
push str._CEK_
call edi
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
push 0x4f0e18
mov esi, str.APPVIRTDLL_LOADED_BY_LOADER
push esi
call edi
push ebx
call dword [sym.imp.KERNEL32.dll_SetLastError]
push dword [ebp - 0x38]
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push eax
push dword [ebp - 0x14]
push dword [ebp - 0x38]
push str.Loader_Main:_LoadLibrary__s_0x_x__LE_d
push ecx
call fcn.0046d760
add esp, 0x14
call fcn.00433dd5
pop ecx
cmp dword [0x52e050], ebx
je 0x4392ad
push ebx
push str._CEK_
call edi
push 0x4eea54
push esi
call edi
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x18]
call fcn.0042249b
mov byte [ebp - 4], 0x33
call fcn.004ad3ae
push eax
lea ecx, [ebp - 0x30]
call fcn.0042249b
mov byte [ebp - 4], 0x34
mov eax, dword [ebp + 0x18]
push ecx
mov dword [ebp - 0x14], esp
cmp dword [eax - 0xc], ebx
jne 0x43931a
mov eax, esp
push dword [ebp - 0x2c]
push str.ExecName:_Taking_AutoLaunchCmd_s
push eax
call fcn.0046d760
add esp, 0xc
call fcn.00433dd5
pop ecx
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x18]
call fcn.00424eea
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp - 0x30]
cmp dword [eax - 0xc], ebx
jne 0x439340
lea eax, [ebp - 0x44]
jmp 0x439343
mov ecx, esp
push eax
push str.ExecName:_Taking_ExecCmd_s
push ecx
call fcn.0046d760
add esp, 0xc
call fcn.00433dd5
pop ecx
lea eax, [ebp + 0x18]
push eax
lea ecx, [ebp - 0x18]
call fcn.00424eea
lea ecx, [ebp - 0x30]
lea eax, [ebp + 0x1c]
push eax
call fcn.00424eea
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x24]
call fcn.00424ec9
lea eax, [ebp - 0x24]
push eax
mov byte [ebp - 4], 0x35
call fcn.0047d7b0
pop ecx
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push eax
push dword [ebp - 0x24]
mov dword [ebp - 0x50], eax
push str.Loader_Main:_GetFileAttributes__s__d
push ecx
call fcn.0046d760
add esp, 0x10
call fcn.00433dd5
pop ecx
mov esi, str.Original
push esi
push dword [0x52dff4]
call fcn.004bb834
pop ecx
pop ecx
test eax, eax
je 0x4393d7
push 0x5c
push ecx
lea eax, [ebp - 0x24]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424ec9
lea eax, [ebp - 0x14]
push eax
call fcn.0046db70
add esp, 0xc
push dword [eax]
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
mov dword [ebp - 0x50], eax
call fcn.0042201a
push ecx
mov dword [ebp - 0x14], esp
mov edi, esp
push dword [ebp - 0x50]
lea eax, [ebp - 0x24]
push 0x5c
push ecx
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424ec9
lea eax, [ebp - 0x14]
push eax
call fcn.0046db70
add esp, 0xc
mov byte [ebp - 4], 0x36
push dword [eax]
push str.Loader_Main:_SetCurrentDirectory__s__d
push edi
call fcn.0046d760
add esp, 0x10
call fcn.00433dd5
pop ecx
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
mov eax, dword [0x52dff4]
cmp dword [eax - 0xc], ebx
je 0x439461
push esi
push eax
call fcn.004bb834
pop ecx
pop ecx
test eax, eax
je 0x439461
push ecx
mov dword [ebp - 0x14], esp
mov ecx, esp
push 0x52dff4
call fcn.00424ec9
call fcn.0046fe50
pop ecx
cmp eax, ebx
je 0x439461
mov eax, dword [0x52dff4]
mov dword [ebp - 0x20], eax
jmp 0x439464
mov dword [ebp - 0x20], ebx
push ecx
mov dword [ebp - 0x14], esp
mov esi, esp
push ebx
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.C_License.txt
call fcn.004247f7
push ebx
push esi
call fcn.0047e910
add esp, 0x18
call fcn.0046fe10
mov dword [ebp - 0x14], esp
mov edi, esp
push ebx
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.License.accepted
mov esi, eax
call fcn.004247f7
push ebx
push edi
call fcn.0047e910
add esp, 0x18
call fcn.0046fe10
mov dword [ebp - 0x14], esp
mov edi, eax
mov eax, esp
push edi
push esi
push dword [0x52dbf4]
push str.Loader_Main:_EULA:_g_hEulaThread_d__EulaFile_d__EulaAccepted_d
push eax
call fcn.0046d760
add esp, 0x14
call fcn.00433dd5
pop ecx
cmp dword [0x52dbf4], ebx
jne 0x4394fb
cmp esi, ebx
je 0x439533
cmp edi, ebx
jne 0x439533
push ebx
call fcn.00436ff7
call fcn.00437329
cmp dword [0x52dbf4], ebx
je 0x439533
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_waiting_for_EULA_to_be_accepted
push eax
call fcn.0046d760
pop ecx
pop ecx
call fcn.00433dd5
pop ecx
push 0xffffffffffffffff
push dword [0x52dbf4]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push dword [0x52dbf4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.00437329
mov esi, dword [ebp - 0x18]
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push dword [ebp - 0x38]
mov dword [ebp - 0x3c], ebx
push esi
push str.Loader_Main:_ExecName_s__Dll32Name_s
push eax
call fcn.0046d760
add esp, 0x10
call fcn.00433dd5
pop ecx
push dword [ebp + 0x20]
lea eax, [ebp - 0x3c]
push eax
push dword [ebp - 0x20]
lea eax, [ebp - 0x30]
push ecx
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424ec9
push ecx
mov byte [ebp - 4], 0x37
lea eax, [ebp - 0x38]
mov dword [ebp - 0x1c], esp
mov ecx, esp
push eax
call fcn.00424ec9
push ecx
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x18]
mov dword [ebp - 0x40], esp
mov ecx, esp
push eax
call fcn.00424ec9
mov byte [ebp - 4], 0x35
call fcn.00433e2c
add esp, 0x18
cmp eax, ebx
je 0x4395e6
mov edi, dword [ebp - 0x60]
mov dword [ebp - 0x54], 1
cmp edi, ebx
je 0x43961f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, eax
sub edx, edi
mov ecx, 0x1770
cmp edx, ecx
jae 0x4395d4
sub edi, eax
push 1
add edi, ecx
push edi
call dword [sym.imp.KERNEL32.dll_SleepEx]
push 0x404
mov edi, 0x52df50
call fcn.0048b180
pop ecx
jmp 0x43961f
test byte [ebp + 0x20], 2
jne 0x43961c
push dword [ebp - 0x3c]
lea eax, [ebp - 0x14]
push esi
push str.Could_not_execute__s__Error_d_
push eax
call fcn.0046d760
mov eax, dword [eax]
add esp, 0x10
push ebx
push str.Error
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
mov dword [ebp - 0x54], ebx
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x30]
add ecx, 0xfffffff0
call fcn.0042201a
lea ecx, [esi - 0x10]
call fcn.0042201a
mov ecx, dword [ebp - 0x44]
add ecx, 0xfffffff0
call fcn.0042201a
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x2c]
add ecx, 0xfffffff0
call fcn.0042201a
push 0x404
mov edi, 0x52df50
call fcn.0048b180
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_out_n
call fcn.004247f7
call fcn.00433dd5
pop ecx
mov ecx, dword [ebp - 0x34]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x4c]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x48]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp - 0x38]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp + 0xc]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp + 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp + 0x18]
add ecx, 0xfffffff0
call fcn.0042201a
mov ecx, dword [ebp + 0x1c]
add ecx, 0xfffffff0
call fcn.0042201a
mov eax, dword [ebp - 0x54]
call fcn.004c2020
ret