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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x108
mov esi, ecx
push 0x40c0ac
push 0
call fcn.00404d90
add esp, 8
test eax, eax
jne 0x402d73
mov byte [0x40c0e8], 1
push 0x403b30
call fcn.00401310
add esp, 4
mov edi, dword [fcn.00405530]
push 0
call edi
add esp, 4
push 0
push eax
call sub.msvcrt.dll_setbuf
add esp, 8
push 1
call edi
add esp, 4
push 0
push eax
call sub.msvcrt.dll_setbuf
add esp, 8
lea ebp, [esi + 0x10]
push 2
call edi
add esp, 4
mov ecx, ebp
push 0
push eax
call dword [method.lldb::SBDebugger.SetErrorFileHandle__iobuf__bool_]
push 1
call edi
add esp, 4
mov ecx, ebp
push 0
push eax
call dword [method.lldb::SBDebugger.SetOutputFileHandle__iobuf__bool_]
push 0
call edi
add esp, 4
mov ecx, ebp
push 0
push eax
call dword [method.lldb::SBDebugger.SetInputFileHandle__iobuf__bool_]
movzx eax, byte [esi + 0x8c]
mov ecx, ebp
push eax
call dword [method.lldb::SBDebugger.SetUseExternalEditor_bool_]
push 0
call sub.msvcrt.dll__isatty
add esp, 4
test eax, eax
je 0x402e23
lea eax, [esp + 0x84]
push eax
push 0x5413
push 0
call fcn.00404d40
add esp, 0xc
test eax, eax
jne 0x402e23
mov eax, dword [esp + 0x84]
test eax, eax
jle 0x402e23
mov ecx, ebp
push eax
call dword [method.lldb::SBDebugger.SetTerminalWidth_unsigned_int_]
lea edi, [esp + 0x2c]
mov ecx, edi
push ebp
call dword [method.lldb::SBDebugger.GetCommandInterpreter__]
lea ebx, [esp + 0x10]
mov ecx, ebx
call dword [0x408b08]
mov ecx, edi
push ebx
call dword [method.lldb::SBCommandInterpreter.SourceInitFileInGlobalDirectory_lldb::SBCommandReturnObject_]
cmp byte [esi + 0x84], 0
mov dword [esp], ebp
je 0x402e9c
lea edi, [esp + 0x100]
mov ecx, edi
push ebp
call dword [method.lldb::SBDebugger.GetErrorFile__]
lea ecx, [esp + 0x10]
push edi
call dword [method.lldb::SBCommandReturnObject.PutError_lldb::SBFile_]
mov ecx, edi
call dword [method.lldb::SBFile.SBFile__]
lea edi, [esp + 0xf8]
mov ecx, edi
push dword [esp]
call dword [method.lldb::SBDebugger.GetOutputFile__]
lea ecx, [esp + 0x10]
mov ebp, dword [esp]
push edi
call dword [method.lldb::SBCommandReturnObject.PutOutput_lldb::SBFile_]
mov ecx, edi
call dword [method.lldb::SBFile.SBFile__]
movzx eax, byte [esi + 0x8a]
lea ecx, [esp + 0x2c]
push eax
push ebx
call dword [method.lldb::SBCommandInterpreter.SourceInitFileInHomeDirectory_lldb::SBCommandReturnObject__bool_]
cmp byte [esi + 0x84], 0
je 0x402f03
lea edi, [esp + 0xf0]
mov ecx, edi
push ebp
call dword [method.lldb::SBDebugger.GetErrorFile__]
lea ecx, [esp + 0x10]
push edi
call dword [method.lldb::SBCommandReturnObject.PutError_lldb::SBFile_]
mov ecx, edi
call dword [method.lldb::SBFile.SBFile__]
lea edi, [esp + 0xe8]
mov ecx, edi
push dword [esp]
call dword [method.lldb::SBDebugger.GetOutputFile__]
lea ecx, [esp + 0x10]
mov ebp, dword [esp]
push edi
call dword [method.lldb::SBCommandReturnObject.PutOutput_lldb::SBFile_]
mov ecx, edi
call dword [method.lldb::SBFile.SBFile__]
lea ecx, [esp + 0x2c]
push ebx
call dword [method.lldb::SBCommandInterpreter.SourceInitFileInCurrentWorkingDirectory_lldb::SBCommandReturnObject_]
lea edi, [esp + 0xe0]
mov ecx, edi
push ebp
call dword [method.lldb::SBDebugger.GetErrorFile__]
mov ecx, ebx
push edi
call dword [method.lldb::SBCommandReturnObject.PutError_lldb::SBFile_]
mov ebx, dword [method.lldb::SBFile.SBFile__]
mov ecx, edi
call ebx
lea edi, [esp + 0xd8]
mov ecx, edi
push ebp
call dword [method.lldb::SBDebugger.GetOutputFile__]
lea ecx, [esp + 0x10]
push edi
call dword [method.lldb::SBCommandReturnObject.PutOutput_lldb::SBFile_]
mov ecx, edi
call ebx
lea edi, [esp + 0x88]
mov ecx, edi
push ebp
call dword [method.lldb::SBDebugger.GetCommandInterpreter__]
mov ecx, edi
push 1
call dword [method.lldb::SBCommandInterpreter.AllowExitCodeOnQuit_bool_]
mov ecx, edi
call dword [method.lldb::SBCommandInterpreter.SBCommandInterpreter__]
lea ecx, [esp + 0x18]
call dword [0x408b58]
mov eax, dword [esi + 0x60]
mov dword [esp + 0x14], esi
mov edi, dword [esi + 0x64]
cmp eax, edi
je 0x402ff9
mov ebp, dword [method.lldb::SBStream.Printf_char_const__..._]
jmp 0x402fb9
push esi
push 0x4060ce
lea eax, [esp + 0x20]
push eax
call ebp
add esp, 0xc
add ebx, 0xf
mov eax, ebx
cmp ebx, edi
je 0x402ff9
lea ebx, [eax + 1]
test byte [eax], 1
mov esi, ebx
je 0x402fc6
mov esi, dword [eax + 8]
cmp byte [eax + 0xc], 0
je 0x402fa0
mov ecx, dword [esp + 0x14]
movzx ecx, byte [ecx + 0x85]
xor edx, edx
or cl, byte [eax + 0xd]
setne dl
push esi
push edx
push str.command_source__s__i__s_n
lea eax, [esp + 0x24]
push eax
call ebp
add esp, 0x10
add ebx, 0xf
mov eax, ebx
cmp ebx, edi
jne 0x402fb9
mov esi, dword [esp + 0x14]
cmp byte [esi + 0x8a], 0
je 0x403037
mov eax, dword [esi + 0x6c]
cmp eax, dword [esi + 0x70]
je 0x403589
call fcn.00405bde
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
sub edx, ecx
cmp edx, 0x52
ja 0x40308d
mov ecx, eax
push 0x53
push str.commands_specified_to_run_after_file_load__via__o_or__s__are_ignored_in_REPL_mode._n
call fcn.00405b84
jmp 0x403589
mov edi, dword [esi + 0x1c]
mov eax, dword [esi + 0x18]
mov ebp, edi
sub ebp, eax
sub edi, eax
je 0x4030d3
push 0x40
lea eax, [esp + 0x8c]
push eax
call dword [method.lldb::SBDebugger.GetDefaultArchitecture_char__unsigned_int_]
add esp, 8
test al, al
je 0x403112
mov eax, dword [esi + 0x18]
test byte [eax], 1
lea ebx, [esp + 0x18]
jne 0x403131
mov ecx, dword [eax + 8]
mov dword [esp + 0x80], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 0x78], xmm0
jmp 0x403140
movups xmm0, xmmword [0x40634d]
movups xmmword [ecx + 0x40], xmm0
movups xmm0, xmmword [0x40633d]
movups xmmword [ecx + 0x30], xmm0
movups xmm0, xmmword [0x40632d]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [0x40631d]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [str.commands_specified_to_run_after_file_load__via__o_or__s__are_ignored_in_REPL_mode._n]
movups xmmword [ecx], xmm0
mov dword [ecx + 0x4f], 0xa2e6564
add dword [eax + 0x10], 0x53
jmp 0x403589
movzx ecx, byte [esi + 0x30]
mov edx, ecx
shr edx, 1
test cl, 1
mov eax, dword [esi + 0x34]
cmovne edx, eax
test edx, edx
je 0x4033a3
test cl, 1
lea edi, [esp + 0x18]
jne 0x4033e2
lea eax, [esi + 0x30]
mov ecx, dword [eax + 8]
mov dword [esp + 0x5c], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 0x54], xmm0
jmp 0x4033ef
mov eax, dword [esi + 0x18]
test byte [eax], 1
lea ebx, [esp + 0x18]
jne 0x40315f
mov ecx, dword [eax + 8]
mov dword [esp + 0x74], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 0x6c], xmm0
jmp 0x40316e
lea ecx, [esp + 0x78]
push dword [eax + 4]
push dword [eax + 8]
call fcn.00404620
lea eax, [esp + 0x78]
lea ecx, [esp + 4]
push eax
push ecx
call fcn.00402bd0
add esp, 8
test byte [esp + 4], 1
je 0x40318d
mov eax, dword [esp + 0xc]
jmp 0x403191
lea ecx, [esp + 0x6c]
push dword [eax + 4]
push dword [eax + 8]
call fcn.00404620
lea eax, [esp + 0x6c]
lea ecx, [esp + 4]
push eax
push ecx
call fcn.00402bd0
add esp, 8
test byte [esp + 4], 1
je 0x4031cc
mov eax, dword [esp + 0xc]
jmp 0x4031d0
lea eax, [esp + 5]
push eax
lea eax, [esp + 0x8c]
push eax
push str.target_create___arch_s__s
push ebx
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 0x10
test byte [esp + 4], 1
je 0x4031bc
push dword [esp + 0xc]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x78], 1
je 0x403206
push dword [esp + 0x80]
jmp 0x4031fe
lea eax, [esp + 5]
push eax
push str.target_create__s
push ebx
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 0xc
test byte [esp + 4], 1
je 0x4031f3
push dword [esp + 0xc]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x6c], 1
je 0x403206
push dword [esp + 0x74]
call sub.libc.dll_operator_delete_void_
add esp, 4
movzx ecx, byte [esi + 0x30]
mov edx, ecx
shr edx, 1
test cl, 1
mov eax, dword [esi + 0x34]
cmovne edx, eax
test edx, edx
je 0x4032a0
test cl, 1
jne 0x40323a
lea eax, [esi + 0x30]
mov ecx, dword [eax + 8]
mov dword [esp + 0x68], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 0x60], xmm0
jmp 0x403247
lea ecx, [esp + 0x60]
push eax
push dword [esi + 0x38]
call fcn.00404620
lea eax, [esp + 0x60]
lea ecx, [esp + 4]
push eax
push ecx
call fcn.00402bd0
add esp, 8
test byte [esp + 4], 1
je 0x403266
mov eax, dword [esp + 0xc]
jmp 0x40326a
lea eax, [esp + 5]
push eax
push str.___core__s
push ebx
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 0xc
test byte [esp + 4], 1
je 0x40328d
push dword [esp + 0xc]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x60], 1
je 0x4032a0
push dword [esp + 0x68]
call sub.libc.dll_operator_delete_void_
add esp, 4
push 0x40628e
push ebx
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 8
cmp edi, 0xc
je 0x403515
sar ebp, 2
imul edi, ebp, 0xaaaaaaab
push str.settings_set____target.run_args
push ebx
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 8
cmp edi, 2
jb 0x403398
dec edi
mov ebp, 0xc
lea ecx, [esp + 0x34]
jmp 0x4032fe
add ebp, 0xc
dec edi
lea ecx, [esp + 0x34]
je 0x403398
mov eax, dword [esi + 0x18]
test byte [eax + ebp], 1
jne 0x403320
add eax, ebp
mov edx, dword [eax + 8]
mov dword [esp + 0x3c], edx
movsd xmm0, qword [eax]
movsd qword [esp + 0x34], xmm0
jmp 0x403331
push dword [eax + ebp + 4]
push dword [eax + ebp + 8]
call fcn.00404620
lea ecx, [esp + 0x34]
push ecx
lea eax, [esp + 8]
push eax
call fcn.00402bd0
add esp, 8
test byte [esp + 4], 1
lea eax, [esp + 5]
je 0x40334e
mov eax, dword [esp + 0xc]
push eax
push 0x4062b1
push ebx
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 0xc
test byte [esp + 4], 1
jne 0x403370
test byte [esp + 0x34], 1
je 0x4032f0
jmp 0x403387
push dword [esp + 0xc]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x34], 1
je 0x4032f0
push dword [esp + 0x3c]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x4032f0
push 0x40628e
push ebx
jmp 0x40350c
movzx ecx, byte [esi + 0x54]
mov edx, ecx
shr edx, 1
test cl, 1
mov eax, dword [esi + 0x58]
cmovne edx, eax
test edx, edx
lea edi, [esp + 0x18]
je 0x403463
test cl, 1
jne 0x403489
lea eax, [esi + 0x54]
mov ecx, dword [eax + 8]
mov dword [esp + 0x50], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 0x48], xmm0
jmp 0x403496
lea ecx, [esp + 0x54]
push eax
push dword [esi + 0x38]
call fcn.00404620
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x8c]
push eax
call fcn.00402bd0
add esp, 8
test byte [esp + 0x88], 1
je 0x403417
mov eax, dword [esp + 0x90]
jmp 0x40341e
lea eax, [esp + 0x89]
push eax
push str.target_create___core__s_n
push edi
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 0xc
test byte [esp + 0x88], 1
je 0x403447
push dword [esp + 0x90]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x54], 1
je 0x403515
push dword [esp + 0x5c]
call sub.libc.dll_operator_delete_void_
add esp, 4
jmp 0x403515
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x2c]
mov edx, eax
or edx, ecx
je 0x403515
push ecx
push eax
push str.process_attach___pid__llu_n
push edi
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 0x10
jmp 0x403515
lea ecx, [esp + 0x48]
push eax
push dword [esi + 0x5c]
call fcn.00404620
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x8c]
push eax
call fcn.00402bd0
add esp, 8
test byte [esp + 0x88], 1
je 0x4034be
mov eax, dword [esp + 0x90]
jmp 0x4034c5
lea eax, [esp + 0x89]
push eax
push str.process_attach___name__s
push edi
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 0xc
test byte [esp + 0x88], 1
jne 0x403aab
test byte [esp + 0x48], 1
jne 0x403ac5
cmp byte [esi + 0x89], 0
je 0x403506
push str.___waitfor
push edi
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 8
push 0x40628e
push edi
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 8
mov eax, dword [esi + 0x6c]
mov edi, dword [esi + 0x70]
cmp eax, edi
je 0x403589
mov ebp, dword [method.lldb::SBStream.Printf_char_const__..._]
jmp 0x403549
push esi
push 0x4060ce
lea eax, [esp + 0x20]
push eax
call ebp
add esp, 0xc
add ebx, 0xf
mov eax, ebx
cmp ebx, edi
je 0x403589
lea ebx, [eax + 1]
test byte [eax], 1
mov esi, ebx
je 0x403556
mov esi, dword [eax + 8]
cmp byte [eax + 0xc], 0
je 0x403530
mov ecx, dword [esp + 0x14]
movzx ecx, byte [ecx + 0x85]
xor edx, edx
or cl, byte [eax + 0xd]
setne dl
push esi
push edx
push str.command_source__s__i__s_n
lea eax, [esp + 0x24]
push eax
call ebp
add esp, 0x10
add ebx, 0xf
mov eax, ebx
cmp ebx, edi
jne 0x403549
mov esi, dword [esp + 0x14]
cmp byte [esi + 0x84], 0
mov ebp, dword [esp]
je 0x4035e1
lea edi, [esp + 0xd0]
mov ecx, edi
push ebp
call dword [method.lldb::SBDebugger.GetErrorFile__]
lea ecx, [esp + 0x10]
push edi
call dword [method.lldb::SBCommandReturnObject.PutError_lldb::SBFile_]
mov ecx, edi
mov ebx, esi
mov esi, dword [method.lldb::SBFile.SBFile__]
call esi
lea edi, [esp + 0xc8]
mov ecx, edi
push ebp
call dword [method.lldb::SBDebugger.GetOutputFile__]
lea ecx, [esp + 0x10]
push edi
call dword [method.lldb::SBCommandReturnObject.PutOutput_lldb::SBFile_]
mov ecx, edi
call esi
mov esi, ebx
lea ecx, [esp + 0x18]
call dword [method.lldb::SBStream.GetData__]
test eax, eax
je 0x403790
lea ecx, [esp + 0x18]
call dword [method.lldb::SBStream.GetSize__]
test eax, eax
je 0x403790
lea ecx, [esp + 0x18]
call dword [method.lldb::SBStream.GetData__]
lea edi, [esp + 4]
mov ecx, edi
push eax
push ebp
call dword [method.lldb::SBDebugger.SetInputString_char_const_]
mov ecx, edi
call dword [method.lldb::SBError.Fail___const]
test al, al
je 0x40366d
call fcn.00405bd8
mov esi, eax
lea ecx, [esp + 4]
call dword [method.lldb::SBError.GetCString___const]
test eax, eax
je 0x4038d4
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 0x4038c0
mov ecx, esi
push eax
push edi
call fcn.00405b84
mov esi, eax
jmp 0x4038d4
mov ecx, ebp
call dword [method.lldb::SBDebugger.GetAsync__]
mov byte [esp + 0x20], al
mov ecx, ebp
push 0
call dword [method.lldb::SBDebugger.SetAsync_bool_]
mov ebx, ebp
lea ebp, [esp + 0x44]
mov ecx, ebp
call dword [0x408b28]
mov ecx, ebp
push 1
call dword [method.lldb::SBCommandInterpreterRunOptions.SetAutoHandleEvents_bool_]
mov ecx, ebp
push 0
call dword [method.lldb::SBCommandInterpreterRunOptions.SetSpawnThread_bool_]
mov ecx, ebp
push 1
call dword [method.lldb::SBCommandInterpreterRunOptions.SetStopOnError_bool_]
movzx eax, byte [esi + 0x8b]
mov ecx, ebp
push eax
call dword [method.lldb::SBCommandInterpreterRunOptions.SetStopOnCrash_bool_]
xor eax, eax
cmp byte [esi + 0x85], 0
sete al
mov ecx, ebp
push eax
call dword [method.lldb::SBCommandInterpreterRunOptions.SetEchoCommands_bool_]
lea edi, [esp + 0x28]
mov ecx, edi
push ebp
push ebx
call dword [method.lldb::SBDebugger.RunCommandInterpreter_lldb::SBCommandInterpreterRunOptions_const_]
mov ecx, edi
call dword [method.lldb::SBCommandInterpreterRunResult.GetResult___const]
xor ebx, ebx
cmp eax, 3
setne al
cmp byte [esi + 0x8b], 0
je 0x403740
lea ecx, [esp + 0x28]
mov edi, eax
call dword [method.lldb::SBCommandInterpreterRunResult.GetResult___const]
xor ecx, ecx
cmp eax, 1
mov eax, edi
mov bl, al
cmovne ebx, ecx
cmp byte [esi + 0x8b], 0
mov dword [esp + 0x24], ebx
je 0x403744
lea ecx, [esp + 0x28]
call dword [method.lldb::SBCommandInterpreterRunResult.GetResult___const]
cmp eax, 2
jne 0x40397b
mov dword [esp + 0x20], 0
mov ebp, dword [esp]
jmp 0x40375b
mov dword [esp + 0x24], eax
mov ebp, dword [esp]
movzx eax, byte [esp + 0x20]
mov ecx, ebp
push eax
call dword [method.lldb::SBDebugger.SetAsync_bool_]
mov al, 1
mov dword [esp + 0x20], eax
lea ecx, [esp + 0x28]
call dword [method.lldb::SBCommandInterpreterRunResult.SBCommandInterpreterRunResult__]
lea ecx, [esp + 0x44]
call dword [method.lldb::SBCommandInterpreterRunOptions.SBCommandInterpreterRunOptions__]
lea ecx, [esp + 4]
call dword [method.lldb::SBError.SBError__]
mov ebx, 1
cmp byte [esp + 0x20], 0
je 0x4038ff
cmp byte [esp + 0x24], 0
je 0x4037cb
push 0
call dword [0x40c010]
add esp, 4
mov ecx, ebp
push 1
push eax
call dword [method.lldb::SBDebugger.SetInputFileHandle__iobuf__bool_]
cmp byte [esi + 0x8a], 0
je 0x4037bf
movzx eax, byte [esi + 0x48]
test al, 1
je 0x403811
mov eax, dword [esi + 0x4c]
mov edx, dword [esi + 0x50]
jmp 0x403816
mov ecx, ebp
push 0
push 1
call dword [method.lldb::SBDebugger.RunCommandInterpreter_bool__bool_]
cmp byte [0x40c0e8], 1
jne 0x4037ec
mov byte [0x40c0e8], 0
push 0x40c0ac
push 0
push 0
call 0x404d80
add esp, 0xc
push 0
call dword [0x40c010]
add esp, 4
push eax
call sub.msvcrt.dll_fclose
add esp, 4
lea ecx, [esp + 0x2c]
call dword [method.lldb::SBCommandInterpreter.GetQuitStatus__]
mov ebx, eax
jmp 0x4038ff
shr eax, 1
lea edx, [esi + 0x49]
test eax, eax
cmove edx, eax
lea edi, [esp + 0x88]
mov ecx, edi
push edx
push dword [esi + 0x24]
push ebp
call dword [method.lldb::SBDebugger.RunREPL_lldb::LanguageType__char_const_]
mov ecx, edi
call dword [method.lldb::SBError.Fail___const]
test al, al
je 0x40395c
lea ecx, [esp + 0x88]
call dword [method.lldb::SBError.GetCString___const]
test eax, eax
je 0x40388a
mov edi, eax
cmp byte [eax], 0
je 0x40388a
call fcn.00405bd8
mov esi, eax
push edi
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 0x40392a
mov ecx, esi
push eax
push edi
call fcn.00405b84
mov esi, eax
mov ecx, dword [eax + 0x10]
jmp 0x403943
call fcn.00405bd8
mov esi, eax
lea ecx, [esp + 0x88]
call dword [method.lldb::SBError.GetError___const]
mov ecx, esi
push eax
call fcn.00405b90
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x4038b9
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
jmp 0x40394e
mov ecx, eax
jmp 0x403955
test eax, eax
je 0x4038d4
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 0x4038e7
lea ecx, [eax + 1]
mov dword [esi + 0x10], ecx
mov byte [eax], 0xa
jmp 0x4038f0
mov ecx, esi
push 0xa
call fcn.00405b8a
lea ecx, [esp + 4]
call dword [method.lldb::SBError.SBError__]
mov ebx, 1
lea ecx, [esp + 0x18]
call dword [method.lldb::SBStream.SBStream__]
lea ecx, [esp + 0x10]
call dword [method.lldb::SBCommandReturnObject.SBCommandReturnObject__]
lea ecx, [esp + 0x2c]
call dword [method.lldb::SBCommandInterpreter.SBCommandInterpreter__]
mov eax, ebx
add esp, 0x108
pop esi
pop edi
pop ebx
pop ebp
ret
test eax, eax
je 0x403943
push eax
push edi
push ecx
mov edi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov ecx, dword [esi + 0x10]
add ecx, edi
mov dword [esi + 0x10], ecx
cmp ecx, dword [esi + 0xc]
jae 0x403953
lea eax, [ecx + 1]
mov dword [esi + 0x10], eax
mov byte [ecx], 0xa
jmp 0x40395c
mov ecx, esi
push 0xa
call fcn.00405b8a
lea ecx, [esp + 0x88]
call dword [method.lldb::SBError.SBError__]
cmp byte [0x40c0e8], 1
je 0x4037d4
jmp 0x4037ec
cmp byte [esi + 0x8b], 0
je 0x403744
lea ecx, [esp + 0x28]
call dword [method.lldb::SBCommandInterpreterRunResult.GetResult___const]
cmp eax, 1
jne 0x403744
mov eax, dword [esi + 0x78]
cmp eax, dword [esi + 0x7c]
je 0x403744
lea ecx, [esp + 0x88]
call dword [0x408b58]
mov eax, dword [esi + 0x78]
mov edi, dword [esi + 0x7c]
cmp eax, edi
jne 0x4039e0
jmp 0x403a27
push esi
push 0x4060ce
lea eax, [esp + 0x90]
push eax
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 0xc
add ebx, 0xf
mov eax, ebx
cmp ebx, edi
je 0x403a27
lea ebx, [eax + 1]
test byte [eax], 1
mov esi, ebx
je 0x4039ed
mov esi, dword [eax + 8]
cmp byte [eax + 0xc], 0
je 0x4039c0
mov ecx, dword [esp + 0x14]
movzx ecx, byte [ecx + 0x85]
xor edx, edx
or cl, byte [eax + 0xd]
setne dl
push esi
push edx
push str.command_source__s__i__s_n
lea eax, [esp + 0x94]
push eax
call dword [method.lldb::SBStream.Printf_char_const__..._]
add esp, 0x10
add ebx, 0xf
mov eax, ebx
cmp ebx, edi
jne 0x4039e0
lea ecx, [esp + 0x88]
call dword [method.lldb::SBStream.GetData__]
lea edi, [esp + 0x40]
mov ecx, edi
push eax
mov ebx, dword [esp + 4]
push ebx
call dword [method.lldb::SBDebugger.SetInputString_char_const_]
mov ecx, edi
call dword [method.lldb::SBError.Success___const]
test al, al
je 0x403ae3
lea edi, [esp + 0x30]
mov ecx, edi
push ebp
push ebx
call dword [method.lldb::SBDebugger.RunCommandInterpreter_lldb::SBCommandInterpreterRunOptions_const_]
mov ecx, edi
call dword [method.lldb::SBCommandInterpreterRunResult.GetResult___const]
xor ecx, ecx
cmp eax, 3
mov eax, dword [esp + 0x24]
movzx eax, al
cmove eax, ecx
mov dword [esp + 0x24], eax
mov esi, dword [esp + 0x14]
cmp byte [esi + 0x8b], 0
mov ebp, ebx
je 0x403aeb
lea ecx, [esp + 0x30]
call dword [method.lldb::SBCommandInterpreterRunResult.GetResult___const]
cmp eax, 2
jne 0x403aeb
lea ecx, [esp + 0x30]
call dword [method.lldb::SBCommandInterpreterRunResult.SBCommandInterpreterRunResult__]
xor ebx, ebx
jmp 0x403af7
push dword [esp + 0x90]
call sub.libc.dll_operator_delete_void_
add esp, 4
test byte [esp + 0x48], 1
je 0x4034ee
push dword [esp + 0x50]
call sub.libc.dll_operator_delete_void_
add esp, 4
cmp byte [esi + 0x89], 0
jne 0x4034f7
jmp 0x403506
mov esi, dword [esp + 0x14]
mov ebp, ebx
jmp 0x403af5
lea ecx, [esp + 0x30]
call dword [method.lldb::SBCommandInterpreterRunResult.SBCommandInterpreterRunResult__]
mov bl, 1
lea ecx, [esp + 0x40]
call dword [method.lldb::SBError.SBError__]
lea ecx, [esp + 0x88]
call dword [method.lldb::SBStream.SBStream__]
test bl, bl
jne 0x403747
mov dword [esp + 0x20], 0
jmp 0x40375b