Function at 0x42ae90
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x56c
mov eax, dword [0x5eae84]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x5fb9c0]
test al, 1
jne 0x42aecb
or eax, 1
mov ecx, 0x5fb990
mov dword [0x5fb9c0], eax
call fcn.0043e090
push 0x5891b0
call fcn.0057d219
add esp, 4
push 0x4c5ae
mov ecx, 0x5fb990
call fcn.0043e120
test al, al
je 0x42be52
push ebx
push esi
lea eax, [ebp - 0x47c]
push edi
push eax
call fcn.00424180
mov esi, eax
add esp, 4
cmp esi, 0x5e1a10
je 0x42af3b
cmp dword [0x5e1a24], 0x10
jb 0x42af15
push dword [0x5e1a10]
call fcn.004257e0
add esp, 4
push esi
mov ecx, 0x5e1a10
mov dword [0x5e1a24], 0xf
mov dword [0x5e1a20], 0
mov byte [0x5e1a10], 0
call fcn.00423e80
cmp dword [ebp - 0x468], 0x10
jb 0x42af52
push dword [ebp - 0x47c]
call fcn.004257e0
add esp, 4
push 1
push 2
lea ecx, [ebp - 0x56c]
call fcn.004266c0
mov eax, dword [0x5fb9c0]
test al, 1
jne 0x42af89
or eax, 1
mov ecx, 0x5fb990
mov dword [0x5fb9c0], eax
call fcn.0043e090
push 0x5891b0
call fcn.0057d219
add esp, 4
push dword [0x5fb9bc]
lea ecx, [ebp - 0x56c]
push dword [0x5fb9b8]
call dword [sym.imp.MSVCP110.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_long_unsigned___int64__]
lea eax, [ebp - 0x47c]
push eax
lea ecx, [ebp - 0x56c]
call fcn.0042a860
push 0xffffffffffffffff
push 0
push eax
mov ecx, 0x5e1a10
call fcn.00423ee0
cmp dword [ebp - 0x468], 0x10
jb 0x42afd9
push dword [ebp - 0x47c]
call fcn.004257e0
add esp, 4
cmp dword [0x5e1a24], 0x10
mov eax, 0x5e1a10
cmovae eax, dword [0x5e1a10]
push eax
call fcn.00424160
add esp, 4
lea eax, [ebp - 0x4cc]
push str.SAVE.BIN
push 0x58c820
push 0x5e1a10
push eax
call fcn.004263e0
add esp, 0xc
push eax
lea eax, [ebp - 0x47c]
push eax
call fcn.00423510
mov esi, eax
add esp, 0xc
cmp esi, 0x5e1a10
je 0x42b06a
cmp dword [0x5e1a24], 0x10
jb 0x42b044
push dword [0x5e1a10]
call fcn.004257e0
add esp, 4
push esi
mov ecx, 0x5e1a10
mov dword [0x5e1a24], 0xf
mov dword [0x5e1a20], 0
mov byte [0x5e1a10], 0
call fcn.00423e80
cmp dword [ebp - 0x468], 0x10
jb 0x42b081
push dword [ebp - 0x47c]
call fcn.004257e0
add esp, 4
cmp dword [ebp - 0x4b8], 0x10
mov dword [ebp - 0x468], 0xf
mov dword [ebp - 0x46c], 0
mov byte [ebp - 0x47c], 0
jb 0x42b0b3
push dword [ebp - 0x4cc]
call fcn.004257e0
add esp, 4
call fcn.004291f0
call fcn.00429020
call fcn.00428da0
xor al, al
xor ecx, ecx
mov byte [0x5eb8fe], 0
mov byte [0x5eb8ff], 1
mov byte [0x5fb915], 0
mov byte [0x5eb8cb], 0
mov byte [0x5eb8fd], 0
mov byte [0x5fb917], 0
mov byte [0x5fb916], al
mov dword [ebp - 0x4d4], ecx
mov dword [0x5eb8cc], ecx
mov esi, dword [sym.imp.MSVCR110.dll_printf]
mov ebx, 1
test al, al
je 0x42b175
push dword [0x5fb92c]
mov byte [0x5fb916], 0
push dword [0x5eb89c]
mov byte [0x5fb917], bl
mov byte [0x5eb8ff], 0
call sub.SDL2.dll_SDL_GL_MakeCurrent
call fcn.00425cf0
push dword [0x5fb928]
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
add esp, 0x10
mov dword [0x5eb8a0], 0
call fcn.00428110
movzx ecx, byte [0x5eb8fe]
test eax, eax
cmovs ecx, ebx
mov byte [0x5eb8fe], cl
mov byte [0x5eb898], bl
call sub.SDL2.dll_SDL_GetTicks
mov dword [ebp - 0x4d0], eax
call sub.SDL2.dll_SDL_PumpEvents
cmp dword [0x5eb8c0], 0
lea eax, [ebp - 0x464]
je 0x42b1a0
push 0x652
push 0x650
jmp 0x42b1aa
push 0x604
push 0x600
push 2
push 0x14
push eax
call sub.SDL2.dll_SDL_PeepEvents
mov edi, eax
add esp, 0x14
test edi, edi
jle 0x42b29d
lea esi, [ebp - 0x45c]
jmp 0x42b1d0
mov eax, dword [esi - 8]
add eax, 0xfffffa00
cmp eax, 0x52
ja case.0x42b1e8.1537
movzx eax, byte [eax + 0x42be78]
jmp dword [eax*4 + 0x42be68]
push dword [0x5eb8c4]
call sub.SDL2.dll_SDL_JoystickInstanceID
add esp, 4
cmp dword [esi], eax
jne case.0x42b1e8.1537
call fcn.0043d730
test al, al
je 0x42b215
call fcn.0043dea0
jmp case.0x42b1e8.1537
mov cl, byte [esi + 4]
movzx eax, cl
cmp eax, dword [0x5e1964]
jne 0x42b23b
cmp byte [0x5eb898], 0
sete al
movzx eax, al
push eax
call fcn.00428c30
add esp, 4
jmp case.0x42b1e8.1537
push 0
push ecx
call fcn.0042a6d0
add esp, 8
jmp case.0x42b1e8.1537
push dword [0x5eb8c4]
call sub.SDL2.dll_SDL_JoystickInstanceID
add esp, 4
cmp dword [esi], eax
jne case.0x42b1e8.1537
movzx eax, byte [esi + 4]
push 1
push eax
call fcn.0042a6d0
add esp, 8
jmp case.0x42b1e8.1537
push dword [0x5eb8c4]
call sub.SDL2.dll_SDL_JoystickInstanceID
add esp, 4
cmp dword [esi], eax
jne case.0x42b1e8.1537
movzx ecx, byte [esi + 4]
movsx edx, word [esi + 8]
mov eax, dword [0x5fb904]
mov dword [eax + ecx*4], edx
add esi, 0x38
dec edi
jne 0x42b1d0
mov esi, dword [sym.imp.MSVCR110.dll_printf]
lea eax, [ebp - 0x4b4]
push eax
call sub.SDL2.dll_SDL_PollEvent
add esp, 4
test eax, eax
je 0x42b5ac
mov eax, dword [ebp - 0x4b4]
mov bl, byte [0x5eb8cb]
cmp eax, 0x300
ja 0x42b3d5
je 0x42b426
cmp eax, 0xe
je 0x42b491
cmp eax, 0x100
je 0x42b491
cmp eax, 0x200
jne case.0x42b308.3
movzx eax, byte [ebp - 0x4a8]
dec eax
cmp eax, 0xc
ja case.0x42b308.3
movzx eax, byte [eax + 0x42bed8]
jmp dword [eax*4 + 0x42becc]
cmp byte [0x5e1868], 0
je case.0x42b308.3
cmp byte [0x5eb898], 0
jne case.0x42b308.3
push str.FOCUS_LOST_n
mov byte [0x5eb8ff], 0
call esi
add esp, 4
call fcn.0043d730
test al, al
je 0x42b354
call fcn.0043dfb0
mov byte [0x5fb915], 1
jmp case.0x42b308.3
push dword [0x5fb92c]
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
add esp, 8
call fcn.00425cf0
jmp case.0x42b308.3
cmp byte [0x5e1868], 0
je case.0x42b308.3
cmp byte [0x5eb898], 0
jne case.0x42b308.3
push str.FOCUS_GAINED_n
mov byte [0x5eb8ff], 1
call esi
add esp, 4
cmp byte [0x5fb915], 0
je 0x42b3b7
call fcn.0043df70
mov byte [0x5fb915], 0
jmp case.0x42b308.3
push dword [0x5fb92c]
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
add esp, 8
call fcn.00425f90
jmp case.0x42b308.3
sub eax, 0x301
je 0x42b518
sub eax, 2
jne case.0x42b308.3
test bl, bl
je 0x42b426
call fcn.00428d20
cmp eax, 5
jge 0x42b426
lea edx, [ebp - 0x4a8]
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x42b400
mov edi, 0x5eb8e4
sub edx, esi
dec edi
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42b410
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edx, dword [ebp - 0x4a0]
cmp edx, dword [0x5e1960]
jne 0x42b462
call fcn.0043d730
test al, al
je 0x42b447
call fcn.0043dea0
jmp case.0x42b308.3
cmp byte [0x5eb898], 0
sete al
movzx eax, al
push eax
call fcn.00428c30
add esp, 4
jmp case.0x42b308.3
cmp edx, 0xd
jne 0x42b47d
test dword [ebp - 0x49c], 0x300
je 0x42b49d
call fcn.0042a9c0
jmp case.0x42b308.3
cmp edx, 0x4000003d
jne 0x42b49d
test dword [ebp - 0x49c], 0x300
je 0x42b49d
mov byte [0x5eb8fe], 1
jmp case.0x42b308.3
test bl, bl
je 0x42b538
cmp edx, 8
jne 0x42b501
mov ecx, 0x5eb8e4
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b4b2
sub ecx, esi
je 0x42b4cd
dec ecx
cmp ecx, 0x19
jae 0x42be62
mov byte [ecx + 0x5eb8e4], al
mov ecx, 0x5eb8e4
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42b4d5
sub ecx, esi
je 0x42b51e
mov al, byte [ecx + 0x5eb8e3]
cmp al, 0xc2
je 0x42b4ee
cmp al, 0xc3
jne 0x42b51e
dec ecx
cmp ecx, 0x19
jae 0x42be62
mov byte [ecx + 0x5eb8e4], 0
jmp 0x42b51e
cmp edx, 0xd
jne 0x42b51e
mov byte [0x5eb8cb], 0
call sub.SDL2.dll_SDL_StopTextInput
mov bl, byte [0x5eb8cb]
mov edx, dword [ebp - 0x4a0]
cmp byte [0x5eb8fd], 0
je 0x42b569
test bl, bl
jne 0x42b569
cmp edx, 0xd
jne 0x42b569
mov byte [0x5fb91c], bl
jmp case.0x42b308.3
cmp byte [0x5eb8fd], 0
je 0x42b54f
cmp edx, 0xd
jne 0x42b54f
mov byte [0x5fb91c], 1
jmp case.0x42b308.3
xor eax, eax
cmp edx, dword [eax*8 + 0x5e1890]
jne 0x42b561
mov byte [eax + 0x5fb918], 1
inc eax
cmp eax, 0xd
jl 0x42b551
jmp case.0x42b308.3
xor eax, eax
jmp 0x42b570
cmp edx, dword [eax*8 + 0x5e1890]
jne 0x42b589
cmp eax, 0xd
jae 0x42be62
mov byte [eax + 0x5fb918], 0
inc eax
cmp eax, 0xd
jl 0x42b570
lea eax, [ebp - 0x4b4]
push eax
call sub.SDL2.dll_SDL_PollEvent
mov esi, dword [sym.imp.MSVCR110.dll_printf]
add esp, 4
test eax, eax
jne 0x42b2b4
mov eax, dword [0x5fb9c0]
test al, 1
jne 0x42b5d4
or eax, 1
mov ecx, 0x5fb990
mov dword [0x5fb9c0], eax
call fcn.0043e090
push 0x5891b0
call fcn.0057d219
add esp, 4
mov ecx, 0x5fb990
call fcn.0043e200
mov esi, dword [0x5eb5b0]
mov dword [0x5eb5b0], 0
call fcn.00429170
mov ebx, dword [0x5eb5b0]
xor eax, eax
jmp 0x42b600
cmp byte [eax + 0x5fb908], 0
jne 0x42b612
cmp byte [eax + 0x5fb918], 0
je 0x42b61f
or ebx, dword [eax*8 + 0x5e1894]
mov dword [0x5eb5b0], ebx
inc eax
cmp eax, 0xd
jl 0x42b600
mov eax, esi
not eax
and eax, ebx
or dword [0x5eb5b8], eax
not ebx
and ebx, esi
call fcn.0043d730
test al, al
mov eax, dword [0x5eb5b0]
je 0x42b658
test al, 3
jne 0x42b64e
test eax, 0xc00
je 0x42b658
call fcn.0043dea0
mov eax, dword [0x5eb5b0]
cmp byte [0x5eb898], 0
je 0x42b9e9
cmp byte [0x5eb899], 0
je 0x42b85c
mov esi, dword [ebp - 0x4d0]
mov ecx, dword [0x5eb8a4]
test bl, 0x30
je 0x42b6ab
mov eax, esi
sub eax, ecx
cmp eax, 0xc8
jbe 0x42b6ab
xor eax, eax
cmp dword [0x5eb8a0], eax
sete al
mov dword [0x5eb8a0], eax
call fcn.00428110
mov ecx, esi
mov dword [0x5eb8a4], ecx
test bl, 2
je 0x42b790
mov eax, esi
sub eax, ecx
cmp eax, 0xc8
jbe 0x42b790
cmp dword [0x5eb8a0], 0
jne 0x42b6d8
mov byte [0x5eb8fe], 1
jmp 0x42b788
cmp byte [0x5fb917], 0
je 0x42b779
push dword [0x5fb92c]
mov byte [0x5fb916], 0
push dword [0x5eb89c]
mov byte [0x5fb917], 0
mov byte [0x5eb8ff], 1
call sub.SDL2.dll_SDL_GL_MakeCurrent
call fcn.00425f90
push dword [0x5fb928]
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
mov eax, dword [0x5fb948]
add esp, 0x10
test eax, eax
je 0x42b740
push eax
call sub.SDL2.dll_SDL_DestroyTexture
add esp, 4
mov dword [0x5fb948], 0
mov eax, dword [0x5fb94c]
test eax, eax
je 0x42b75c
push eax
call sub.SDL2.dll_SDL_DestroyTexture
add esp, 4
mov dword [0x5fb94c], 0
mov byte [0x5eb898], 0
mov dword [0x5eb5b0], 0
mov dword [0x5eb5b8], 0
jmp 0x42b788
mov dword [0x5eb8a0], 1
call fcn.00428690
mov ecx, esi
mov dword [0x5eb8a4], ecx
test bl, 1
je 0x42b9e9
mov eax, esi
sub eax, ecx
cmp eax, 0xc8
jbe 0x42b9e9
cmp byte [0x5fb917], 0
je 0x42b842
push dword [0x5fb92c]
mov byte [0x5fb916], 0
push dword [0x5eb89c]
mov byte [0x5fb917], 0
mov byte [0x5eb8ff], 1
call sub.SDL2.dll_SDL_GL_MakeCurrent
call fcn.00425f90
push dword [0x5fb928]
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
mov eax, dword [0x5fb948]
add esp, 0x10
test eax, eax
je 0x42b810
push eax
call sub.SDL2.dll_SDL_DestroyTexture
add esp, 4
mov dword [0x5fb948], 0
mov eax, dword [0x5fb94c]
test eax, eax
je 0x42b82c
push eax
call sub.SDL2.dll_SDL_DestroyTexture
add esp, 4
mov dword [0x5fb94c], 0
mov byte [0x5eb898], 0
mov dword [0x5eb5b8], 0
jmp 0x42b9df
mov dword [0x5eb8a0], 1
call fcn.00428690
mov dword [0x5eb8a4], esi
jmp 0x42b9e9
test bl, bl
js 0x42b872
test al, 0x40
jne 0x42b872
mov ecx, dword [0x5eb8a4]
mov esi, dword [ebp - 0x4d0]
jmp 0x42b8a6
mov esi, dword [ebp - 0x4d0]
mov ecx, dword [0x5eb8a4]
mov eax, esi
sub eax, ecx
cmp eax, 0xc8
jbe 0x42b8a6
xor eax, eax
cmp dword [0x5eb8a0], eax
sete al
mov dword [0x5eb8a0], eax
call fcn.00428690
mov ecx, esi
mov dword [0x5eb8a4], ecx
test bl, 2
je 0x42b957
mov eax, esi
sub eax, ecx
cmp eax, 0xc8
jbe 0x42b957
cmp dword [0x5eb8a0], 0
jle 0x42b8d8
mov dword [0x5eb8a0], 1
call fcn.00428110
jmp 0x42b951
call fcn.0043d730
test al, al
jne 0x42b951
push dword [0x5fb92c]
mov byte [0x5eb8ff], 1
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
call fcn.00425f90
push dword [0x5fb928]
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
mov eax, dword [0x5fb948]
add esp, 0x10
test eax, eax
je 0x42b92e
push eax
call sub.SDL2.dll_SDL_DestroyTexture
add esp, 4
mov dword [0x5fb948], 0
mov eax, dword [0x5fb94c]
test eax, eax
je 0x42b94a
push eax
call sub.SDL2.dll_SDL_DestroyTexture
add esp, 4
mov dword [0x5fb94c], 0
mov byte [0x5eb898], 0
mov dword [0x5eb8a4], esi
test bl, 1
je 0x42b9e9
call fcn.0043d730
test al, al
jne 0x42b9d9
push dword [0x5fb92c]
mov byte [0x5eb8ff], 1
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
call fcn.00425f90
push dword [0x5fb928]
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
mov eax, dword [0x5fb948]
add esp, 0x10
test eax, eax
je 0x42b9b6
push eax
call sub.SDL2.dll_SDL_DestroyTexture
add esp, 4
mov dword [0x5fb948], 0
mov eax, dword [0x5fb94c]
test eax, eax
je 0x42b9d2
push eax
call sub.SDL2.dll_SDL_DestroyTexture
add esp, 4
mov dword [0x5fb94c], 0
mov byte [0x5eb898], 0
mov dword [0x5eb8a4], esi
mov dword [0x5eb5b0], 0
cmp byte [0x5eb8ff], 0
je 0x42ba6e
call fcn.0043d730
test al, al
je 0x42ba19
push dword [0x5fb928]
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
add esp, 8
call fcn.0043e000
jmp 0x42bb39
call fcn.00449810
mov ecx, eax
call fcn.0041a4a0
mov ecx, dword [0x5e186c]
push dword [0x5fb92c]
cmp ecx, eax
push dword [0x5eb89c]
cmovne ecx, eax
mov dword [0x5e1870], eax
mov dword [0x5e186c], ecx
call sub.SDL2.dll_SDL_GL_MakeCurrent
push 0
call fcn.00425d30
mov eax, dword [0x5eb89c]
add esp, 0xc
test eax, eax
je 0x42bb39
push eax
call sub.SDL2.dll_SDL_GL_SwapWindow
jmp 0x42bb36
cmp byte [0x5eb898], 0
je 0x42bb39
push dword [0x5fb928]
push dword [0x5eb89c]
call sub.SDL2.dll_SDL_GL_MakeCurrent
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
sub esp, 8
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor4f]
push dword [0x5fb944]
call sub.SDL2.dll_SDL_RenderClear
add esp, 4
test eax, eax
jne 0x42bd3e
push 2
push eax
sub esp, 8
xorps xmm0, xmm0
movsd qword [esp], xmm0
push eax
push eax
push dword [0x5fb94c]
push dword [0x5fb944]
call sub.SDL2.dll_SDL_RenderCopyEx
add esp, 0x20
test eax, eax
jne 0x42bd2d
push 1
push dword [0x5fb948]
call sub.SDL2.dll_SDL_SetTextureBlendMode
add esp, 8
test eax, eax
jne 0x42bd1c
push eax
push eax
push dword [0x5fb948]
push dword [0x5fb944]
call sub.SDL2.dll_SDL_RenderCopy
add esp, 0x10
test eax, eax
jne 0x42bce7
push dword [0x5fb944]
call sub.SDL2.dll_SDL_RenderPresent
add esp, 4
mov eax, dword [0x5eb8c4]
test eax, eax
jne 0x42bbe4
call sub.SDL2.dll_SDL_NumJoysticks
test eax, eax
je 0x42bc6d
push 0
call sub.SDL2.dll_SDL_GameControllerOpen
add esp, 4
mov dword [0x5eb8c0], eax
test eax, eax
jne 0x42bb76
push eax
call sub.SDL2.dll_SDL_JoystickOpen
add esp, 4
mov dword [0x5eb8c4], eax
jmp 0x42bb92
push eax
call sub.SDL2.dll_SDL_GameControllerGetJoystick
push 1
mov dword [0x5eb8c4], eax
mov byte [0x5eb89b], 1
call sub.SDL2.dll_SDL_GameControllerEventState
add esp, 8
push 1
mov byte [0x5eb8c8], 1
call sub.SDL2.dll_SDL_JoystickEventState
push dword [0x5eb8c4]
call sub.SDL2.dll_SDL_JoystickNumAxes
add esp, 8
mov dword [0x5fb900], eax
test eax, eax
jle 0x42bbd8
lea esi, [eax*4]
push esi
call dword [sym.imp.MSVCR110.dll_malloc]
push esi
push 0
push eax
mov dword [0x5fb904], eax
call sub.MSVCR110.dll_memset
add esp, 0x10
jmp 0x42bc51
mov dword [0x5fb904], 0
jmp 0x42bc51
push eax
call sub.SDL2.dll_SDL_JoystickGetAttached
add esp, 4
test eax, eax
jne 0x42bc6d
cmp byte [0x5eb8c8], al
je 0x42bc6d
cmp byte [0x5eb89b], al
je 0x42bc1f
push dword [0x5eb8c0]
call sub.SDL2.dll_SDL_GameControllerClose
mov dword [0x5eb8c0], 0
mov byte [0x5eb89b], 0
jmp 0x42bc2a
push dword [0x5eb8c4]
call sub.SDL2.dll_SDL_JoystickClose
mov eax, dword [0x5fb904]
add esp, 4
mov dword [0x5eb8c4], 0
mov byte [0x5eb8c8], 0
test eax, eax
je 0x42bc51
push eax
call dword [sym.imp.MSVCR110.dll_free]
add esp, 4
xorps xmm0, xmm0
mov byte [0x5fb914], 0
mov dword [0x5fb910], 0
movq qword [0x5fb908], xmm0
call sub.SDL2.dll_SDL_GetTicks
mov ecx, eax
mov eax, 0x3e8
cdq
idiv dword [0x5e186c]
mov ebx, dword [ebp - 0x4d4]
inc dword [0x5eb8cc]
sub eax, ecx
sub ecx, dword [ebp - 0x4d0]
add eax, dword [ebp - 0x4d0]
add ebx, ecx
mov dword [ebp - 0x4d4], ebx
lea ecx, [eax - 1]
cmp ecx, 0x3e6
ja 0x42bcbe
add ebx, eax
push eax
mov dword [ebp - 0x4d4], ebx
call sub.SDL2.dll_SDL_Delay
add esp, 4
cmp ebx, 0x3e8
jbe 0x42bcd4
xor ecx, ecx
mov dword [ebp - 0x4d4], ecx
mov dword [0x5eb8cc], ecx
cmp byte [0x5eb8fe], 0
jne 0x42bd4f
mov al, byte [0x5fb916]
jmp 0x42b101
push 0xb64
push str.FF4_Win32.cpp
push str.DOTEMU_ASSERT_SDL_RenderCopy_renderer__menuTexture__NULL__NULL___0__failed_at__s__line:__d_n
mov eax, dword [sym.imp.MSVCR110.dll_printf]
call eax
add esp, 0xc
push 0x10
push str.Assert_Failed
push str.The_program_has_encountered_an_undefined_behavior__see_the_logs_for_more_details
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 1
call dword [sym.imp.MSVCR110.dll_exit]
push 0xb63
push str.FF4_Win32.cpp
push str.DOTEMU_ASSERT_SDL_SetTextureBlendMode_menuTexture__SDL_BLENDMODE_BLEND___0__failed_at__s__line:__d_n
jmp 0x42bcf6
push 0xb61
push str.FF4_Win32.cpp
push str.DOTEMU_ASSERT_SDL_RenderCopyEx_renderer__inGameTexture__NULL__NULL__0__NULL__SDL_FLIP_VERTICAL___0__failed_at__s__line:__d_n
jmp 0x42bcf6
push 0xb5f
push str.FF4_Win32.cpp
push str.DOTEMU_ASSERT_SDL_RenderClear_renderer___0__failed_at__s__line:__d_n
jmp 0x42bcf6
call fcn.0043abc0
call fcn.00428050
mov eax, dword [0x5fb9c0]
pop edi
pop esi
pop ebx
test al, 1
jne 0x42bd84
or eax, 1
mov ecx, 0x5fb990
mov dword [0x5fb9c0], eax
call fcn.0043e090
push 0x5891b0
call fcn.0057d219
add esp, 4
mov ecx, 0x5fb990
call sub.steam_api.dll_SteamAPI_Shutdown
mov eax, dword [ebp - 0x56c]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0x56c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0x570], eax
test byte [ebp - 0x52c], 1
mov dword [ebp - method.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
je 0x42bdd8
mov eax, dword [ebp - 0x55c]
push dword [eax]
call fcn.004257e0
add esp, 4
push 0
push 0
push 0
lea ecx, [ebp - 0x568]
call dword [sym.imp.MSVCP110.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::setg_char___char___char__]
mov eax, dword [ebp - 0x558]
lea ecx, [ebp - 0x568]
mov dword [eax], 0
mov eax, dword [ebp - 0x548]
mov dword [eax], 0
mov eax, dword [ebp - 0x538]
mov dword [eax], 0
and dword [ebp - 0x52c], 0xfffffffe
mov dword [ebp - 0x530], 0
call dword [sym.imp.MSVCP110.dll_public_virtual:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0x564]
call dword [sym.imp.MSVCP110.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
mov eax, dword [sym.imp.MSVCP110.dll_const_std::ios_base::vftable]
mov dword [ebp - 0x51c], eax
lea eax, [ebp - 0x51c]
push eax
call dword [sym.imp.MSVCP110.dll_private:_static_void___cdecl_std::ios_base::_Ios_base_dtor_class_std::ios_base__]
add esp, 4
mov ecx, dword [ebp - 4]
xor ecx, ebp
xor eax, eax
call fcn.0057d22e
mov esp, ebp
pop ebp
ret
call fcn.0057d54c
nop
imul esi, dword [edx - 0x4e10ffbe], 0x42
add byte [eax - 78], cl
inc edx
add byte [ebp + 0x42b2], cl
add eax, dword [ebx]
add dword [edx], eax
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [ebx]
add eax, dword [eax]
add dword [edx], eax
nop
jb 0x42be81
inc edx
add byte [edi], cl
mov bl, 0x42
add byte [edi + 0x42b5], cl
add dword [edx], eax
add al, byte [edx]
add al, byte [edx]
add al, byte [edx]
add al, byte [edx]
add byte [ecx], al
int3