Function at 0x1001da50
Capabilities:
Terminate process

Disassembly:
mov eax, 0x1004
call fcn.1006bc50
mov eax, dword [0x1008d0a0]
xor eax, esp
mov dword [esp + 0x1000], eax
push ebx
mov ebx, dword [esp + 0x1010]
test ebx, 0x400
push ebp
mov ebp, dword [esp + 0x1010]
push esi
push edi
mov esi, ecx
mov edi, edx
je 0x1001da92
push edi
push esi
push ebp
call dword [0x10091068]
add esp, 0xc
and ebx, 2
jne 0x1001daa5
test byte [esp + 0x101c], 4
je 0x1001dcb1
push esi
push ebp
push edi
push str.Debug_Assertion_Failed._n_nExpression_:__s_nLine_:__d_nFile_:__s_n_n
mov eax, 0x1000
lea edi, [esp + 0x20]
call fcn.100079b0
add esp, 0x10
test eax, eax
je 0x1001dadd
xor al, al
mov ecx, dword [esp + 0x1010]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10049338
add esp, 0x1004
ret
test byte [esp + 0x101c], 8
je 0x1001dbd7
mov ecx, 0x1000
lea eax, [esp + 0x10]
xor esi, esi
cmp byte [eax], 0
je 0x1001db05
add eax, 1
sub ecx, 1
jne 0x1001daf6
jmp 0x1001db09
test ecx, ecx
jne 0x1001db4f
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x1001db2b
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
mov eax, str.CallStack:_n
call fcn.100173c0
test eax, eax
jne 0x1001dac2
mov ecx, 0x1000
lea eax, [esp + 0x10]
xor esi, esi
lea ebx, [ebx]
cmp byte [eax], 0
je 0x1001db58
add eax, 1
sub ecx, 1
jne 0x1001db40
jmp 0x1001db5c
mov edx, 0x1000
sub edx, ecx
jmp 0x1001db10
test ecx, ecx
jne 0x1001dba0
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x1001db7e
mov eax, dword [0x10091008]
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
call fcn.100173c0
test eax, eax
jne 0x1001dac2
mov ecx, 0x1000
lea eax, [esp + 0x10]
xor esi, esi
cmp byte [eax], 0
je 0x1001dba9
add eax, 1
sub ecx, 1
jne 0x1001db91
jmp 0x1001dbad
mov edx, 0x1000
sub edx, ecx
jmp 0x1001db63
test ecx, ecx
jne 0x1001dbf5
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x1001dbcf
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
mov eax, 0x1007f050
call fcn.100173c0
test eax, eax
jne 0x1001dac2
xor esi, esi
test ebx, ebx
mov ecx, 0x1000
lea eax, [esp + 0x10]
je 0x1001dc61
cmp byte [eax], 0
je 0x1001dbfe
add eax, 1
sub ecx, 1
jne 0x1001dbe6
jmp 0x1001dc02
mov edx, 0x1000
sub edx, ecx
jmp 0x1001dbb4
test ecx, ecx
jne 0x1001dc58
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x1001dc24
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
mov eax, str._press__ok__to_advance__press__cancel__to_exit_
call fcn.100173c0
test eax, eax
jne 0x1001dac2
push 0x11
push str.BSLib_Debug_Module
lea eax, [esp + 0x18]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 1
jne 0x1001dcb1
mov al, byte [esp + 0x101c]
shr al, 4
not al
and al, 1
jmp 0x1001dac4
mov edx, 0x1000
sub edx, ecx
jmp 0x1001dc09
cmp byte [eax], 0
je 0x1001dc70
add eax, 1
sub ecx, 1
jne 0x1001dc61
jmp 0x1001dc74
test ecx, ecx
jne 0x1001dcb9
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x1001dc96
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
mov eax, str._press__ok__to_exit_program_
call fcn.100173c0
test eax, eax
jne 0x1001dac2
push 0x10
push str.BSLib_Debug_Module
lea ecx, [esp + 0x18]
push ecx
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov edx, 0x1000
sub edx, ecx
jmp 0x1001dc7b