Function at 0x413270
Capabilities:
Log keystrokes via application hook

Disassembly:
push ecx
push ebx
mov ebx, dword [0x45cccc]
push ebp
mov ebp, dword [0x45ccd4]
mov eax, 0x1e9f4e3
imul ebp
sar edx, 0xc
push esi
push edi
mov edi, edx
shr edi, 0x1f
add edi, edx
mov eax, 0x950cb67f
imul ebx
add edx, ebx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, ebx
imul ecx, ecx, 0x84dd7
sub ecx, eax
mov eax, 0x9baa0995
imul ebp
mov esi, dword [0x45cce8]
add edx, ebp
imul esi, esi, 0x8a702
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x9baa0995
imul ebx
mov dword [esp + 0x10], ecx
mov ecx, dword [0x45ccdc]
add edx, ebx
imul ecx, ecx, 0x8276a
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
add eax, esi
add eax, edx
add ecx, eax
mov eax, dword [section.dfsaewr4]
add ecx, edi
test eax, eax
mov dword [str._r_____r____], ecx
jne 0x4133a1
mov eax, dword [0x5707f0]
test eax, eax
jne 0x4133a1
mov ecx, dword [0x45ccd0]
mov eax, 0x10449d67
imul ecx
sar edx, 0xe
mov esi, edx
shr esi, 0x1f
add esi, edx
mov edx, dword [0x45ccc8]
imul edx, edx, 0x3ef21
add esi, edx
mov eax, 0x3da8152f
imul ecx
mov eax, dword [0x45cce0]
imul eax, eax, 0x1c83d
sar edx, 0x11
mov edi, edx
add esi, edx
mov edx, dword [0x45cce4]
shr edi, 0x1f
add edi, esi
add edi, eax
mov eax, 0x3ecaa423
imul edx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0xcbb2b9d
imul ecx
sar edx, 0xf
mov ecx, edx
add edi, edx
shr ecx, 0x1f
add ecx, edi
pop edi
pop esi
pop ebp
mov dword [0x45ccc8], ecx
mov eax, 1
pop ebx
pop ecx
ret
mov eax, dword [0x45cce4]
imul eax, eax, 0x3ef21
mov dword [esp + 0x10], eax
mov eax, 0x69f239fb
imul ebx
mov eax, dword [esp + 0x10]
sar edx, 0x10
add eax, edx
mov ebx, edx
mov edx, dword [0x45cce0]
imul edx, edx, 0x84dd7
shr ebx, 0x1f
add ebx, eax
add ebx, edx
mov eax, 0x3ecaa423
imul ebp
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
sub eax, esi
sub eax, ecx
lea ecx, [eax + edi + 0x54963]
mov dword [0x45cccc], ecx
mov ecx, dword [0x45ccd8]
mov eax, 0x10449d67
imul ecx
imul ecx, ecx, 0xd2812
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ccd0]
mov edi, eax
mov eax, 0x60d8eff
imul edx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
add edi, ecx
mov ecx, dword [0x45ccdc]
mov eax, 0x9baa0995
imul ecx
mov ebx, dword [0x45cce4]
add edx, ecx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ccc8]
imul edx, edx, 0x8276a
sub edi, ecx
mov ecx, dword [section.dfsaewr4]
add edi, edx
sub edi, ebx
lea eax, [edi + esi - 0x3ef21]
push ecx
mov dword [0x45ccd0], eax
call dword [sym.imp.USER32.dll_UnhookWindowsHookEx]
mov edi, dword [0x45cce0]
mov ebx, eax
test ebx, ebx
je 0x4134f3
mov ecx, dword [str._r_____r____]
mov edx, dword [0x45ccd8]
mov esi, dword [0x45ccdc]
lea ebp, [edx + ecx]
imul ecx, ecx, 0x85c24
mov eax, 0x69f239fb
imul ebp, ebp, 0x8276a
imul esi
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x1e9f4e3
imul esi
imul esi, esi, 0x84dd7
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add ebp, edx
add ecx, edi
add eax, ebp
add ecx, eax
xor eax, eax
lea ecx, [esi + ecx - 0x3ef21]
mov dword [0x45ccd4], ecx
mov dword [section.dfsaewr4], eax
mov dword [0x5707f0], eax
mov ecx, dword [0x45cce8]
mov eax, 0x69f239fb
imul edi
imul edi, edi, 0x26a94
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ccc8]
mov esi, ecx
imul edx, edx, 0x85c24
mov ebp, eax
imul esi, esi, 0x3ef21
sub ebp, esi
add ebp, edi
add ebp, edx
mov eax, 0x1e9f4e3
imul dword [0x45ccd4]
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x3da8152f
imul ecx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x76595943
imul ecx
sar edx, 0x12
pop edi
mov ecx, edx
add ebp, edx
shr ecx, 0x1f
pop esi
add ecx, ebp
pop ebp
mov eax, ebx
mov dword [0x45ccd8], ecx
pop ebx
pop ecx
ret