Function at 0x10043fcb
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
mov dword [ebp - 4], 0
mov ebx, dword [0x1012da9b]
add ebx, 0x80
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 8]
cmp dword [ebx], 0
jne 0x10044030
mov ebx, dword [0x1012da9b]
add ebx, 0x9c
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebp - 0xc]
cmp dword [ebx], 0
jne 0x10044030
mov ebx, dword [0x1012da9b]
add ebx, 0xc8
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0x10]
cmp dword [ebx], 0
jne 0x10044030
xor eax, eax
jmp 0x10044035
mov eax, 1
test eax, eax
je 0x10044213
fild qword [0x1012dbb7]
fstp qword [ebp - 0xc]
fld qword [ebp - 0xc]
fadd qword [0x100914c0]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
call fcn.10001d9a
push edx
push eax
call fcn.10034ed7
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x100
je 0x100440f7
cmp dword [ebp - 4], 0x100100
je 0x100440f7
cmp dword [ebp - 4], 0x200100
je 0x100440f7
cmp dword [ebp - 4], 0x400100
je 0x100440f7
cmp dword [ebp - 4], 0x8100
je 0x100440f7
cmp dword [ebp - 4], 0x408100
je 0x100440f7
cmp dword [ebp - 4], 0x208100
je 0x100440f7
cmp dword [ebp - 4], 0x108100
je 0x100440f7
cmp dword [ebp - 4], 0x28100
je 0x100440f7
cmp dword [ebp - 4], 0x110
je 0x100440f7
cmp dword [ebp - 4], 0x4008100
je 0x100440f7
xor eax, eax
jmp 0x100440fc
mov eax, 1
test eax, eax
je 0x10044143
fild qword [0x1012dbb7]
fstp qword [ebp - 0xc]
fld qword [ebp - 0xc]
fadd qword [0x100914c0]
fstp qword [ebp - 0x14]
fild dword [ebp - 4]
fstp qword [ebp - 0x1c]
fld qword [ebp - 0x1c]
fadd qword [0x1008c2b2]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
call fcn.10001d9a
push eax
fld qword [ebp - 0x14]
call fcn.10001d9a
push edx
push eax
call fcn.1002f737
mov ebx, dword [0x1012da9b]
add ebx, 0x80
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 8]
cmp dword [ebx], 0
je 0x10044213
fild qword [0x1012da8f]
fstp qword [ebp - 0xc]
fld qword [ebp - 0xc]
fadd qword [0x10093ee5]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
call fcn.10001d9a
push edx
push eax
call fcn.1002eebe
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
fild qword [ebp - 0x24]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fadd qword [0x10091222]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
call fcn.10001d9a
push edx
push eax
call fcn.1002eebe
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
fild qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [0x1009127a]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.10001d9a
mov dword [0x1012dc97], eax
mov dword [0x1012dc9b], edx
push 0x40000000
push dword [0x1012dc9b]
push dword [0x1012dc97]
call fcn.1002f6bf
fild qword [0x1012dc97]
fstp qword [ebp - 0xc]
fld qword [ebp - 0xc]
fadd qword [0x1009145f]
fstp qword [ebp - 0x14]
push 0x3f800000
fld qword [ebp - 0x14]
call fcn.10001d9a
push edx
push eax
call fcn.1002f6bf
mov ebx, dword [0x1012da9b]
add ebx, 0x98
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 8]
cmp dword [ebx], 0
je 0x10044244
push 0
push dword [0x1012dbe3]
push dword [0x1012dbdf]
call fcn.1002f6bf
mov ebx, dword [0x1012da9b]
add ebx, 0xb0
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 8]
cmp dword [ebx], 0
je 0x10044275
push 0x42c80000
push dword [0x1012dc7f]
push dword [0x1012dc7b]
call fcn.1002f6bf
mov ebx, dword [0x1012da9b]
add ebx, 0xd0
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 8]
cmp dword [ebx], 0
je 0x100442a6
push 0x551184e7
push dword [0x1012dc13]
push dword [0x1012dc0f]
call fcn.1002f6bf
mov ebx, dword [0x1012da9b]
add ebx, 0xa8
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 8]
cmp dword [ebx], 0
je 0x10044379
mov ebx, dword [0x1012da9b]
add ebx, 0xac
mov dword [ebp - 8], ebx
mov dword [ebp - 0xc], esp
mov ebx, dword [ebp - 8]
push dword [ebx]
xor eax, eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
nop
nop
cmp dword [ebp - 0xc], esp
je 0x100442fe
push 0x5e9
push 0x40128d9
push 6
call fcn.100704da
add esp, 0xc
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x10044379
push 1
push dword [0x1012dbf3]
push dword [0x1012dbef]
call fcn.1002f737
push 0
push dword [0x1012dbfb]
push dword [0x1012dbf7]
call fcn.1002f6bf
push 0xc1a00000
push dword [0x1012dc03]
push dword [0x1012dbff]
call fcn.1002f6bf
push 0x41000000
push dword [0x1012dc0b]
push dword [0x1012dc07]
call fcn.1002f6bf
push 0
push dword [0x1012dc13]
push dword [0x1012dc0f]
call fcn.1002f737
mov ebx, dword [0x1012da9b]
add ebx, 0xb8
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 8]
cmp dword [ebx], 0
je 0x100448f0
mov ebx, dword [0x1012da9b]
add ebx, 0xbc
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 8]
push dword [ebx]
call fcn.100448f4
test eax, eax
je 0x100443c3
and dword [0x1012dd23], 1
xor dword [0x1012dd23], 1
cmp dword [0x1012dd23], 0
je 0x1004486f
push 0x42c80000
push dword [0x1012dc1b]
push dword [0x1012dc17]
call fcn.1002f6bf
push 0x42c80000
push dword [0x1012dbeb]
push dword [0x1012dbe7]
call fcn.1002f6bf
mov dword [ebp - 8], esp
push 0x57
xor eax, eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
nop
nop
cmp dword [ebp - 8], esp
je 0x1004442a
push 0x982
push 0x40128d9
push 6
call fcn.100704da
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x10044472
push dword [0x1012dc63]
push dword [0x1012dc5f]
call fcn.1002f015
mov dword [ebp - 0x1c], eax
fld dword [ebp - 0x1c]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x10093eed]
fcomp qword [0x1008c4fb]
fnstsw ax
test ah, 1
je 0x10044472
mov eax, 1
jmp 0x10044477
mov eax, 0
test eax, eax
je 0x100444b9
push dword [0x1012dc63]
push dword [0x1012dc5f]
call fcn.1002f015
mov dword [ebp - 8], eax
fld dword [ebp - 8]
fadd qword [0x10093ef5]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fstp dword [ebp - 0x14]
push dword [ebp - 0x14]
push dword [0x1012dc63]
push dword [0x1012dc5f]
call fcn.1002f6bf
mov dword [ebp - 8], esp
push 0x53
xor eax, eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
nop
nop
cmp dword [ebp - 8], esp
je 0x100444e7
push 0xa77
push 0x40128d9
push 6
call fcn.100704da
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x1004452f
push dword [0x1012dc63]
push dword [0x1012dc5f]
call fcn.1002f015
mov dword [ebp - 0x1c], eax
fld dword [ebp - 0x1c]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x10093efd]
fcomp qword [0x1008bb72]
fnstsw ax
test ah, 0x41
jne 0x1004452f
mov eax, 1
jmp 0x10044534
mov eax, 0
test eax, eax
je 0x10044576
push dword [0x1012dc63]
push dword [0x1012dc5f]
call fcn.1002f015
mov dword [ebp - 8], eax
fld dword [ebp - 8]
fsub qword [0x10093ef5]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fstp dword [ebp - 0x14]
push dword [ebp - 0x14]
push dword [0x1012dc63]
push dword [0x1012dc5f]
call fcn.1002f6bf
mov dword [ebp - 8], esp
push 0x41
xor eax, eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
nop
nop
cmp dword [ebp - 8], esp
je 0x100445a4
push 0xb6c
push 0x40128d9
push 6
call fcn.100704da
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x100445ec
push dword [0x1012dc23]
push dword [0x1012dc1f]
call fcn.1002f015
mov dword [ebp - 0x1c], eax
fld dword [ebp - 0x1c]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x10093efd]
fcomp qword [0x1008bb72]
fnstsw ax
test ah, 0x41
jne 0x100445ec
mov eax, 1
jmp 0x100445f1
mov eax, 0
test eax, eax
je 0x10044633
push dword [0x1012dc23]
push dword [0x1012dc1f]
call fcn.1002f015
mov dword [ebp - 8], eax
fld dword [ebp - 8]
fsub qword [0x10093ef5]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fstp dword [ebp - 0x14]
push dword [ebp - 0x14]
push dword [0x1012dc23]
push dword [0x1012dc1f]
call fcn.1002f6bf
mov dword [ebp - 8], esp
push 0x44
xor eax, eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
nop
nop
cmp dword [ebp - 8], esp
je 0x10044661
push 0xc61
push 0x40128d9
push 6
call fcn.100704da
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x100446a9
push dword [0x1012dc23]
push dword [0x1012dc1f]
call fcn.1002f015
mov dword [ebp - 0x1c], eax
fld dword [ebp - 0x1c]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x10093eed]
fcomp qword [0x1008c4fb]
fnstsw ax
test ah, 1
je 0x100446a9
mov eax, 1
jmp 0x100446ae
mov eax, 0
test eax, eax
je 0x100446f0
push dword [0x1012dc23]
push dword [0x1012dc1f]
call fcn.1002f015
mov dword [ebp - 8], eax
fld dword [ebp - 8]
fadd qword [0x10093ef5]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fstp dword [ebp - 0x14]
push dword [ebp - 0x14]
push dword [0x1012dc23]
push dword [0x1012dc1f]
call fcn.1002f6bf
mov dword [ebp - 8], esp
push 0x20
xor eax, eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
nop
nop
cmp dword [ebp - 8], esp
je 0x1004471e
push 0xd56
push 0x40128d9
push 6
call fcn.100704da
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x10044766
push dword [0x1012dc5b]
push dword [0x1012dc57]
call fcn.1002f015
mov dword [ebp - 0x1c], eax
fld dword [ebp - 0x1c]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x1008bb96]
fcomp qword [0x1008c4fb]
fnstsw ax
test ah, 1
je 0x10044766
mov eax, 1
jmp 0x1004476b
mov eax, 0
test eax, eax
je 0x100447ad
push dword [0x1012dc5b]
push dword [0x1012dc57]
call fcn.1002f015
mov dword [ebp - 8], eax
fld dword [ebp - 8]
fadd qword [0x10093ef5]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fstp dword [ebp - 0x14]
push dword [ebp - 0x14]
push dword [0x1012dc5b]
push dword [0x1012dc57]
call fcn.1002f6bf
mov dword [ebp - 8], esp
push 0x11
xor eax, eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
nop
nop
cmp dword [ebp - 8], esp
je 0x100447db
push 0xe4b
push 0x40128d9
push 6
call fcn.100704da
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x10044823
push dword [0x1012dc5b]
push dword [0x1012dc57]
call fcn.1002f015
mov dword [ebp - 0x1c], eax
fld dword [ebp - 0x1c]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fsub qword [0x10093efd]
fcomp qword [0x1008bb72]
fnstsw ax
test ah, 0x41
jne 0x10044823
mov eax, 1
jmp 0x10044828
mov eax, 0
test eax, eax
je 0x1004486a
push dword [0x1012dc5b]
push dword [0x1012dc57]
call fcn.1002f015
mov dword [ebp - 8], eax
fld dword [ebp - 8]
fsub qword [0x10093ef5]
fstp qword [ebp - 0x10]
fld qword [ebp - 0x10]
fstp dword [ebp - 0x14]
push dword [ebp - 0x14]
push dword [0x1012dc5b]
push dword [0x1012dc57]
call fcn.1002f6bf
jmp 0x100448f0
push 0
push dword [0x1012dc63]
push dword [0x1012dc5f]
call fcn.1002f6bf
push 0
push dword [0x1012dc23]
push dword [0x1012dc1f]
call fcn.1002f6bf
push 0x3fc00000
push dword [0x1012dc5b]
push dword [0x1012dc57]
call fcn.1002f6bf
fild qword [0x1012dbb7]
fstp qword [ebp - 0xc]
fld qword [ebp - 0xc]
fadd qword [0x100912da]
fstp qword [ebp - 0x14]
push 0
fld qword [ebp - 0x14]
call fcn.10001d9a
push edx
push eax
call fcn.1002f6bf
push 0x40200000
push dword [0x1012dbeb]
push dword [0x1012dbe7]
call fcn.1002f6bf
mov esp, ebp
pop ebp
ret