Function at 0x10012140
Capabilities:
Contain obfuscated stackstrings

Disassembly:
jae 0x1001213e
jmp 0x10012139
call fcn.10012140
jae 0x10012139
add esp, 4
jmp 0x10012145
dec dword [esp]
jno 0x1001214a
jns 0x10012135
jp 0x1001214e
add esp, 4
popf
jmp 0x10012155
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001216e
jne 0x1001216e
call 0x1fc154c2
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
mov byte [ebp - 0x38], 0x4d
mov byte [ebp - 0x37], 0x61
mov byte [ebp - 0x36], 0x63
mov byte [ebp - 0x35], 0x72
mov byte [ebp - 0x34], 0x6f
mov byte [ebp - 0x33], 0x20
mov byte [ebp - 0x32], 0x63
mov byte [ebp - 0x31], 0x68
mov byte [ebp - 0x30], 0x65
mov byte [ebp - 0x2f], 0x63
mov byte [ebp - 0x2e], 0x6b
mov byte [ebp - 0x2d], 0x65
mov byte [ebp - 0x2c], 0x72
mov byte [ebp - 0x2b], 0x20
mov byte [ebp - 0x2a], 0x69
mov byte [ebp - 0x29], 0x73
mov byte [ebp - 0x28], 0x20
mov byte [ebp - 0x27], 0x6e
mov byte [ebp - 0x26], 0x6f
mov byte [ebp - 0x25], 0x74
mov byte [ebp - 0x24], 0x20
mov byte [ebp - 0x23], 0x69
mov byte [ebp - 0x22], 0x6e
mov byte [ebp - 0x21], 0x69
mov byte [ebp - 0x20], 0x74
mov byte [ebp - 0x1f], 0x69
mov byte [ebp - 0x1e], 0x61
mov byte [ebp - 0x1d], 0x6c
mov byte [ebp - 0x1c], 0x69
mov byte [ebp - 0x1b], 0x7a
mov byte [ebp - 0x1a], 0x65
mov byte [ebp - 0x19], 0x64
mov byte [ebp - 0x18], 0x20
mov byte [ebp - 0x17], 0x6f
mov byte [ebp - 0x16], 0x72
mov byte [ebp - 0x15], 0x20
mov byte [ebp - 0x14], 0x74
mov byte [ebp - 0x13], 0x65
mov byte [ebp - 0x12], 0x72
mov byte [ebp - 0x11], 0x6d
mov byte [ebp - 0x10], 0x69
mov byte [ebp - 0xf], 0x6e
mov byte [ebp - 0xe], 0x61
mov byte [ebp - 0xd], 0x74
mov byte [ebp - 0xc], 0x65
mov byte [ebp - 0xb], 0x64
mov byte [ebp - 0xa], 0x2e
mov byte [ebp - 9], 0x25
mov byte [ebp - 8], 0x64
mov byte [ebp - 7], 0
push 1
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x4a0]
push ecx
call fcn.10010af0
add esp, 0xc
lea edx, [ebp - 0x38]
push edx
call fcn.10021b20
add esp, 4
xor eax, eax
test eax, eax
je 0x10012271
jne 0x10012270
call 0x930512f8
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
sal dword [ebx + edi*8 - 8], 1
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001227f
jmp 0x10012281
je 0x1001227c
clc
jae 0x10012286
cwde
sal dword [ebx + eax + 0x75], 1
add ecx, edx
je 0x1001228b
jne 0x1001228b
shl dword [esi - 0x64], 1
pushf
push 0xa
jae 0x10012298
jmp 0x10012293
call 0x1001229a
jae 0x10012293
add esp, 4
jmp 0x1001229f
dec dword [esp]
jno 0x100122a4
jns 0x1001228f
jp 0x100122a8
add esp, 4
popf
jmp 0x100122af
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x100122c8
jne 0x100122c8
call 0x1fc1561c
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
call fcn.10021e20
clc
jae 0x100122e3
inc edx
lcall 0x773, 0xa6a9c66
pushf
push 0xa
jae 0x100122f0
jmp 0x100122eb
call 0x100122f2
jae 0x100122eb
add esp, 4
jmp 0x100122f7
dec dword [esp]
jno 0x100122fc
jns 0x100122e7
jp 0x10012300
add esp, 4
popf
jmp 0x10012307
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10012320
jne 0x10012320
lcall 0x749a, 0x3eb037c
sti
jl 0x10012325
jmp 0x10012327
je 0x10012322
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x10012341
jne 0x10012340
call 0x930513c8
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1001234f
jne 0x1001234f
call 0x50960d6
pop es
adc byte [eax], al
cmp dword [0x1007f508], 0
jne 0x1001259d
xor eax, eax
test eax, eax
je 0x10012365
jne 0x10012364
call 0x930513ec
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
test byte [ebx + edi*8 - 8], dh
xor eax, 3
add eax, 4
xor eax, 5
jl 0x10012373
jmp 0x10012375
je 0x10012370
clc
jae 0x1001237a
ja 0x100122fe
je 0x1001237f
jne 0x1001237f
test byte [esi - 0x64], ah
pushf
push 0xa
jae 0x1001238c
jmp 0x10012387
call 0x1001238e
jae 0x10012387
add esp, 4
jmp 0x10012393
dec dword [esp]
jno 0x10012398
jns 0x10012383
jp 0x1001239c
add esp, 4
popf
jmp 0x100123a3
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x100123bc
jne 0x100123bc
call 0x1fc15710
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
mov byte [ebp - 0x6c], 0x4d
mov byte [ebp - 0x6b], 0x61
mov byte [ebp - 0x6a], 0x63
mov byte [ebp - 0x69], 0x72
mov byte [ebp - 0x68], 0x6f
mov byte [ebp - 0x67], 0x20
mov byte [ebp - 0x66], 0x63
mov byte [ebp - 0x65], 0x68
mov byte [ebp - 0x64], 0x65
mov byte [ebp - 0x63], 0x63
mov byte [ebp - 0x62], 0x6b
mov byte [ebp - 0x61], 0x65
mov byte [ebp - 0x60], 0x72
mov byte [ebp - 0x5f], 0x20
mov byte [ebp - 0x5e], 0x69
mov byte [ebp - 0x5d], 0x73
mov byte [ebp - 0x5c], 0x20
mov byte [ebp - 0x5b], 0x6e
mov byte [ebp - 0x5a], 0x6f
mov byte [ebp - 0x59], 0x74
mov byte [ebp - 0x58], 0x20
mov byte [ebp - 0x57], 0x69
mov byte [ebp - 0x56], 0x6e
mov byte [ebp - 0x55], 0x69
mov byte [ebp - 0x54], 0x74
mov byte [ebp - 0x53], 0x69
mov byte [ebp - 0x52], 0x61
mov byte [ebp - 0x51], 0x6c
mov byte [ebp - 0x50], 0x69
mov byte [ebp - 0x4f], 0x7a
mov byte [ebp - 0x4e], 0x65
mov byte [ebp - 0x4d], 0x64
mov byte [ebp - 0x4c], 0x20
mov byte [ebp - 0x4b], 0x6f
mov byte [ebp - 0x4a], 0x72
mov byte [ebp - 0x49], 0x20
mov byte [ebp - 0x48], 0x74
mov byte [ebp - 0x47], 0x65
mov byte [ebp - 0x46], 0x72
mov byte [ebp - 0x45], 0x6d
mov byte [ebp - 0x44], 0x69
mov byte [ebp - 0x43], 0x6e
mov byte [ebp - 0x42], 0x61
mov byte [ebp - 0x41], 0x74
mov byte [ebp - 0x40], 0x65
mov byte [ebp - 0x3f], 0x64
mov byte [ebp - 0x3e], 0x2e
mov byte [ebp - 0x3d], 0x25
mov byte [ebp - 0x3c], 0x64
mov byte [ebp - 0x3b], 0
push 2
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x8a0]
push ecx
call fcn.10010af0
add esp, 0xc
lea edx, [ebp - 0x6c]
push edx
call fcn.10021b20
add esp, 4
xor eax, eax
test eax, eax
je 0x100124bf
jne 0x100124be
call 0x93051546
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
sal dword [ebx + edi*8 - 8], 1
xor eax, 3
add eax, 4
xor eax, 5
jl 0x100124cd
jmp 0x100124cf
je 0x100124ca
clc
jae 0x100124d4
cwde
sal dword [ebx + eax + 0x75], 1
add ecx, edx
je 0x100124d9
jne 0x100124d9
shl dword [esi - 0x64], 1
pushf
push 0xa
jae 0x100124e6
jmp 0x100124e1
call 0x100124e8
jae 0x100124e1
add esp, 4
jmp 0x100124ed
dec dword [esp]
jno 0x100124f2
jns 0x100124dd
jp 0x100124f6
add esp, 4
popf
jmp 0x100124fd
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10012516
jne 0x10012516
call 0x1fc1586a
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
call fcn.10021e20
clc
jae 0x10012531
inc edx
lcall 0x773, 0xa6a9c66
pushf
push 0xa
jae 0x1001253e
jmp 0x10012539
call 0x10012540
jae 0x10012539
add esp, 4
jmp 0x10012545
dec dword [esp]
jno 0x1001254a
jns 0x10012535
jp 0x1001254e
add esp, 4
popf
jmp 0x10012555
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001256e
jne 0x1001256e
lcall 0x749a, 0x3eb037c
sti
jl 0x10012573
jmp 0x10012575
je 0x10012570
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x1001258f
jne 0x1001258e
call 0x93051616
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1001259d
jne 0x1001259d
call 0x5056324
pop es
adc byte [eax], al
cmp dword [0x1007f504], 0
jne 0x100125b3
cmp dword [0x1007f508], 0
je 0x1001288d
push 0
push 0
push 0
lea eax, [ebp - 0xde8]
push eax
call dword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
je 0x100125e6
lea ecx, [ebp - 0xde8]
push ecx
call dword [sym.imp.USER32.dll_TranslateMessage]
lea edx, [ebp - 0xde8]
push edx
call dword [sym.imp.USER32.dll_DispatchMessageA]
jmp 0x100125b3
xor eax, eax
test eax, eax
je 0x100125ef
jne 0x100125ee
call 0x93051676
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
test byte [ebx + edi*8 - 8], dh
xor eax, 3
add eax, 4
xor eax, 5
jl 0x100125fd
jmp 0x100125ff
je 0x100125fa
clc
jae 0x10012604
ja 0x10012588
je 0x10012609
jne 0x10012609
test byte [esi - 0x64], ah
pushf
push 0xa
jae 0x10012616
jmp 0x10012611
call 0x10012618
jae 0x10012611
add esp, 4
jmp 0x1001261d
dec dword [esp]
jno 0x10012622
jns 0x1001260d
jp 0x10012626
add esp, 4
popf
jmp 0x1001262d
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10012646
jne 0x10012646
call 0x1fc1599a
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
mov byte [ebp - 0xa0], 0x4d
mov byte [ebp - 0x9f], 0x61
mov byte [ebp - 0x9e], 0x63
mov byte [ebp - 0x9d], 0x72
mov byte [ebp - 0x9c], 0x6f
mov byte [ebp - 0x9b], 0x20
mov byte [ebp - 0x9a], 0x63
mov byte [ebp - 0x99], 0x68
mov byte [ebp - 0x98], 0x65
mov byte [ebp - 0x97], 0x63
mov byte [ebp - 0x96], 0x6b
mov byte [ebp - 0x95], 0x65
mov byte [ebp - 0x94], 0x72
mov byte [ebp - 0x93], 0x20
mov byte [ebp - 0x92], 0x69
mov byte [ebp - 0x91], 0x73
mov byte [ebp - 0x90], 0x20
mov byte [ebp - 0x8f], 0x6e
mov byte [ebp - 0x8e], 0x6f
mov byte [ebp - 0x8d], 0x74
mov byte [ebp - 0x8c], 0x20
mov byte [ebp - 0x8b], 0x69
mov byte [ebp - 0x8a], 0x6e
mov byte [ebp - 0x89], 0x69
mov byte [ebp - 0x88], 0x74
mov byte [ebp - 0x87], 0x69
mov byte [ebp - 0x86], 0x61
mov byte [ebp - 0x85], 0x6c
mov byte [ebp - 0x84], 0x69
mov byte [ebp - 0x83], 0x7a
mov byte [ebp - 0x82], 0x65
mov byte [ebp - 0x81], 0x64
mov byte [ebp - 0x80], 0x20
mov byte [ebp - 0x7f], 0x6f
mov byte [ebp - 0x7e], 0x72
mov byte [ebp - 0x7d], 0x20
mov byte [ebp - 0x7c], 0x74
mov byte [ebp - 0x7b], 0x65
mov byte [ebp - 0x7a], 0x72
mov byte [ebp - 0x79], 0x6d
mov byte [ebp - 0x78], 0x69
mov byte [ebp - 0x77], 0x6e
mov byte [ebp - 0x76], 0x61
mov byte [ebp - 0x75], 0x74
mov byte [ebp - 0x74], 0x65
mov byte [ebp - 0x73], 0x64
mov byte [ebp - 0x72], 0x2e
mov byte [ebp - 0x71], 0x25
mov byte [ebp - 0x70], 0x64
mov byte [ebp - 0x6f], 0
push 3
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0xca0]
push ecx
call fcn.10010af0
add esp, 0xc
lea edx, [ebp - 0xa0]
push edx
call fcn.10021b20
add esp, 4
xor eax, eax
test eax, eax
je 0x100127af
jne 0x100127ae
call 0x93051836
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
sal dword [ebx + edi*8 - 8], 1
xor eax, 3
add eax, 4
xor eax, 5
jl 0x100127bd
jmp 0x100127bf
je 0x100127ba
clc
jae 0x100127c4
cwde
sal dword [ebx + eax + 0x75], 1
add ecx, edx
je 0x100127c9
jne 0x100127c9
shl dword [esi - 0x64], 1
pushf
push 0xa
jae 0x100127d6
jmp 0x100127d1
call 0x100127d8
jae 0x100127d1
add esp, 4
jmp 0x100127dd
dec dword [esp]
jno 0x100127e2
jns 0x100127cd
jp 0x100127e6
add esp, 4
popf
jmp 0x100127ed
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10012806
jne 0x10012806
call 0x1fc15b5a
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
call fcn.10021e20
clc
jae 0x10012821
inc edx
lcall 0x773, 0xa6a9c66
pushf
push 0xa
jae 0x1001282e
jmp 0x10012829
call 0x10012830
jae 0x10012829
add esp, 4
jmp 0x10012835
dec dword [esp]
jno 0x1001283a
jns 0x10012825
jp 0x1001283e
add esp, 4
popf
jmp 0x10012845
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001285e
jne 0x1001285e
lcall 0x749a, 0x3eb037c
sti
jl 0x10012863
jmp 0x10012865
je 0x10012860
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x1001287f
jne 0x1001287e
call 0x93051906
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1001288d
jne 0x1001288d
call 0x17f62d32
adc byte [eax - 1], dl
adc eax, sym.imp.USER32.dll_UnhookWindowsHookEx
mov eax, dword [0x1007f504]
push eax
call dword [sym.imp.USER32.dll_UnhookWindowsHookEx]
mov ecx, dword [0x1007f508]
push ecx
call dword [sym.imp.USER32.dll_UnhookWindowsHookEx]
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100410a2
mov esp, ebp
pop ebp
ret 4