Function at 0x41e240
Capabilities:
Generate random numbers using the delphi lcg
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x174
push ebx
push esi
push edi
push 2
call dword [sym.imp.SDL2.dll_SDL_SetThreadPriority]
add esp, 4
call dword [sym.imp.SDL2.dll_SDL_EnableScreenSaver]
call dword [sym.imp.SDL2.dll_SDL_HasSSE]
test eax, eax
setne byte [0x54e4b4]
call dword [sym.imp.SDL2.dll_SDL_HasSSE2]
push 0x1a8
test eax, eax
push 0
push 0x5522e0
setne byte [0x54e4b5]
call fcn.00484630
add esp, 0xc
mov byte [0x552470], 1
push 0x100
push 0
push 0x54e380
call fcn.00484630
add esp, 0xc
mov word [0x552498], 0
xorps xmm0, xmm0
movq qword [0x552490], xmm0
push 0x58
push 0
push 0x550b60
call fcn.00484630
add esp, 0xc
push 0x150
push 0
push 0x54e4c0
call fcn.00484630
add esp, 0xc
xorps xmm0, xmm0
movlpd qword [0x550b40], xmm0
push 0xf008
push 0
push 0x77ac20
call fcn.00484630
add esp, 0xc
push 0x228008
push 0
push 0x552c00
call fcn.00484630
add esp, 0xc
push 0xce0
push 0
push 0x54ef60
call fcn.00484630
add esp, 0xc
mov eax, 0x54e320
mov word [eax], 0xffff
add eax, 2
cmp eax, 0x54e360
jl 0x41e332
or eax, 0xffffffff
mov byte [0x789f64], 1
mov word [0x789f67], 0x101
xor esi, esi
mov dword [0x54e550], 0x1020401
mov dword [0x54e648], 0xffffffff
mov word [0x550b6a], ax
mov word [0x54e529], 0x101
mov byte [0x54e526], 0x31
mov dword [0x54e554], 0x30201000
mov word [0x54e4ec], 0x101
mov dword [0x54e517], 0x1010101
mov byte [0x54e51b], 1
mov dword [0x54e51c], 0x1010101
mov byte [0x54e520], 1
movd xmm0, esi
sub esp, 8
cvtdq2pd xmm0, xmm0
movsd qword [esp], xmm0
call fcn.0048fa2d
fld1
add esp, 8
fdivrp st(1)
fstp qword [esi*8 + 0x5374d0]
inc esi
cmp esi, 0x20
jl 0x41e3b5
xor esi, esi
movd xmm0, esi
sub esp, 8
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x4e2a60]
movsd qword [esp], xmm0
call fcn.0048fa2d
fmul qword [0x4e2bb0]
add esp, 8
fstp qword [esi*8 + 0x535c30]
inc esi
cmp esi, 0x300
jl 0x41e3e0
mov byte [0x552473], 1
push 0x410120
mov byte [0x54e4db], 1
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
lea eax, [esp + 0x44]
push eax
call dword [sym.imp.SDL2.dll_SDL_GetVersion]
mov dl, byte [esp + 0x48]
add esp, 4
mov al, byte [esp + 0x46]
mov cl, byte [esp + 0x45]
cmp dl, 2
jne 0x41f112
cmp cl, 0x1e
jne 0x41f112
cmp al, 2
jne 0x41f112
push 0x4df380
push str.SDL_WINDOWS_NO_CLOSE_ON_ALT_F4
call dword [sym.imp.SDL2.dll_SDL_SetHint]
push 0x100
lea eax, [esp + 0x80]
mov dword [esp + 0x6c], 0x11c
push 0
push eax
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
call fcn.00484630
mov esi, dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
add esp, 0x14
xor eax, eax
mov word [esp + 0x174], ax
mov dword [esp + 0x176], eax
push 3
push 0x20
push 3
push 1
push 3
push 2
push eax
push eax
mov word [esp + 0x19a], ax
call esi
push edx
push eax
call esi
push edx
push eax
call esi
push edx
push eax
push 0x23
lea eax, [esp + 0x6c]
mov dword [esp + 0x70], 6
xor ecx, ecx
mov dword [esp + 0x74], 0
push eax
mov word [esp + 0x184], cx
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
test eax, eax
jne 0x41e521
mov byte [0x552470], al
cmp byte [0x54e4b4], 0
jne 0x41e540
push str.Your_computers_processor_doesnt_have_the_SSE_instruction_set_nwhich_is_needed_for_this_program_to_run._Sorry_
call fcn.00446950
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [0x54e4b5], 0
jne 0x41e55f
push str.Your_computers_processor_doesnt_have_the_SSE2_instruction_set_nwhich_is_needed_for_this_program_to_run._Sorry_
call fcn.00446950
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.SDL2.dll_SDL_GetNumAudioDrivers]
mov edi, eax
cmp edi, 1
jle 0x41e628
mov ebx, dword [sym.imp.SDL2.dll_SDL_GetAudioDriver]
xor esi, esi
test edi, edi
jle 0x41e5be
nop dword [eax]
push esi
call ebx
add esp, 4
test eax, eax
je 0x41e5b9
mov ecx, str.directsound
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x41e5b0
test dl, dl
je 0x41e5ac
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x41e5b0
add ecx, 2
add eax, 2
test dl, dl
jne 0x41e590
xor eax, eax
jmp 0x41e5b5
sbb eax, eax
or eax, 1
test eax, eax
je 0x41e5f3
inc esi
cmp esi, edi
jl 0x41e580
xor esi, esi
test edi, edi
jle 0x41e628
push esi
call ebx
add esp, 4
test eax, eax
je 0x41e605
mov ecx, str.winmm
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x41e5fc
test dl, dl
je 0x41e5ef
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x41e5fc
add ecx, 2
add eax, 2
test dl, dl
jne 0x41e5d3
xor eax, eax
jmp 0x41e601
push 1
push str.directsound
jmp 0x41e613
sbb eax, eax
or eax, 1
test eax, eax
je 0x41e60c
inc esi
cmp esi, edi
jl 0x41e5c4
jmp 0x41e628
push 1
push str.winmm
push str.SDL_AUDIODRIVER
call dword [sym.imp.SDL2.dll_SDL_setenv]
mov byte [0x789f68], 0
add esp, 0xc
push 0x30
call dword [sym.imp.SDL2.dll_SDL_Init]
add esp, 4
test eax, eax
je 0x41e657
call dword [sym.imp.SDL2.dll_SDL_GetError]
push eax
push str.Couldnt_initialize_SDL:_n_s
call fcn.00446950
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
push 0x1000
call dword [sym.imp.SDL2.dll_SDL_EventState]
add esp, 8
call dword [sym.imp.SDL2.dll_SDL_StopTextInput]
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push str.NtDelayExecution
push str.ntdll.dll
call edi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call esi
test eax, eax
mov dword [0x50adfc], eax
mov edx, 0x413780
mov ecx, 0x4137b0
push str.NtQueryTimerResolution
cmovne ecx, edx
push str.ntdll.dll
mov dword [0x50ae28], ecx
call edi
push eax
call esi
push str.NtSetTimerResolution
push str.ntdll.dll
mov dword [0x50ae44], eax
call edi
push eax
call esi
cmp dword [0x50ae44], 0
mov dword [0x50ae2c], eax
je 0x41e6db
test eax, eax
je 0x41e6db
mov al, 1
jmp 0x41e6dd
xor al, al
mov byte [0x4ee0a7], al
call dword [sym.imp.SDL2.dll_SDL_GetPerformanceFrequency]
mov ecx, eax
mov dword [0x5524a0], eax
mov dword [0x5524a4], edx
call fcn.004a7630
movsd xmm1, qword [0x4e2ae0]
mov edx, 0x3c
divsd xmm1, xmm0
mov ecx, 0x54e430
movaps xmm0, xmm1
mulsd xmm1, qword [0x4e2ba0]
mulsd xmm0, qword [0x4e2b70]
movsd qword [0x5524a8], xmm1
movsd qword [0x5524b0], xmm0
call fcn.004137e0
push 0x20a
call fcn.004896c5
add esp, 4
mov dword [0x54e4c0], eax
test eax, eax
jne 0x41e76e
push str.Not_enough_memory_
call fcn.00446950
add esp, 4
mov edi, 1
call fcn.0041f140
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor ecx, ecx
mov word [eax], cx
push 0x104
push dword [0x54e4c0]
call fcn.0048b0ae
add esp, 8
call fcn.00403660
test al, al
je 0x41e75b
push 0x20000
call fcn.004896c5
add esp, 4
mov dword [0x4edf44], eax
test eax, eax
je 0x41f0f7
movsd xmm6, qword [0x4e2ad0]
xor ecx, ecx
movsd xmm7, qword [0x4e2ae0]
nop dword [eax + eax]
xorps xmm5, xmm5
cvtsi2sd xmm5, ecx
inc ecx
movaps xmm4, xmm5
mulsd xmm5, xmm5
mulsd xmm4, qword [0x4e2a40]
mulsd xmm5, qword [0x4e2a10]
movaps xmm2, xmm5
movaps xmm0, xmm5
mulsd xmm2, xmm4
mulsd xmm4, xmm6
movaps xmm3, xmm2
mulsd xmm2, qword [0x4e2ae8]
mulsd xmm3, xmm6
movaps xmm1, xmm2
subsd xmm0, xmm3
subsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [eax], xmm0
movaps xmm0, xmm5
mulsd xmm0, qword [0x4e2b00]
subsd xmm1, xmm0
addsd xmm1, xmm7
cvtpd2ps xmm0, xmm1
movss dword [eax + 4], xmm0
movaps xmm0, xmm5
addsd xmm0, xmm5
mulsd xmm5, xmm6
subsd xmm0, xmm2
subsd xmm3, xmm5
addsd xmm0, xmm4
cvtpd2ps xmm0, xmm0
movss dword [eax + 8], xmm0
cvtpd2ps xmm0, xmm3
movss dword [eax + 0xc], xmm0
add eax, 0x10
cmp ecx, 0x2000
jl 0x41e7c0
push 0x40000
call fcn.004896c5
add esp, 4
mov dword [0x4edf48], eax
push 0x40000
call fcn.004896c5
add esp, 4
mov dword [0x4edf5c], eax
push 0x40000
call fcn.004896c5
add esp, 4
mov dword [0x4edf64], eax
push 0x80000
call fcn.004896c5
add esp, 4
mov dword [0x4edf50], eax
push 0x80000
call fcn.004896c5
add esp, 4
mov dword [0x4edf54], eax
push 0x80000
call fcn.004896c5
mov edx, dword [0x4edf48]
add esp, 4
mov dword [0x4edf58], eax
test edx, edx
je 0x41f0f7
cmp dword [0x4edf5c], 0
je 0x41f0f7
cmp dword [0x4edf64], 0
je 0x41f0f7
cmp dword [0x4edf50], 0
je 0x41f0f7
cmp dword [0x4edf54], 0
je 0x41f0f7
test eax, eax
je 0x41f0f7
movsd xmm3, qword [0x4e2ae0]
mov ecx, 8
movsd xmm2, qword [0x4e2b20]
mov dword [0x54e360], 0x30000000
mov dword [0x54e364], 1
mov dword [0x54e368], 0x80000000
mov dword [0x54e36c], 1
call fcn.0044f8a0
movsd xmm3, qword [0x4e2ad0]
mov ecx, 8
movsd xmm2, qword [0x4e2b18]
mov edx, dword [0x4edf5c]
call fcn.0044f8a0
movsd xmm3, qword [0x4e2ac8]
mov ecx, 8
movsd xmm2, qword [0x4e2b10]
mov edx, dword [0x4edf64]
call fcn.0044f8a0
movsd xmm3, qword [0x4e2ae0]
mov ecx, 0x10
movsd xmm2, qword [0x4e2b20]
mov edx, dword [0x4edf50]
call fcn.0044f8a0
movsd xmm3, qword [0x4e2ad0]
mov ecx, 0x10
movsd xmm2, qword [0x4e2b18]
mov edx, dword [0x4edf54]
call fcn.0044f8a0
movsd xmm3, qword [0x4e2ac8]
mov ecx, 0x10
movsd xmm2, qword [0x4e2b10]
mov edx, dword [0x4edf58]
call fcn.0044f8a0
call fcn.00405390
mov eax, dword [0x54e4cc]
test eax, eax
je 0x41eb25
push 0x4ddb94
push eax
call fcn.00489507
mov edi, eax
add esp, 8
test edi, edi
je 0x41eb25
push 2
push 0
push edi
call fcn.0048a035
add esp, 0xc
push edi
call fcn.00489d53
add esp, 4
mov esi, eax
push edi
call fcn.0048a050
lea ecx, [esi - 0x6c4]
add esp, 4
cmp ecx, 4
ja 0x41eaf5
cmp esi, 0x6c8
jae 0x41ea71
push 0x6c8
push 0
push 0x4f60a0
call fcn.00484630
add esp, 0xc
push edi
push 1
push esi
push 0x4f60a0
call fcn.0048a775
push edi
mov esi, eax
call fcn.00489248
add esp, 0x14
cmp esi, 1
je 0x41eab9
mov ecx, 0x1b2
mov esi, 0x4be268
mov edi, 0x4f60a0
rep movsd dword es:[edi], dword [esi]
mov cl, 1
call fcn.00404460
push str.I_O_error_while_reading_FT2.CFG__default_settings_were_loaded.
call fcn.00446950
add esp, 4
jmp 0x41eb3d
call fcn.00404400
mov ecx, 0x4f60a0
mov edx, str.FastTracker_2.0_configuration_file
mov esi, 0x1f
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41eafe
add ecx, 4
add edx, 4
sub esi, 4
jae 0x41ead0
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x41eafe
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41eafe
xor cl, cl
jmp 0x41eb38
push edi
call fcn.00489248
add esp, 4
mov ecx, 0x1b2
mov esi, 0x4be268
mov edi, 0x4f60a0
rep movsd dword es:[edi], dword [esi]
mov cl, 1
call fcn.00404460
push str.The_configuration_file__FT2.CFG__was_corrupt__default_settings_were_loaded.
call fcn.00446950
add esp, 4
jmp 0x41eb3d
mov ecx, 0x1b2
mov esi, 0x4be268
mov edi, 0x4f60a0
rep movsd dword es:[edi], dword [esi]
mov cl, 1
call fcn.00404460
xor cl, cl
mov byte [0x54e383], 0
call fcn.004473b0
push dword [0x54e460]
call dword [sym.imp.SDL2.dll_SDL_GetWindowDisplayIndex]
xor ecx, ecx
add esp, 4
test eax, eax
cmovs eax, ecx
lea ecx, [esp + 0x4c]
push ecx
push eax
call dword [sym.imp.SDL2.dll_SDL_GetDesktopDisplayMode]
mov eax, dword [esp + 0x60]
mov edi, 1
movzx ecx, byte [0x54e383]
push 0x2008
movd xmm0, eax
add eax, 0xffffffc5
cmp eax, 2
cvtdq2pd xmm0, xmm0
cmovbe ecx, edi
test byte [0x55259f], 0x40
movzx eax, cl
mov ecx, 0
cmovne eax, ecx
movzx ecx, byte [0x54e385]
mov byte [0x54e383], al
imul eax, ecx, 0x190
movsd qword [0x54e400], xmm0
push eax
imul eax, ecx, 0x278
push eax
push 0x2fff0000
push 0x2fff0000
push 0x4dfa42
call dword [sym.imp.SDL2.dll_SDL_CreateWindow]
add esp, 0x20
mov dword [0x54e460], eax
test eax, eax
jne 0x41ec0a
call dword [sym.imp.SDL2.dll_SDL_GetError]
push eax
push str.Couldnt_create_SDL_window:_n_s
call fcn.00446950
add esp, 8
call fcn.0041f140
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 1
call fcn.00447550
call fcn.004476a0
test al, al
je 0x41e760
mov ebx, dword [ebp + 0xc]
mov edx, ebx
mov ecx, dword [ebp + 8]
call fcn.0040ff30
test al, al
jne 0x41f0e9
call fcn.00409830
test al, al
je 0x41e760
call fcn.00402c30
mov dword [0x789c44], eax
call fcn.00402d10
xor cl, cl
mov dword [0x789c40], eax
call fcn.00402780
test al, al
jne 0x41ec96
call fcn.00403260
xor cl, cl
call fcn.00402780
test al, al
jne 0x41ec96
mov al, byte [0x55259e]
mov cl, 1
and al, 0xd3
mov dword [0x5524e5], 0xac44
or al, 0x12
mov byte [0x55259e], al
call fcn.00402780
test al, al
je 0x41e760
call fcn.00435f50
test al, al
je 0x41e760
call fcn.004108b0
test al, al
je 0x41e760
mov esi, dword [sym.imp.SDL2.dll_SDL_CreateThread]
push fcn.0048aab9
push 0x48aa36
push 0
push 0
push 0x47d310
call esi
add esp, 0x14
mov dword [0x54db80], eax
test eax, eax
jne 0x41ecf2
push str.Couldnt_create_channel_scope_thread_
call fcn.00446950
add esp, 4
call fcn.0041f140
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push eax
call dword [sym.imp.SDL2.dll_SDL_DetachThread]
movsd xmm1, qword [0x4e2a00]
add esp, 4
mov eax, dword [0x4edf9c]
mov ecx, 0x4ee0b8
mov edx, 0x7d0
imul eax, eax, 0x8088405
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
imul eax, eax, 0x8088405
mulsd xmm0, xmm1
inc eax
cvtpd2ps xmm0, xmm0
movss dword [ecx - 8], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
imul eax, eax, 0x8088405
mulsd xmm0, xmm1
inc eax
cvtpd2ps xmm0, xmm0
movss dword [ecx - 4], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [ecx], xmm0
add ecx, 0xc
sub edx, edi
jne 0x41ed13
mov dword [0x4edf9c], eax
call fcn.004022a0
call fcn.00402320
call fcn.004032b0
push dword [0x54e460]
call dword [sym.imp.SDL2.dll_SDL_ShowWindow]
add esp, 4
test byte [0x55259f], 0x80
je 0x41eda5
mov byte [0x54e380], 1
call fcn.00446d50
cmp byte [0x552470], 0
je 0x41edea
push fcn.0048aab9
push 0x48aa36
push 0
push 0
push 0x420000
call esi
add esp, 0x14
mov dword [0x552484], eax
test eax, eax
jne 0x41edea
push str.Couldnt_create_MIDI_initialization_thread_
call fcn.00446950
add esp, 4
call fcn.0041f140
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [sym.imp.SDL2.dll_SDL_GetPerformanceCounter]
call edi
add eax, dword [0x54e430]
mov dword [0x54e440], eax
mov eax, dword [0x54e438]
adc edx, dword [0x54e434]
cmp dword [ebp + 8], 2
mov dword [0x54e448], eax
mov eax, dword [0x54e43c]
mov dword [0x54e444], edx
mov dword [0x54e44c], eax
jne 0x41efdf
mov esi, dword [ebx + 4]
test esi, esi
je 0x41efdf
cmp byte [esi], 0
je 0x41efdf
lea ecx, [esi + 1]
nop
mov al, byte [esi]
inc esi
test al, al
jne 0x41ee40
push 0x20a
sub esi, ecx
call fcn.004896c5
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x41ee72
push eax
push str.Not_enough_memory_
push str.System_message
push eax
call fcn.00441220
jmp 0x41efdc
lea eax, [esi*2 + 2]
push eax
call fcn.004896c5
mov edi, eax
add esp, 4
mov dword [esp + 0x48], edi
test edi, edi
jne 0x41eea0
push ebx
call fcn.00489083
add esp, 4
push edi
push str.Not_enough_memory_
jmp 0x41efca
xor eax, eax
mov word [ebx], ax
mov word [edi], ax
lea eax, [esi + 1]
push eax
mov eax, dword [ebp + 0xc]
push edi
push 0xffffffffffffffff
push dword [eax + 4]
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0x104
push ebx
call fcn.0048b0ae
push dword [0x54e4c0]
call fcn.0048b7b0
add esp, 0xc
mov ecx, edi
call fcn.00409700
cmp eax, 0xffffffff
je 0x41efa8
cmp eax, 0x20000000
jge 0x41efa8
push 0x400
push 0
push 0x551ee0
call fcn.00484630
add esp, 0xc
push 0x404
push 0
push 0x550bc0
call fcn.00484630
add esp, 0xc
push 0xce0
push 0
push 0x5511e0
call fcn.00484630
mov esi, dword [esp + 0x54]
mov ecx, 0x80
mov edx, dword [0x54e4c4]
mov eax, 0x400040
mov edi, 0x550fe0
add esp, 0xc
rep stosd dword es:[edi], eax
mov ecx, esi
nop
movzx eax, word [ecx]
lea edx, [edx + 2]
add ecx, 2
mov word [edx - 2], ax
test ax, ax
jne 0x41ef50
xor cl, cl
mov byte [0x54e4e3], al
call fcn.00420510
cmp byte [0x50add7], 0
je 0x41ef85
call fcn.00420990
xor edx, edx
mov cl, 2
call fcn.004361f0
push esi
call fcn.00489083
add esp, 4
push ebx
call fcn.0048b7b0
add esp, 4
push ebx
call fcn.00489083
mov edi, dword [sym.imp.SDL2.dll_SDL_GetPerformanceCounter]
add esp, 4
jmp 0x41efdf
push edi
call fcn.00489083
add esp, 4
push ebx
call fcn.0048b7b0
add esp, 4
push ebx
call fcn.00489083
add esp, 4
push 0
push str.Error:_The_module_is_too_big_to_be_loaded_
push str.System_message
push 0
call fcn.00441220
mov edi, dword [sym.imp.SDL2.dll_SDL_GetPerformanceCounter]
add esp, 0x10
mov byte [0x54e4d8], 1
call edi
add eax, dword [0x54e430]
mov dword [0x54e440], eax
mov eax, dword [0x54e438]
adc edx, dword [0x54e434]
cmp byte [0x54e4db], 0
mov dword [0x54e448], eax
mov eax, dword [0x54e43c]
mov dword [0x54e444], edx
mov dword [0x54e44c], eax
je 0x41f0d9
mov esi, dword [sym.imp.SDL2.dll_SDL_GetModState]
cmp byte [0x54e381], 0
je 0x41f03c
call edi
mov dword [0x53a730], eax
mov dword [0x53a734], edx
cmp byte [0x54e4a0], 0
je 0x41f074
push dword [0x54e4b0]
movzx eax, word [0x54e4a2]
push dword [0x54e4ac]
push dword [0x54e4a8]
push eax
call fcn.00441220
mov word [0x54e4a4], ax
add esp, 0x10
mov byte [0x54e4a0], 0
call fcn.00424430
call esi
mov ecx, eax
shr ecx, 6
and cl, 1
mov byte [0x552498], cl
mov ecx, eax
shr ecx, 8
and cl, 1
mov byte [0x552499], cl
mov cl, al
and cl, 1
test eax, 0x541
mov byte [0x552497], cl
setne byte [0x552495]
call fcn.00436c20
call fcn.00410240
call fcn.0040fbd0
call fcn.00447870
call fcn.00446750
call fcn.004466e0
cmp byte [0x54e4db], 0
jne 0x41f026
cmp byte [0x552739], 0
je 0x41f0e9
xor cl, cl
call fcn.00405110
call fcn.0041f140
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.Not_enough_memory_
call fcn.00446950
add esp, 4
call fcn.0041f140
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 2
push 0x1e
push 2
movzx eax, al
push eax
movzx eax, cl
push eax
movzx eax, dl
push eax
push str.SDL2.dll_is_not_the_expected_version__the_program_will_terminate._n_nLoaded_dll_version:__d._d._d_nRequired__compiled_with__version:__d._d._d_n_n
call fcn.00446950
add esp, 0x1c
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret