Function at 0x4037a0
Capabilities:
Terminate process

Disassembly:
mov r11, rsp
sub rsp, 0x88
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
mov qword [r11 - 8], r12
movsxd rbp, edx
mov r12, rcx
xor eax, eax
lea rdx, [r11 - 0x58]
lea rcx, [r11 - 0x30]
mov rdi, r8
mov byte [rsp + 0x30], al
call qword [sym.imp.msvcp60.dll_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::allocator_char__const____ptr64____ptr64]
xor ebx, ebx
test ebp, ebp
jle 0x403808
lea rdx, [0x0041c200]
lea rcx, [rsp + 0x58]
call qword [sym.imp.msvcp60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::append_char_const____ptr64____ptr64]
mov rdx, qword [rdi + rbx*8]
mov rcx, rax
call qword [sym.imp.msvcp60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::append_char_const____ptr64____ptr64]
inc rbx
cmp rbx, rbp
jl 0x4037e1
mov r8, qword [rsp + 0x60]
mov rcx, qword [0x00424770]
lea rdx, str.gwstub_enter:__s
test r8, r8
cmove r8, qword [sym.imp.msvcp60.dll_char_const__private:_static_char_const____ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
call fcn.00408cb0
mov rcx, qword [0x00424770]
lea rdx, str.x64_started.
call fcn.004089e0
mov rcx, qword [0x00424770]
lea rdx, str.argc:_d
mov r8d, ebp
call fcn.00408cb0
cmp ebp, 3
mov rsi, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x90]
jge 0x4038a9
mov rcx, qword [0x00424770]
lea rdx, str.usage:_gwstub32_oncedura_portfilename
call fcn.00408cb0
lea rcx, [rsp + 0x58]
call qword [sym.imp.msvcp60.dll_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void____ptr64]
mov r12, qword [rsp + 0x80]
mov rdi, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0x98]
xor eax, eax
add rsp, 0x88
ret
mov r9, qword [rdi + 0x10]
mov r8, qword [rdi + 8]
mov rcx, qword [0x00424770]
lea rdx, str.argv__s___s_
call fcn.00408cb0
mov rdx, qword [rdi + 8]
xor r11d, r11d
lea r8, [rsp + 0x30]
lea rcx, [rsp + 0x38]
mov byte [rsp + 0x30], r11b
call qword [sym.imp.msvcp60.dll_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const____ptr64__class_std::allocator_char__const____ptr64____ptr64]
mov r8, qword [rsp + 0x48]
lea r9, str.once
lea rcx, [rsp + 0x38]
xor edx, edx
mov qword [rsp + 0x20], 4
call qword [sym.imp.msvcp60.dll_public:_int___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::compare_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___char_const____ptr64__unsigned_long_long_unsigned___int64__const___ptr64]
test eax, eax
jne 0x403914
mov rcx, qword [rdi + 0x10]
call fcn.00401c70
jmp 0x40399a
mov r8, qword [rsp + 0x48]
lea r9, str.dura
lea rcx, [rsp + 0x38]
xor edx, edx
mov qword [rsp + 0x20], 4
call qword [sym.imp.msvcp60.dll_public:_int___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::compare_unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___char_const____ptr64__unsigned_long_long_unsigned___int64__const___ptr64]
test eax, eax
jne 0x40399a
cmp ebp, 4
jne 0x40396c
mov r9, qword [rdi + 0x18]
mov r8, qword [rdi + 0x10]
mov rcx, qword [0x00424770]
lea rdx, str.argv1__s___s_
call fcn.00408cb0
mov r8, qword [rdi + 0x18]
mov rdx, qword [rdi + 0x10]
mov rcx, r12
call fcn.004023f0
jmp 0x40399a
mov r9, qword [rdi + 0x10]
mov r8, qword [rdi + 8]
mov rcx, qword [0x00424770]
lea rdx, str.argv2__s___s_
call fcn.00408cb0
mov rdx, qword [rdi + 0x10]
lea r8, [0x0041c29e]
mov rcx, r12
call fcn.004023f0
mov r8, qword [rsp + 0x60]
mov rcx, qword [0x00424770]
lea rdx, str.gwstub_exit:__s
test r8, r8
cmove r8, qword [sym.imp.msvcp60.dll_char_const__private:_static_char_const____ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
call fcn.00408cb0
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_ExitProcess]