Function at 0x404ca1
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call
Log keystrokes via polling

Disassembly:
push 0x7b0
push 0
push 0x49d224
call sub.MSVCRT.dll_memset
add esp, 0xc
push 0
call sub.KERNEL32.dll_GetModuleHandleA
mov dword [0x49d228], eax
push 0
push 0x1000
push 0
call sub.KERNEL32.dll_HeapCreate
mov dword [0x49d224], eax
mov eax, 0x48c190
mov dword [0x49d22c], eax
call fcn.004150e0
call fcn.00414560
call fcn.00414432
call fcn.004139c0
call fcn.00412dc3
call fcn.00412b60
call fcn.00412953
call fcn.00411e10
call fcn.004119d0
call fcn.0041180f
call fcn.0040ff0e
call fcn.0040e7d9
call fcn.0040e2b1
call fcn.0040daad
call fcn.0040d8af
call fcn.0040c4c9
call fcn.0040e750
call fcn.0040cac0
call fcn.00415130
push eax
push eax
call fcn.00411ae4
push 0x49d230
call fcn.00415170
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.0.ogg
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
mov ebp, 0x453472
mov ebx, ebp
mov ebp, 0x4508dc
sub ebx, ebp
push ebx
mov ebp, 0x4508dc
push ebp
push 0
call fcn.004121e0
push 0
call fcn.00411d90
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.1.ogg
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
mov ebp, 0x4563e3
mov ebx, ebp
mov ebp, 0x453472
sub ebx, ebp
push ebx
mov ebp, 0x453472
push ebp
push 0
call fcn.004121e0
push 0
call fcn.00411d90
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.3.ogg
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
mov ebp, 0x459a18
mov ebx, ebp
mov ebp, 0x4563e3
sub ebx, ebp
push ebx
mov ebp, 0x4563e3
push ebp
push 0
call fcn.004121e0
push 0
call fcn.00411d90
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.4.ogg
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
mov ebp, 0x45e3e9
mov ebx, ebp
mov ebp, 0x459a18
sub ebx, ebp
push ebx
mov ebp, 0x459a18
push ebp
push 0
call fcn.004121e0
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.5.ogg
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
mov ebp, 0x460ff6
mov ebx, ebp
mov ebp, 0x45e3e9
sub ebx, ebp
push ebx
mov ebp, 0x45e3e9
push ebp
push 0
call fcn.004121e0
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.6.ogg
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
mov ebp, 0x462e9d
mov ebx, ebp
mov ebp, 0x460ff6
sub ebx, ebp
push ebx
mov ebp, 0x460ff6
push ebp
push 0
call fcn.004121e0
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.7.ogg
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
mov ebp, 0x465405
mov ebx, ebp
mov ebp, 0x462e9d
sub ebx, ebp
push ebx
mov ebp, 0x462e9d
push ebp
push 0
call fcn.004121e0
push 0
call fcn.00411d90
call fcn.0040cb50
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.0.ogg
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.0040cd48
call fcn.004152c0
mov dword [0x49d234], eax
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.1.ogg
call fcn.00415200
call fcn.00415260
push 1
call fcn.004152a2
add dword [esp + 4], edx
call fcn.0040cd48
call fcn.004152c0
mov dword [0x49d234], eax
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.3.ogg
call fcn.00415200
call fcn.00415260
push 3
call fcn.004152a2
add dword [esp + 4], edx
call fcn.0040cd48
call fcn.004152c0
mov dword [0x49d234], eax
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.4.ogg
call fcn.00415200
call fcn.00415260
push 4
call fcn.004152a2
add dword [esp + 4], edx
call fcn.0040cd48
call fcn.004152c0
mov dword [0x49d234], eax
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.5.ogg
call fcn.00415200
call fcn.00415260
push 5
call fcn.004152a2
add dword [esp + 4], edx
call fcn.0040cd48
call fcn.004152c0
mov dword [0x49d234], eax
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.6.ogg
call fcn.00415200
call fcn.00415260
push 6
call fcn.004152a2
add dword [esp + 4], edx
call fcn.0040cd48
call fcn.004152c0
mov dword [0x49d234], eax
call fcn.00415130
push eax
mov edx, dword [0x49d230]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.7.ogg
call fcn.00415200
call fcn.00415260
push 7
call fcn.004152a2
add dword [esp + 4], edx
call fcn.0040cd48
call fcn.004152c0
mov dword [0x49d234], eax
call fcn.0040e750
call fcn.00415130
push eax
push 0
push 0x40
call fcn.00415130
push eax
push eax
call fcn.0040dadc
call fcn.004152a2
add dword [esp], edx
call fcn.00409f89
push 0x49d24c
call fcn.00415170
mov ebp, 0x465405
push ebp
push 0
call fcn.00413000
and eax, eax
je 0x402148
mov ebp, 0x476bbc
push ebp
push 2
call fcn.00413000
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0x41
push 0x133
push 2
call fcn.004131ca
push eax
call fcn.00412be0
call fcn.00412c27
push 0x100
push 0x18
push 0x45029a
push 1
call fcn.004119e4
and eax, eax
je 0x4015f2
push 0x100
push 0x30
push 0x45029a
push 2
call fcn.004119e4
and eax, eax
je 0x40160f
push 0x120
push 0xfa
push 0x1f4
push 1
call fcn.004131e6
and eax, eax
je 0x4016f3
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
push 0xff
push 0xa
push 0xa
mov eax, 0xa
call fcn.0040dfd0
push eax
push str.Agrikaan
push 0
push 0
call fcn.00412c9e
call fcn.00412c27
push 0
push 0x64
push 0xc8
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0x11
call fcn.00412c87
push 0x64
push 0xc8
push 0x12
push 0x133
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0x49d96c
push 0x4508d4
push 8
push 0x65
push 4
call fcn.00412854
call fcn.00415130
push eax
push eax
call fcn.00411ae4
push 0x49d250
call fcn.00415170
call fcn.00415130
push eax
mov edx, dword [0x49d250]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.Options
call fcn.00415200
call fcn.00415260
push 0xa
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
and eax, eax
je 0x401794
mov ebp, 0x48a244
mov ebx, ebp
mov ebp, str.TRAINER_r_n_r_n_r_nNumpad_1:_Instant_Heal_r_nNumpad_2:_Mega_Resources_r_nNumpad_3:_Unlimited_Flashlight_r_nNumpad_4:_Super_Speed_r_nNumpad_5:_Enemy_Cannot_Shoot_r_nNumpad_6:_Enemy_Cannot_Melee_r_nNumpad_7:_Unlimited_Rewire_Power_r_nNumpad_8:_Unlimited_Bullets_r_nNumpad_9:_Easy_Door_Hack
sub ebx, ebp
push ebx
mov ebp, str.TRAINER_r_n_r_n_r_nNumpad_1:_Instant_Heal_r_nNumpad_2:_Mega_Resources_r_nNumpad_3:_Unlimited_Flashlight_r_nNumpad_4:_Super_Speed_r_nNumpad_5:_Enemy_Cannot_Shoot_r_nNumpad_6:_Enemy_Cannot_Melee_r_nNumpad_7:_Unlimited_Rewire_Power_r_nNumpad_8:_Unlimited_Bullets_r_nNumpad_9:_Easy_Door_Hack
push ebp
push 0xa
call fcn.004121e0
push 0xa
call fcn.00411d90
jmp 0x4017a8
push str.Could_not_install_the_file___Installtion_failed
push str.Error
call fcn.0040d915
jmp 0x409062
call fcn.00415130
push eax
mov edx, dword [0x49d250]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.help.txt
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
and eax, eax
je 0x401815
mov ebp, 0x48b5cd
mov ebx, ebp
mov ebp, 0x48a244
sub ebx, ebp
push ebx
mov ebp, 0x48a244
push ebp
push 0
call fcn.004121e0
push 0
call fcn.00411d90
jmp 0x401824
push str.Could_not_create_HELP.TXT_file.
push str.Error
call fcn.0040d915
push 0x49d96c
push 0x4508d4
push 8
push 0x65
push 4
call fcn.00412854
call fcn.00415130
push eax
mov edx, dword [0x49d250]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.Options
call fcn.00415200
call fcn.00415260
push 0xa
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00412080
call fcn.004152c0
call fcn.00415130
push eax
push eax
push 0xa
call fcn.00412240
mov edx, 0x4500ad
call fcn.00415200
push 0x49d254
call fcn.00415170
call fcn.00415130
push eax
push eax
push 0xa
call fcn.00412240
push 0x49d258
call fcn.00415170
call fcn.00415130
push eax
push eax
push 0xa
call fcn.00412240
mov ebx, dword [0x49d25c]
inc ebx
mov ebp, dword [0x49d96c]
shl ebx, 2
lea eax, [ebp + ebx]
push eax
call fcn.00415170
inc dword [0x49d25c]
push 0xa
call fcn.00412380
mov ebx, eax
cmp ebx, 1
jne 0x4018c0
push 0xa
call fcn.00411d90
fild dword [0x49d25c]
fmul dword [0x4508b4]
fstp dword [0x49d260]
fld dword [0x49d260]
fmul dword [0x4508b8]
fstp dword [0x49d264]
fld dword [0x49d260]
fild dword [0x49d25c]
fdiv dword [0x4508bc]
fdivp st(1)
fstp dword [0x49d268]
fld dword [0x49d264]
fild dword [0x49d25c]
fdiv dword [0x4508bc]
fdivp st(1)
fstp dword [0x49d26c]
fld dword [0x49d260]
fcomp dword [0x4508c0]
fnstsw ax
test ah, 1
jne 0x401984
mov ebx, dword [0x49d25c]
cmp ebx, 0x15
jl 0x401984
jmp 0x40198b
mov eax, 1
jmp 0x40198d
xor eax, eax
and eax, eax
je 0x4019c9
mov dword [0x49d260], 0x44480000
mov dword [0x49d264], 0x44c80000
fld dword [0x49d260]
fdiv dword [0x4508b8]
fstp dword [0x49d268]
fld dword [0x49d264]
fdiv dword [0x4508b8]
fstp dword [0x49d26c]
push 0x120
fld dword [0x49d264]
push eax
fistp dword [esp]
fld dword [0x49d260]
push eax
fistp dword [esp]
push 1
call fcn.004131e6
and eax, eax
je 0x401b63
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
mov dword [0x49d270], 1
mov eax, dword [0x49d25c]
cmp eax, dword [0x49d270]
jl 0x401a81
push 0xff
push 0
push 0
mov eax, 0
call fcn.0040dfd0
push eax
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d96c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d270]
imul ebx, ebx, 0x1a
add ebx, 0xffffffe8
push ebx
push 2
call fcn.00412c9e
inc dword [0x49d270]
jno 0x401a28
mov dword [0x49d270], 1
mov eax, dword [0x49d25c]
cmp eax, dword [0x49d270]
jl 0x401ae4
push 0xff
push 0xff
push 0xff
mov eax, 0xff
call fcn.0040dfd0
push eax
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d96c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d270]
imul ebx, ebx, 0x1a
add ebx, 0xffffffe6
push ebx
push 0
call fcn.00412c9e
inc dword [0x49d270]
jno 0x401a8b
call fcn.00412c27
push 0
fld dword [0x49d26c]
push eax
fistp dword [esp]
fld dword [0x49d268]
push eax
fistp dword [esp]
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0x11
call fcn.00412c87
fld dword [0x49d26c]
push eax
fistp dword [esp]
fld dword [0x49d268]
push eax
fistp dword [esp]
push 0x43
push 7
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0x120
push 0x190
push 0x640
push 1
call fcn.004131e6
and eax, eax
je 0x401c77
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 2
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
call fcn.00415130
push eax
push 0xff
push 0xa
push 0xa
mov eax, 0xa
call fcn.0040dfd0
push eax
mov edx, dword [0x49d254]
call fcn.00415130
push eax
call fcn.00415200
mov edx, dword [0x49d258]
call fcn.00415200
call fcn.00415260
push 0
push 0
call fcn.004152a2
add dword [esp + 8], edx
call fcn.00412c9e
call fcn.004152c0
call fcn.00412c27
push 0
push 0x64
push 0x190
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0x11
call fcn.00412c87
push 0x64
push 0x190
push 0x28
push 5
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0x90000001
push 0x450039
push 0
call fcn.00413481
push eax
push 0
call fcn.0041349f
push eax
push 0
push 0
push 0
call fcn.00410270
and eax, eax
je 0x402148
push str.CLOSEBUTTON
push 0x13
push 0x13
push 6
push 0x1e4
push 1
call fcn.0040e963
mov dword [0x49d234], eax
push str.READMEBUTTON
push 0x20
push 0x11e
push 0x17e
push 0xa
push 3
call fcn.0040e963
mov dword [0x49d234], eax
push str.TROUBLEBUTTON
push 0x20
push 0x11e
push 0x19c
push 0xa
push 4
call fcn.0040e963
mov dword [0x49d234], eax
push str.CHBUTTON
push 0x23
push 0xf5
push 1
push 0x23
push 5
call fcn.0040e963
mov dword [0x49d234], eax
push str.BOXARTBUTTON
push 0x118
push 0xc8
push 0x2d
push 0x132
push 6
call fcn.0040e963
mov dword [0x49d234], eax
push 0x45025c
push 0x10e
push 0x122
push 0x41
push 0
push 7
call fcn.0040e963
mov dword [0x49d234], eax
push 0
call fcn.00410293
push eax
push 0x80000000
push str.Test
push 0x6b
push 0xc8
push 0
push 0xfffffc18
push 1
call fcn.0040ff6a
push 0
call fcn.00410293
push eax
call fcn.0040a689
push 0xff
push 0
call fcn.004131ca
push eax
push 0
call fcn.00410293
push eax
call fcn.00409174
push 0
push 0
call fcn.00410341
call fcn.00415130
push eax
push eax
mov edx, str.http:__www.cheathappens.com_trnflash.asp_id
call fcn.00415200
mov edx, dword [0x49d24c]
call fcn.00415200
call fcn.00415260
push 0xc8
push 0x12c
push 0
push 0
push 2
call fcn.004152a2
add dword [esp + 0x14], edx
call fcn.0040fa63
call fcn.004152c0
mov dword [0x49d234], eax
push 0
push 0
call sub.WININET.DLL_InternetGetConnectedState
mov ebx, eax
and ebx, ebx
jne 0x401e8b
push 1
push 1
call fcn.00410341
mov dword [0x49d270], 1
mov eax, 4
cmp eax, dword [0x49d270]
jl 0x402148
push 0x120
push 0xfa
push 0x1f4
push 1
call fcn.004131e6
and eax, eax
je 0x401fe7
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
push 0xff
push 0xa
push 0xa
mov eax, 0xa
call fcn.0040dfd0
push eax
push str.Agrikaan
push 0
push 0
call fcn.00412c9e
call fcn.00412c27
push 0
push 0x64
push 0xc8
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0
call fcn.00412c87
push 0xff
push 0x44
push 0x44
mov eax, 0x44
call fcn.0040dfd0
push eax
push 0xe
push 0xaf
push 0x12
push 0x133
call fcn.00412d22
push 0x21
call fcn.00412c87
push 0x64
push 0xc8
push 0x12
push 0x133
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0xff
push 0
call fcn.004131ca
push eax
push 0
call fcn.00410293
push eax
call fcn.00409174
push 0x32
call fcn.0040dfe9
push 0x120
push 0xfa
push 0x1f4
push 1
call fcn.004131e6
and eax, eax
je 0x402132
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
push 0xff
push 0xff
push 0xff
mov eax, 0xff
call fcn.0040dfd0
push eax
push str.Agrikaan
push 0
push 0
call fcn.00412c9e
call fcn.00412c27
push 0
push 0x64
push 0xc8
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0
call fcn.00412c87
push 0xff
push 0x44
push 0x44
mov eax, 0x44
call fcn.0040dfd0
push eax
push 0xe
push 0xaf
push 0x12
push 0x133
call fcn.00412d22
push 0x21
call fcn.00412c87
push 0x64
push 0xc8
push 0x12
push 0x133
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0xff
push 0
call fcn.004131ca
push eax
push 0
call fcn.00410293
push eax
call fcn.00409174
push 0x32
call fcn.0040dfe9
inc dword [0x49d270]
jno 0x401e95
push 0x49d974
push 0x4508d4
push 8
push 0x100
push 4
call fcn.00412854
mov eax, 0x48b5cd
mov dword [0x49d22c], eax
lea ecx, [0x49d274]
mov edx, dword [0x49d22c]
call fcn.0040b008
add dword [0x49d22c], eax
mov dword [0x49d270], 1
mov eax, 0xfe
cmp eax, dword [0x49d270]
jl 0x402207
call fcn.00415130
push eax
push eax
push 0x45004d
push dword [0x49d270]
push dword [0x49d274]
call fcn.0040b0c0
push 0x49d278
call fcn.00415170
call fcn.00415130
push eax
push eax
push dword [0x49d278]
call fcn.0040b1d0
mov ebx, eax
dec ebx
push ebx
push dword [0x49d278]
call fcn.0040b200
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d974]
shl ebx, 2
lea eax, [ebp + ebx]
push eax
call fcn.00415170
inc dword [0x49d270]
jno 0x402191
call sub.KERNEL32.dll_IsDebuggerPresent
and eax, eax
je 0x402217
push 0x75009553
inc ecx
ret
push 0x12c
call fcn.0040dfe9
push 0x120
push 0xdc
push 0x44c
push 1
call fcn.004131e6
and eax, eax
je 0x402362
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
push 0xff
push 0xa
push 0xa
mov eax, 0xa
call fcn.0040dfd0
push eax
push str.Authenticating_Trainer......
push 0
push 0
call fcn.00412c9e
call fcn.00412c27
push 0
push 0x64
push 0x1f4
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0
call fcn.00412c87
push 0xff
push 0x2f
push 0xa2
mov eax, 0xf2
call fcn.0040dfd0
push eax
push 0x18
push 0x202
push 0x1c2
push 1
call fcn.00412d22
push 0x11
call fcn.00412c87
push 0x64
push 0x1f4
push 0x1c5
push 5
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0xff
push 0
call fcn.004131ca
push eax
push 0
call fcn.00410293
push eax
call fcn.00409174
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push eax
call fcn.0040dadc
call fcn.004152a2
add dword [esp], edx
call fcn.00411b45
push 0x49d27c
call fcn.00415170
mov edx, dword [0x49d27c]
call fcn.00415130
push eax
call fcn.00415200
push 0x49d280
call fcn.00415170
call sub.USER32.DLL_GetForegroundWindow
mov dword [0x49d284], eax
push 0x49d288
push dword [0x49d284]
call sub.USER32.DLL_GetWindowThreadProcessId
push dword [0x49d288]
push dword [0x49d290]
push 0x1f0fff
call sub.KERNEL32.dll_OpenProcess
mov dword [0x49d28c], eax
mov eax, dword [0x49d288]
mov dword [0x49d284], eax
push 0x3e8
call fcn.00414590
mov dword [0x49d294], eax
mov edx, dword [0x49d280]
call fcn.00415130
push eax
call fcn.00415200
push 0x49d298
call fcn.00415170
mov eax, dword [0x49d2a0]
mov dword [0x49d29c], eax
mov ebp, 0x48c190
mov dword [0x49d270], ebp
mov eax, dword [0x49d270]
call fcn.004145b0
mov byte [0x49d640], al
mov ebp, 0x48c193
mov dword [0x49d270], ebp
mov ebp, 0x48c193
mov ebx, ebp
add ebx, 0xbb8
cmp ebx, dword [0x49d270]
jl 0x4024ce
mov eax, dword [0x49d270]
call fcn.004145b0
mov byte [0x49d641], al
movsx ebx, byte [0x49d641]
xor bl, byte [0x49d640]
mov eax, ebx
mov byte [0x49d642], al
movsx ebx, byte [0x49d640]
add ebx, 0x37
mov eax, ebx
mov byte [0x49d640], al
movsx ebx, byte [0x49d640]
cmp ebx, 0xff
jle 0x4024ab
movsx ebx, byte [0x49d640]
add ebx, 0xffffff01
mov eax, ebx
mov byte [0x49d640], al
movsx eax, byte [0x49d642]
push eax
mov eax, dword [0x49d270]
call fcn.004145c0
mov dword [0x49d234], eax
inc dword [0x49d270]
jno 0x40243f
push 0x49d97c
push 0
push 7
push 1
push 8
call fcn.00412854
call sub.KERNEL32.dll_GetTickCount
mov dword [0x49d2ac], eax
call fcn.00415130
push eax
push eax
call fcn.0040dadc
push 0x49d2b0
call fcn.00415170
call fcn.00415130
push eax
push eax
push dword [0x49d2b0]
call fcn.00411b45
push 0x49d2b0
call fcn.00415170
mov edx, 0x450039
lea ecx, [0x49d274]
call fcn.0040b008
mov edx, 0x450039
lea ecx, [0x49d2b4]
call fcn.0040b008
mov edx, 0x450039
lea ecx, [0x49d2b8]
call fcn.0040b008
mov dword [0x49d2bc], 0
mov dword [0x49d2c0], 0
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
call fcn.0040dadc
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00412130
call fcn.004152c0
push 0
call fcn.00412420
mov dword [0x49d2c4], eax
mov dword [0x49d270], 1
mov ebx, dword [0x49d2c4]
add ebx, 0xfffffff8
cmp ebx, dword [0x49d270]
jl 0x4025f1
push 0
call fcn.00412480
mov byte [0x49d643], al
mov ebx, dword [0x49d2c0]
movzx eax, byte [0x49d643]
add ebx, eax
mov dword [0x49d2c0], ebx
inc dword [0x49d270]
jno 0x4025b4
push 0
call fcn.004124e0
mov dword [0x49d2c8], eax
push 0
call fcn.004124e0
mov dword [0x49d2cc], eax
push 0
call fcn.00411d90
mov eax, dword [0x49d2c0]
mov dword [0x49d2d0], eax
push dword [0x49d2b0]
push 0
call fcn.00412130
mov ebx, eax
and ebx, ebx
jle 0x402996
mov dword [0x49d270], 1
mov eax, 0x3b8
cmp eax, dword [0x49d270]
jl 0x40266b
push 0
call fcn.00412540
mov dword [0x49d2d4], eax
inc dword [0x49d270]
jno 0x402647
mov dword [0x49d270], 0x3b9
mov eax, 0x3c0
cmp eax, dword [0x49d270]
jl 0x402701
push 0
call fcn.00412540
mov dword [0x49d2d4], eax
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push 1
mov eax, dword [0x49d2d4]
cdq
push edx
push eax
call fcn.0040b2e0
call fcn.004152a2
add dword [esp], edx
call fcn.0040b390
call fcn.004152c0
mov dword [0x49d2d4], eax
mov edx, dword [0x49d274]
call fcn.00415130
push eax
call fcn.00415200
call fcn.00415130
push eax
push eax
push dword [0x49d2d4]
call fcn.0040b4e0
pop eax
push 0x49d274
call fcn.00415170
inc dword [0x49d270]
jno 0x402675
push dword [0x49d274]
call fcn.0040a459
mov dword [0x49d2d4], eax
mov ebx, dword [0x49d2d4]
xor ebx, 0x98989898
mov dword [0x49d2d4], ebx
mov eax, dword [0x49d2d4]
mov dword [0x49d2d8], eax
call fcn.00415130
push eax
push eax
push 0xa
call fcn.00415130
push eax
mov edx, str.0000000000
call fcn.00415200
call fcn.00415130
push eax
push eax
mov eax, dword [0x49d2d4]
cdq
push edx
push eax
call fcn.0040b670
pop eax
call fcn.004152a2
add dword [esp], edx
call fcn.0040b700
push 0x49d274
call fcn.00415170
mov dword [0x49d270], 0x3c1
mov eax, 0x3c8
cmp eax, dword [0x49d270]
jl 0x40280b
push 0
call fcn.00412540
mov dword [0x49d2d4], eax
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push 1
mov eax, dword [0x49d2d4]
cdq
push edx
push eax
call fcn.0040b2e0
call fcn.004152a2
add dword [esp], edx
call fcn.0040b390
call fcn.004152c0
mov dword [0x49d2d4], eax
mov edx, dword [0x49d2b4]
call fcn.00415130
push eax
call fcn.00415200
call fcn.00415130
push eax
push eax
push dword [0x49d2d4]
call fcn.0040b4e0
pop eax
push 0x49d2b4
call fcn.00415170
inc dword [0x49d270]
jno 0x40277f
push dword [0x49d2b4]
call fcn.0040a459
mov dword [0x49d2dc], eax
mov dword [0x49d270], 0x3c9
mov eax, 0x3d0
cmp eax, dword [0x49d270]
jl 0x4028b1
push 0
call fcn.00412540
mov dword [0x49d2d4], eax
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push 1
mov eax, dword [0x49d2d4]
cdq
push edx
push eax
call fcn.0040b2e0
call fcn.004152a2
add dword [esp], edx
call fcn.0040b390
call fcn.004152c0
mov dword [0x49d2d4], eax
mov edx, dword [0x49d2b8]
call fcn.00415130
push eax
call fcn.00415200
call fcn.00415130
push eax
push eax
push dword [0x49d2d4]
call fcn.0040b4e0
pop eax
push 0x49d2b8
call fcn.00415170
inc dword [0x49d270]
jno 0x402825
push dword [0x49d2b8]
call fcn.0040a459
mov dword [0x49d2d4], eax
mov eax, dword [0x49d2d4]
mov dword [0x49d2e0], eax
mov dword [0x49d270], 0x3d1
mov eax, dword [0x49d2e0]
cmp eax, dword [0x49d270]
jl 0x4028f9
push 0
call fcn.00412540
mov dword [0x49d2d4], eax
inc dword [0x49d270]
jno 0x4028d5
mov eax, dword [0x49d2e0]
mov dword [0x49d270], eax
mov ebx, dword [0x49d2e0]
add ebx, 0x12
cmp ebx, dword [0x49d270]
jl 0x40293d
push 0
call fcn.00412540
mov dword [0x49d2d4], eax
mov ebx, dword [0x49d2bc]
add ebx, dword [0x49d2d4]
mov dword [0x49d2bc], ebx
inc dword [0x49d270]
jno 0x402903
mov ebx, dword [0x49d2dc]
xor ebx, dword [0x49d2bc]
mov dword [0x49d2e4], ebx
mov ebx, dword [0x49d2e4]
and ebx, ebx
jne 0x402963
mov dword [0x49d2e4], 0x63
mov ebx, dword [0x49d2e4]
xor ebx, 0x98989898
mov dword [0x49d2e4], ebx
mov eax, dword [0x49d2d8]
mov dword [0x49d2e8], eax
mov ebx, dword [0x49d2d8]
cmp ebx, dword [0x49d2e4]
jne 0x40298f
jmp 0x402994
call fcn.00407e90
jmp 0x40299b
call fcn.00407e90
mov ebx, dword [0x49d2cc]
cmp ebx, dword [0x49d2c4]
jne 0x4029ab
jmp 0x4029b0
call fcn.00407e90
call sub.KERNEL32.dll_GetTickCount
mov dword [0x49d2ec], eax
mov ebx, dword [0x49d2ec]
sub ebx, dword [0x49d2ac]
cmp ebx, 0x3e8
jle 0x4029d5
push 0x9099542
inc eax
ret
mov dword [0x49d2f0], 0x45a2a5
mov edx, 0x450039
lea ecx, [0x49d2f4]
call fcn.0040b008
push 0x49d984
push 0
push 0x15
push 0x15
push 4
call fcn.00412854
push 0x49d98c
push 0
push 0x15
push 0x15
push 4
call fcn.00412854
push 0x49d994
push 0
push 0x15
push 0x15
push 4
call fcn.00412854
push 0x49d99c
push 0
push 0x15
push 0x15
push 4
call fcn.00412854
push 0x49d9a4
push 0
push 0x15
push 0x15
push 4
call fcn.00412854
push 0x49d9ac
push 0
push 0x15
push 0x15
push 4
call fcn.00412854
push 0x49d9b4
push 0
push 0x15
push 0xa
push 4
call fcn.00412854
push 0x3e8
call fcn.00414590
mov dword [0x49d294], eax
push 0x3e8
call fcn.00414590
mov dword [0x49d2f8], eax
push 0x4000
call fcn.00414590
mov dword [0x49d2fc], eax
push 0x4000
call fcn.00414590
mov dword [0x49d300], eax
push 0x14
call fcn.00414590
mov dword [0x49d304], eax
mov dword [0x49d270], 1
mov eax, 0x14
cmp eax, dword [0x49d270]
jl 0x402b70
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d98c]
shl ebx, 2
mov dword [ebp + ebx], 1
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d994]
shl ebx, 2
mov dword [ebp + ebx], 1
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d99c]
shl ebx, 2
mov dword [ebp + ebx], 1
inc dword [0x49d270]
jno 0x402b16
mov ebp, dword [0x49d9b4]
mov dword [ebp], 0xcc
mov dword [ebp + 4], 0xffffff
mov dword [ebp + 8], 0xcc0000
mov dword [ebp + 0xc], 0xaa00
mov dword [ebp + 0x10], 0x55ee
mov dword [ebp + 0x14], 0xccff
mov dword [ebp + 0x18], 0x2255
mov dword [ebp + 0x1c], 0x770044
mov dword [ebp + 0x20], 0
mov dword [ebp + 0x24], 0x6633ff
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push 1
push 1
call fcn.00415130
push eax
push eax
mov eax, dword [0x49d2e4]
cdq
push edx
push eax
call fcn.0040b670
call fcn.004152a2
add dword [esp], edx
call fcn.0040b770
call fcn.004152a2
add dword [esp], edx
call fcn.0040b390
call fcn.004152c0
mov dword [0x49d308], eax
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push 1
push 2
call fcn.00415130
push eax
push eax
mov eax, dword [0x49d2e4]
cdq
push edx
push eax
call fcn.0040b670
call fcn.004152a2
add dword [esp], edx
call fcn.0040b770
call fcn.004152a2
add dword [esp], edx
call fcn.0040b390
call fcn.004152c0
mov dword [0x49d30c], eax
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push 1
push 3
call fcn.00415130
push eax
push eax
mov eax, dword [0x49d2e4]
cdq
push edx
push eax
call fcn.0040b670
call fcn.004152a2
add dword [esp], edx
call fcn.0040b770
call fcn.004152a2
add dword [esp], edx
call fcn.0040b390
call fcn.004152c0
mov dword [0x49d310], eax
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push 1
push 4
call fcn.00415130
push eax
push eax
mov eax, dword [0x49d2e4]
cdq
push edx
push eax
call fcn.0040b670
call fcn.004152a2
add dword [esp], edx
call fcn.0040b770
call fcn.004152a2
add dword [esp], edx
call fcn.0040b390
call fcn.004152c0
mov dword [0x49d314], eax
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push 1
push 5
call fcn.00415130
push eax
push eax
mov eax, dword [0x49d2e4]
cdq
push edx
push eax
call fcn.0040b670
call fcn.004152a2
add dword [esp], edx
call fcn.0040b770
call fcn.004152a2
add dword [esp], edx
call fcn.0040b390
call fcn.004152c0
mov dword [0x49d318], eax
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0
call fcn.00412c87
mov ebx, dword [0x49d308]
shl ebx, 2
push dword [ebp + ebx]
push 2
push 2
push 0x144
push 0x1ea
call fcn.00412d22
mov ebx, dword [0x49d30c]
shl ebx, 2
push dword [ebp + ebx]
push 2
push 2
push 0x144
push 0x1ed
call fcn.00412d22
mov ebx, dword [0x49d310]
shl ebx, 2
push dword [ebp + ebx]
push 2
push 2
push 0x144
push 0x1f0
call fcn.00412d22
mov ebx, dword [0x49d314]
shl ebx, 2
push dword [ebp + ebx]
push 2
push 2
push 0x144
push 0x1f3
call fcn.00412d22
mov ebx, dword [0x49d318]
shl ebx, 2
push dword [ebp + ebx]
push 2
push 2
push 0x144
push 0x1f6
call fcn.00412d22
call fcn.00412c27
mov edx, str.Template
lea ecx, [0x49d334]
call fcn.0040b008
call fcn.00415130
push eax
push eax
call fcn.00411ae4
push 0x49d31c
call fcn.00415170
call fcn.004090b4
call fcn.00408004
call fcn.00408b74
call fcn.00408004
call fcn.00407f29
call fcn.0040893e
call fcn.00407f29
call fcn.004071cf
call fcn.00415130
push eax
mov edx, dword [0x49d31c]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.CH.dll
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
and eax, eax
je 0x402edf
mov ebp, 0x48cd93
mov ebx, ebp
mov ebp, 0x48c193
sub ebx, ebp
push ebx
mov ebp, 0x48c193
push ebp
push 0
call fcn.004121e0
push 0
call fcn.00411d90
jmp 0x402edf
call fcn.00415130
push eax
mov edx, dword [0x49d31c]
call fcn.00415130
push eax
call fcn.00415200
mov edx, str.help.txt
call fcn.00415200
call fcn.00415260
push 0
call fcn.004152a2
add dword [esp + 4], edx
call fcn.00411fb0
call fcn.004152c0
and eax, eax
je 0x402f4c
mov ebp, 0x48b5cd
mov ebx, ebp
mov ebp, 0x48a244
sub ebx, ebp
push ebx
mov ebp, 0x48a244
push ebp
push 0
call fcn.004121e0
push 0
call fcn.00411d90
jmp 0x402f5b
push str.Could_not_create_HELP.TXT_file.
push str.Error
call fcn.0040d915
push str.CH_Trainer_Keys.dat
push 0
call fcn.00412130
mov dword [0x49d234], eax
mov ebx, dword [0x49d234]
and ebx, ebx
jle 0x402f8d
mov dword [0x49d34c], 1
push 0
call fcn.00411d90
push 0
push 0
call sub.WININET.DLL_InternetGetConnectedState
and eax, eax
je 0x402fa2
jmp 0x402fd1
push dword [0x49d2e8]
call fcn.004094c1
mov ebx, eax
and ebx, ebx
jne 0x402fd1
push 0
push str.This_trainer_must_be_authenticated_before_it_can_be_used._Please_connect_this_computer_to_the_Internet_or_obtain_an_offline_key_from_cheathappens.com_then_re_run_the_trainer.
push str.No_Internet_Connection_
call fcn.0040d8e6
jmp 0x409062
call fcn.00415130
push eax
push eax
call fcn.00411ae4
mov edx, str.black.txt
call fcn.00415200
push 0x49d350
call fcn.00415170
mov ebx, dword [0x49d354]
and ebx, ebx
jle 0x4030b3
call fcn.00415130
push eax
mov edx, str.http:__www.cheathappens.com_unauthorized_
call fcn.00415200
call fcn.00415130
push eax
push eax
mov eax, dword [0x49d2e8]
cdq
push edx
push eax
xor dword [esp], 0x7b3d89b
xor dword [esp + 4], 0
pop eax
pop edx
push edx
push eax
call fcn.0040b670
pop eax
mov edx, str..zip
call fcn.00415200
push 0x49d358
call fcn.00415170
mov edx, str.http:__www.cheathappens.com_unauthorized_0.zip
lea ecx, [0x49d35c]
call fcn.0040b008
mov edx, dword [0x49d358]
call fcn.00415130
push eax
call fcn.00415200
push 0x49d360
call fcn.00415170
mov edx, dword [0x49d35c]
call fcn.00415130
push eax
call fcn.00415200
push 0x49d364
call fcn.00415170
push 0
push 0
mov eax, dword [0x49d350]
push eax
mov eax, dword [0x49d364]
push eax
push 0
call sub.URLMON.DLL_URLDownloadToFileA
mov dword [0x49d368], eax
call fcn.00415130
push eax
mov edx, str.http:__www.cheathappens.com_unauthorized_
call fcn.00415200
call fcn.00415130
push eax
push eax
mov eax, dword [0x49d2e8]
cdq
push edx
push eax
xor dword [esp], 0x7b3d89b
xor dword [esp + 4], 0
pop eax
pop edx
push edx
push eax
call fcn.0040b670
pop eax
mov edx, str..zip
call fcn.00415200
push 0x49d358
call fcn.00415170
mov edx, str.http:__www.cheathappens.com_unauthorized_0.zip
lea ecx, [0x49d35c]
call fcn.0040b008
mov edx, dword [0x49d358]
call fcn.00415130
push eax
call fcn.00415200
push 0x49d360
call fcn.00415170
mov edx, dword [0x49d35c]
call fcn.00415130
push eax
call fcn.00415200
push 0x49d364
call fcn.00415170
push 0
push 0
mov eax, dword [0x49d350]
push eax
mov eax, dword [0x49d364]
push eax
push 0
call sub.URLMON.DLL_URLDownloadToFileA
mov dword [0x49d368], eax
mov ebx, dword [0x49d368]
and ebx, ebx
jne 0x403173
jmp 0x4031a2
push dword [0x49d2e8]
call fcn.004094c1
mov ebx, eax
and ebx, ebx
jne 0x4031a2
push 0
push str.This_trainer_must_be_authenticated_before_it_can_be_used._Please_connect_this_computer_to_the_Internet_or_obtain_an_offline_key_from_cheathappens.com_then_re_run_the_trainer.
push str.No_Internet_Connection_
call fcn.0040d8e6
jmp 0x409062
push 0
push 0
mov eax, dword [0x49d350]
push eax
mov eax, dword [0x49d360]
push eax
push 0
call sub.URLMON.DLL_URLDownloadToFileA
mov dword [0x49d36c], eax
call fcn.00415130
push eax
push eax
push 0x4500c2
push str.IZnvZalZidZ_ZTraiZnerZ_UsZerZ
call fcn.0040b9d0
push 0x49d370
call fcn.00415170
mov ebx, dword [0x49d36c]
and ebx, ebx
jne 0x4031f6
call fcn.00407e90
call fcn.00415130
push eax
push eax
push str.ZTSA.l
push dword [0x49d370]
call fcn.0040b9d0
push 0x49d370
call fcn.00415170
mov ebx, dword [0x49d36c]
and ebx, ebx
jne 0x403371
push 0x120
push 0xdc
push 0x44c
push 1
call fcn.004131e6
and eax, eax
je 0x403367
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
push 0xff
push 0xff
push 0xff
mov eax, 0xff
call fcn.0040dfd0
push eax
push dword [0x49d370]
push 0
push 0
call fcn.00412c9e
call fcn.00412c27
push 0
push 0x64
push 0x1f4
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0
call fcn.00412c87
push 0xff
push 0x28
push 0x28
mov eax, 0xff
call fcn.0040dfd0
push eax
push 0x24
push 0x1df
push 1
push 0
call fcn.00412d22
push 0x11
call fcn.00412c87
push 0x64
push 0x1f4
push 0xa
push 0xc8
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0xff
push 0
call fcn.004131ca
push eax
push 0
call fcn.00410293
push eax
call fcn.00409174
call fcn.004071cf
jmp 0x403217
mov ebx, dword [0x49d368]
and ebx, ebx
je 0x403393
push dword [0x49d2e8]
call fcn.004094c1
mov ebx, eax
and ebx, ebx
jne 0x403393
mov eax, 1
jmp 0x403395
xor eax, eax
and eax, eax
je 0x4033a3
mov dword [0x49d2f0], 0
mov dword [0x49d374], 3
lea ebp, [0x49d648]
lea eax, [ebp]
push eax
call sub.USER32.DLL_GetKeyboardState
movsx eax, byte [ebp + 0x90]
push eax
pop dword [0x49d378]
mov ebx, dword [0x49d378]
cmp ebx, 1
jne 0x4033e7
mov edx, str.Run_game_and_press_F1_at_main_menu.__Numlock_is_ON.
lea ecx, [0x49d37c]
call fcn.0040b008
jmp 0x4033f7
mov edx, 0x4502a0
lea ecx, [0x49d37c]
call fcn.0040b008
mov ebx, dword [0x49d374]
cmp ebx, dword [0x49d378]
je 0x403555
mov eax, dword [0x49d378]
mov dword [0x49d374], eax
push 0x120
push 0xdc
push 0x44c
push 1
call fcn.004131e6
and eax, eax
je 0x403555
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
push 0xff
push 0xa
push 0xa
mov eax, 0xa
call fcn.0040dfd0
push eax
push dword [0x49d37c]
push 0
push 0
call fcn.00412c9e
call fcn.00412c27
push 0
push 0x64
push 0x1f4
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0
call fcn.00412c87
push 0xff
push 0x2f
push 0xa2
mov eax, 0xf2
call fcn.0040dfd0
push eax
push 0x18
push 0x202
push 0x1c2
push 1
call fcn.00412d22
push 0x11
call fcn.00412c87
push 0x64
push 0x1f4
push 0x1c5
push 5
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0xff
push 0
call fcn.004131ca
push eax
push 0
call fcn.00410293
push eax
call fcn.00409174
call fcn.004071cf
push 0xa
call fcn.0040dfe9
push 0x70
call sub.USER32.DLL_GetAsyncKeyState
mov ebx, eax
and ebx, 0x8000
and ebx, ebx
je 0x4033ad
mov edx, str.AI.exe
lea ecx, [0x49d280]
call fcn.0040b008
call fcn.0040659d
mov ebx, dword [0x49d284]
and ebx, ebx
jne 0x40370f
push 4
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
push 0x12c
call fcn.0040dfe9
push 0x120
push 0xdc
push 0x44c
push 1
call fcn.004131e6
and eax, eax
je 0x403700
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
push 0xff
push 0xa
push 0xa
mov eax, 0xa
call fcn.0040dfd0
push eax
push str.Game_not_Found__Run_Game_and_then_press_F1_at_Main_Menu.
push 0
push 0
call fcn.00412c9e
call fcn.00412c27
push 0
push 0x64
push 0x1f4
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0
call fcn.00412c87
push 0xff
push 0x2f
push 0xa2
mov eax, 0xf2
call fcn.0040dfd0
push eax
push 0x18
push 0x202
push 0x1c2
push 1
call fcn.00412d22
push 0x11
call fcn.00412c87
push 0x64
push 0x1f4
push 0x1c5
push 5
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0xff
push 0
call fcn.004131ca
push eax
push 0
call fcn.00410293
push eax
call fcn.00409174
push 0x7d0
call fcn.0040dfe9
jmp 0x403371
mov edx, str.CH.dll
lea ecx, [0x49d380]
call fcn.0040b008
mov edx, dword [0x49d31c]
call fcn.00415130
push eax
call fcn.00415200
mov edx, dword [0x49d380]
call fcn.00415200
push 0x49d298
call fcn.00415170
call fcn.004065e2
mov edx, str.xlive.dll
lea ecx, [0x49d384]
call fcn.0040b008
call fcn.0040659d
call fcn.004070cc
call fcn.004071cf
mov ebx, dword [0x49d340]
and ebx, ebx
jne 0x4038cb
mov ebx, dword [0x49d388]
and ebx, ebx
jne 0x4038cb
push 0x120
push 0xdc
push 0x44c
push 1
call fcn.004131e6
and eax, eax
je 0x4038c6
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
push 0xff
push 0xa
push 0xa
mov eax, 0xa
call fcn.0040dfd0
push eax
push str.Game_not_Found__Run_Game_and_then_press_F1_at_Main_Menu.
push 0
push 0
call fcn.00412c9e
call fcn.00412c27
push 0
push 0x64
push 0x1f4
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0
call fcn.00412c87
push 0xff
push 0x2f
push 0xa2
mov eax, 0xf2
call fcn.0040dfd0
push eax
push 0x18
push 0x202
push 0x1c2
push 1
call fcn.00412d22
push 0x11
call fcn.00412c87
push 0x64
push 0x1f4
push 0x1c5
push 5
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0xff
push 0
call fcn.004131ca
push eax
push 0
call fcn.00410293
push eax
call fcn.00409174
jmp 0x403371
mov ebx, dword [0x49d2c8]
cmp ebx, dword [0x49d2d0]
jne 0x4038ef
mov ebx, dword [0x49d2c8]
and ebx, ebx
je 0x4038ef
mov ebx, dword [0x49d2d0]
and ebx, ebx
je 0x4038ef
jmp 0x4038f6
mov eax, 1
jmp 0x4038f8
xor eax, eax
and eax, eax
je 0x40394f
push 0xa
call fcn.0040e0a7
mov ebx, eax
add ebx, 0xa
mov dword [0x49d38c], ebx
push 0x28
call fcn.0040e0a7
mov ebx, eax
add ebx, 0x28
mov dword [0x49d390], ebx
mov ebx, dword [0x49d340]
add ebx, dword [0x49d38c]
mov dword [0x49d340], ebx
mov ebx, dword [0x49d388]
add ebx, dword [0x49d390]
mov dword [0x49d388], ebx
call fcn.00407e90
push 3
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
push 0x120
push 0xdc
push 0x44c
push 1
call fcn.004131e6
and eax, eax
je 0x403aa4
push 1
call fcn.00413094
push eax
call fcn.00412b94
push 1
call fcn.00411ac8
push eax
call fcn.00412c70
push 0x11
call fcn.00412c87
push 0xff
push 0xa
push 0xa
mov eax, 0xa
call fcn.0040dfd0
push eax
push str.Game_found__Trainer_Activated_
push 0
push 0
call fcn.00412c9e
call fcn.00412c27
push 0
push 0x64
push 0x1f4
push 1
call fcn.004132fc
push 0
call fcn.00413094
push eax
call fcn.00412b94
push 0
call fcn.00412c87
push 0xff
push 0x2f
push 0xa2
mov eax, 0xf2
call fcn.0040dfd0
push eax
push 0x18
push 0x202
push 0x1c2
push 1
call fcn.00412d22
push 0x11
call fcn.00412c87
push 0x64
push 0x1f4
push 0x1c5
push 5
push 1
call fcn.004131ca
push eax
call fcn.00412cf0
call fcn.00412c27
push 1
call fcn.00412d5f
push 0xff
push 0
call fcn.004131ca
push eax
push 0
call fcn.00410293
push eax
call fcn.00409174
mov ebx, dword [0x49d394]
and ebx, ebx
je 0x403db2
push 0x8b
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xff
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x55
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x8b
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xec
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x83
mov ebx, dword [0x49d294]
add ebx, 5
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xec
mov ebx, dword [0x49d294]
add ebx, 6
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x20
mov ebx, dword [0x49d294]
add ebx, 7
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x53
mov ebx, dword [0x49d294]
add ebx, 8
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x56
mov ebx, dword [0x49d294]
add ebx, 9
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x57
mov ebx, dword [0x49d294]
add ebx, 0xa
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x8d
mov ebx, dword [0x49d294]
add ebx, 0xb
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x45
mov ebx, dword [0x49d294]
add ebx, 0xc
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xe0
mov ebx, dword [0x49d294]
add ebx, 0xd
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x33
mov ebx, dword [0x49d294]
add ebx, 0xe
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xf6
mov ebx, dword [0x49d294]
add ebx, 0xf
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x50
mov ebx, dword [0x49d294]
add ebx, 0x10
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xff
mov ebx, dword [0x49d294]
add ebx, 0x11
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x75
mov ebx, dword [0x49d294]
add ebx, 0x12
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc
mov ebx, dword [0x49d294]
add ebx, 0x13
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
mov ebx, dword [0x49d394]
add ebx, 0x1000
mov dword [0x49d270], ebx
mov ebx, dword [0x49d394]
add ebx, 0x200000
cmp ebx, dword [0x49d270]
jl 0x403db2
push dword [0x49d290]
push 0x14
push dword [0x49d2f8]
push dword [0x49d270]
push dword [0x49d398]
call sub.KERNEL32.dll_ReadProcessMemory
mov dword [0x49d234], eax
push 0x14
push dword [0x49d2f8]
push dword [0x49d294]
call fcn.004145d0
mov dword [0x49d234], eax
mov ebx, dword [0x49d234]
cmp ebx, 1
jne 0x403da6
mov eax, dword [0x49d270]
mov dword [0x49d39c], eax
push 0xc2
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 3
push dword [0x49d294]
push dword [0x49d39c]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
inc dword [0x49d270]
jno 0x403cc7
mov ebx, dword [0x49d354]
and ebx, ebx
jle 0x403dc1
jmp 0x404b39
mov ebx, dword [0x49d2f0]
cmp ebx, 0x45a2a5
jne 0x403eaa
mov ebp, dword [0x49d984]
mov dword [ebp + 4], 0x61
mov dword [ebp + 8], 0x62
mov dword [ebp + 0xc], 0x63
mov dword [ebp + 0x10], 0x64
mov dword [ebp + 0x14], 0x65
mov dword [ebp + 0x18], 0x66
mov dword [ebp + 0x1c], 0x67
mov dword [ebp + 0x20], 0x68
mov dword [ebp + 0x24], 0x69
mov dword [ebp + 0x28], 0
mov dword [ebp + 0x2c], 0
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0
mov dword [ebp + 0x38], 0
mov dword [ebp + 0x3c], 0
mov dword [ebp + 0x40], 0
mov dword [ebp + 0x44], 0
mov dword [ebp + 0x48], 0
mov dword [ebp + 0x4c], 0
mov dword [ebp + 0x50], 0
mov dword [0x49d270], 1
mov eax, 0x14
cmp eax, dword [0x49d270]
jl 0x403eaa
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d9a4]
shl ebx, 2
pop dword [ebp + ebx]
inc dword [0x49d270]
jno 0x403e6f
push str.CH_Trainer_Keys.dat
push 0
call fcn.00412130
mov dword [0x49d234], eax
mov ebx, dword [0x49d234]
and ebx, ebx
jle 0x404014
mov dword [0x49d34c], 1
push 0
call fcn.00412540
mov dword [0x49d3a0], eax
mov dword [0x49d270], 1
mov eax, dword [0x49d3a0]
cmp eax, dword [0x49d270]
jl 0x40400a
call fcn.00415130
push eax
push eax
push 0
call fcn.00412240
push 0x49d3a4
call fcn.00415170
push dword [0x49d3a4]
mov edx, 0x450256
pop ecx
call fcn.00415310
je 0x403f45
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d98c]
shl ebx, 2
mov dword [ebp + ebx], 0
push dword [0x49d3a4]
mov edx, str.CTRL
pop ecx
call fcn.00415310
je 0x403f6f
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d994]
shl ebx, 2
mov dword [ebp + ebx], 0
push dword [0x49d3a4]
mov edx, 0x4503c2
pop ecx
call fcn.00415310
je 0x403f99
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d99c]
shl ebx, 2
mov dword [ebp + ebx], 0
push 0
call fcn.00412540
push eax
mov ebx, dword [0x49d270]
mov ebp, dword [0x49d984]
shl ebx, 2
pop dword [ebp + ebx]
call fcn.00415130
push eax
push eax
call fcn.00415130
push eax
push 1
mov ebx, dword [0x49d270]
shl ebx, 2
mov eax, dword [ebp + ebx]
cdq
push edx
push eax
call fcn.0040b2e0
call fcn.004152a2
add dword [esp], edx
call fcn.0040b390
call fcn.004152c0
push eax
mov ebx, dword [0x49d270]
shl ebx, 2
pop dword [ebp + ebx]
inc dword [0x49d270]
jno 0x403eef
push 0
call fcn.00411d90
mov edx, str.0F84_8B000000576A_00E8
lea ecx, [0x49d2f4]
call fcn.0040b008
call fcn.0040637e
mov dword [0x49d3a8], 1
mov dword [0x49d3ac], 0xe
push dword [0x49d2f4]
call fcn.0040b1d0
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
mov dword [0x49d3b0], ebx
call fcn.0040651a
mov eax, dword [0x49d3b8]
mov dword [0x49d3b4], eax
mov edx, str.8B_068B_40_2455
lea ecx, [0x49d2f4]
call fcn.0040b008
call fcn.0040637e
mov dword [0x49d3a8], 1
mov dword [0x49d3ac], 0xfffffffb
push dword [0x49d2f4]
call fcn.0040b1d0
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
mov dword [0x49d3b0], ebx
call fcn.0040651a
mov eax, dword [0x49d3b8]
mov dword [0x49d3bc], eax
mov edx, str.0F2F_CAF3_0F11_4E_0C
lea ecx, [0x49d2f4]
call fcn.0040b008
call fcn.0040637e
mov dword [0x49d3a8], 1
mov dword [0x49d3ac], 0xfffffffb
push dword [0x49d2f4]
call fcn.0040b1d0
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
mov dword [0x49d3b0], ebx
call fcn.0040651a
mov eax, dword [0x49d3b8]
mov dword [0x49d3c0], eax
mov edx, str.74_08F3_0F10_44_24_28EB_08F3
lea ecx, [0x49d2f4]
call fcn.0040b008
call fcn.0040637e
mov dword [0x49d3a8], 1
mov dword [0x49d3ac], 0
push dword [0x49d2f4]
call fcn.0040b1d0
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
mov dword [0x49d3b0], ebx
call fcn.0040651a
mov eax, dword [0x49d3b8]
mov dword [0x49d3c4], eax
mov ebx, dword [0x49d3b8]
add ebx, 0xa
mov dword [0x49d3c8], ebx
mov edx, str.33_F680_BF_A8000000_00
lea ecx, [0x49d2f4]
call fcn.0040b008
call fcn.0040637e
mov dword [0x49d3a8], 1
mov dword [0x49d3ac], 9
push dword [0x49d2f4]
call fcn.0040b1d0
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
mov dword [0x49d3b0], ebx
call fcn.0040651a
mov eax, dword [0x49d3b8]
mov dword [0x49d3cc], eax
mov edx, str.8B_87_2C04000085_C074_3A
lea ecx, [0x49d2f4]
call fcn.0040b008
call fcn.0040637e
mov dword [0x49d3a8], 1
mov dword [0x49d3ac], 0xfffffffe
push dword [0x49d2f4]
call fcn.0040b1d0
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
mov dword [0x49d3b0], ebx
call fcn.0040651a
mov eax, dword [0x49d3b8]
mov dword [0x49d3d0], eax
mov edx, str.8B_8E_54040000
lea ecx, [0x49d2f4]
call fcn.0040b008
call fcn.0040637e
mov dword [0x49d3a8], 1
mov dword [0x49d3ac], 8
push dword [0x49d2f4]
call fcn.0040b1d0
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
mov dword [0x49d3b0], ebx
call fcn.0040651a
mov eax, dword [0x49d3b8]
mov dword [0x49d3d4], eax
mov edx, str.8B_86_E0000000578B_7C_24_0C
lea ecx, [0x49d2f4]
call fcn.0040b008
call fcn.0040637e
mov dword [0x49d3a8], 1
mov dword [0x49d3ac], 0xb
push dword [0x49d2f4]
call fcn.0040b1d0
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
mov dword [0x49d3b0], ebx
call fcn.0040651a
mov eax, dword [0x49d3b8]
mov dword [0x49d3d8], eax
mov edx, str.66_0F6E_46_1081_E1_8F000000_80
lea ecx, [0x49d2f4]
call fcn.0040b008
call fcn.0040637e
mov dword [0x49d3a8], 1
mov dword [0x49d3ac], 0
push dword [0x49d2f4]
call fcn.0040b1d0
mov ebx, eax
mov eax, ebx
mov ecx, 2
cdq
idiv ecx
mov ebx, eax
mov dword [0x49d3b0], ebx
call fcn.0040651a
mov eax, dword [0x49d3b8]
mov dword [0x49d3dc], eax
push 0x83
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x3d
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x3f
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xed
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x3d
mov ebx, dword [0x49d294]
add ebx, 5
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 1
mov ebx, dword [0x49d294]
add ebx, 6
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x75
mov ebx, dword [0x49d294]
add ebx, 7
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xe
mov ebx, dword [0x49d294]
add ebx, 8
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xf
mov ebx, dword [0x49d294]
add ebx, 9
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xb7
mov ebx, dword [0x49d294]
add ebx, 0xa
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xb8
mov ebx, dword [0x49d294]
add ebx, 0xb
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x3e
mov ebx, dword [0x49d294]
add ebx, 0xc
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 3
mov ebx, dword [0x49d294]
add ebx, 0xd
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 0xe
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 0xf
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x66
mov ebx, dword [0x49d294]
add ebx, 0x10
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x89
mov ebx, dword [0x49d294]
add ebx, 0x11
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xb8
mov ebx, dword [0x49d294]
add ebx, 0x12
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x3c
mov ebx, dword [0x49d294]
add ebx, 0x13
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 3
mov ebx, dword [0x49d294]
add ebx, 0x14
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 0x15
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 0x16
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xf
mov ebx, dword [0x49d294]
add ebx, 0x17
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xb7
mov ebx, dword [0x49d294]
add ebx, 0x18
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xb8
mov ebx, dword [0x49d294]
add ebx, 0x19
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x3c
mov ebx, dword [0x49d294]
add ebx, 0x1a
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 3
mov ebx, dword [0x49d294]
add ebx, 0x1b
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 0x1c
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 0x1d
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc3
mov ebx, dword [0x49d294]
add ebx, 0x1e
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 0x1f
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x83
mov ebx, dword [0x49d294]
add ebx, 0x20
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x3d
mov ebx, dword [0x49d294]
add ebx, 0x21
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 4
mov ebx, dword [0x49d294]
add ebx, 0x22
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x3f
mov ebx, dword [0x49d294]
add ebx, 0x23
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xed
mov ebx, dword [0x49d294]
add ebx, 0x24
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x3d
mov ebx, dword [0x49d294]
add ebx, 0x25
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 1
mov ebx, dword [0x49d294]
add ebx, 0x26
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x75
mov ebx, dword [0x49d294]
add ebx, 0x27
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 7
mov ebx, dword [0x49d294]
add ebx, 0x28
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc7
mov ebx, dword [0x49d294]
add ebx, 0x29
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x46
mov ebx, dword [0x49d294]
add ebx, 0x2a
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 8
mov ebx, dword [0x49d294]
add ebx, 0x2b
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x64
mov ebx, dword [0x49d294]
add ebx, 0x2c
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 0x2d
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 0x2e
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 0x2f
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x8b
mov ebx, dword [0x49d294]
add ebx, 0x30
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x49
mov ebx, dword [0x49d294]
add ebx, 0x31
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x40
mov ebx, dword [0x49d294]
add ebx, 0x32
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x8b
mov ebx, dword [0x49d294]
add ebx, 0x33
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xe8
mov ebx, dword [0x49d294]
add ebx, 0x34
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc3
mov ebx, dword [0x49d294]
add ebx, 0x35
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 0x2ac
push dword [0x49d294]
mov ebx, dword [0x49d388]
add ebx, 0x1091
push ebx
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
mov ebx, dword [0x49d388]
add ebx, 0x3f00
push ebx
mov eax, dword [0x49d294]
call fcn.00414650
mov dword [0x49d234], eax
push dword [0x49d290]
push 4
push dword [0x49d294]
mov ebx, dword [0x49d388]
add ebx, 0x1093
push ebx
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
mov ebx, dword [0x49d388]
add ebx, 0x3f04
push ebx
mov eax, dword [0x49d294]
call fcn.00414650
mov dword [0x49d234], eax
push dword [0x49d290]
push 4
push dword [0x49d294]
mov ebx, dword [0x49d388]
add ebx, 0x10b3
push ebx
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0xe8
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 5
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 6
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
mov ebx, dword [0x49d388]
add ebx, 0x1091
sub ebx, dword [0x49d3b4]
add ebx, 0xfffffffb
push ebx
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.00414650
mov dword [0x49d234], eax
push dword [0x49d290]
push 7
push dword [0x49d294]
push dword [0x49d3b4]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0xe8
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
mov ebx, dword [0x49d388]
add ebx, 0x10b1
sub ebx, dword [0x49d3bc]
add ebx, 0xfffffffb
push ebx
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.00414650
mov dword [0x49d234], eax
push dword [0x49d290]
push 5
push dword [0x49d294]
push dword [0x49d3bc]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
mov dword [0x49d3e0], 0
mov eax, 0xff
cmp eax, dword [0x49d3e0]
jl 0x404b63
push dword [0x49d3e0]
call sub.USER32.DLL_GetAsyncKeyState
inc dword [0x49d3e0]
jno 0x404b43
call sub.KERNEL32.dll_IsDebuggerPresent
and eax, eax
je 0x404b72
push 0x55009553
ret
push 0x32
call fcn.0040e0a7
mov dword [0x49d3e4], eax
mov ebx, dword [0x49d3e4]
cmp ebx, 0x19
jne 0x404c2d
mov ebx, dword [0x49d2c8]
cmp ebx, dword [0x49d2d0]
jne 0x404bb4
mov ebx, dword [0x49d2c8]
and ebx, ebx
je 0x404bb4
mov ebx, dword [0x49d2d0]
and ebx, ebx
je 0x404bb4
jmp 0x404bbb
mov eax, 1
jmp 0x404bbd
xor eax, eax
and eax, eax
je 0x404c2d
push 0xff
call fcn.0040e0a7
mov dword [0x49d38c], eax
push 0x190
call fcn.0040e0a7
mov dword [0x49d390], eax
push dword [0x49d38c]
mov eax, dword [0x49d294]
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 1
push dword [0x49d294]
mov ebx, dword [0x49d388]
add ebx, dword [0x49d390]
add ebx, 0x1091
push ebx
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
call fcn.00407e90
push dword [0x49d290]
push 4
push dword [0x49d294]
mov ebx, dword [0x49d3c8]
add ebx, 4
push ebx
push dword [0x49d398]
call sub.KERNEL32.dll_ReadProcessMemory
mov dword [0x49d234], eax
mov eax, dword [0x49d294]
call fcn.00414660
mov dword [0x49d3e8], eax
mov dword [0x49d3ec], 1
mov dword [0x49d3f0], 0x40
push 0x49d3ec
push dword [0x49d3f0]
push 4
push dword [0x49d3e8]
push dword [0x49d398]
call sub.KERNEL32.dll_VirtualProtectEx
mov dword [0x49d234], eax
mov dword [0x49d3f4], 1
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d3f8], eax
mov ebx, dword [0x49d3f8]
and ebx, ebx
je 0x404de9
push dword [0x49d3fc]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x404d7e
mov dword [0x49d3fc], 1
push 1
mov eax, dword [0x49d294]
call fcn.00414650
mov dword [0x49d234], eax
push dword [0x49d290]
push 4
push dword [0x49d294]
mov ebx, dword [0x49d388]
add ebx, 0x3f00
push ebx
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
jmp 0x404de8
mov ebx, 1
cmp ebx, dword [esp]
jne 0x404de8
mov dword [0x49d3fc], 0
push 0
mov eax, dword [0x49d294]
call fcn.00414650
mov dword [0x49d234], eax
push dword [0x49d290]
push 4
push dword [0x49d294]
mov ebx, dword [0x49d388]
add ebx, 0x3f00
push ebx
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 1
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
pop eax
mov dword [0x49d3f4], 2
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d400], eax
mov ebx, dword [0x49d400]
and ebx, ebx
je 0x404f31
push dword [0x49d404]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x404ec6
mov dword [0x49d404], 1
push 1
mov eax, dword [0x49d294]
call fcn.00414650
mov dword [0x49d234], eax
push dword [0x49d290]
push 4
push dword [0x49d294]
mov ebx, dword [0x49d388]
add ebx, 0x3f04
push ebx
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
jmp 0x404f30
mov ebx, 1
cmp ebx, dword [esp]
jne 0x404f30
mov dword [0x49d404], 0
push 0
mov eax, dword [0x49d294]
call fcn.00414650
mov dword [0x49d234], eax
push dword [0x49d290]
push 4
push dword [0x49d294]
mov ebx, dword [0x49d388]
add ebx, 0x3f04
push ebx
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 1
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
pop eax
mov dword [0x49d3f4], 3
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d408], eax
mov ebx, dword [0x49d408]
and ebx, ebx
je 0x405148
push dword [0x49d40c]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x405077
mov dword [0x49d40c], 1
push 0xf
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x57
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc9
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 5
push dword [0x49d294]
push dword [0x49d3c0]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
jmp 0x405147
mov ebx, 1
cmp ebx, dword [esp]
jne 0x405147
mov dword [0x49d40c], 0
push 0xf3
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xf
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x58
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x4e
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 5
push dword [0x49d294]
push dword [0x49d3c0]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 1
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
pop eax
mov dword [0x49d3f4], 4
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d410], eax
mov ebx, dword [0x49d410]
and ebx, ebx
je 0x405339
push dword [0x49d414]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x40527b
mov dword [0x49d414], 1
push 0xeb
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 8
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 2
push dword [0x49d294]
push dword [0x49d3c4]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0x41700000
mov eax, dword [0x49d294]
call fcn.00414670
mov dword [0x49d234], eax
push dword [0x49d290]
push 4
push dword [0x49d294]
push dword [0x49d3e8]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
jmp 0x405338
mov ebx, 1
cmp ebx, dword [esp]
jne 0x405338
mov dword [0x49d414], 0
push 0x74
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 8
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 2
push dword [0x49d294]
push dword [0x49d3c4]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0x40200000
mov eax, dword [0x49d294]
call fcn.00414670
mov dword [0x49d234], eax
push dword [0x49d290]
push 4
push dword [0x49d294]
push dword [0x49d3e8]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 1
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
pop eax
mov dword [0x49d3f4], 5
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d418], eax
mov ebx, dword [0x49d418]
and ebx, ebx
je 0x405584
push dword [0x49d41c]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x405499
mov dword [0x49d41c], 1
push 0xe9
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x7e
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xb
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 5
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 6
push dword [0x49d294]
push dword [0x49d3cc]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
jmp 0x405583
mov ebx, 1
cmp ebx, dword [esp]
jne 0x405583
mov dword [0x49d41c], 0
push 0xf
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x85
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x7d
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xb
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0
mov ebx, dword [0x49d294]
add ebx, 5
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 6
push dword [0x49d294]
push dword [0x49d3cc]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 1
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
pop eax
mov dword [0x49d3f4], 6
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d420], eax
mov ebx, dword [0x49d420]
and ebx, ebx
je 0x4056f4
push dword [0x49d424]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x405675
mov dword [0x49d424], 1
push 0xeb
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x44
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 2
push dword [0x49d294]
push dword [0x49d3d0]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
jmp 0x4056f3
mov ebx, 1
cmp ebx, dword [esp]
jne 0x4056f3
mov dword [0x49d424], 0
push 0x74
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x44
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 2
push dword [0x49d294]
push dword [0x49d3d0]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 1
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
pop eax
mov dword [0x49d3f4], 7
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d428], eax
mov ebx, dword [0x49d428]
and ebx, ebx
je 0x405864
push dword [0x49d42c]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x4057e5
mov dword [0x49d42c], 1
push 0x90
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 2
push dword [0x49d294]
push dword [0x49d3d4]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
jmp 0x405863
mov ebx, 1
cmp ebx, dword [esp]
jne 0x405863
mov dword [0x49d42c], 0
push 0x29
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc8
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 2
push dword [0x49d294]
push dword [0x49d3d4]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 1
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
pop eax
mov dword [0x49d3f4], 8
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d430], eax
mov ebx, dword [0x49d430]
and ebx, ebx
je 0x4059d4
push dword [0x49d434]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x405955
mov dword [0x49d434], 1
push 0x90
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 2
push dword [0x49d294]
push dword [0x49d3d8]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
jmp 0x4059d3
mov ebx, 1
cmp ebx, dword [esp]
jne 0x4059d3
mov dword [0x49d434], 0
push 0x2b
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc7
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 2
push dword [0x49d294]
push dword [0x49d3d8]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 1
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
pop eax
mov dword [0x49d3f4], 9
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d438], eax
mov ebx, dword [0x49d438]
and ebx, ebx
je 0x405beb
push dword [0x49d43c]
xor ebx, ebx
cmp ebx, dword [esp]
jne 0x405b1a
mov dword [0x49d43c], 1
push 0xf
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x57
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xc0
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x90
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 5
push dword [0x49d294]
push dword [0x49d3dc]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 0
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
jmp 0x405bea
mov ebx, 1
cmp ebx, dword [esp]
jne 0x405bea
mov dword [0x49d43c], 0
push 0x66
mov ebx, dword [0x49d294]
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0xf
mov ebx, dword [0x49d294]
inc ebx
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x6e
mov ebx, dword [0x49d294]
add ebx, 2
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x46
mov ebx, dword [0x49d294]
add ebx, 3
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push 0x10
mov ebx, dword [0x49d294]
add ebx, 4
mov eax, ebx
call fcn.004145c0
mov dword [0x49d234], eax
push dword [0x49d290]
push 5
push dword [0x49d294]
push dword [0x49d3dc]
push dword [0x49d398]
call sub.KERNEL32.dll_WriteProcessMemory
mov dword [0x49d234], eax
push 1
call fcn.0040d014
push 0x12c
call fcn.0040dfe9
pop eax
mov dword [0x49d3f4], 0xa
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d440], eax
mov ebx, dword [0x49d440]
and ebx, ebx
je 0x405c55
mov dword [0x49d3f4], 0xb
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d444], eax
mov ebx, dword [0x49d444]
and ebx, ebx
je 0x405cbf
mov dword [0x49d3f4], 0xc
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d448], eax
mov ebx, dword [0x49d448]
and ebx, ebx
je 0x405d29
mov dword [0x49d3f4], 0xd
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d44c], eax
mov ebx, dword [0x49d44c]
and ebx, ebx
je 0x405d93
mov dword [0x49d3f4], 0xe
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d450], eax
mov ebx, dword [0x49d450]
and ebx, ebx
je 0x405dfd
mov dword [0x49d3f4], 0xf
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d454], eax
mov ebx, dword [0x49d454]
and ebx, ebx
je 0x405e67
mov dword [0x49d3f4], 0x10
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d458], eax
mov ebx, dword [0x49d458]
and ebx, ebx
je 0x405ed1
mov dword [0x49d3f4], 0x11
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d45c], eax
mov ebx, dword [0x49d45c]
and ebx, ebx
je 0x405f3b
mov dword [0x49d3f4], 0x12
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d460], eax
mov ebx, dword [0x49d460]
and ebx, ebx
je 0x405fa5
mov dword [0x49d3f4], 0x13
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d464], eax
mov ebx, dword [0x49d464]
and ebx, ebx
je 0x40600f
mov dword [0x49d3f4], 0x14
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d99c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d994]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d98c]
shl ebx, 2
push dword [ebp + ebx]
mov ebx, dword [0x49d3f4]
mov ebp, dword [0x49d984]
shl ebx, 2
push dword [ebp + ebx]
call fcn.00409864
mov dword [0x49d468], eax
mov ebx, dword [0x49d468]
and ebx, ebx
je 0x406079
mov dword [0x49d3f8], 0
mov dword [0x49d400], 0
mov dword [0x49d408], 0
mov dword [0x49d410], 0
mov dword [0x49d418], 0
mov dword [0x49d420], 0
mov dword [0x49d428], 0
mov dword [0x49d430], 0
mov dword [0x49d438], 0
mov dword [0x49d440], 0
mov dword [0x49d444], 0
mov dword [0x49d448], 0
mov dword [0x49d44c], 0
mov dword [0x49d450], 0
mov dword [0x49d454], 0
mov dword [0x49d458], 0
mov dword [0x49d45c], 0
mov dword [0x49d460], 0
mov dword [0x49d464], 0
mov dword [0x49d468], 0
mov ebx, dword [0x49d2f0]
cmp ebx, 0x45a2a5
je 0x40615e
push 0
push 3
call fcn.0040fa83
call fcn.004071cf
push 1
call fcn.0040dfe9
mov ebx, dword [0x49d2c8]
cmp ebx, dword [0x49d2d0]
jne 0x406191
mov ebx, dword [0x49d2c8]
and ebx, ebx
je 0x406191
mov ebx, dword [0x49d2d0]
and ebx, ebx
je 0x406191
jmp 0x406198
mov eax, 1
jmp 0x40619a
xor eax, eax
and eax, eax
je 0x4061f6
push 0xa
call fcn.0040e0a7
mov ebx, eax
add ebx, 0xa
mov dword [0x49d38c], ebx
push 0x28
call fcn.0040e0a7
mov ebx, eax
add ebx, 0x28
mov dword [0x49d390], ebx
mov ebx, dword [0x49d340]
add ebx, dword [0x49d38c]
mov dword [0x49d340], ebx
mov ebx, dword [0x49d388]
add ebx, dword [0x49d390]
mov dword [0x49d388], ebx
call fcn.00407e90
jmp 0x404014
jmp 0x404b39
push 0
call 0x409081
call fcn.00415110
push dword [0x49d224]
call sub.KERNEL32.dll_HeapDestroy
call sub.KERNEL32.dll_ExitProcess
call fcn.0040d11b
call fcn.0040e259
call fcn.0040e849
call fcn.0040fe90
call fcn.004119c4
call fcn.00411bfb
call fcn.00411e00
call fcn.00412db7
call fcn.00413a4e
call fcn.00414580
ret