Function at 0x403bb0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x268
call fcn.00404e20
push 0x406361
push 0
call sub.msvcrt.dll_setlocale
add esp, 8
push 0x406361
push 2
call sub.msvcrt.dll_setlocale
add esp, 8
lea eax, [ebp + 0xc]
lea edx, [ebp + 8]
lea ecx, [esp + 0x20c]
push 0
push eax
push edx
call fcn.00405bc6
push str.PLEASE_submit_a_bug_report_to_https:__github.com_llvm_llvm_project_issues__and_include_the_crash_backtrace._n
call fcn.00405b96
add esp, 4
mov dword [esp + 0x150], 0x40714c
mov dword [esp + 0x154], 0x3b
sub esp, 0xc
movsd xmm0, qword [esp + 0x15c]
movsd qword [esp], xmm0
mov dword [esp + 8], 0
lea esi, [esp + 0xec]
mov ecx, esi
call fcn.00405ba8
mov dword [esp + 0xe0], 0x40644c
mov eax, dword [ebp + 0xc]
add eax, 4
mov ecx, dword [ebp + 8]
dec ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], 0xffffffff
sub esp, 0x18
movsd xmm0, qword [esp + 0x4c]
movsd qword [esp + 4], xmm0
lea eax, [esp + 0x3c]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x40]
mov dword [esp + 0xc], eax
mov dword [esp], esi
mov dword [esp + 0x14], 0xffffffff
lea ecx, [esp + 0x168]
call fcn.00405bf6
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
test eax, eax
je 0x403cb5
push eax
call sub.msvcrt.dll_strlen
add esp, 4
jmp 0x403cb7
xor eax, eax
mov dword [esp + 0x30], eax
sub esp, 0xc
movsd xmm0, qword [esp + 0x38]
movsd qword [esp], xmm0
mov dword [esp + 8], 0
call fcn.00405bb4
add esp, 0xc
mov esi, eax
mov ebx, edx
lea ecx, [esp + 0x150]
mov edx, 0x15
call fcn.004028a0
test eax, eax
je 0x403d1d
test esi, esi
je 0x403d5d
cmp ebx, 0xfffffff8
jae 0x40444b
cmp ebx, 0xb
jae 0x403d70
mov eax, ebx
add al, bl
mov byte [esp + 0x10], al
lea edi, [esp + 0x11]
test ebx, ebx
jne 0x403d9a
jmp 0x403da5
cmp dword [esp + 0x24], 0
mov dword [esp + 8], ebx
mov dword [esp + 0x1c], esi
je 0x403f3b
call fcn.00405bd8
mov edi, eax
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub ecx, eax
cmp ecx, 0xc
ja 0x403e9a
mov ecx, edi
push 0xd
push str.argument_to_
call fcn.00405b84
mov edi, eax
jmp 0x403eb6
xorps xmm0, xmm0
movsd qword [esp + 0x10], xmm0
mov dword [esp + 0x18], 0
jmp 0x403da9
mov dword [esp + 0x1c], esi
mov esi, ebx
or esi, 7
lea eax, [esi + 1]
push eax
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov edi, eax
mov dword [esp + 0x18], eax
add esi, 2
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x14], ebx
push ebx
push esi
push edi
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
lea ecx, [esp + 0x10]
push str.__options_
call fcn.00405c02
mov ecx, dword [eax + 8]
mov dword [esp + 0x48], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 0x40], xmm0
xorps xmm0, xmm0
movsd qword [eax], xmm0
mov dword [eax + 8], 0
test byte [esp + 0x10], 1
je 0x403de9
push dword [esp + 0x18]
call sub.libc.dll_operator_delete_void_
add esp, 4
call fcn.00405bc0
test byte [esp + 0x40], 1
je 0x403dfb
mov edx, dword [esp + 0x48]
jmp 0x403dff
lea edx, [esp + 0x41]
mov dword [esp + 0x10], 0xffffffff
lea ecx, [esp + 0xe0]
push 0xffffffffffffffff
push 0
push 0
push str.LLDB
push edx
push eax
call fcn.00405bfc
push 0x528
call sub.libc.dll_operator_new_unsigned_int_
add esp, 4
mov esi, eax
push 0x527
push str._nEXAMPLES:_n__The_debugger_can_be_started_in_several_modes._n_n__Passing_an_executable_as_a_positional_argument_prepares_lldb_to_debug_the_n__given_executable._To_disambiguate_between_arguments_passed_to_lldb_and_n__arguments_passed_to_the_debugged_executable__arguments_starting_with_a___must_n__be_passed_after___._n_n____lldb___arch_x86_64__path_to_program_program_argument______arch_armv7_n_n__For_convenience__passing_the_executable_after____is_also_supported._n_n____lldb___arch_x86_64_____path_to_program_program_argument___arch_armv7_n_n__Passing_one_of_the_attach_options_causes_lldb_to_immediately_attach_to_the_n__given_process._n_n____lldb__p__pid__n____lldb__n__process_name__n_n__Passing___repl_starts_lldb_in_REPL_mode._n_n____lldb__r_n_n__Passing___core_causes_lldb_to_debug_the_core_file._n_n____lldb__c__path_to_core_n_n__Command_options_can_be_combined_with_these_modes_and_cause_lldb_to_run_the_n__specified_commands_before_or_after_events__like_loading_the_file_or_crashing__n__in_the_order_provided_on_the_command_line._n_n____lldb__O_settings_set_stop_disassembly_count_20__o_run__o_bt_n____lldb__S__source_before_file__s__source_after_file_n____lldb__K__source_before_crash__k__source_after_crash_n_n__Note:_In_REPL_mode_no_file_is_loaded__so_commands_specified_to_run_after_n__loading_the_file__via__o_or__s__will_be_ignored.
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov byte [esi + 0x527], 0
call fcn.00405bc0
mov ecx, eax
push 0x527
push esi
call fcn.00405b84
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x403e6e
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 0xa
jmp 0x403e77
mov ecx, eax
push 0xa
call fcn.00405b8a
push esi
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x40], 1
je 0x403e93
push dword [esp + 0x48]
call sub.libc.dll_operator_delete_void_
add esp, 4
xor edi, edi
jmp 0x4043f7
mov byte [eax + 0xc], 0x27
mov dword [eax + 8], 0x206f7420
mov dword [eax + 4], 0x746e656d
mov dword [eax], 0x75677261
add dword [edi + 0x10], 0xd
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x1b0]
mov ebx, dword [ecx + eax*4]
test ebx, ebx
je 0x403efe
push ebx
call sub.msvcrt.dll_strlen
add esp, 4
mov esi, eax
mov ecx, dword [edi + 0xc]
mov eax, dword [edi + 0x10]
sub ecx, eax
cmp esi, ecx
jbe 0x403eec
mov ecx, edi
push esi
push ebx
call fcn.00405b84
mov edi, eax
jmp 0x403efe
test esi, esi
je 0x403efe
push esi
push ebx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [edi + 0x10], esi
mov ebx, dword [esp + 8]
mov ecx, dword [edi + 0xc]
mov eax, dword [edi + 0x10]
sub ecx, eax
cmp ecx, 0xc
ja 0x403f1f
mov ecx, edi
push 0xd
push str._is_missing_n
call fcn.00405b84
jmp 0x403f3b
mov byte [eax + 0xc], 0xa
mov dword [eax + 8], 0x676e6973
mov dword [eax + 4], 0x73696d20
mov dword [eax], 0x73692027
add dword [edi + 0x10], 0xd
lea ecx, [esp + 0x150]
mov edx, 6
call fcn.004028a0
test eax, eax
je 0x4040b9
mov dword [esp + 0x10], 6
lea eax, [esp + 0x10]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], 1
sub esp, 8
movsd xmm0, qword [esp + 0x48]
movsd qword [esp], xmm0
lea ecx, [esp + 0x158]
call fcn.00405bf0
mov edi, edx
mov ecx, dword [esp + 0x154]
lea esi, [ecx + eax*4]
cmp eax, edx
je 0x403fdd
mov dword [esp + 0xc], ecx
lea ebx, [edi*4]
shl eax, 2
sub ebx, eax
jmp 0x403fbc
add esi, 4
add ebx, 0xfffffffc
je 0x4040b5
mov ecx, dword [esi]
test ecx, ecx
je 0x403fb0
mov dword [esp + 0x10], 6
push 6
call fcn.00405bea
test al, al
je 0x403fb0
mov ebx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
lea edi, [ecx + edi*4]
cmp esi, edi
je 0x4040b9
mov ebx, dword [esi]
call fcn.00405bd8
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0xf
ja 0x40400f
mov ecx, eax
push 0x10
push str.unknown_option:
call fcn.00405b84
mov ecx, dword [eax + 0x10]
jmp 0x404022
movups xmm0, xmmword [str.unknown_option:]
movups xmmword [ecx], xmm0
mov ecx, dword [eax + 0x10]
add ecx, 0x10
mov dword [eax + 0x10], ecx
mov edx, dword [ebx + 0xc]
mov dword [esp + 0xc], edx
mov ebx, dword [ebx + 0x10]
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, ebx
jae 0x404046
mov ecx, eax
push ebx
push dword [esp + 0x10]
call fcn.00405b84
mov ecx, dword [eax + 0x10]
jmp 0x404069
mov edx, dword [esp + 0xc]
test ebx, ebx
je 0x404069
push ebx
push edx
push ecx
mov dword [esp + 0x18], eax
call sub.msvcrt.dll_memcpy
mov eax, dword [esp + 0x18]
add esp, 0xc
add ebx, dword [eax + 0x10]
mov dword [eax + 0x10], ebx
mov ecx, ebx
cmp ecx, dword [eax + 0xc]
mov ebx, dword [esp + 8]
jae 0x40407d
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 0xa
jmp 0x404090
mov ecx, eax
push 0xa
call fcn.00405b8a
nop word cs:[eax + eax]
add esi, 4
cmp esi, edi
je 0x4040b9
mov ecx, dword [esi]
test ecx, ecx
je 0x404090
mov dword [esp + 0x40], 6
push 6
call fcn.00405bea
test al, al
je 0x404090
jmp 0x403fe0
mov ebx, dword [esp + 8]
cmp dword [esp + 0x24], 0
jne 0x4040db
lea edi, [esp + 0x150]
mov ecx, edi
mov edx, 6
call fcn.004028a0
test eax, eax
je 0x404199
call fcn.00405bba
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 4
ja 0x404100
mov ecx, eax
push 5
push str.Use_
call fcn.00405b84
mov ecx, dword [eax + 0x10]
jmp 0x404113
mov byte [ecx + 4], 0x27
mov dword [ecx], 0x20657355
mov ecx, dword [eax + 0x10]
add ecx, 5
mov dword [eax + 0x10], ecx
mov esi, dword [esp + 0x1c]
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, ebx
jae 0x40412e
mov ecx, eax
push ebx
push esi
call fcn.00405b84
mov ecx, dword [eax + 0x10]
jmp 0x404149
test ebx, ebx
je 0x404149
push ebx
push esi
push ecx
mov esi, eax
call sub.msvcrt.dll_memcpy
mov eax, esi
add esp, 0xc
mov ecx, dword [esi + 0x10]
add ecx, ebx
mov dword [esi + 0x10], ecx
mov edx, dword [eax + 0xc]
sub edx, ecx
cmp edx, 0x28
ja 0x40416b
mov ecx, eax
push 0x29
push str.___help_for_a_complete_list_of_options._n
call fcn.00405b84
mov edi, 1
jmp 0x4043f7
movups xmm0, xmmword [0x40641b]
movups xmmword [ecx + 0x19], xmm0
movups xmm0, xmmword [0x406412]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str.___help_for_a_complete_list_of_options._n]
movups xmmword [ecx], xmm0
add dword [eax + 0x10], 0x29
mov edi, 1
jmp 0x4043f7
lea esi, [esp + 0x10]
push esi
call dword [method.lldb::SBDebugger.InitializeWithErrorHandling__]
add esp, 4
mov ecx, esi
call dword [method.lldb::SBError.Fail___const]
test al, al
je 0x4041e0
call fcn.00405bd8
mov esi, eax
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub ecx, eax
cmp ecx, 0x16
ja 0x4042f8
mov ecx, esi
push 0x17
push str.initialization_failed:
call fcn.00405b84
mov esi, eax
jmp 0x404313
call dword [method.lldb::SBDebugger.PrintDiagnosticsOnError__]
push 0x403b60
push 2
call sub.msvcrt.dll_signal
add esp, 8
lea ecx, [esp + 0x44]
push str.Driver
call dword [method.lldb::SBBroadcaster.SBBroadcaster_char_const_]
mov dword [esp + 0x40], 0x406070
lea ebx, [esp + 0x50]
push 0
push ebx
call dword [method.lldb::SBDebugger.Create_bool_]
add esp, 8
lea eax, [esp + 0xd4]
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x58], xmm0
movups xmmword [esp + 0x68], xmm0
movups xmmword [esp + 0x78], xmm0
movups xmmword [esp + 0x88], xmm0
movups xmmword [esp + 0x98], xmm0
movups xmmword [esp + 0xa8], xmm0
movups xmmword [esp + 0xb8], xmm0
xorps xmm0, xmm0
movsd qword [esp + 0xc5], xmm0
mov dword [esp + 0xd0], eax
mov ecx, ebx
push 0
call dword [method.lldb::SBDebugger.SetCloseInputOnEOF_bool_]
lea eax, [esp + 0x40]
mov dword [0x40c0ec], eax
mov byte [esp + 7], 0
lea edx, [esp + 7]
lea esi, [esp + 0x20]
mov ecx, esi
push edx
push edi
push eax
call fcn.004018b0
mov ecx, esi
call dword [method.lldb::SBError.Fail___const]
test al, al
je 0x404345
lea ecx, [esp + 0x20]
call dword [method.lldb::SBError.GetCString___const]
mov edi, 1
test eax, eax
je 0x4043a4
mov esi, eax
call fcn.00405bd8
mov ecx, eax
push esi
call fcn.00402b80
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x40439b
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], 0xa
jmp 0x4043a4
movsd xmm0, qword [0x40643b]
movsd qword [eax + 0xf], xmm0
movups xmm0, xmmword [str.initialization_failed:]
movups xmmword [eax], xmm0
add dword [esi + 0x10], 0x17
lea ecx, [esp + 0x10]
call dword [method.lldb::SBError.GetCString___const]
test eax, eax
je 0x404373
mov edi, eax
push eax
call sub.msvcrt.dll_strlen
add esp, 4
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
sub edx, ecx
cmp eax, edx
jbe 0x40435f
mov ecx, esi
push eax
push edi
call fcn.00405b84
mov esi, eax
jmp 0x404373
xor edi, edi
cmp byte [esp + 7], 0
lea esi, [esp + 0x44]
jne 0x4043a8
lea ecx, [esp + 0x40]
call fcn.00402d40
mov edi, eax
jmp 0x4043a8
test eax, eax
je 0x404373
push eax
push edi
push ecx
mov edi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
add dword [esi + 0x10], edi
mov eax, dword [esi + 0x10]
cmp eax, dword [esi + 0xc]
jae 0x40438b
lea ecx, [eax + 1]
mov dword [esi + 0x10], ecx
mov byte [eax], 0xa
mov edi, 1
jmp 0x4043ed
mov ecx, esi
push 0xa
call fcn.00405b8a
mov edi, 1
jmp 0x4043ed
mov ecx, eax
push 0xa
call fcn.00405b8a
lea esi, [esp + 0x44]
lea ecx, [esp + 0x20]
call dword [method.lldb::SBError.SBError__]
mov dword [esp + 0x40], 0x406070
push ebx
call dword [method.lldb::SBDebugger.Destroy_lldb::SBDebugger_]
add esp, 4
mov dword [0x40c0ec], 0
lea ecx, [esp + 0x58]
call fcn.00401380
mov ecx, ebx
call dword [method.lldb::SBDebugger.SBDebugger__]
mov ecx, esi
call dword [method.lldb::SBBroadcaster.SBBroadcaster__]
call dword [method.lldb::SBDebugger.Terminate__]
lea ecx, [esp + 0x10]
call dword [method.lldb::SBError.SBError__]
lea ecx, [esp + 0x150]
call fcn.00404460
mov dword [esp + 0xe0], 0x408368
mov eax, dword [esp + 0x114]
lea ecx, [esp + 0x120]
cmp eax, ecx
je 0x404429
push eax
call sub.msvcrt.dll_free
add esp, 4
lea ecx, [esp + 0xe0]
call fcn.00405bae
lea ecx, [esp + 0x20c]
call fcn.00405bcc
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea ecx, [esp + 0x10]
call fcn.00404590
int3