Function at 0x4be0e0
Capabilities:
Terminate process

Disassembly:
mov eax, 0x1004
call fcn.00508ea0
mov eax, dword [0x553150]
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 0x4be122
push edi
push esi
push ebp
call dword [0x558d54]
add esp, 0xc
and ebx, 2
jne 0x4be135
test byte [esp + 0x101c], 4
je 0x4be341
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.00412470
add esp, 0x10
test eax, eax
je 0x4be16d
xor al, al
mov ecx, dword [esp + 0x1010]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004e6578
add esp, 0x1004
ret
test byte [esp + 0x101c], 8
je 0x4be267
mov ecx, 0x1000
lea eax, [esp + 0x10]
xor esi, esi
cmp byte [eax], 0
je 0x4be195
add eax, 1
sub ecx, 1
jne 0x4be186
jmp 0x4be199
test ecx, ecx
jne 0x4be1df
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x4be1bb
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
mov eax, str.CallStack:_n
call fcn.00411e30
test eax, eax
jne 0x4be152
mov ecx, 0x1000
lea eax, [esp + 0x10]
xor esi, esi
lea ebx, [ebx]
cmp byte [eax], 0
je 0x4be1e8
add eax, 1
sub ecx, 1
jne 0x4be1d0
jmp 0x4be1ec
mov edx, 0x1000
sub edx, ecx
jmp 0x4be1a0
test ecx, ecx
jne 0x4be230
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x4be20e
mov eax, dword [0x558c84]
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
call fcn.00411e30
test eax, eax
jne 0x4be152
mov ecx, 0x1000
lea eax, [esp + 0x10]
xor esi, esi
cmp byte [eax], 0
je 0x4be239
add eax, 1
sub ecx, 1
jne 0x4be221
jmp 0x4be23d
mov edx, 0x1000
sub edx, ecx
jmp 0x4be1f3
test ecx, ecx
jne 0x4be285
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x4be25f
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
mov eax, 0x530570
call fcn.00411e30
test eax, eax
jne 0x4be152
xor esi, esi
test ebx, ebx
mov ecx, 0x1000
lea eax, [esp + 0x10]
je 0x4be2f1
cmp byte [eax], 0
je 0x4be28e
add eax, 1
sub ecx, 1
jne 0x4be276
jmp 0x4be292
mov edx, 0x1000
sub edx, ecx
jmp 0x4be244
test ecx, ecx
jne 0x4be2e8
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x4be2b4
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
mov eax, str._press__ok__to_advance__press__cancel__to_exit_
call fcn.00411e30
test eax, eax
jne 0x4be152
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 0x4be341
mov al, byte [esp + 0x101c]
shr al, 4
not al
and al, 1
jmp 0x4be154
mov edx, 0x1000
sub edx, ecx
jmp 0x4be299
cmp byte [eax], 0
je 0x4be300
add eax, 1
sub ecx, 1
jne 0x4be2f1
jmp 0x4be304
test ecx, ecx
jne 0x4be349
mov esi, 0x80070057
xor edx, edx
test esi, esi
mov eax, esi
jl 0x4be326
mov ecx, 0x1000
sub ecx, edx
lea edx, [esp + edx + 0x10]
mov eax, str._press__ok__to_exit_program_
call fcn.00411e30
test eax, eax
jne 0x4be152
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 0x4be30b