Function at 0x403870
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1d0
push ebx
push esi
push edi
push fcn.004192e0
mov dword [ebp - 8], 0
call fcn.0049b5a7
add esp, 4
test eax, eax
je 0x4038a2
push str.Failed_to_register_log_dump_function
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_perror]
add esp, 4
call fcn.0040c180
push 0x402560
call fcn.0046a480
add esp, 4
call fcn.0046a330
test eax, eax
jne 0x4038c5
push 1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
push 3
push 0x22002
call fcn.0046af80
push 0
push 0x22003
call fcn.0046af80
push 0
push 0
push str.RA2_Trainer
push 0x384
push 0x22c
call fcn.0046a7b0
mov edi, eax
add esp, 0x24
test edi, edi
jne 0x40390b
call fcn.0046a4a0
push 1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
push edi
call fcn.0046ff70
mov ebx, eax
push ebx
mov dword [ebp - 4], ebx
call fcn.00402820
add esp, 8
push 0xfffffffffffffffc
push ebx
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov esi, eax
push str.C:ProjectsRA2YurisRevengeTrainer_src_binmain.cpp
mov dword [0x4ff7b0], esi
call fcn.00402620
add esp, 4
mov ecx, eax
test esi, esi
je 0x40395a
push 0x66
push ecx
push 1
lea ecx, [ebp - 0x60]
call fcn.00401e80
lea ecx, [ebp - 0x60]
call sub.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::vbase_dtor_void_
jmp 0x40399d
push str.Check_failed:_glfw_wndproc
push 0x66
push ecx
push 4
push 1
lea ecx, [ebp - 0x1d0]
call fcn.00418ef0
mov ecx, eax
call fcn.004037d0
push eax
call fcn.00401900
add esp, 8
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_int_]
lea ecx, [ebp - 0x1d0]
call fcn.00419120
push 0x402bb0
push 0xfffffffffffffffc
push ebx
call dword [sym.imp.USER32.dll_SetWindowLongA]
push str.C:ProjectsRA2YurisRevengeTrainer_src_binmain.cpp
mov esi, eax
call fcn.00402620
add esp, 4
test esi, esi
je 0x4039d2
push 0x68
push eax
push 1
lea ecx, [ebp - 0x60]
call fcn.00401e80
mov ebx, 4
jmp 0x403a0f
push str.Check_failed:_res1
push 0x68
push eax
push 4
push 1
lea ecx, [ebp - 0x1d0]
call fcn.00418ef0
mov ecx, eax
call fcn.004037d0
push eax
call fcn.00401900
add esp, 8
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_int_]
mov ebx, 8
test bl, 8
je 0x403a22
lea ecx, [ebp - 0x1d0]
and ebx, 0xfffffff7
call fcn.00419120
test bl, 4
je 0x403a2f
lea ecx, [ebp - 0x60]
call sub.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::vbase_dtor_void_
push edi
call fcn.0046d4f0
push 1
call fcn.0046d5d0
add esp, 8
lea ecx, [ebp - 0x100]
call fcn.00401ea0
lea eax, [ebp - 0x100]
push eax
push edi
lea ecx, [ebp - 0xc8]
call fcn.00422aa0
lea eax, [ebp - 0xc8]
push eax
push str.GuiContext
push dword [ebp - 4]
call dword [sym.imp.USER32.dll_SetPropA]
push str.C:ProjectsRA2YurisRevengeTrainer_src_binmain.cpp
mov esi, eax
call fcn.00402620
add esp, 4
test esi, esi
je 0x403a99
push 0x70
push eax
push 1
lea ecx, [ebp - 0x60]
call fcn.00401e80
mov eax, 0x10
jmp 0x403ad6
push str.Check_failed:_res2
push 0x70
push eax
push 4
push 1
lea ecx, [ebp - 0x1d0]
call fcn.00418ef0
mov ecx, eax
call fcn.004037d0
push eax
call fcn.00401900
add esp, 8
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_int_]
mov eax, 0x20
or eax, ebx
mov dword [ebp - 4], eax
test al, 0x20
je 0x403aed
lea ecx, [ebp - 0x1d0]
call fcn.00419120
mov eax, dword [ebp - 4]
test al, 0x10
je 0x403af9
lea ecx, [ebp - 0x60]
call sub.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::vbase_dtor_void_
call fcn.0040c170
lea ecx, [ebp - 0x10]
push ecx
mov ecx, eax
call fcn.00402400
lea ecx, [ebp - 0x100]
push ecx
lea ecx, [ebp - 0xc8]
push ecx
push dword [eax + 4]
push dword [eax]
call fcn.0042e0f0
call fcn.004032e0
sub esp, 0x18
mov dword [ebp - 4], eax
mov esi, esp
mov dword [ebp - 8], 0x435cb0
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00401dc0
add esp, 0xc
mov ecx, esi
push eax
call fcn.004018d0
movsd xmm0, qword [0x4a0958]
sub esp, 8
movsd qword [esp], xmm0
push 0
call fcn.00419cd0
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 8], eax
mov esi, esp
mov dword [ebp - 4], 0x435b20
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00401dc0
add esp, 0xc
mov ecx, esi
push eax
call fcn.004018d0
movsd xmm0, qword [0x4a0950]
sub esp, 8
movsd qword [esp], xmm0
push 1
call fcn.00419cd0
lea eax, [ebp - 0xc8]
push eax
push edi
call fcn.0046aed0
push 0x4025e0
push edi
call fcn.0046ae50
add esp, 0x44
call fcn.0043fc70
push 0xbe2
mov dword [eax + 0x18], 0
call dword [sym.imp.OPENGL32.dll_glEnable]
push 0x303
push 1
call dword [sym.imp.OPENGL32.dll_glBlendFunc]
push edi
call fcn.0046b320
add esp, 4
test eax, eax
jne 0x403c87
mov esi, dword [sym.imp.OPENGL32.dll_glClearColor]
mov ebx, dword [sym.imp.OPENGL32.dll_glClear]
nop dword [eax + eax]
call fcn.00419e80
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call esi
push 0x4000
call ebx
lea ecx, [ebp - 0xc8]
call fcn.00424b80
lea ecx, [ebp - 0xc8]
call fcn.00424bb0
lea ecx, [ebp - 0xc8]
call fcn.00424b90
push edi
call fcn.0046d580
movsd xmm0, qword [0x4a0948]
push ecx
movsd qword [esp], xmm0
call fcn.0046af00
push edi
call fcn.0046b320
add esp, 0xc
test eax, eax
je 0x403c10
push edi
call fcn.0046ab00
add esp, 4
call fcn.0046a4a0
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3