Function at 0x408290
Capabilities:
Accept command line arguments
Create process on windows

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x4f0
call fcn.00401eb0
call fcn.00401550
lea rcx, str._n
mov esi, eax
call fcn.00408240
lea rcx, str.______________Portable_Code::Blocks_Launcher_v1.0.1_______________n
call fcn.00408240
lea rcx, str._____________Copyright__C__2009___Biplab_Kumar_Modak______________n
call fcn.00408240
lea rcx, str.____________________Homepage:_http:__biplab.in____________________n
call fcn.00408240
lea rcx, str._Copyright__C__2010_2011___Codeur__codeur_at_taillecode_dot_org___n
call fcn.00408240
lea rcx, str.________________________License:_GPL_v3___________________________n
call fcn.00408240
lea rcx, str._n
call fcn.00408240
xor ecx, ecx
mov r8d, 0x104
lea rdx, [0x0040e040]
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov rbx, qword [fcn.00407f70]
test eax, eax
jne 0x408330
mov ecx, 1
call rbx
lea rdx, str.Couldnt_retrieve_CBLauncher_directory._Giving_up_..__Enter__to_exit..
jmp 0x408517
lea rcx, [0x0040e040]
mov edx, 0x5c
call sub.msvcrt.dll_wcsrchr
mov ecx, 1
mov word [rax + 2], 0
call rbx
lea r8, [0x0040e040]
lea rdx, str.Launcher_started_in_directory__ls_n
mov rcx, rax
call fcn.00408210
call fcn.004015db
test al, al
jne 0x408380
mov ecx, 1
call rbx
lea rdx, str._nUnable_to_set___APPDATA___environment_variable_n_Enter__to_exit..
jmp 0x408517
call fcn.00401739
test al, al
jne 0x40839f
mov ecx, 1
call rbx
lea rdx, str.Not_modifying_the_PATH_environment_variable_n
mov rcx, rax
call fcn.00408210
test sil, sil
jne 0x4083a9
call fcn.00401b4d
lea r12, [rsp + 0x78]
xor eax, eax
mov ecx, 0x19
mov dword [rsp + 0x78], 0x68
lea rdx, [r12 + 4]
lea rbp, [rsp + 0x60]
mov rdi, rdx
rep stosd dword [rdi], eax
mov ecx, 6
mov rdi, rbp
rep stosd dword [rdi], eax
lea rsi, [rsp + 0xe0]
lea rdx, [0x0040e040]
mov rcx, rsi
lea rdi, [rsp + 0x2e8]
call sub.msvcrt.dll_wcscpy
lea rdx, str.codeblocks.exe
mov rcx, rsi
call sub.msvcrt.dll_wcscat
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov rcx, rdi
mov rdx, rax
call sub.msvcrt.dll_wcscpy
mov rcx, rdi
mov edx, 0x20
call sub.msvcrt.dll_wcschr
test rax, rax
mov rdi, rax
je 0x408444
lea rdx, [0x0040a72c]
mov rcx, rsi
call sub.msvcrt.dll_wcscat
mov rdx, rdi
mov rcx, rsi
call sub.msvcrt.dll_wcscat
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x40], r12
mov rdx, rsi
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 8
mov dword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x4084c4
mov ecx, 1
call rbx
lea rdx, [0x0040a730]
mov r8, rsi
mov rcx, rax
call fcn.00408210
call fcn.00401dd2
mov ecx, 1
mov dword [rsp + 0x5c], eax
call rbx
mov r8d, dword [rsp + 0x5c]
lea rdx, str._n_tRemoved__d_CB_programmer_fonts
mov rcx, rax
call fcn.00408210
jmp 0x40851f
lea rcx, str._nLaunched__ls._Waiting_for_process_to_exit_n
mov rdx, rsi
call fcn.00408240
or edx, 0xffffffff
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
inc eax
jne 0x40852b
call fcn.00401dd2
mov ecx, 1
mov dword [rsp + 0x5c], eax
call rbx
mov r8d, dword [rsp + 0x5c]
lea rdx, str._n_tRemoved__d_CB_programmer_fonts
mov rcx, rax
call fcn.00408210
mov ecx, 1
call rbx
lea rdx, str.Codeblocks_launch_failed..._n_t_Enter__to_exit..
mov rcx, rax
call fcn.00408210
call sub.msvcrt.dll_getchar
mov eax, 1
jmp 0x408556
call fcn.00401dd2
mov ecx, 1
mov dword [rsp + 0x5c], eax
call rbx
mov r8d, dword [rsp + 0x5c]
lea rdx, str._n_tRemoved__d_CB_programmer_fonts_n_tPress__Enter__to_exit.
mov rcx, rax
call fcn.00408210
call sub.msvcrt.dll_getchar
xor eax, eax
add rsp, 0x4f0
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret