Function at 0x484dd0
Capabilities:
Log keystrokes via polling
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x587f20
mov eax, dword fs:[0]
push eax
sub esp, 0x28
push ebx
push esi
push edi
mov eax, dword [0x5e95e0]
xor eax, esp
push eax
lea eax, [esp + 0x38]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x10]
mov ebx, edx
mov esi, dword [ebp + 8]
cmp ecx, 0x20c
jne 0x484e50
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x4862d7
shr ebx, 0x10
test bl, 1
jne 0x486003
test bl, 2
je 0x484e36
lea ecx, [esi + 0x22c]
call fcn.004c6260
mov eax, 1
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp ecx, 0x100
jne 0x485e8d
mov eax, dword [esi + 0x568c]
test eax, eax
je 0x484f11
cmp ebx, 0xa6
jne 0x484e82
lea ecx, [eax + 0x22c]
call fcn.004c6210
jmp 0x484f11
cmp ebx, 0xa7
jne 0x484e97
lea ecx, [eax + 0x22c]
call fcn.004c6260
jmp 0x484f11
cmp ebx, 0xa8
jne 0x484eb8
mov ecx, dword [esi + 0x568c]
mov eax, dword [ecx + 0x2ac]
add ecx, 0x22c
call fcn.004c6170
jmp 0x484f11
cmp ebx, 0xa9
jne 0x484ed9
mov ecx, dword [esi + 0x568c]
mov eax, dword [ecx + 0x2ac]
add ecx, 0x22c
call fcn.004c61c0
jmp 0x484f11
cmp ebx, 0xaa
jne 0x484eee
lea ecx, [eax + 0x22c]
call fcn.004c6210
jmp 0x484f11
cmp ebx, 0xab
jne 0x484efd
push 0x8058
jmp 0x484f0a
cmp ebx, 0xac
jne 0x484f11
push 0x80da
mov ecx, esi
call fcn.00497600
call dword [sym.imp.USER32.dll_GetFocus]
push eax
call fcn.00533854
cmp ebx, 9
mov edi, eax
jne 0x484f96
test edi, edi
jne 0x484f2c
xor ecx, ecx
jmp 0x484f2f
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x35fc]
test eax, eax
je 0x484f3c
mov eax, dword [eax + 0x20]
cmp ecx, eax
je 0x484f60
test edi, edi
jne 0x484f48
xor ecx, ecx
jmp 0x484f4b
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x33e4]
test eax, eax
je 0x484f58
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x4862d7
mov ecx, dword [esi + 0x568c]
add ecx, 0x22c
call fcn.004c62b0
test eax, eax
je 0x484f7c
mov ecx, eax
call fcn.004c59e0
mov eax, 1
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp ebx, 0x28
jne 0x48504b
test edi, edi
jne 0x484fa7
xor ecx, ecx
jmp 0x484faa
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x35fc]
test eax, eax
je 0x484fb7
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x485009
mov eax, dword [esi + 0x933c]
push eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x484fd5
push eax
push eax
mov ecx, esi
call fcn.004877b0
add esi, 0x931c
mov ecx, esi
call fcn.004053f0
test eax, eax
jge 0x484fef
push 0
mov ecx, esi
call fcn.004053d0
mov eax, 1
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test edi, edi
jne 0x485011
xor ecx, ecx
jmp 0x485014
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x33e4]
test eax, eax
je 0x485021
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x4862d7
mov ecx, dword [esi + 0x9128]
push ecx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x485043
push eax
push eax
mov ecx, esi
call fcn.00487460
add esi, 0x9108
jmp 0x484fdb
test edi, edi
jne 0x485053
xor ecx, ecx
jmp 0x485056
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x931c]
test eax, eax
je 0x485063
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x48509f
cmp ebx, 0x25
je 0x485080
cmp ebx, 0x26
jne 0x48509f
lea ecx, [esi + 0x931c]
call fcn.004053f0
test eax, eax
jne 0x48509f
cmp dword [esi + 0x9380], 0
lea ecx, [esi + 0x35fc]
je 0x485095
lea ecx, [esi + 0x4780]
call fcn.00537de3
jmp 0x484fef
test edi, edi
jne 0x4850a7
xor edx, edx
jmp 0x4850aa
mov edx, dword [edi + 0x20]
lea ecx, [esi + 0x9108]
test ecx, ecx
jne 0x4850b8
xor eax, eax
jmp 0x4850bb
mov eax, dword [ecx + 0x20]
cmp edx, eax
jne 0x485103
cmp ebx, 0x25
je 0x4850d6
cmp ebx, 0x26
jne 0x485103
call fcn.004053f0
test eax, eax
jne 0x4862d7
cmp dword [esi + 0x9174], 0
jne 0x484fef
lea edi, [esi + 0x33e4]
mov ecx, edi
call fcn.00537de3
mov edx, dword [esi + 0x35f0]
push edx
mov ecx, edi
call fcn.00537cec
jmp 0x484fef
cmp ebx, 0x20
je 0x4855e6
cmp ebx, 0xd
je 0x4855e6
cmp ebx, 0x27
jne 0x48526f
test edi, edi
jne 0x485126
xor edx, edx
jmp 0x485129
mov edx, dword [edi + 0x20]
test ecx, ecx
jne 0x485131
xor eax, eax
jmp 0x485134
mov eax, dword [ecx + 0x20]
cmp edx, eax
jne 0x48514b
push 0x3ea
push 1
mov ecx, esi
call fcn.004868b0
jmp 0x484fef
test edi, edi
jne 0x485153
xor ecx, ecx
jmp 0x485156
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x931c]
test eax, eax
je 0x485163
mov eax, dword [eax + 0x20]
cmp ecx, eax
je 0x48562f
test edi, edi
jne 0x485173
xor ecx, ecx
jmp 0x485176
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x33e4]
test eax, eax
je 0x485183
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x4851f3
mov edx, dword [esi + 0x3404]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x18]
push ecx
push 0xb0
push edx
call edi
mov eax, dword [esi + 0x3404]
push 0
push 0xffffffffffffffff
push 0xc1
push eax
call edi
mov ecx, dword [esp + 0x18]
cmp ecx, eax
jne 0x4862d7
cmp dword [esp + 0x14], ecx
jne 0x4862d7
mov ecx, str.SEARCHBOX
call fcn.0041b1c0
test eax, eax
jne 0x4862d7
push eax
push eax
mov ecx, esi
call fcn.00487770
push esi
call fcn.0049b6d0
jmp 0x484fef
test edi, edi
jne 0x4851fb
xor ecx, ecx
jmp 0x4851fe
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x35fc]
test eax, eax
je 0x48520b
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x4862d7
mov eax, dword [esi + 0x361c]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x18]
push edx
push 0xb0
push eax
call edi
mov ecx, dword [esi + 0x361c]
push 0
push 0xffffffffffffffff
push 0xc1
push ecx
call edi
mov ecx, dword [esp + 0x18]
cmp ecx, eax
jne 0x4862d7
cmp dword [esp + 0x14], ecx
jne 0x4862d7
push 0
push 0
mov ecx, esi
call fcn.00487ad0
push esi
call fcn.0049b6d0
jmp 0x484fef
cmp ebx, 0x70
jne 0x485297
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x484fef
push 0
push 1
push 0
or edx, 0xffffffff
mov ecx, esi
call fcn.004d7950
jmp 0x484fef
cmp ebx, 0x71
jne 0x4852e3
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4852ba
push 0x5a5f
mov ecx, esi
call fcn.0048e4d0
jmp 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x4862d7
push 0xffffffffffffffff
mov eax, esi
call fcn.004dbee0
jmp 0x484fef
cmp ebx, 0x72
jne 0x48537c
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
push 0x11
call edi
test ax, ax
jge 0x485322
mov ebx, 1
mov eax, esi
call fcn.0048a670
mov esi, dword [esi + 0x562c]
test esi, esi
je 0x484fef
push ebx
push ebx
push esi
call fcn.00404520
jmp 0x484fef
push 0x10
call edi
test ax, ax
jge 0x485353
mov ebx, 1
mov eax, esi
call fcn.0048a670
mov esi, dword [esi + 0x562c]
test esi, esi
je 0x484fef
push ebx
push 0
push esi
call fcn.00404520
jmp 0x484fef
cmp dword [esi + 0x108], 2
jne 0x484fef
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x484fef
push 1
mov eax, esi
call fcn.004dbee0
jmp 0x484fef
cmp ebx, 0x73
je 0x485a1a
cmp ebx, 0x74
jne 0x4853a6
mov esi, dword [esi + 0x568c]
mov eax, dword [esi + 0x2ac]
lea ecx, [esi + 0x22c]
call fcn.004c6170
jmp 0x484fef
cmp ebx, 0x7a
jne 0x4853d4
cmp dword [esi + 0x108], 2
jne 0x484fef
mov ecx, dword [esi + 0x568c]
xor eax, eax
cmp dword [0x5f2820], eax
push ecx
sete al
call fcn.004dbf60
jmp 0x484fef
cmp ebx, 0x1b
jne 0x485501
push 0x10
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
mov eax, dword [esi + 0x568c]
jge 0x485439
test eax, eax
je 0x484fef
mov edx, dword [eax + 0x298]
add edx, dword [eax + 0x284]
lea ecx, [eax + 0x22c]
xor edi, edi
test edx, edx
jle 0x484fef
mov eax, edi
call fcn.004c61c0
mov eax, dword [esi + 0x568c]
lea ecx, [eax + 0x22c]
mov eax, dword [ecx + 0x6c]
add eax, dword [ecx + 0x58]
add edi, 1
cmp edi, eax
jl 0x485414
jmp 0x484fef
test eax, eax
mov ebx, 2
je 0x485460
cmp dword [esi + 0x108], ebx
jne 0x485460
cmp dword [0x5f2820], 0
je 0x485460
push eax
xor eax, eax
call fcn.004dbf60
jmp 0x484fef
push 0
push 0
mov ecx, esi
call fcn.00487ad0
push 0
push 0
mov ecx, esi
call fcn.00487770
cmp dword [esi + 0x108], ebx
jne 0x484fef
mov ecx, dword [esi + 0x568c]
test ecx, ecx
je 0x484fef
mov edx, dword [ecx + 0x298]
add edx, dword [ecx + 0x284]
add ecx, 0x22c
xor ebx, ebx
test edx, edx
jle 0x4854c8
mov eax, ebx
call fcn.004c61c0
mov eax, dword [esi + 0x568c]
lea ecx, [eax + 0x22c]
mov eax, dword [ecx + 0x6c]
add eax, dword [ecx + 0x58]
add ebx, 1
cmp ebx, eax
jl 0x4854a8
mov ecx, dword [esi + 0x3404]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 0xffffffffffffffff
push 0
add esi, 0x33e4
push 0xb1
push ecx
call edi
mov edx, dword [esi + 0x20]
push 0
push 0
push 0xb7
push edx
call edi
mov ecx, esi
call fcn.00537de3
jmp 0x484fef
cmp ebx, 0x46
jne 0x4855a9
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
push 0x11
call edi
test ax, ax
jge 0x485526
cmp dword [esi + 0x108], 0
je 0x484fef
push 0x11
call edi
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov eax, esi
call fcn.0048a360
test eax, eax
jle 0x4855d5
cmp dword [0x5f2794], 0
je 0x484fef
mov dword [0x5f2794], 0
mov ecx, dword [esi + 0x562c]
push 0
call fcn.00537d86
lea eax, [esp + 0x24]
push eax
mov eax, esi
call fcn.0047a6e0
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
push 1
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x2c]
sub edx, ecx
push edx
push eax
push ecx
mov ecx, dword [esi + 0x568c]
call fcn.00537d48
jmp 0x484fef
cmp ebx, 0x53
jne 0x485794
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x485d5a
cmp dword [esi + 0x108], 0
jne 0x485d5a
jmp 0x484fef
mov ebx, 1
mov eax, esi
call fcn.0048a670
jmp 0x484fef
test edi, edi
jne 0x4855ee
xor edx, edx
jmp 0x4855f1
mov edx, dword [edi + 0x20]
test ecx, ecx
jne 0x4855f9
xor eax, eax
jmp 0x4855fc
mov eax, dword [ecx + 0x20]
cmp edx, eax
jne 0x485613
push 0x3ea
push 0
mov ecx, esi
call fcn.004868b0
jmp 0x484fef
test edi, edi
jne 0x48561b
xor ecx, ecx
jmp 0x48561e
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x931c]
test eax, eax
je 0x48562b
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x485642
push 0x3eb
push 0
mov ecx, esi
call fcn.004868b0
jmp 0x484fef
test edi, edi
jne 0x48564a
xor ecx, ecx
jmp 0x48564d
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x35fc]
test eax, eax
je 0x48565a
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x48567a
cmp ebx, 0xd
jne 0x48567a
push 0
push 0
mov ecx, esi
call fcn.00487ad0
mov ecx, esi
call fcn.0049bcc0
jmp 0x484fef
test edi, edi
jne 0x485682
xor ecx, ecx
jmp 0x485685
mov ecx, dword [edi + 0x20]
lea eax, [esi + 0x33e4]
test eax, eax
je 0x485692
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x485794
cmp ebx, 0xd
jne 0x485794
mov ebx, dword [sym.imp.USER32.dll_GetKeyState]
push 0x10
mov dword [esp + 0x18], 0
call ebx
push 0x12
movsx edi, ax
call ebx
movsx eax, ax
push 0x11
mov dword [esp + 0x1c], eax
call ebx
movsx eax, ax
test eax, eax
mov eax, dword [esp + 0x18]
jge 0x4856f9
test eax, eax
jl 0x48575a
test edi, edi
jl 0x48573f
mov dword [esp + 0x14], 1
mov ecx, dword [esp + 0x14]
push ecx
push 0
mov ecx, esi
call fcn.00486f00
jmp 0x484fef
test eax, eax
jl 0x485720
test edi, edi
jge 0x48571c
mov dword [esp + 0x14], 2
mov ecx, dword [esp + 0x14]
push ecx
push 0
mov ecx, esi
call fcn.00486f00
jmp 0x484fef
test eax, eax
jge 0x485781
test edi, edi
jl 0x485779
mov dword [esp + 0x14], 3
mov ecx, dword [esp + 0x14]
push ecx
push 0
mov ecx, esi
call fcn.00486f00
jmp 0x484fef
mov dword [esp + 0x14], 4
mov ecx, dword [esp + 0x14]
push ecx
push 0
mov ecx, esi
call fcn.00486f00
jmp 0x484fef
test edi, edi
jl 0x485781
mov dword [esp + 0x14], 5
mov ecx, dword [esp + 0x14]
push ecx
push 0
mov ecx, esi
call fcn.00486f00
jmp 0x484fef
mov dword [esp + 0x14], 6
mov ecx, dword [esp + 0x14]
push ecx
push 0
mov ecx, esi
call fcn.00486f00
jmp 0x484fef
cmp ebx, 0x4c
jne 0x4857ca
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
push 0x11
call edi
test ax, ax
jge 0x4862d7
push 0x10
call edi
test ax, ax
jge 0x4862d7
push 0x5609
mov ecx, esi
call fcn.0048e4d0
jmp 0x484fef
cmp ebx, 0x4d
jne 0x4857f1
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
push 0x5a7f
mov ecx, esi
call fcn.0048e4d0
jmp 0x484fef
cmp ebx, 0x52
jne 0x48594d
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
push 0x11
call edi
test ax, ax
mov ebx, 2
jge 0x485839
cmp dword [esi + 0x108], ebx
jne 0x485839
cmp dword [esi + 0x568c], 0
je 0x485839
push 0x10
call edi
test ax, ax
jge 0x485839
push 0x5a7d
mov ecx, esi
call fcn.0048e4d0
jmp 0x484fef
push 0x11
call edi
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], ebx
jne 0x4862d7
mov eax, dword [esi + 0x568c]
test eax, eax
je 0x4862d7
cmp dword [eax + 0x2ac], 0
jl 0x4862d7
lea ecx, [eax + 0x22c]
call fcn.004c63e0
mov edi, eax
test edi, edi
je 0x485940
lea ecx, [esp + 0x14]
call fcn.004026e0
lea ecx, [esp + 0x18]
mov dword [esp + 0x40], 0
call fcn.004026e0
xor eax, eax
lea ecx, [esp + 0x14]
mov edx, edi
mov byte [esp + 0x40], 1
call fcn.004c9550
lea ebx, [esp + 0x14]
call fcn.00409830
mov edi, eax
call fcn.004098b0
mov eax, dword [esp + 0x14]
mov edi, 0x20
cmp dword [eax - 0xc], edi
jle 0x485909
mov ecx, dword [eax - 8]
mov edx, 1
sub edx, dword [eax - 4]
sub ecx, edi
or edx, ecx
jge 0x4858e9
push edi
mov ecx, ebx
call fcn.00401fc0
mov eax, dword [esp + 0x14]
cmp dword [eax - 8], edi
jge 0x4858f8
push 0x80070057
call fcn.00401f70
mov dword [eax - 0xc], edi
mov edx, dword [esp + 0x14]
mov word [edx + 0x40], 0
mov eax, dword [esp + 0x14]
push 1
push 1
push 0
push eax
mov eax, dword [esi + 0x568c]
push 0x5954c8
push 0x593784
push eax
or ecx, 0xffffffff
call fcn.004d7ba0
lea ecx, [esp + 0x18]
call fcn.004a4690
lea ecx, [esp + 0x14]
call fcn.004a4690
jmp 0x484fef
push 0
call dword [sym.imp.USER32.dll_MessageBeep]
jmp 0x484fef
cmp ebx, 0x4e
jne 0x48599d
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
push 0x11
call edi
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
cmp dword [esi + 0x568c], 0
je 0x4862d7
push 0x10
call edi
test ax, ax
jge 0x4862d7
mov ecx, dword [esi + 0x568c]
push ecx
call fcn.004dc410
jmp 0x484fef
cmp ebx, 0x57
jne 0x485a34
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
push 0x11
call edi
test ax, ax
mov ebx, 2
jge 0x4859e6
cmp dword [esi + 0x108], ebx
jne 0x4859e6
cmp dword [esi + 0x568c], 0
je 0x4859e6
push 0x10
call edi
test ax, ax
jge 0x4859e6
mov ebx, dword [esi + 0x568c]
push 0
call fcn.004d6080
jmp 0x484fef
push 0x11
call edi
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], ebx
jne 0x4862d7
mov eax, dword [esi + 0x568c]
test eax, eax
je 0x4862d7
cmp dword [eax + 0x2ac], 0
jl 0x4862d7
mov esi, dword [esi + 0x568c]
mov edx, dword [esi + 0x2ac]
push 0
push edx
push esi
call fcn.004d6b70
jmp 0x484fef
cmp ebx, 0x54
jne 0x485a80
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x4862d7
push 0
push 0
push 0xffffffffffffffff
push 1
push 1
push 0
push 0
push 0
push esi
call fcn.004d7180
jmp 0x484fef
cmp ebx, 0x45
jne 0x485abe
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
cmp dword [esi + 0x568c], 0
je 0x4862d7
push 5
mov ecx, esi
call fcn.0049a780
jmp 0x484fef
cmp ebx, 0x4b
jne 0x485af3
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
push 0x5ad288
add esi, 0x1594
push esi
call fcn.004c36d0
lea esi, [esp + 0x13]
call fcn.0046e6b0
jmp 0x484fef
cmp ebx, 0x55
jne 0x485b34
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x4862d7
lea ecx, [esi + 0x22c]
call fcn.004c7040
jmp 0x484fef
cmp ebx, 0x49
jne 0x485b89
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x485940
mov eax, dword [esi + 0x568c]
test eax, eax
je 0x485940
cmp dword [eax + 0x2ac], 0
jl 0x485940
push esi
call fcn.0049d5e0
push 0x564d
mov ecx, esi
call fcn.0048e4d0
jmp 0x484fef
cmp ebx, 0x75
jne 0x485be4
push esi
call fcn.0049d5e0
cmp dword [esi + 0x108], 2
jne 0x4862d7
cmp dword [esi + 0x568c], 0
je 0x4862d7
add esi, 0x33e4
mov ecx, esi
call fcn.00537de3
mov eax, dword [esi + 0x20]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 0xffffffffffffffff
push 0
push 0xb1
push eax
call edi
mov ecx, dword [esi + 0x20]
push 0
push 0
push 0xb7
push ecx
call edi
jmp 0x484fef
cmp ebx, 0x76
jne 0x485c3f
push esi
call fcn.0049d5e0
cmp dword [esi + 0x108], 2
jne 0x4862d7
cmp dword [esi + 0x568c], 0
je 0x4862d7
add esi, 0x35fc
mov ecx, esi
call fcn.00537de3
mov edx, dword [esi + 0x20]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 0xffffffffffffffff
push 0
push 0xb1
push edx
call edi
mov eax, dword [esi + 0x20]
push 0
push 0
push 0xb7
push eax
call edi
jmp 0x484fef
cmp ebx, 0x44
jne 0x485cb1
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
push 0x11
call edi
test ax, ax
jge 0x485c73
push 0x10
call edi
test ax, ax
jge 0x485c73
push esi
call fcn.0049d5e0
push 0x5624
mov ecx, esi
call fcn.0048e4d0
jmp 0x484fef
push 0x11
call edi
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
cmp dword [esi + 0x568c], 0
je 0x4862d7
push esi
call fcn.0049d5e0
push 0x805a
mov ecx, esi
call fcn.00497600
jmp 0x484fef
cmp ebx, 0x58
jne 0x485ce7
mov edi, dword [sym.imp.USER32.dll_GetKeyState]
push 0x11
call edi
test ax, ax
jge 0x4862d7
push 0x10
call edi
test ax, ax
jge 0x4862d7
push 0x5625
mov ecx, esi
call fcn.0048e4d0
jmp 0x484fef
cmp ebx, 0x48
jne 0x485d28
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
cmp dword [esi + 0x568c], 0
je 0x4862d7
push 0x5bcc
mov ecx, esi
call fcn.0048e4d0
jmp 0x484fef
cmp ebx, 0x4f
jne 0x485d55
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
push esi
call fcn.0049d5e0
push 0x800f
mov ecx, esi
call fcn.00497600
jmp 0x484fef
cmp ebx, 0x53
jne 0x485d82
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
push esi
call fcn.0049d5e0
push 0x802f
mov ecx, esi
call fcn.00497600
jmp 0x484fef
cmp ebx, 0x47
jne 0x485e14
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x4862d7
lea ecx, [esi + 0x22c]
call fcn.004c63e0
mov esi, eax
test esi, esi
je 0x485940
mov eax, dword [esi + 0x44]
xor ecx, ecx
cmp dword [esi + 0x94], ecx
sete cl
push ecx
mov ecx, 0x5f27f8
call fcn.004d3a40
mov eax, dword [esi + 0x44]
xor edx, edx
cmp dword [esi + 0x94], edx
mov ecx, 0x5f27f8
sete dl
push edx
call fcn.004d3aa0
xor eax, eax
cmp dword [esi + 0x94], eax
sete al
mov dword [esi + 0x94], eax
jmp 0x484fef
cmp ebx, 0x42
jne 0x4862d7
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jge 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x4862d7
lea ecx, [esi + 0x22c]
call fcn.004c63e0
mov esi, eax
test esi, esi
je 0x485940
mov eax, dword [esi + 0x44]
xor ecx, ecx
cmp dword [esi + 0x98], ecx
sete cl
push ecx
mov ecx, 0x5f27f8
call fcn.004d3b00
xor edx, edx
cmp dword [esi + 0x98], edx
sete dl
mov dword [esi + 0x98], edx
jmp 0x484fef
cmp ecx, 0x104
jne 0x486204
cmp ebx, 0xd
jne 0x485f43
call dword [sym.imp.USER32.dll_GetFocus]
push eax
call fcn.00533854
test eax, eax
jne 0x485eb6
xor ecx, ecx
jmp 0x485eb9
mov ecx, dword [eax + 0x20]
lea eax, [esi + 0x33e4]
test eax, eax
je 0x485ec6
mov eax, dword [eax + 0x20]
cmp ecx, eax
jne 0x4862d7
mov ebx, dword [sym.imp.USER32.dll_GetKeyState]
push 0x10
call ebx
push 0x12
movsx edi, ax
call ebx
movsx eax, ax
push 0x11
mov dword [esp + 0x1c], eax
call ebx
movsx eax, ax
test eax, eax
jl 0x485f10
cmp dword [esp + 0x18], 0
jge 0x485f34
test edi, edi
jl 0x485f2f
mov edi, 3
push edi
push 0
mov ecx, esi
call fcn.00486f00
jmp 0x484fef
cmp dword [esp + 0x18], 0
jge 0x485f34
test edi, edi
jl 0x485f34
mov edi, 5
push edi
push 0
mov ecx, esi
call fcn.00486f00
jmp 0x484fef
mov edi, 6
push edi
push 0
mov ecx, esi
call fcn.00486f00
jmp 0x484fef
cmp ebx, 0x79
jne 0x485f66
cmp dword [esi + 0x108], 2
jne 0x4862d7
push 0x59d9
mov ecx, esi
call fcn.0048e4d0
jmp 0x484fef
cmp ebx, 0x26
jne 0x485f92
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov eax, dword [esi + 0x568c]
test eax, eax
je 0x4862d7
push 0xffffffffffffffff
call fcn.004dbee0
jmp 0x484fef
cmp ebx, 0x28
jne 0x485fbe
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov eax, dword [esi + 0x568c]
test eax, eax
je 0x4862d7
push 1
call fcn.004dbee0
jmp 0x484fef
cmp ebx, 0x27
jne 0x485fe3
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x4862d7
jmp 0x484e2b
cmp ebx, 0x25
jne 0x486013
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov esi, dword [esi + 0x568c]
test esi, esi
je 0x4862d7
lea ecx, [esi + 0x22c]
call fcn.004c6210
jmp 0x484e36
cmp ebx, 0x43
jne 0x486029
push 0x59df
mov ecx, esi
call fcn.0048e4d0
jmp 0x484e36
cmp ebx, 0x51
jne 0x486059
cmp dword [esi + 0x108], 2
jne 0x4862d7
cmp dword [esi + 0x568c], 0
je 0x4862d7
push 0x59de
mov ecx, esi
call fcn.0048e4d0
jmp 0x484e36
cmp ebx, 0x31
jne 0x486097
cmp dword [esi + 0x108], 2
jne 0x4862d7
mov eax, dword [esi + 0x568c]
test eax, eax
je 0x4862d7
cmp dword [eax + 0x2ac], 0
jl 0x4862d7
push 0x55f2
mov ecx, esi
call fcn.0048e4d0
jmp 0x484e36
cmp ebx, 0x46
jne 0x4860b0
push 0
push 0
lea ecx, [esi + 0x3f40]
call fcn.004a1fa0
jmp 0x484e36
cmp ebx, 0x45
jne 0x4860c9
push 0
push 1
lea ecx, [esi + 0x3f40]
call fcn.004a1fa0
jmp 0x484e36
cmp ebx, 0x56
jne 0x4860e2
push 0
push 2
lea ecx, [esi + 0x3f40]
call fcn.004a1fa0
jmp 0x484e36
cmp ebx, 0x49
jne 0x4860fb
push 0
push 3
lea ecx, [esi + 0x3f40]
call fcn.004a1fa0
jmp 0x484e36
cmp ebx, 0x41
jne 0x486114
push 0
push 4
lea ecx, [esi + 0x3f40]
call fcn.004a1fa0
jmp 0x484e36
cmp ebx, 0x54
jne 0x48612d
push 0
push 5
lea ecx, [esi + 0x3f40]
call fcn.004a1fa0
jmp 0x484e36
cmp ebx, 0x48
jne 0x486146
push 0
push 6
lea ecx, [esi + 0x3f40]
call fcn.004a1fa0
jmp 0x484e36
cmp ebx, 0x55
jne 0x48615f
push 0
push 7
lea ecx, [esi + 0x3f40]
call fcn.004a1fa0
jmp 0x484e36
cmp ebx, 0x4d
jne 0x486175
push 0x805e
mov ecx, esi
call fcn.00497600
jmp 0x484e36
cmp ebx, 0x44
jne 0x4861d0
push esi
call fcn.0049d5e0
cmp dword [esi + 0x108], 2
jne 0x4862d7
cmp dword [esi + 0x568c], 0
je 0x4862d7
add esi, 0x33e4
mov ecx, esi
call fcn.00537de3
mov ecx, dword [esi + 0x20]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 0xffffffffffffffff
push 0
push 0xb1
push ecx
call edi
mov edx, dword [esi + 0x20]
push 0
push 0
push 0xb7
push edx
call edi
jmp 0x484e36
cmp ebx, 0x58
jne 0x4862d7
cmp dword [esi + 0x108], 2
jne 0x4862d7
cmp dword [esi + 0x568c], 0
je 0x4862d7
push 0x5a81
mov ecx, esi
call fcn.0048e4d0
jmp 0x484e36
cmp ecx, 0x201
je 0x486218
cmp ecx, 0x204
jne 0x4862d7
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov ebx, dword [sym.imp.USER32.dll_ScreenToClient]
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esi + 0x1ec4]
push eax
push ecx
mov dword [esp + 0x28], edx
call ebx
lea eax, [esi + 0x2c70]
lea edx, [esp + 0x1c]
call fcn.004c0780
mov dword [esp + 0x18], eax
lea eax, [esi + 0x2ef0]
lea edx, [esp + 0x1c]
call fcn.004c0780
mov edi, eax
xor eax, eax
cmp dword [esi + 0x568c], eax
je 0x486290
mov ecx, dword [esi + 0x562c]
test ecx, ecx
je 0x486290
mov eax, dword [ecx + 0x20]
lea edx, [esp + 0x1c]
push edx
push eax
call ebx
mov eax, dword [esi + 0x562c]
add eax, 0x9d0
lea edx, [esp + 0x1c]
call fcn.004c0780
lea ecx, [esi + 0x931c]
test ecx, ecx
je 0x48629d
mov ecx, dword [ecx + 0x20]
cmp dword [ebp + 0xc], ecx
je 0x4862b3
test edi, edi
jne 0x4862b3
test eax, eax
jne 0x4862b3
push eax
push eax
mov ecx, esi
call fcn.00487ad0
lea eax, [esi + 0x9108]
test eax, eax
je 0x4862c0
mov eax, dword [eax + 0x20]
cmp dword [ebp + 0xc], eax
je 0x4862d7
cmp dword [esp + 0x18], 0
jne 0x4862d7
push 0
push 0
mov ecx, esi
call fcn.00487770
xor eax, eax
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc