Function at 0x10019340
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x1007b868
push 0x10046550
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x2424
call fcn.1005f940
mov eax, dword [0x1007e090]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x20], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2430], eax
mov byte [0x10081e15], 1
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
neg eax
sbb eax, eax
add eax, 1
mov ebx, dword [eax*4 + 0x10080544]
mov dword [ebp - 0x2428], ebx
mov byte [ebp - 0x2424], 0
test bl, 8
je 0x100193f9
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x2424]
mov dword [0x10081db8], ecx
mov dword [ebp - 0x242c], str.oops
push 0x10074678
lea edx, [ebp - 0x242c]
push edx
call fcn.10044cfb
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx]
mov dword [ebp - 0x2434], edx
call fcn.10018e90
ret
test ebx, 0x200
je 0x10019451
mov dword [ebp - 4], 1
lea eax, [ebp - 0x2424]
mov dword [0x10081db8], eax
mov dword [ebp - 0x242c], str.oops
push 0x10074678
lea ecx, [ebp - 0x242c]
push ecx
call fcn.10044cfb
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx]
mov eax, dword [edx]
mov dword [ebp - 0x2438], eax
call fcn.10018ca0
ret
lea ecx, [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
push 0x3ff
push 0x400
lea eax, [ebp - 0x424]
push eax
call fcn.1004310e
add esp, 0x14
test eax, eax
jl 0x10019664
cmp eax, 0x3ff
ja 0x10019664
jne 0x1001948b
mov byte [ebp - 0x25], 0
test ebx, 0x400
je 0x100194ae
lea ecx, [ebp - 0x424]
push ecx
mov edx, dword [ebp - 0x2430]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [0x10081e18]
add esp, 0xc
and ebx, 2
jne 0x100194c0
test byte [ebp - 0x2428], 4
je 0x1001965c
mov ecx, dword [ebp - 0x2430]
push ecx
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x424]
push eax
push str.Debug_Assertion_Failed._n_nExpression_:__s_nLine_:__d_nFile_:__s_n_n
mov eax, 0x1000
lea edi, [ebp - 0x1424]
call fcn.10013e90
add esp, 0x10
test eax, eax
jne 0x10019664
test byte [ebp - 0x2428], 8
je 0x100195e5
mov ecx, 0x1000
mov eax, edi
xor esi, esi
cmp byte [eax], 0
je 0x10019515
add eax, 1
sub ecx, 1
jne 0x10019508
test ecx, ecx
jne 0x10019682
mov esi, 0x80070057
xor edx, edx
mov eax, esi
test esi, esi
jl 0x10019542
mov ecx, 0x1000
sub ecx, edx
lea edx, [ebp + edx - 0x1424]
mov eax, str.CallStack:_n
call fcn.10013e40
test eax, eax
jne 0x10019664
mov ecx, 0x1000
lea eax, [ebp - 0x1424]
xor esi, esi
cmp byte [eax], 0
je 0x10019564
add eax, 1
sub ecx, 1
jne 0x10019557
test ecx, ecx
jne 0x1001968e
mov esi, 0x80070057
xor edx, edx
mov eax, esi
test esi, esi
jl 0x10019592
mov ecx, 0x1000
sub ecx, edx
lea edx, [ebp + edx - 0x1424]
lea eax, [ebp - 0x2424]
call fcn.10013e40
test eax, eax
jne 0x10019664
mov ecx, 0x1000
lea eax, [ebp - 0x1424]
xor esi, esi
cmp byte [eax], 0
je 0x100195b4
add eax, 1
sub ecx, 1
jne 0x100195a7
test ecx, ecx
jne 0x1001969a
mov esi, 0x80070057
xor edx, edx
mov eax, esi
test esi, esi
jl 0x100195e1
mov ecx, 0x1000
sub ecx, edx
lea edx, [ebp + edx - 0x1424]
mov eax, 0x100705b0
call fcn.10013e40
test eax, eax
jne 0x10019664
mov ecx, 0x1000
lea eax, [ebp - 0x1424]
xor esi, esi
test ebx, ebx
je 0x100196b2
lea ebx, [ebx]
cmp byte [eax], 0
je 0x1001960d
add eax, 1
sub ecx, 1
jne 0x10019600
test ecx, ecx
jne 0x100196a6
mov esi, 0x80070057
xor edx, edx
mov eax, esi
test esi, esi
jl 0x1001963a
mov ecx, 0x1000
sub ecx, edx
lea edx, [ebp + edx - 0x1424]
mov eax, str._press__ok__to_advance__press__cancel__to_exit_
call fcn.10013e40
test eax, eax
jne 0x10019664
push 0x11
push str.BSLib_Debug_Module
lea ecx, [ebp - 0x1424]
push ecx
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 1
je 0x10019713
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
xor al, al
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x20]
xor ecx, ebp
call fcn.10042345
mov esp, ebp
pop ebp
ret
mov edx, 0x1000
sub edx, ecx
jmp 0x10019524
mov edx, 0x1000
sub edx, ecx
jmp 0x10019573
mov edx, 0x1000
sub edx, ecx
jmp 0x100195c3
mov edx, 0x1000
sub edx, ecx
jmp 0x1001961c
cmp byte [eax], 0
je 0x100196bf
add eax, 1
sub ecx, 1
jne 0x100196b2
test ecx, ecx
jne 0x1001970a
mov esi, 0x80070057
xor edx, edx
mov eax, esi
test esi, esi
jl 0x100196e8
mov ecx, 0x1000
sub ecx, edx
lea edx, [ebp + edx - 0x1424]
mov eax, str._press__ok__to_exit_program_
call fcn.10013e40
test eax, eax
jne 0x10019664
push 0x10
push str.BSLib_Debug_Module
lea edx, [ebp - 0x1424]
push edx
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x1001965c
mov edx, 0x1000
sub edx, ecx
jmp 0x100196ca
mov al, byte [ebp - 0x2428]
shr al, 4
not al
and al, 1
jmp 0x10019666