Function at 0x409adc
Capabilities:
Check mutex on windows
Print debug messages
Set environment variable

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa64
push ebx
push esi
push edi
push 0x9ea
xor esi, esi
push esi
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov edi, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push str.tw0xu14w8
call edi
push str.XMLb8uaoddh
push 1
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push esi
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
mov ebx, dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push str.WTMR_adwimds2
push 1
push esi
call ebx
test eax, eax
je 0x409b41
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
push str.WTMR_t9m6egtl
push 1
push esi
call ebx
mov ebx, dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
mov esi, eax
push str.yiiah0mu
push str.xs5vk1s3
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
push str.SMPHR_ryx02sq6
push 1
xor esi, esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push esi
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push esi
call dword [sym.imp.ole32.dll_CoInitialize]
push esi
push 0xd46
push esi
push 4
push esi
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push str.xzk43o9r
push str.ge955tme
mov esi, eax
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push str.f1tx9ijh
push str.d4cmirb6
call ebx
push str.XMLjlel85wp
push 1
xor ebx, ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push ebx
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
mov esi, dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push str.WTMR_dyzpca0g
push 1
push ebx
call esi
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
lea eax, [esp + 0x58]
push eax
push 0x20019
push ebx
push str.regl9ou77sk
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push str.WTMR_v69s0jur
push 1
push ebx
call esi
test eax, eax
je 0x409c1f
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
jmp 0x409c25
call dword [sym.imp.KERNEL32.dll_GetLastError]
push str.SMPHR_e2jplyy5
push 1
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push ebx
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x409c49
push str.tf9fnyzeu
jmp 0x409c4e
push str.tygxt7169
call edi
call section..text
push 0xd79
push ebx
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
push 0xa
pop ebx
push str.tv8nwi2ye
call edi
sub ebx, 1
jne 0x409c6b
push str.WTMR_2txq3mdt
push 1
push ebx
call esi
push str.ty1p0rbxh
mov dword [esp + 0x18], eax
call edi
mov eax, dword [esp + 0x14]
mov ebx, dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
test eax, eax
je 0x409ca1
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
push str.MTXpzc2har6
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [esp + 0x14], eax
test eax, eax
je 0x409cd0
push str.ft98khpd
push str.omc9fsdv
call ebx
push dword [esp + 0x14]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
jmp 0x409cd7
push str.tp32whtjp
call edi
push str.XMLf3sp4yo9
push 1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push str.qjqhz0u1
push str.1yqp8rgm
call ebx
push str.SMPHR_2eq14qd1
push 1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
jne 0x409d26
push str.tamx0g12y
call edi
push str.WTMR_vyhzltt5
push 1
push 0
call esi
call fcn.0040ded0
test eax, eax
jne 0x409d41
push eax
call dword [0x41502c]
mov ecx, str.bbbec09fb70501082e2a2e9916afbab0
call fcn.0040ed79
push str.WTMR_tr76xwe3
push 1
push 0
mov dword [esp + 0x28], eax
call esi
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
push str.llliohkc
push str.f5p68xvg
call ebx
push str.SMPHR_6lpzdlwo
push 1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x409d94
push str.t67h61xmt
jmp 0x409d99
push str.tjetkpjp5
call edi
lea eax, [esp + 0x70]
push eax
push str.s_2ubk6zki
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
push 0xb49
push 0
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 2
pop edi
push str.lsdlhn77
push str.002oxa6s
call ebx
sub edi, 1
jne 0x409dcf
push str.WTMR_vxf9syn6
push 1
push edi
call esi
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0x14], eax
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
test eax, eax
je 0x409e0b
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
call fcn.00404b50
call fcn.0040dff8
test eax, eax
je 0x409e1e
call fcn.0040e38d
push str.MTXs7yc2cpf
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
test eax, eax
je 0x409e46
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push str.9kcjkxl4
push str.uy3n4usz
call ebx
jmp 0x409e48
call esi
push str.ev_mo34bm41
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push esi
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push str.XMLnusjnsj4
push 1
xor esi, esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push esi
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
lea eax, [esp + 0x5c]
push eax
push 0x20019
push esi
push str.regxdm8zho5
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push esi
push 0xba0
push esi
push 4
push esi
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push str.p1bpvb3k
push str.161wgn8y
mov esi, eax
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push str.f35cv2jv
push str.e0qagkaq
call ebx
push 0x80a
push 0
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov esi, dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push str.WTMR_sj1xw7ld
push 1
push 0
call esi
push str.tlvo7moy8
mov dword [esp + 0x18], eax
call edi
mov eax, dword [esp + 0x14]
test eax, eax
je 0x409f11
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
push str.WTMR_cjcjokyw
push 1
push 0
call esi
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
lea eax, [esp + 0x60]
push eax
push 0x20019
push 0
push str.regihm21o6p
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push ecx
mov ecx, 0x4130b8
call fcn.0040dc49
mov dword [esp], 0x824
push 0
mov dword [esp + 0x1c], eax
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push str.c5wa0nkd
push str.ku9syi5h
mov esi, eax
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_LocalFree]
push str.eazbdckw
push str.p44tx6zp
call ebx
push str.WTMR_90d3uvs3
push 1
xor esi, esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
test eax, eax
je 0x409f9b
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
jmp 0x409fa7
push str.27tkawec
push str.9as963us
call ebx
push esi
push 0xaab
push esi
push 4
push esi
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push str.XML0vfjvhca
push 1
push 0
push 0
call esi
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push str.WTMR_p0n3nl7z
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
lea eax, [esp + 0x64]
push eax
push 0x20019
push 0
push str.regpf00k4ni
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push str.SMPHR_y57u78i2
push 1
push 0
push 0
call esi
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x40a052
lea eax, [esp + 0x2c]
push eax
push 0x20019
push 0
push str.regln1bdbu9
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
jmp 0x40a059
push str.tqeqy21fj
call edi
push ecx
mov ecx, 0x4131a8
call fcn.0040dc49
pop ecx
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x1b0]
push eax
push str.s_prfrvct4
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
push str.SMPHR_uop44cey
push 1
push 0
push 0
call esi
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x40a0ad
push str.q3etk14f
push str.3ea1jj2a
call ebx
jmp 0x40a0b4
push str.tcbeioeps
call edi
push str.XMLxkunipu6
push 1
push 0
push 0
call esi
xor esi, esi
push esi
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push str.ev_4y0ori58
push esi
push 1
push esi
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push esi
call dword [sym.imp.KERNEL32.dll_ResetEvent]
mov esi, dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push str.WTMR_obehzf3u
push 1
push 0
call esi
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
push str.tiwnylch0
call edi
xor eax, eax
push eax
push 0x1ee
push eax
push 4
push eax
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push str.MTX4z00y3dg
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
test eax, eax
je 0x40a142
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
jmp 0x40a164
lea eax, [esp + 0x30]
push eax
push 0x20019
push 0
push str.regvftu6lz0
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ecx
mov ecx, 0x413278
call fcn.0040dc49
pop ecx
mov dword [esp + 0x30], eax
xor eax, eax
push eax
push 0x11bd
push eax
push 4
push eax
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push str.teqpwudeb
call edi
push str.MTXdhtqvkw3
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
test eax, eax
je 0x40a1b0
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push 0xa31
push 0
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
lea eax, [esp + 0x68]
push eax
push 0x20019
push 0
push str.regaq0b5t8d
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push str.WTMR_oub7h52a
push 1
push 0
call esi
push str.5d227bfk
push str.j9t3a45b
mov esi, eax
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
mov esi, dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push str.XML71cmvfhb
push 1
push 0
push 0
call esi
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push str.SMPHR_vlpohx8g
push 1
push 0
push 0
call esi
push str.kb6fjaib
push str.braglban
mov esi, eax
call ebx
push 0
push 1
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x40a264
lea eax, [esp + 0x10]
push eax
push 0x20019
push 0
push str.regtg6hgy4i
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push str.ev_gl9rlb32
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push esi
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push str.WTMR_mj0fpgou
push 1
xor esi, esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push ecx
mov ecx, 0x413368
call fcn.0040dc49
mov dword [esp], str.ev_69lhuihm
push esi
push 1
push esi
mov dword [esp + 0x20], eax
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push esi
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push 0x39
push 0
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push str.toy33ol74
mov esi, eax
call edi
push esi
call dword [sym.imp.KERNEL32.dll_LocalFree]
push str.tdsc9rk0q
call edi
xor eax, eax
push eax
push 0x28f
push eax
push 4
push eax
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push str.tcgrgqimv
mov esi, eax
call edi
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push str.SMPHR_g6taiqrz
push 1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push str.7gl86t31
push str.g85kbixa
mov esi, eax
call ebx
push 0
push 1
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x40a33e
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [esp + 0x2f0]
push eax
push str.s_si61chqu
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov esi, dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push str.WTMR_a48a899t
push 1
push 0
call esi
test eax, eax
je 0x40a376
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
jmp 0x40a37d
push str.t4xm2me3a
call edi
push str.WTMR_pto6pfv2
push 1
push 0
call esi
push str.ohdt31xv
push str.51v3k8q2
mov esi, eax
call ebx
mov ebx, dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
push esi
call ebx
mov esi, dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push str.XML3n3278d8
push 1
push 0
push 0
call esi
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push ecx
mov ecx, str.
call fcn.0040dc49
mov dword [esp], str.XMLk2begpxq
push 1
push 0
push 0
mov dword [esp + 0x38], eax
call esi
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push str.SMPHR_sppgcywv
push 1
push 0
push 0
call esi
push str.txa3akxyw
mov esi, eax
call edi
xor edi, edi
push edi
push 1
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x40a414
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x40a42f
lea eax, [esp + 0x24]
push eax
push 0x20019
push edi
push str.reg130n27js
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push str.WTMR_f6qx4h48
push 1
push edi
call dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test esi, esi
je 0x40a44c
push esi
call ebx
push str.ev_pbzpxiig
push edi
push 1
push edi
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push esi
call dword [sym.imp.KERNEL32.dll_ResetEvent]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x34]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x54], eax
mov eax, dword [0x4153cc]
mov dword [esp + 0x34], eax
mov eax, dword [0x415234]
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], edi
call fcn.0040bc7d
mov ecx, dword [0x41504c]
push 0x1000
push 0x40
mov dword [esp + 0x2c], eax
call ecx
mov ecx, dword [0x41504c]
push 0x618
push 0x40
mov dword [esp + 0x1c], eax
call ecx
mov esi, eax
call fcn.0040f4f1
mov edi, eax
call fcn.0040f75c
push dword [0x415414]
mov ecx, dword [0x415144]
mov ebx, eax
push esi
call ecx
mov edx, edi
mov ecx, eax
call fcn.0040f012
mov edx, dword [0x41523c]
mov ecx, eax
call fcn.0040f012
mov edx, ebx
mov ecx, eax
call fcn.0040f012
mov edx, dword [0x4153bc]
mov ecx, eax
call fcn.0040f012
mov edx, dword [esp + 0x1c]
mov ecx, eax
call fcn.0040f012
mov ecx, dword [0x415144]
mov esi, eax
push esi
push dword [esp + 0x18]
call ecx
push esi
mov dword [esp + 0x14], eax
call dword [0x4150cc]
mov ecx, dword [0x41504c]
push 0x800
push 0x40
call ecx
mov edi, dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov dword [esp + 0x18], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov ecx, dword [esp + eax*4 + 0x44]
call fcn.0040ed79
mov ecx, dword [0x415090]
mov esi, eax
push esi
mov dword [esp + 0x20], esi
call ecx
cmp word [esi + eax*2 - 2], 0x2f
je 0x40a5a4
mov edx, dword [0x415294]
mov ecx, esi
call fcn.0040f012
mov esi, eax
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x3c]
mov ecx, esi
push eax
push dword [esp + 0x28]
push dword [esp + 0x18]
call fcn.0040af5d
add esp, 0xc
mov dword [esp + 0x20], eax
xor eax, eax
push eax
push 0x798
push eax
push 4
push eax
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push str.tvu3egh8o
mov esi, eax
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [esp + 0x6c]
push eax
push 0x20019
push 0
push str.regx7zezh7y
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov esi, dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push str.WTMR_21gm8brb
push 1
push 0
call esi
mov dword [esp + 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov eax, dword [esp + 0x14]
test eax, eax
je 0x40a62b
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
jmp 0x40a637
push str.v30tm2d8
push str.pbzzr5wc
call edi
push str.SMPHR_fqkemyr8
push 1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x40a675
lea eax, [esp + 0x2c]
push eax
push 0x20019
push 0
push str.reg8zns2qjh
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
jmp 0x40a67b
call dword [sym.imp.KERNEL32.dll_GetLastError]
push dword [esp + 0x20]
mov eax, dword [0x415090]
call eax
push dword [esp + 0x1c]
cmp eax, 0x40
jge 0x40a6b8
call dword [0x4150cc]
cmp dword [esp + 0x20], 0
jne 0x40a6a4
push 0
call dword [0x4150cc]
mov eax, dword [esp + 0x28]
inc eax
mov dword [esp + 0x28], eax
cmp eax, 1
jl 0x40a571
jmp 0x40a6d1
push dword [esp + 0x1c]
mov eax, dword [0x415144]
call eax
push dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
call dword [0x4150cc]
push dword [esp + 0x24]
call dword [0x4150cc]
push dword [esp + 0x10]
call dword [0x4150cc]
mov eax, dword [0x41504c]
push 0x208
push 0x40
call eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], eax
call fcn.0040e48d
cmp dword [esp + 0x20], 0
je 0x40af42
push str.SMPHR_i1maa28u
push 1
xor ebx, ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push ebx
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
lea eax, [esp + 0x14]
push eax
push 0x20019
push ebx
je 0x40a73c
push str.regne7jg826
jmp 0x40a741
push str.reg2w5gfbud
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push str.XMLmzyb9zn8
push 1
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push ebx
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push 0x4ac
push ebx
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
lea eax, [esp + 0x430]
push eax
push str.s_tfgtj6rz
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
push ebx
push 0xc33
push ebx
push 4
push ebx
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push str.niw9gxm6
push str.t5lc3xp7
call edi
push str.WTMR_w7d4e7br
push 1
push ebx
call esi
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 2
pop ebx
push str.jl4t9b96
push str.khhzyesc
call edi
sub ebx, 1
jne 0x40a7d1
push str.WTMR_cd3vbeik
push 1
push ebx
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
test eax, eax
je 0x40a7ff
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
jmp 0x40a806
push str.tz5axcx62
call ebx
mov esi, dword [esp + 0x20]
mov ecx, esi
mov edx, dword [esp + 0x1c]
call fcn.0040bcbf
push dword [0x415514]
mov eax, dword [0x415190]
and dword [esp + 0x14], 0
push esi
call eax
test eax, eax
je 0x40a836
sub eax, esi
sar eax, 1
mov dword [esp + 0x10], eax
jmp 0x40a83e
push 0xffffffffffffffff
call dword [0x41502c]
mov eax, dword [0x41504c]
push 0x100
push 0x40
call eax
mov dword [esp + 0x24], eax
mov eax, dword [0x415090]
push esi
call eax
push eax
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x28]
add eax, 6
mov ecx, esi
push eax
call fcn.0040eb7b
pop ecx
pop ecx
test eax, eax
jne 0x40a87a
push 0xfffffffffffffffe
call dword [0x41502c]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
call fcn.0040f012
push dword [esp + 0x24]
mov dword [esp + 0x1c], eax
call dword [0x4150cc]
mov eax, dword [0x41504c]
mov esi, 0x208
push esi
push 0x40
call eax
push dword [esp + 0x1c]
mov ecx, dword [0x415144]
push eax
call ecx
mov edx, dword [0x4152a8]
mov ecx, eax
call fcn.0040f012
mov edx, dword [0x415448]
mov ecx, eax
call fcn.0040f012
mov ecx, dword [0x41504c]
push esi
push 0x40
mov dword [esp + 0x38], eax
call ecx
push dword [esp + 0x1c]
mov ecx, dword [0x415144]
push eax
call ecx
mov edx, dword [0x4152a8]
mov ecx, eax
call fcn.0040f012
mov edx, dword [0x415570]
mov ecx, eax
call fcn.0040f012
push dword [esp + 0x1c]
mov dword [esp + 0x18], eax
call dword [0x4150dc]
mov ecx, dword [0x41504c]
push 0x5000
push 0x40
call ecx
push 0x2800
mov esi, eax
push esi
push dword [0x41537c]
call dword [0x415164]
mov edx, dword [0x415200]
mov ecx, esi
call fcn.0040f012
mov edx, dword [esp + 0x1c]
mov ecx, eax
call fcn.0040f012
mov esi, eax
push esi
push dword [0x41537c]
call dword [0x415168]
push esi
call dword [0x4150cc]
push dword [esp + 0x18]
mov esi, dword [esp + 0x24]
push esi
call fcn.0040d5e0
push dword [esp + 0x14]
mov eax, dword [0x41503c]
call eax
mov dword [esp + 0x2c], eax
test eax, eax
je 0x40acff
push str.XML5fi0z4wo
push 1
xor esi, esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push esi
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
lea eax, [esp + 0x570]
push eax
push str.s_sny9se1j
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
push str.ev_bvwkjxju
push esi
push 1
push esi
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push esi
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push str.SMPHR_uwv8pkbg
push 1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push str.b4z1gplo
push str.stbpwo2y
mov esi, eax
call edi
push 0
push 1
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
xor esi, esi
test eax, eax
jne 0x40aa24
lea eax, [esp + 0x10]
push eax
push 0x20019
push esi
push str.regtdxb12x8
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push str.MTXapeqgoy0
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
test eax, eax
je 0x40aa3c
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push esi
push 0xaf0
push esi
push 4
push esi
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push str.hv8euc46
push str.6g69ivna
call edi
push str.WTMR_hs0dk2a5
push 1
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
call esi
mov dword [esp + 0x10], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov eax, dword [esp + 0x10]
test eax, eax
je 0x40aa98
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
push str.bogln9j8
push str.azsmnf7g
call edi
jmp 0x40aa9e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [esp + 0x20]
call fcn.00404a1f
push str.MTXqamhcxjd
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
test eax, eax
je 0x40aac3
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
jmp 0x40aad0
push str.tdrs9xk82
call ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push str.WTMR_v5k45pxa
push 1
push 0
call esi
test eax, eax
je 0x40aae6
push eax
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
push str.WTMR_yr4guqvv
push 1
push 0
call esi
push str.su1oex00
push str.xdjt50gy
mov esi, eax
call edi
push esi
call dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
mov esi, dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push str.XMLz5rmbhid
push 1
push 0
push 0
call esi
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
lea eax, [esp + 0x10]
push eax
push 0x20019
push 0
push str.reguqgyqj10
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
xor eax, eax
push eax
push 0x4f
push eax
push 4
push eax
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [esp + 0x28]
push eax
push 0x20019
push 0
push str.reguwfk0hla
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push 0x6c9
push 0
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
push eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [esp + 0x6b0]
push eax
push str.s_gt9kio2q
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
push str.SMPHR_2hyvdvo7
push 1
push 0
push 0
call esi
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x40abd2
push str.z1t84hi9
push str.4u0yaheq
call edi
jmp 0x40abd9
push str.tmpq5eank
call ebx
push dword [esp + 0x18]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x30]
call fcn.00404994
pop ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push str.WTMR_nxosby4a
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push str.s264ue31
push str.mokchxe1
mov esi, eax
call edi
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
call esi
push str.WTMR_89mr44nv
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x24]
push eax
push 0x20019
push 0
push str.regd2rr3a8q
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov eax, dword [esp + 0x10]
test eax, eax
je 0x40ac51
push eax
call esi
lea eax, [esp + 0x7f0]
push eax
push str.s_ww785inq
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
push str.SMPHR_vpy2bwwa
push 1
xor esi, esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push esi
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x40aca5
lea eax, [esp + 0x10]
push eax
push 0x20019
push esi
push str.reg4dqscw5e
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push str.ev_ky9wrxpo
push esi
push 1
push esi
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push esi
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push str.MTXz3u02dvk
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov esi, eax
test esi, esi
je 0x40acf5
push str.th165yn1l
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push str.d7sl3m43
push str.5jmcc7u5
call edi
jmp 0x40acfb
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, dword [esp + 0x20]
push dword [esp + 0x30]
mov eax, dword [0x41503c]
call eax
mov dword [esp + 0x28], eax
test eax, eax
je 0x40ad61
mov ecx, dword [0x41504c]
push 0x208
push 0x40
call ecx
push 0
push 0x1a
push eax
push 0
mov dword [esp + 0x20], eax
call dword [0x4150c8]
mov ecx, dword [esp + 0x28]
call fcn.004083ae
test eax, eax
je 0x40ad57
mov edx, dword [esp + 0x10]
mov ecx, edx
push 0
push dword [esp + 0x2c]
push dword [esp + 0x20]
call fcn.00408109
add esp, 0xc
push dword [esp + 0x10]
call dword [0x4150cc]
mov edx, dword [esp + 0x18]
mov ecx, esi
call fcn.0040ffe8
mov edx, dword [esp + 0x18]
mov ecx, esi
call fcn.004103e1
mov edx, dword [esp + 0x18]
mov ecx, esi
call fcn.0040739f
push dword [esp + 0x18]
push esi
call fcn.0040c6fe
mov edx, dword [esp + 0x18]
mov ecx, esi
call fcn.0040d8aa
mov edx, dword [esp + 0x18]
mov ecx, esi
call fcn.00406d6e
push dword [esp + 0x20]
mov eax, dword [0x415090]
mov esi, dword [0x41504c]
call eax
add eax, eax
push eax
push 0x40
call esi
mov dword [esp + 0x24], eax
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x24]
call fcn.0040c0bd
test eax, eax
jle 0x40addd
push dword [esp + 0x18]
push dword [esp + 0x28]
call fcn.0040c15a
push dword [esp + 0x24]
call dword [0x4150cc]
push str.ev_hdsn5yos
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push esi
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push str.WTMR_7fjgma4m
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
push str.un3l2zxs
push str.lgunryec
mov esi, eax
call edi
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
call esi
xor eax, eax
push eax
push 0xde1
push eax
push 4
push eax
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [esp + 0x34]
push eax
push 0x20019
push 0
push str.regppkzko0j
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push str.XMLsuug0zye
push 1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
push 0
push 1
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
push str.MTXxjk5ahv4
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [esp + 0x10], eax
test eax, eax
je 0x40aeb2
push str.ttllcje41
call ebx
push dword [esp + 0x10]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push str.t1llz488k
call ebx
jmp 0x40aebe
push str.5nvulrot
push str.5ce5ttlh
call edi
lea eax, [esp + 0x930]
push eax
push str.s_a0toa3p9
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
push str.WTMR_x8gpb0lb
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateWaitableTimerA]
test eax, eax
je 0x40aeee
push eax
call esi
mov ebx, dword [esp + 0x20]
mov ecx, ebx
call fcn.0040973e
mov eax, dword [esp + 0x28]
test eax, eax
je 0x40af08
push eax
call dword [0x415148]
mov esi, dword [esp + 0x30]
push esi
call dword [0x4150f8]
push esi
call dword [0x4150cc]
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x40af29
push eax
call dword [0x415148]
mov esi, dword [esp + 0x14]
push esi
call dword [0x4150f8]
push esi
call dword [0x4150cc]
push ebx
call dword [0x4150cc]
push dword [esp + 0x1c]
call dword [0x4150cc]
push dword [esp + 0x18]
call dword [0x4150cc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret