Function at 0x403c4c
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50c
push str.xxsim_nsyt_usb2
push 1
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
mov dword [0x41dbb4], eax
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 0x2d8]
push ecx
lea edx, [ebp - 0x1d4]
push edx
call fcn.004054b0
add esp, 0xc
test eax, eax
je 0x403f12
push 0x41769c
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push str..exe
lea eax, [ebp - 0x1c]
push eax
call fcn.0040a610
add esp, 0xc
test eax, eax
jne 0x403cb8
mov dword [0x41d4e4], 1
mov ecx, dword [0x41dbb4]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x1cc]
and edx, 0xff
test edx, edx
je 0x403ceb
lea ecx, [ebp - 0x50c]
call fcn.00405c70
lea ecx, [ebp - 0x50c]
call fcn.00405c8f
push 0x1d0
lea eax, [ebp - 0x1d4]
push eax
push 0x41d8d8
call fcn.00409f00
add esp, 0xc
mov byte [ebp - 0x2fc], 4
mov byte [ebp - 0x2fb], 8
mov byte [ebp - 0x2fa], 0
mov byte [ebp - 0x2f9], 0
mov byte [ebp - 0x2f8], 0xc8
mov byte [ebp - 0x2f7], 0
mov byte [ebp - 0x2f6], 0
mov byte [ebp - 0x2f5], 0
mov byte [ebp - 0x2f4], 0x18
mov byte [ebp - 0x2f3], 0x61
mov byte [ebp - 0x2f2], 0xe
mov byte [ebp - 0x2f1], 0
mov byte [ebp - 0x2f0], 0x22
mov byte [ebp - 0x2ef], 0
mov byte [ebp - 0x2ee], 0
mov byte [ebp - 0x2ed], 0
mov byte [ebp - 0x2ec], 0x90
mov byte [ebp - 0x2eb], 0x66
mov byte [ebp - 0x2ea], 0xe
mov byte [ebp - 0x2e9], 0
mov byte [ebp - 0x2e8], 0xe8
mov byte [ebp - 0x2e7], 2
mov byte [ebp - 0x2e6], 0
mov byte [ebp - 0x2e5], 0
mov byte [ebp - 0x2e4], 0
mov byte [ebp - 0x2e3], 0
mov byte [ebp - 0x2e2], 0
mov byte [ebp - 0x2e1], 0
mov byte [ebp - 0x2e0], 0
mov byte [ebp - 0x2df], 0
mov byte [ebp - 0x2de], 0
mov byte [ebp - 0x2dd], 0
push 0x1d0
lea ecx, [ebp - 0x2fc]
push ecx
push 0x64
push 0x41d8d8
call fcn.00405a80
add esp, 0x10
mov edx, dword [ebp - 4]
push edx
mov eax, dword [0x41dbb8]
push eax
lea ecx, [ebp - 0x1d4]
push ecx
call fcn.00405af0
add esp, 0xc
call fcn.004011e7
test eax, eax
je 0x403e32
lea edx, [ebp - 0x1d4]
push edx
call section..text
add esp, 4
jmp 0x403e4d
push 0x10
push 0x4176ac
push str.Error_to_Hook.
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x403f28
lea eax, [ebp - 0x1d4]
push eax
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [0x41dbb8]
push edx
lea eax, [ebp - 0x508]
push eax
call fcn.00403f2c
add esp, 0x10
test eax, eax
jne 0x403e8d
push 0x10
push 0x4176c4
push str.Error_to_create_file.
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x403f28
lea ecx, [ebp - 0x508]
push ecx
call fcn.00403371
add esp, 4
mov edx, dword [ebp - 0x1d4]
and edx, 0xff
test edx, edx
je 0x403ed9
lea eax, [ebp - 0x300]
push eax
push 0
push 0
push 0x40522a
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x2dc], eax
mov ecx, dword [ebp - 0x2dc]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea edx, [ebp - 0x1d4]
push edx
lea eax, [ebp - 0x508]
push eax
call fcn.00403a08
add esp, 8
test eax, eax
jne 0x403f0b
push 0x10
push 0x4176e4
push str.Error_to_open_flle.
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x403f28
mov eax, 1
jmp 0x403f28
push 0x10
push 0x417700
push str.Cant_load_Exe_from_Res_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
mov esp, ebp
pop ebp
ret