Function at 0x41ab8b
Capabilities:
Log keystrokes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
mov dword [ebp - 4], 0
push 8
call fcn.0044866b
add esp, 4
mov dword [ebp - 8], eax
mov edi, eax
mov esi, 0x482235
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0044866b
add esp, 4
mov dword [ebp - 0xc], eax
mov edi, eax
mov esi, 0x482235
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x10], 0
push dword [ebp + 8]
call fcn.00401b3c
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x41abf2
jmp 0x41b5c9
mov dword [ebp - 0x18], 1
mov eax, dword [ebp - 4]
cmp eax, 0
jge 0x41ac18
push 0x80
push 0x4094e8b
push 0xa
call fcn.00448671
add esp, 0xc
mov dword [ebp - 0x14], eax
lea ebx, [ebp - 0x18]
call fcn.00401304
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0044866b
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x14]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 8]
call fcn.00401304
pop edx
test ecx, ecx
je 0x41ac90
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00448677
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00448677
add esp, 4
pop ebx
call fcn.00448677
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x41ac59
pop edx
pop edi
test edx, edx
je 0x41ad11
mov ebx, edi
push edx
push ebx
push 0xc
call fcn.0044866b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
add ebx, 4
push ebx
push 0x14
call fcn.0044866b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.0044866b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x493469
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x41ac9a
push dword [ebp - 8]
call fcn.00448677
add esp, 4
pop eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x18], 1
mov eax, dword [ebp - 4]
cmp eax, 0
jge 0x41ad46
push 0xa4
push 0x4094e8b
push 0xa
call fcn.00448671
add esp, 0xc
mov dword [ebp - 0x14], eax
lea ebx, [ebp - 0x18]
call fcn.00401304
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0044866b
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x14]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0xc]
call fcn.00401304
pop edx
test edx, edx
je 0x41ad8b
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 0xc]
call fcn.00448677
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 4]
xor ecx, ecx
push eax
lea eax, [ebp - 0x10]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x41b13e
cmp dword [ebp + 0x14], 0
je 0x41ae67
mov ebx, dword [ebp - 0xc]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41ade5
push 0x103
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41ae02
push 0x103
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41ae33
push 0x123
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41ae50
push 0x123
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
push dword [ebx]
call fcn.0041b63c
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41ae8e
push 0x147
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41aeab
push 0x147
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebx], 1
mov ebx, dword [ebp - 8]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41aee5
push 0x1b6
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41af02
push 0x1b6
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 4]
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41af38
push 0x1ef
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41af55
push 0x1ef
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
push 0x80000301
push 0
mov ebx, dword [ebp - 0x18]
push dword [ebx]
push 1
mov ebx, 0x9d8
call fcn.0044beb0
add esp, 0x10
mov ebx, dword [ebp - 0x14]
mov word [ebx], ax
mov ebx, dword [ebp - 8]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41afa8
push 0x211
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41afc5
push 0x211
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41affe
push 0x25c
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41b01b
push 0x25c
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], esp
push 0
mov ebx, dword [ebp - 0x18]
push dword [ebx]
xor eax, eax
call dword [sym.imp.USER32.dll_MapVirtualKeyA]
nop
nop
cmp dword [ebp - 0x1c], esp
je 0x41b056
push 0x25c
push 0x4094e8b
push 6
call fcn.00448671
add esp, 0xc
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x9d8
call fcn.0044beb0
add esp, 0x10
mov ebx, dword [ebp - 0x14]
mov word [ebx], ax
mov ebx, dword [ebp - 8]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41b09d
push 0x288
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41b0ba
push 0x288
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 4]
add ebx, 8
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0xc]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41b0f1
push 0x2bf
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41b10e
push 0x2bf
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
cmp dword [ebx], 0
je 0x41b12c
mov eax, 1
jmp 0x41b131
mov eax, 0
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x41ada6
add esp, 0xc
mov dword [ebp - 0x14], esp
push 0x1c
mov ebx, dword [ebp - 8]
call fcn.00401304
push ebx
mov dword [ebp - 0x18], ecx
test ecx, ecx
jne 0x41b15d
xor eax, eax
jmp 0x41b169
imul ecx, ecx, 0x1c
push ecx
call fcn.0044866b
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x41b1f5
push ecx
push edi
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
pop ebx
pop edi
pop ecx
dec ecx
je 0x41b1f5
add ebx, 4
add edi, 0x1c
jmp 0x41b17e
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.USER32.dll_SendInput]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x41b21e
push 0x36f
push 0x4094e8b
push 6
call fcn.00448671
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x1c]
push ebx
mov edi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x41b2df
push ecx
push edi
push ebx
mov edi, dword [edi]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 0x10
pop edi
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.00448bb0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x41b2b2
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x41b2b0
imul eax, dword [edi]
jmp 0x41b2a5
mov ecx, eax
cmp ecx, 8
jle 0x41b2bc
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
pop ebx
pop edi
pop ecx
dec ecx
je 0x41b2df
add ebx, 0x1c
add edi, 4
jmp 0x41b231
call fcn.00448677
add esp, 4
pop eax
cmp dword [ebp + 0xc], 1
jge 0x41b31b
mov dword [ebp - 0x14], 0
push 0
push dword [ebp - 0x14]
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push 0xa
call fcn.00401fa3
jmp 0x41b33d
mov dword [ebp - 0x14], 0
push 0
push dword [ebp - 0x14]
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push dword [ebp + 0xc]
call fcn.00401fa3
mov eax, dword [ebp - 4]
xor ecx, ecx
push eax
lea eax, [ebp - 0x10]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x41b41f
mov ebx, dword [ebp - 8]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41b37e
push 0x43a
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41b39b
push 0x43a
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 4]
add ebx, 8
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0xc]
call fcn.00401304
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x41b3d2
push 0x471
push 0x4094e8b
push 4
call fcn.00448671
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x41b3ef
push 0x471
push 0x4094e8b
push 1
call fcn.00448671
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
cmp dword [ebx], 0
je 0x41b40d
mov eax, 3
jmp 0x41b412
mov eax, 2
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x41b349
add esp, 0xc
mov dword [ebp - 0x14], esp
push 0x1c
mov ebx, dword [ebp - 8]
call fcn.00401304
push ebx
mov dword [ebp - 0x18], ecx
test ecx, ecx
jne 0x41b43e
xor eax, eax
jmp 0x41b44a
imul ecx, ecx, 0x1c
push ecx
call fcn.0044866b
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x41b4d6
push ecx
push edi
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
pop ebx
pop edi
pop ecx
dec ecx
je 0x41b4d6
add ebx, 4
add edi, 0x1c
jmp 0x41b45f
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.USER32.dll_SendInput]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x41b4ff
push 0x521
push 0x4094e8b
push 6
call fcn.00448671
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x1c]
push ebx
mov edi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x41b5c0
push ecx
push edi
push ebx
mov edi, dword [edi]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 0x10
pop edi
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.00448bb0
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x41b593
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x41b591
imul eax, dword [edi]
jmp 0x41b586
mov ecx, eax
cmp ecx, 8
jle 0x41b59d
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
pop ebx
pop edi
pop ecx
dec ecx
je 0x41b5c0
add ebx, 0x1c
add edi, 4
jmp 0x41b512
call fcn.00448677
add esp, 4
pop eax
mov ebx, dword [ebp - 8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x41b5e7
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x41b5e3
imul eax, dword [ebx]
jmp 0x41b5d8
mov ecx, eax
test ecx, ecx
je 0x41b622
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00448677
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00448677
add esp, 4
pop ebx
call fcn.00448677
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x41b5ed
call fcn.00448677
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
call fcn.00448677
add esp, 4
mov esp, ebp
pop ebp
ret 0x14