Function at 0x4380c5
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, 0x4e048a
call fcn.004bee78
mov edi, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x2c], ebx
push 3
pop esi
mov dword [ebp - 4], esi
call fcn.004aa2e3
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.004aa2e3
push eax
lea ecx, [ebp - 0x48]
call fcn.0042249b
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 4], 5
call fcn.00469b30
mov byte [ebp - 4], 6
mov ecx, esp
mov dword [ebp - 0x14], esp
push dword [ebp + 0x18]
push dword [eax]
push 0x4f34b8
push ecx
call fcn.0046aaf0
add esp, 0x10
call fcn.00433da4
pop ecx
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.0042201a
call fcn.0042a23b
mov dword [ebp - 0x14], eax
cmp eax, ebx
jne 0x43816c
lea eax, [ebp - 0x14]
push str.Cannot_open_virtual_app_data._Please_check_that_file_isnt_corrupted
push eax
call fcn.0046aaf0
pop ecx
pop ecx
push dword [eax]
call fcn.00433dd4
lea eax, [ebp + 0xc]
push eax
mov ecx, 0x528fa0
call fcn.00424f1e
push 0x528f38
mov ecx, edi
call fcn.0042a0d4
mov eax, dword [ebp + 0x24]
pop ecx
cmp eax, 0xffffffff
je 0x438194
mov dword [0x528fd0], eax
mov eax, dword [0x529000]
cmp eax, esi
je 0x4381b4
mov ecx, dword [ebp + 0x18]
cmp eax, 1
jne 0x4381aa
cmp dword [ecx - 0xc], ebx
jne 0x4381b4
cmp eax, 2
jne 0x4381d1
cmp dword [ecx - 0xc], ebx
jne 0x4381d1
push ecx
mov eax, esp
mov dword [ebp - 0x1c], esp
push str.Loader_Main:_activating_ExecWait
push eax
call fcn.0046aaf0
pop ecx
pop ecx
call fcn.00433da4
or dword [ebp + 0x20], 1
pop ecx
push ecx
mov dword [ebp - 0x1c], esp
mov ecx, esp
push 0x528f44
xor esi, esi
call fcn.00424efd
mov ecx, esi
call fcn.0047c870
pop ecx
cmp word [0x528fa8], bx
je 0x43824d
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 [0x528fa8]
jb 0x43824d
mov ax, word [ebp - 0x72]
cmp ax, word [0x528faa]
jb 0x43824d
mov ax, word [ebp - 0x6e]
cmp ax, word [0x528fae]
jb 0x43824d
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 [0x528fbc], ebx
je 0x43825a
call fcn.00437350
mov esi, 0x528f38
call fcn.004335a0
mov dword [ebp - 0x3c], eax
cmp eax, ebx
je 0x4382c5
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.004247f3
push edi
xor ecx, ecx
call fcn.0047bce0
pop ecx
pop ecx
mov ecx, dword [ebp - 0x3c]
mov edx, esi
call fcn.00432cb7
cmp eax, ebx
jne 0x4382c5
cmp dword [0x529010], ebx
je 0x4382c1
mov eax, dword [0x529014]
cmp dword [eax - 0xc], ebx
je 0x4382c1
push ebx
push dword [0x528f44]
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0x11
jmp 0x438247
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.Vintegrate:
call fcn.004247f3
push ecx
mov byte [ebp - 4], 7
lea eax, [ebp + 0x18]
mov dword [ebp - 0x40], esp
mov ecx, esp
push eax
call fcn.00424efd
mov byte [ebp - 4], 5
call fcn.0046ed70
add esp, 0xc
cmp eax, ebx
je 0x438302
mov dword [ebp - 0x58], 1
jmp 0x43833d
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.VintegrateRecursive:
call fcn.004247f3
push ecx
mov byte [ebp - 4], 8
lea eax, [ebp + 0x18]
mov dword [ebp - 0x40], esp
mov ecx, esp
push eax
call fcn.00424efd
mov byte [ebp - 4], 5
call fcn.0046ed70
add esp, 0xc
cmp eax, ebx
je 0x43835f
mov dword [ebp - 0x58], 2
lea eax, [ebp + 0x18]
push eax
lea ecx, [ebp - 0x48]
call fcn.00424f1e
push ebx
push 0x3a
lea ecx, [ebp - 0x48]
call fcn.00426ece
push ebx
lea ecx, [ebp - 0x48]
inc eax
push ecx
call fcn.0042488a
push ecx
lea eax, [ebp + 0xc]
mov dword [ebp - 0x1c], esp
mov ecx, esp
push eax
mov esi, 0x528f38
call fcn.00424efd
mov ecx, esi
call fcn.004371a9
lea ecx, [ebp - 0x4c]
mov dword [esp], 0x4eaa5c
call fcn.004247f3
push dword [ebp - 0x58]
lea eax, [ebp - 0x20]
push str.VintegrateMode_d_n
push eax
mov byte [ebp - 4], 9
call fcn.0046aaf0
add esp, 0xc
mov byte [ebp - 4], 0xa
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x4c]
push eax
call fcn.00425b88
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.0046aaf0
add esp, 0xc
mov byte [ebp - 4], 0xb
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x4c]
push eax
call fcn.00425b88
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.0046aaf0
add esp, 0xc
mov byte [ebp - 4], 0xc
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x4c]
push eax
call fcn.00425b88
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.004247f3
push 1
push esi
call fcn.0047b9e0
add esp, 0x18
call fcn.0046b4c0
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.004247f3
push esi
mov ecx, ebx
call fcn.0047bce0
pop ecx
pop ecx
call fcn.0046d1a0
pop ecx
cmp eax, ebx
jne 0x438532
call fcn.0043445f
test eax, eax
jne 0x4384b8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x60], eax
call fcn.0042ff44
push 0x405
mov edi, 0x528f38
call fcn.00488250
pop ecx
push ecx
mov eax, esp
mov dword [ebp - 0x1c], esp
push dword [0x528f44]
push str.AppVirtDll__s.dll
push eax
call fcn.0046aaf0
lea eax, [ebp - 0x20]
add esp, 0xc
push eax
mov ecx, ebx
call fcn.0047bce0
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xd
call fcn.00424f1e
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.0042201a
push dword [0x528f50]
mov esi, dword [0x528f44]
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov ecx, dword [0x528fa4]
push eax
mov eax, esi
call fcn.00488730
mov edi, 0x4eaa5c
cmp dword [0x528f48], ebx
je 0x438591
mov eax, 0x528f48
jmp 0x4385a5
mov eax, dword [0x528f90]
cmp dword [eax - 0xc], ebx
je 0x4384b8
cmp dword [ebp + 0x10], 2
je 0x4384b8
push 1
push ecx
mov eax, esp
mov dword [ebp - 0x1c], esp
push dword [0x528f44]
push str.StartStreaming:AppID_s
push eax
call fcn.0046aaf0
add esp, 0xc
call fcn.0042761f
pop ecx
pop ecx
cmp eax, ebx
jne 0x4384b8
push dword [0x528f44]
lea eax, [ebp - 0x14]
push str.Cannot_stream_application__s_
push eax
call fcn.0046aaf0
add esp, 0xc
jmp 0x438165
push edi
lea ecx, [ebp - 0x78]
call fcn.004247f3
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x2c], 1
push eax
lea ecx, [ebp - 0x34]
call fcn.00424efd
mov dword [ebp - 4], 0x10
test byte [ebp - 0x2c], 1
je 0x4385ca
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 0x438831
mov eax, dword [0x529030]
cmp dword [eax - 0xc], ebx
je 0x4385f5
mov eax, dword [0x529034]
cmp eax, 2
je 0x4385f0
cmp eax, 3
jne 0x4385f5
call fcn.00437941
mov eax, dword [ebp + 0x18]
cmp dword [eax - 0xc], ebx
jne 0x4386c6
push 0x3b
push dword [0x528f48]
call fcn.004b94c8
pop ecx
pop ecx
test eax, eax
jne 0x43861e
cmp dword [ebp + 0x10], 1
jne 0x438831
push edi
lea ecx, [ebp - 0x30]
call fcn.004247f3
mov byte [ebp - 4], 0x11
cmp dword [0x529004], ebx
je 0x438697
cmp dword [ebp + 0x10], 1
je 0x438697
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.004247f3
push ecx
mov byte [ebp - 4], 0x12
mov eax, esp
mov dword [ebp - 0x40], esp
push dword [0x528f44]
push str.SoftwareVOS_s
push eax
call fcn.0046aaf0
add esp, 0xc
push SysReAllocStringLen
mov byte [ebp - 4], 0x11
call fcn.0046b5d0
add esp, 0x18
cmp eax, ebx
je 0x438697
mov eax, dword [ebp - 0x30]
cmp dword [eax - 0xc], ebx
je 0x438697
mov eax, edi
push eax
lea ecx, [ebp - 0x34]
call fcn.00424f1e
jmp 0x4386ba
push 0x404
mov edi, 0x528f38
call fcn.00488250
pop ecx
push ebx
push ebx
push ebx
push 0x436ee0
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 0x438829
push 1
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp + 0x18]
call fcn.004249e2
push 0x4f36e4
mov ecx, eax
mov byte [ebp - 4], 0x13
call fcn.00424e28
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 0x438831
push ebx
lea eax, [ebp + 0x18]
push eax
xor eax, eax
inc eax
call fcn.0042488a
push dword [ebp + 0x18]
call fcn.004bae91
pop ecx
push edi
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], ebx
call fcn.004247f3
mov byte [ebp - 4], 0x14
cmp dword [ebp - 0x20], ebx
mov dword [ebp - 0x30], ebx
jle 0x43880d
mov esi, 0x4eefb0
lea eax, [ebp - 0x18]
push eax
push 0x4eefa0
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x34]
call fcn.0042b624
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x15
call fcn.00424f1e
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 0x4387e8
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.0042b624
push esi
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x1c]
push eax
mov byte [ebp - 4], 0x16
call fcn.00424a42
add esp, 0xc
lea ecx, [ebp + 0x1c]
push ecx
push eax
lea eax, [ebp - 0x40]
push eax
mov byte [ebp - 4], 0x17
call fcn.0042c68a
add esp, 0xc
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x18
call fcn.00424f1e
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 0x438911
mov eax, dword [ebp - 0x24]
cmp dword [eax - 0xc], ebx
je 0x438911
inc dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x20]
jl 0x43873f
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x34]
call fcn.00424f1e
push edi
lea ecx, [ebp + 0x18]
call fcn.004253f4
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.004714d0
push dword [0x528f44]
lea eax, [ebp - 0x1c]
push 0x4f36e8
push eax
call fcn.0046aaf0
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 0x4388d3
push ecx
mov eax, esp
mov dword [ebp - 0x40], esp
push str.Loader_Main:_waiting_on_BasicDeployMutex
push eax
call fcn.0046aaf0
pop ecx
pop ecx
call fcn.00433da4
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.0046aaf0
pop ecx
pop ecx
call fcn.00433da4
pop ecx
push ebx
push dword [ebp + 0x10]
push 0x528f38
push dword [ebp + 8]
push dword [ebp - 0x14]
call fcn.00434780
add esp, 0x14
mov edi, eax
cmp esi, ebx
je 0x4388fe
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp edi, ebx
je 0x43892a
cmp edi, 7
jne 0x43891b
push str.Failed_deploying_files._Please_make_sure_application_is_not_currently_running_and_try_again.
jmp 0x438167
push 0xff
jmp 0x438247
lea eax, [ebp - 0x14]
push edi
push eax
call fcn.00471aa0
jmp 0x438163
cmp dword [ebp + 0x10], 2
je 0x438a26
push ebx
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.CryptCheck.dat
call fcn.004247f3
xor esi, esi
inc esi
lea eax, [ebp - 0x18]
push esi
push eax
call fcn.0047b9e0
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.00424efd
call fcn.0046d1a0
pop ecx
push ecx
mov dword [ebp - 0x14], esp
cmp eax, ebx
je 0x438af5
lea eax, [ebp - 0x18]
mov ecx, esp
push eax
lea esi, [ebp - 0x24]
call fcn.00424efd
mov ecx, esi
call fcn.00437e4a
pop ecx
cmp eax, ebx
je 0x4389de
cmp dword [ebp - 0x24], ebx
jne 0x4389de
lea eax, [ebp - 0x14]
push ebx
push eax
call fcn.00471b80
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.0046aaf0
add esp, 0xc
call fcn.00433da4
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 0x438167
push dword [ebp - 0x24]
lea eax, [ebp - 0x14]
push eax
call fcn.00471b80
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.0046aaf0
add esp, 0xc
call fcn.00433da4
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.004247f3
push ecx
mov byte [ebp - 4], 0x1c
mov ecx, esp
mov dword [ebp - 0x1c], esp
mov esi, str.SoftwareCameyo
push esi
call fcn.004247f3
push reloc.OLEAUT32.dll_SysReAllocString
mov byte [ebp - 4], 0x10
call fcn.0046b850
add esp, 0x14
cmp eax, ebx
jne 0x438aa7
push 1
lea eax, [ebp - 0x50]
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push edi
call fcn.004247f3
push ecx
mov byte [ebp - 4], 0x1d
mov ecx, esp
mov dword [ebp - 0x1c], esp
push esi
call fcn.004247f3
mov byte [ebp - 4], 0x1e
call fcn.0047b0e0
push eax
mov byte [ebp - 4], 0x10
call fcn.0046b850
add esp, 0x14
cmp eax, ebx
je 0x438b51
cmp dword [ebp - 0x50], ebx
je 0x438b51
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_RequireManaged
call fcn.004247f3
call fcn.00433da4
lea eax, [ebp - 0x38]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424efd
call fcn.004269d8
pop ecx
cmp eax, ebx
jne 0x438b51
push ebx
push 0x4e94d0
push str.You_are_not_allowed_to_use_unmanaged_apps.
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
push ebx
jmp 0x438247
mov eax, esp
push str.Loader_Main:_CryptIntegrity:_saving_CryptCheck
push eax
call fcn.0046aaf0
pop ecx
pop ecx
call fcn.00433da4
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424efd
call fcn.00437c33
pop ecx
cmp eax, ebx
jne 0x438a17
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.0046aaf0
add esp, 0xc
call fcn.00433da4
mov dword [esp], str.Could_not_save_encryption_integrity_check.
jmp 0x438167
mov eax, dword [0x528fd4]
cmp dword [eax - 0xc], ebx
je 0x438b71
push ecx
mov dword [ebp - 0x14], esp
mov ecx, esp
push 0x528fd4
call fcn.00424efd
call fcn.00436d14
pop ecx
mov eax, dword [ebp + 0x18]
mov eax, dword [eax - 0xc]
cmp eax, ebx
je 0x438bb5
push 1
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp + 0x18]
call fcn.004249e2
mov byte [ebp - 4], 0x1f
or dword [ebp - 0x2c], 2
push 0x4f36e4
mov ecx, eax
call fcn.00424e28
test eax, eax
je 0x438bb5
push ebx
push 0x5c
lea ecx, [ebp + 0x18]
call fcn.00426ece
mov byte [ebp - 0x25], 1
cmp eax, 0xffffffff
je 0x438bb8
mov byte [ebp - 0x25], bl
mov dword [ebp - 4], 0x10
test byte [ebp - 0x2c], 2
je 0x438bd0
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
cmp byte [ebp - 0x25], bl
je 0x438cb4
call fcn.004aa2e3
push eax
lea ecx, [ebp - 0x24]
call fcn.0042249b
mov byte [ebp - 4], 0x20
call fcn.004aa2e3
push eax
lea ecx, [ebp - 0x18]
call fcn.0042249b
mov byte [ebp - 4], 0x21
call fcn.00476000
lea eax, [ebp - 0x18]
push eax
push 0x43419a
push ebx
push dword [0x5287ac]
push 0x5287a4
call fcn.0048bec0
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.00424efd
push ecx
mov byte [ebp - 4], 0x22
lea eax, [ebp + 0x18]
mov dword [ebp - 0x1c], esp
mov ecx, esp
push eax
call fcn.00424efd
mov byte [ebp - 4], 0x21
call fcn.00477490
add esp, 0x14
cmp eax, ebx
je 0x438c9a
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp + 0x18]
call fcn.00424f1e
lea eax, [ebp + 0x18]
push eax
call fcn.0047a880
lea eax, [ebp + 0x18]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424efd
lea eax, [ebp - 0x14]
push eax
call fcn.0047b610
pop ecx
pop ecx
push eax
lea ecx, [ebp + 0x18]
mov byte [ebp - 4], 0x23
call fcn.00424f1e
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.0046aaf0
add esp, 0x14
call fcn.00433da4
cmp dword [ebp + 0x10], 2
pop ecx
je 0x439604
mov eax, dword [0x528f80]
cmp dword [eax - 0xc], ebx
je 0x438e1e
mov eax, dword [ebp + 0x18]
cmp dword [eax - 0xc], ebx
je 0x438d0c
push 0x4f3d44
lea ecx, [ebp + 0x18]
call fcn.00424e28
test eax, eax
jne 0x438e1e
lea esi, [ebp - 0x74]
call fcn.00488c20
push ebx
push ebx
push ecx
mov byte [ebp - 4], 0x24
mov dword [ebp - 0x14], esp
mov ecx, esp
push 0x528f44
call fcn.00424efd
call fcn.004887a0
mov esi, eax
cmp esi, ebx
je 0x438dd5
cmp dword [esi + 0x424], ebx
je 0x438dd5
call fcn.004aa2e3
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 0x438dad
lea edi, [esi + 0x428]
push dword [edi]
lea eax, [ebp - 0x14]
push 0x4f3dbc
push eax
call fcn.0046aaf0
add esp, 0xc
mov byte [ebp - 4], 0x26
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x20]
push eax
call fcn.00425b88
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 0x438d68
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.0046aaf0
add esp, 0xc
call fcn.00433da4
pop ecx
lea ecx, [esi - 0x10]
call fcn.0042201a
jmp 0x438e12
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_AutoUpdate:_triggering_async_autoupdate
call fcn.004247f3
call fcn.00433da4
mov eax, dword [0x528bf0]
pop ecx
cmp eax, ebx
je 0x438dfb
push eax
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push ebx
push ebx
push ebx
push 0x43718a
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.00488c40
mov eax, dword [0x528fd0]
test al, 2
je 0x438edf
mov dword [ebp - 0x1c], ebx
push eax
lea ebx, [ebp - 0x14]
call fcn.0042aa02
pop ecx
push eax
lea eax, [ebp - 0x18]
push str._Quiet__ScmDirectInit:
push eax
mov byte [ebp - 4], 0x27
call fcn.00424a97
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.004247f3
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.00424efd
push ecx
mov byte [ebp - 4], 0x2b
mov dword [ebp - 0x64], esp
mov ecx, esp
push 0x528fa0
call fcn.00424efd
mov byte [ebp - 4], 0x29
call fcn.00469590
add esp, 0x10
test eax, eax
jne 0x438ece
push ecx
mov eax, esp
mov dword [ebp - 0x40], esp
push dword [ebp - 0x18]
push dword [0x528fa0]
push str._Loader_Main:_ScmDirectInit:_could_not_execute___s___s
push eax
call fcn.0046aaf0
add esp, 0x10
call fcn.00433da4
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 0x438f7f
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x20]
call fcn.00424efd
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 4], 0x2c
call fcn.0047a880
mov edi, dword [ebp - 0x20]
pop ecx
mov ecx, dword [ebp - 0x38]
push 1
push edi
call fcn.0042662e
pop ecx
pop ecx
test eax, eax
je 0x438f2d
push ebx
push ebx
push ebx
push 0x8000000
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
mov dword [ebp - 0x54], 2
jmp 0x438f73
call fcn.004aa2e3
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.0042261a
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 0x4395ff
mov eax, dword [ebp - 0x34]
cmp dword [eax - 0xc], ebx
jne 0x438f93
mov eax, dword [ebp + 0x18]
cmp dword [eax - 0xc], ebx
je 0x439604
cmp dword [ebp - 0x44], ebx
je 0x439087
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_Waiting_for_AutoLaunchMenu
push eax
call fcn.0046aaf0
pop ecx
pop ecx
call fcn.00433da4
mov edi, 0x528f38
mov dword [esp], 0x404
call fcn.00488250
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 0x528f48
lea ecx, [ebp - 0x34]
call fcn.00424f1e
push str._Cancel_
lea ecx, [ebp - 0x34]
call fcn.00424e28
test eax, eax
jne 0x43906e
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_cancelled_n
call fcn.004247f3
call fcn.00433da4
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 0x439683
call fcn.0043445f
test eax, eax
jne 0x439087
call fcn.0042ff44
push 0x405
call fcn.00488250
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.0046aaf0
add esp, 0xc
call fcn.00433da4
pop ecx
mov dword [ebp - 0x18], ebx
call fcn.004aa2e3
push eax
lea ecx, [ebp - 0x2c]
call fcn.0042249b
mov byte [ebp - 4], 0x2e
call fcn.004aa2e3
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.00424efd
lea eax, [ebp - 0x14]
push eax
call fcn.0046e6f0
add esp, 0xc
mov byte [ebp - 4], 0x30
call fcn.00424939
push eax
lea ecx, [ebp - 0x2c]
call fcn.00424f1e
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.00424efd
lea eax, [ebp - 0x14]
push eax
call fcn.0046e6f0
add esp, 0xc
mov byte [ebp - 4], 0x31
call fcn.00424939
push eax
lea ecx, [ebp - 0x44]
call fcn.00424f1e
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.00424efd
lea eax, [ebp - 0x14]
push eax
call fcn.0047be70
add esp, 0x14
mov byte [ebp - 4], 0x32
push eax
lea ecx, [ebp - 0x2c]
call fcn.00424f1e
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.0046aaf0
add esp, 0xc
call fcn.00433da4
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.0046aaf0
add esp, 0xc
call fcn.00433da4
mov edi, dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov dword [esp], str.TRUE
push str.CAMEYO_VIRTUALAPP
call edi
cmp dword [0x529034], ebx
je 0x439203
push 0x6f
push 0x10
lea eax, [ebp - 0x14]
push 0x529038
push eax
call fcn.00471e50
add esp, 0x10
push dword [eax]
push str._CEK_
call edi
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
push 0x4ece08
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.0046aaf0
add esp, 0x14
call fcn.00433da4
pop ecx
cmp dword [0x529034], ebx
je 0x43925a
push ebx
push str._CEK_
call edi
push 0x4eaa5c
push esi
call edi
call fcn.004aa2e3
push eax
lea ecx, [ebp - 0x18]
call fcn.0042249b
mov byte [ebp - 4], 0x33
call fcn.004aa2e3
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 0x4392c7
mov eax, esp
push dword [ebp - 0x2c]
push str.ExecName:_Taking_AutoLaunchCmd_s
push eax
call fcn.0046aaf0
add esp, 0xc
call fcn.00433da4
pop ecx
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x18]
call fcn.00424f1e
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp - 0x30]
cmp dword [eax - 0xc], ebx
jne 0x4392ed
lea eax, [ebp - 0x44]
jmp 0x4392f0
mov ecx, esp
push eax
push str.ExecName:_Taking_ExecCmd_s
push ecx
call fcn.0046aaf0
add esp, 0xc
call fcn.00433da4
pop ecx
lea eax, [ebp + 0x18]
push eax
lea ecx, [ebp - 0x18]
call fcn.00424f1e
lea ecx, [ebp - 0x30]
lea eax, [ebp + 0x1c]
push eax
call fcn.00424f1e
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x24]
call fcn.00424efd
lea eax, [ebp - 0x24]
push eax
mov byte [ebp - 4], 0x35
call fcn.0047a880
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.0046aaf0
add esp, 0x10
call fcn.00433da4
pop ecx
mov esi, str.Original
push esi
push dword [0x528fdc]
call fcn.004b8761
pop ecx
pop ecx
test eax, eax
je 0x439384
push 0x5c
push ecx
lea eax, [ebp - 0x24]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.00424efd
lea eax, [ebp - 0x14]
push eax
call fcn.0046af00
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.00424efd
lea eax, [ebp - 0x14]
push eax
call fcn.0046af00
add esp, 0xc
mov byte [ebp - 4], 0x36
push dword [eax]
push str.Loader_Main:_SetCurrentDirectory__s__d
push edi
call fcn.0046aaf0
add esp, 0x10
call fcn.00433da4
pop ecx
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0042201a
mov eax, dword [0x528fdc]
cmp dword [eax - 0xc], ebx
je 0x43940e
push esi
push eax
call fcn.004b8761
pop ecx
pop ecx
test eax, eax
je 0x43940e
push ecx
mov dword [ebp - 0x14], esp
mov ecx, esp
push 0x528fdc
call fcn.00424efd
call fcn.0046d1e0
pop ecx
cmp eax, ebx
je 0x43940e
mov eax, dword [0x528fdc]
mov dword [ebp - 0x20], eax
jmp 0x439411
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.004247f3
push ebx
push esi
call fcn.0047b9e0
add esp, 0x18
call fcn.0046d1a0
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.004247f3
push ebx
push edi
call fcn.0047b9e0
add esp, 0x18
call fcn.0046d1a0
mov dword [ebp - 0x14], esp
mov edi, eax
mov eax, esp
push edi
push esi
push dword [0x528bf4]
push str.Loader_Main:_EULA:_g_hEulaThread_d__EulaFile_d__EulaAccepted_d
push eax
call fcn.0046aaf0
add esp, 0x14
call fcn.00433da4
pop ecx
cmp dword [0x528bf4], ebx
jne 0x4394a8
cmp esi, ebx
je 0x4394e0
cmp edi, ebx
jne 0x4394e0
push ebx
call fcn.00436fa7
call fcn.004372d9
cmp dword [0x528bf4], ebx
je 0x4394e0
push ecx
mov eax, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_waiting_for_EULA_to_be_accepted
push eax
call fcn.0046aaf0
pop ecx
pop ecx
call fcn.00433da4
pop ecx
push 0xffffffffffffffff
push dword [0x528bf4]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push dword [0x528bf4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.004372d9
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.0046aaf0
add esp, 0x10
call fcn.00433da4
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.00424efd
push ecx
mov byte [ebp - 4], 0x37
lea eax, [ebp - 0x38]
mov dword [ebp - 0x1c], esp
mov ecx, esp
push eax
call fcn.00424efd
push ecx
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x18]
mov dword [ebp - 0x40], esp
mov ecx, esp
push eax
call fcn.00424efd
mov byte [ebp - 4], 0x35
call fcn.00433dfb
add esp, 0x18
cmp eax, ebx
je 0x439593
mov edi, dword [ebp - 0x60]
mov dword [ebp - 0x54], 1
cmp edi, ebx
je 0x4395cc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, eax
sub edx, edi
mov ecx, 0x1770
cmp edx, ecx
jae 0x439581
sub edi, eax
push 1
add edi, ecx
push edi
call dword [sym.imp.KERNEL32.dll_SleepEx]
push 0x404
mov edi, 0x528f38
call fcn.00488250
pop ecx
jmp 0x4395cc
test byte [ebp + 0x20], 2
jne 0x4395c9
push dword [ebp - 0x3c]
lea eax, [ebp - 0x14]
push esi
push str.Could_not_execute__s__Error_d_
push eax
call fcn.0046aaf0
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, 0x528f38
call fcn.00488250
mov ecx, esp
mov dword [ebp - 0x14], esp
push str.Loader_Main:_out_n
call fcn.004247f3
call fcn.00433da4
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.004bef50
ret