Function at 0x464190
Capabilities:
Execute command
Log keystrokes via polling
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47b7fa
mov eax, dword fs:[0]
push eax
sub esp, 0xa4
mov eax, dword [0x49d008]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0
call fcn.0043d1f0
lea ecx, [ebp - 0x64]
cmp ecx, eax
je 0x464211
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x64], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x54], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x46424d
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464243
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x464243
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00476ef0
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0x64]
mov ecx, esp
push eax
call fcn.00474480
call fcn.00453700
add esp, 0x18
call fcn.00451be0
call fcn.00451d10
call fcn.00452a50
call fcn.00453920
call fcn.004564f0
cmp byte [0x49d86a], 0
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, dword [sym.imp.USER32.dll_PostMessageA]
movsd xmm1, qword [0x495570]
jne 0x4642b4
movsd xmm0, qword [0x49d860]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x4642b4
cmp dword [0x49d804], 1
jne 0x4642e0
push 0x2414
call edi
mov ecx, 0x2d911904
call fcn.00459850
call fcn.004559b0
push 0
push 0
push 0x10
push dword [0x4a3330]
call esi
movsd xmm1, qword [0x495570]
cmp byte [0x49d82b], 0
jne 0x464310
movss xmm0, dword [0x49d9f4]
ucomiss xmm0, dword [0x4956fc]
lahf
test ah, 0x44
jnp 0x464310
movsd xmm0, qword [0x49d820]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x464339
call fcn.004517d0
push 0x18e6
call edi
mov ecx, 0x2d911904
call fcn.00459850
call fcn.004559b0
push 0
push 0
push 0x10
push dword [0x4a3330]
call esi
cmp byte [0x49d9d8], 0
jne 0x46434f
call fcn.004559b0
push 1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a0c60
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0xb0]
call fcn.0045ae00
add esp, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x464383
mov eax, dword [eax]
push eax
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov ecx, dword [ebp - 0x9c]
add esp, 4
cmp ecx, 0x10
jb 0x4643c9
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4643bf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4643bf
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00476ef0
add esp, 8
push 0x475420
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a0258
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0xb0]
call fcn.0045ae00
add esp, 0x18
mov byte [ebp - 4], 1
mov edx, eax
cmp dword [eax + 0x14], 0x10
jb 0x464408
mov edx, dword [eax]
push dword [eax + 0x10]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.004761a0
add esp, 4
mov ecx, eax
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___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x464461
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464457
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x464457
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00476ef0
add esp, 8
xor esi, esi
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov dword [ebp - 0x7c], esi
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 3
call fcn.0043d1f0
lea ecx, [ebp - 0x7c]
cmp ecx, eax
je 0x4644bd
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x7c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x6c], xmm0
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x4644f9
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4644ef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4644ef
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00476ef0
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0x7c]
mov ecx, esp
push eax
call fcn.00474480
mov edx, 0x495400
lea ecx, [ebp - 0xb0]
call fcn.0043d450
lea ecx, [ebp - 0x4c]
add esp, 0x18
cmp ecx, eax
je 0x464546
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x4c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3c], xmm0
mov esi, dword [ebp - 0x3c]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x464582
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464578
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x464578
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00476ef0
add esp, 8
cmp dword [0x49e658], 0x10
lea ecx, [ebp - 0x4c]
push dword [0x49e654]
mov eax, 0x49e644
mov edx, esi
cmovae eax, dword [0x49e644]
cmp dword [ebp - 0x38], 0x10
push eax
cmovae ecx, dword [ebp - 0x4c]
call fcn.00476770
add esp, 8
test al, al
je 0x4645cb
cmp byte [0x49d868], 0
jne 0x464347
mov byte [0x49d868], 1
jmp 0x4645e4
cmp byte [0x49d869], 0
jne 0x464347
mov byte [0x49d869], 1
call main
call fcn.0043c660
test eax, eax
jne 0x4646ab
push 0x475420
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a04b0
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov byte [ebp - 4], 4
mov edx, eax
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00475490
mov ecx, eax
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___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 3
call fcn.00474370
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
push 0x475420
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___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x49dea0
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
add esp, 4
lea ecx, [ebp - 0x98]
call fcn.00474370
push 1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
mov dword [0x49d840], 0
mov dword [0x49d83c], 0
call fcn.0045c8f0
push 0x475420
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a1944
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0xb0]
call fcn.0045ae00
add esp, 0x18
mov byte [ebp - 4], 5
mov edx, eax
cmp dword [eax + 0x14], 0x10
jb 0x464703
mov edx, dword [eax]
push dword [eax + 0x10]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.004761a0
add esp, 4
mov ecx, eax
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___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x46475c
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464752
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x464752
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00476ef0
add esp, 8
push 0x475420
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x49e674
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0xb0]
call fcn.0045ae00
add esp, 0x18
mov byte [ebp - 4], 6
mov edx, eax
cmp dword [eax + 0x14], 0x10
jb 0x46479b
mov edx, dword [eax]
push dword [eax + 0x10]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.004761a0
add esp, 4
mov ecx, eax
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___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x4647f4
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4647ea
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4647ea
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00476ef0
add esp, 8
call fcn.0043c5b0
mov dword [0x49d8e4], eax
test eax, eax
jne 0x464810
call fcn.0043c5b0
mov dword [0x49d8e4], eax
test eax, eax
je 0x464802
cmp byte [0x49d868], 0
je 0x464347
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x475420
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x49f334
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov byte [ebp - 4], 7
mov edx, eax
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00475490
mov ecx, eax
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___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 3
call fcn.00474370
call fcn.00462b20
test al, al
jne 0x46489e
nop
call fcn.00462b20
call fcn.00462b20
test al, al
je 0x464890
call fcn.0043cdb0
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x49fcd0
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a346c
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a2fb8
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0xb0]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x4649b5
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4649ab
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4649ab
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00476ef0
add esp, 8
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a210c
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a2c40
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x49ded0
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x49fb38
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a36dc
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a31e0
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x49f6c4
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
call fcn.00453920
push 0x475420
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a2094
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov byte [ebp - 4], 8
mov edx, eax
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00475490
mov ecx, eax
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___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 3
call fcn.00474370
call fcn.0045def0
push 0x475420
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a1d34
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov byte [ebp - 4], 9
mov edx, eax
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.00475490
mov ecx, eax
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___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 3
call fcn.00474370
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
push 0x475420
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___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
cmp byte [0x49d99c], 0
je 0x464ce3
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a20c4
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
call fcn.0043c660
test eax, eax
je 0x465397
mov edi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
mov eax, dword [0x49da34]
lea ecx, [ebp - 0x28]
add eax, dword [0x49d844]
mov esi, dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
push 0
push 4
push ecx
push eax
push dword [0x49d9d0]
call esi
cmp byte [0x49d911], 0
mov eax, dword [ebp - 0x28]
mov dword [0x49d81c], eax
je 0x464d2e
call fcn.00462c30
cmp byte [0x49da31], 0
je 0x464d9a
xor esi, esi
nop dword [eax]
mov eax, dword [0x49da20]
lea ecx, [ebp - 0x2c]
push 0
push 4
add eax, esi
add eax, dword [0x49d844]
push ecx
push eax
push dword [0x49d9d0]
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x464d89
mov eax, dword [0x49d818]
push 0
add eax, ecx
mov byte [ebp - 0x1c], 1
push 1
lea ecx, [ebp - 0x1c]
push ecx
push eax
push dword [0x49d9d0]
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
add esi, 0x10
cmp esi, 0x400
jl 0x464d40
mov esi, dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
cmp byte [0x49d803], 0
je 0x464da8
call fcn.004636a0
cmp byte [0x49d82a], 0
je 0x464e00
mov eax, dword [0x49da1c]
lea ecx, [ebp - 0x30]
add eax, dword [0x49d81c]
push 0
push 4
push ecx
push eax
push dword [0x49d9d0]
call esi
mov eax, dword [ebp - 0x30]
mov dword [0x49d810], eax
test eax, eax
jle 0x464e00
mov eax, dword [0x49da1c]
lea ecx, [ebp - 0x34]
add eax, dword [0x49d81c]
push 0
push 4
push ecx
push eax
push dword [0x49d9d0]
mov dword [ebp - 0x34], 0
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x49d9db], 0
je 0x464ea8
mov eax, dword [0x49d9ac]
lea ecx, [ebp - 0x1d]
add eax, dword [0x49d81c]
push 0
push 1
push ecx
push eax
push dword [0x49d9d0]
call esi
movzx eax, byte [ebp - 0x1d]
lea ecx, [ebp - 0xa4]
push 0
mov dword [ebp - 0x18], eax
mov eax, dword [0x49d834]
add eax, dword [0x49d81c]
push 0xc
push ecx
push eax
push dword [0x49d9d0]
call esi
push 0x20
call edi
test ax, ax
je 0x464ea8
test byte [ebp - 0x18], 1
je 0x464ea8
movss xmm0, dword [ebp - 0xa4]
cvtps2pd xmm0, xmm0
comisd xmm0, xmmword [0x495568]
ja 0x464e81
movsd xmm1, qword [0x495700]
comisd xmm1, xmm0
jbe 0x464ea8
mov eax, dword [0x49d9d4]
lea ecx, [ebp - 0x18]
add eax, dword [0x49d844]
push 0
push 4
push ecx
push eax
push dword [0x49d9d0]
mov dword [ebp - 0x18], 6
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x49d800], 0
je 0x464f68
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a35d4
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov edx, eax
cmp dword [eax + 0x14], 0x10
jb 0x464eeb
mov edx, dword [eax]
push dword [eax + 0x10]
cmp dword [0x49d078], 0x10
mov ecx, 0x49d064
push edx
cmovae ecx, dword [0x49d064]
mov edx, dword [0x49d074]
call fcn.00476770
mov ecx, dword [ebp - 0x84]
add esp, 8
mov byte [ebp - 0x7d], al
cmp ecx, 0x10
jb 0x464f50
mov edx, dword [ebp - 0x98]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464f43
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46423d
push ecx
push edx
call fcn.00476ef0
mov al, byte [ebp - 0x7d]
add esp, 8
test al, al
jne 0x464f5c
cmp byte [0x49d910], al
je 0x464f68
call fcn.00461250
mov ecx, eax
call fcn.004623b0
cmp byte [0x49d86b], 0
je 0x464f76
call fcn.00463920
cmp byte [0x49d912], 0
je 0x464f86
call fcn.00463e30
jmp 0x464f8b
call fcn.00464030
push dword [0x49d9cc]
call edi
test ax, ax
je 0x464fba
cmp byte [0x49d911], 0
sete byte [0x49d911]
call fcn.00453920
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0xc8
call esi
jmp 0x464fc0
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push dword [0x49d8e8]
call edi
test ax, ax
je 0x465020
cmp byte [0x49d912], 0
jne 0x464ff9
mov byte [0x49d912], 1
call fcn.00453920
mov ecx, dword [0x49d9a0]
add ecx, dword [0x49d9b8]
lea edx, [ecx - 0x2c]
xor edx, dword [0x49d82c]
jmp 0x465014
mov byte [0x49d912], 0
call fcn.00453920
mov ecx, dword [0x49d9a0]
add ecx, dword [0x49d9b8]
lea edx, [ecx - 0x2c]
call fcn.00475450
push 0xc8
call esi
push dword [0x49d8f0]
call edi
test ax, ax
je 0x4650b2
cmp byte [0x49da31], 0
je 0x46509f
mov byte [0x49da31], 0
xor esi, esi
mov eax, dword [0x49da20]
lea ecx, [ebp - 0x14]
push 0
push 4
add eax, esi
add eax, dword [0x49d844]
push ecx
push eax
push dword [0x49d9d0]
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x46508c
mov eax, dword [0x49d818]
push 0
add eax, ecx
mov byte [ebp - 0x24], 0
push 1
lea ecx, [ebp - 0x24]
push ecx
push eax
push dword [0x49d9d0]
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
add esi, 0x10
cmp esi, 0x400
jl 0x465043
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4650a6
mov byte [0x49da31], 1
call fcn.00453920
push 0xc8
call esi
cmp byte [0x49d802], 0
jne 0x4650e4
mov ecx, dword [0x49d9f8]
mov eax, dword [0x49da00]
test ecx, ecx
je 0x465106
test eax, eax
jne 0x465106
push ecx
call edi
mov ecx, 0xffff8000
cmp ax, cx
je 0x465113
cmp byte [0x49d802], 0
je 0x46512a
mov ecx, dword [0x49d9f8]
mov eax, dword [0x49da00]
test ecx, ecx
je 0x46511c
test eax, eax
jne 0x46511c
push ecx
call edi
test ax, ax
jne 0x46512a
mov byte [0x49d802], al
jmp 0x46512a
push eax
call edi
mov ecx, 0xffff8000
cmp ax, cx
jne 0x4650db
mov byte [0x49d802], 1
jmp 0x4650e4
push eax
call edi
neg ax
sbb al, al
and byte [0x49d802], al
cmp byte [0x49da32], 0
jne 0x46515c
mov ecx, dword [0x49da04]
mov eax, dword [0x49d92c]
test ecx, ecx
je 0x46517e
test eax, eax
jne 0x46517e
push ecx
call edi
mov ecx, 0xffff8000
cmp ax, cx
je 0x46518b
cmp byte [0x49da32], 0
je 0x4651a2
mov ecx, dword [0x49da04]
mov eax, dword [0x49d92c]
test ecx, ecx
je 0x465194
test eax, eax
jne 0x465194
push ecx
call edi
test ax, ax
jne 0x4651a2
mov byte [0x49da32], al
jmp 0x4651a2
push eax
call edi
mov ecx, 0xffff8000
cmp ax, cx
jne 0x465153
mov byte [0x49da32], 1
jmp 0x46515c
push eax
call edi
neg ax
sbb al, al
and byte [0x49da32], al
cmp byte [0x49d910], 0
jne 0x4651d4
mov ecx, dword [0x49d814]
mov eax, dword [0x49d920]
test ecx, ecx
je 0x4651f6
test eax, eax
jne 0x4651f6
push ecx
call edi
mov ecx, 0xffff8000
cmp ax, cx
je 0x465203
cmp byte [0x49d910], 0
je 0x46521a
mov ecx, dword [0x49d814]
mov eax, dword [0x49d920]
test ecx, ecx
je 0x46520c
test eax, eax
jne 0x46520c
push ecx
call edi
test ax, ax
jne 0x46521a
mov byte [0x49d910], al
jmp 0x46521a
push eax
call edi
mov ecx, 0xffff8000
cmp ax, cx
jne 0x4651cb
mov byte [0x49d910], 1
jmp 0x4651d4
push eax
call edi
neg ax
sbb al, al
and byte [0x49d910], al
push dword [0x49d91c]
call edi
test ax, ax
je 0x4652cd
cmp byte [0x49d800], 0
jne 0x465260
mov byte [0x49d800], 1
call fcn.00453920
cmp byte [0x49d99d], 0
je 0x4652c6
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a2424
jmp 0x46528a
mov byte [0x49d800], 0
call fcn.00453920
cmp byte [0x49d99d], 0
je 0x4652c6
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a1494
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0xc8
call esi
push 0x2d
call edi
mov ecx, 0xffff8000
cmp ax, cx
jne 0x465377
call fcn.0045def0
call fcn.00453920
cmp byte [0x49d829], 0
je 0x465377
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x49fe8c
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x465330
mov eax, dword [eax]
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
mov ecx, dword [ebp - 0x84]
cmp ecx, 0x10
jb 0x465371
mov edx, dword [ebp - 0x98]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x465367
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46423d
push ecx
push edx
call fcn.00476ef0
add esp, 8
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [0x49d828], 0
je 0x465384
push 1
call esi
call fcn.0043c660
test eax, eax
jne 0x464cf6
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [0x49d99e], 0
je 0x4653eb
push 0
push 0
push 0
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x4a135c
call fcn.00474480
mov ecx, esi
call fcn.0045aa90
add esp, 0x18
lea ecx, [ebp - 0x98]
call fcn.0045ae00
add esp, 0x18
mov ecx, eax
call fcn.00474330
push eax
call dword [sym.imp.WINMM.dll_mciSendStringA]
lea ecx, [ebp - 0x98]
call fcn.00474370
call fcn.00464030
mov ecx, dword [0x49d9a0]
add ecx, dword [0x49d9b8]
lea edx, [ecx - 0x2c]
call fcn.00475450
call fcn.00453f20
call fcn.004564f0
push 0x8fd
call edi
push 1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3