Function at 0x10040e6f
Capabilities:
Contain obfuscated stackstrings

Disassembly:
jae 0x10040e1a
jmp 0x10040e15
call fcn.10040e1c
jae 0x10040e15
add esp, 4
jmp 0x10040e21
dec dword [esp]
jno 0x10040e26
jns 0x10040e11
jp 0x10040e2a
add esp, 4
popf
jmp 0x10040e31
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10040e4a
jne 0x10040e4a
call 0x1fc4419e
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
clc
jae 0x10040e60
imul esi, dword [eax + 0xa6a9c66], 0xeb0773
pushf
push 0xa
jae 0x10040e6d
jmp 0x10040e68
call 0x10040e6f
jae 0x10040e68
add esp, 4
jmp 0x10040e74
dec dword [esp]
jno 0x10040e79
jns 0x10040e64
jp 0x10040e7d
add esp, 4
popf
jmp 0x10040e84
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0x117
xor edx, eax
add eax, edx
sub edx, 0x117
push eax
pop edx
xor edx, 0x345
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x117
add ecx, 3
sub ecx, eax
nop
push eax
pop ecx
xor eax, eax
nop
nop
push eax
xor eax, eax
pop eax
xor edx, edx
xor eax, edx
push ecx
pop ecx
xor eax, eax
nop
jl 0x10040ed8
jmp 0x10040eda
je 0x10040ed5
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 0x10040ef4
jne 0x10040ef3
call 0x9307ff7b
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x10040f02
jne 0x10040f02
call 0x63b054cc
mov byte [ebp - 0x54], 0x53
mov byte [ebp - 0x53], 0x4f
mov byte [ebp - 0x52], 0x46
mov byte [ebp - 0x51], 0x54
mov byte [ebp - 0x50], 0x57
mov byte [ebp - 0x4f], 0x41
mov byte [ebp - 0x4e], 0x52
mov byte [ebp - 0x4d], 0x45
mov byte [ebp - 0x4c], 0x5c
mov byte [ebp - 0x4b], 0x4d
mov byte [ebp - 0x4a], 0x69
mov byte [ebp - 0x49], 0x63
mov byte [ebp - 0x48], 0x72
mov byte [ebp - 0x47], 0x6f
mov byte [ebp - 0x46], 0x73
mov byte [ebp - 0x45], 0x6f
mov byte [ebp - 0x44], 0x66
mov byte [ebp - 0x43], 0x74
mov byte [ebp - 0x42], 0x5c
mov byte [ebp - 0x41], 0x57
mov byte [ebp - 0x40], 0x69
mov byte [ebp - 0x3f], 0x6e
mov byte [ebp - 0x3e], 0x64
mov byte [ebp - 0x3d], 0x6f
mov byte [ebp - 0x3c], 0x77
mov byte [ebp - 0x3b], 0x73
mov byte [ebp - 0x3a], 0x20
mov byte [ebp - 0x39], 0x4e
mov byte [ebp - 0x38], 0x54
mov byte [ebp - 0x37], 0x5c
mov byte [ebp - 0x36], 0x43
mov byte [ebp - 0x35], 0x75
mov byte [ebp - 0x34], 0x72
mov byte [ebp - 0x33], 0x72
mov byte [ebp - 0x32], 0x65
mov byte [ebp - 0x31], 0x6e
mov byte [ebp - 0x30], 0x74
mov byte [ebp - 0x2f], 0x56
mov byte [ebp - 0x2e], 0x65
mov byte [ebp - 0x2d], 0x72
mov byte [ebp - 0x2c], 0x73
mov byte [ebp - 0x2b], 0x69
mov byte [ebp - 0x2a], 0x6f
mov byte [ebp - 0x29], 0x6e
mov byte [ebp - 0x28], 0
mov byte [ebp - 0x24], 0x49
mov byte [ebp - 0x23], 0x6e
mov byte [ebp - 0x22], 0x73
mov byte [ebp - 0x21], 0x74
mov byte [ebp - 0x20], 0x61
mov byte [ebp - 0x1f], 0x6c
mov byte [ebp - 0x1e], 0x6c
mov byte [ebp - 0x1d], 0x44
mov byte [ebp - 0x1c], 0x61
mov byte [ebp - 0x1b], 0x74
mov byte [ebp - 0x1a], 0x65
mov byte [ebp - 0x19], 0
xor eax, eax
test eax, eax
je 0x10040fef
jne 0x10040fee
call 0x93080076
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
aaa
xor eax, 3
add eax, 4
xor eax, 5
jl 0x10040ffd
jmp 0x10040fff
je 0x10040ffa
clc
jae 0x10041004
loopne 0x1004103b
xor eax, 0x11a
xor edx, eax
add eax, edx
sub edx, 0x11a
push eax
pop edx
xor edx, 0x34e
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x11a
add ecx, 3
sub ecx, eax
nop
push eax
pop ecx
xor eax, eax
nop
nop
push eax
xor eax, eax
pop eax
xor edx, edx
xor eax, edx
push ecx
pop ecx
xor eax, eax
nop
pushf
push 0xa
jae 0x1004104c
jmp 0x10041047
call 0x1004104e
jae 0x10041047
add esp, 4
jmp 0x10041053
dec dword [esp]
jno 0x10041058
jns 0x10041043
jp 0x1004105c
add esp, 4
popf
jmp 0x10041063
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1004107c
jne 0x1004107c
call 0x1fc443d0
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
clc
jae 0x10041092
mov ch, 0x9a
pushf
push 0xa
jae 0x1004109f
jmp 0x1004109a
call 0x100410a1
jae 0x1004109a
add esp, 4
jmp 0x100410a6
dec dword [esp]
jno 0x100410ab
jns 0x10041096
jp 0x100410af
add esp, 4
popf
jmp 0x100410b6
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0x11b
xor edx, eax
add eax, edx
sub edx, 0x11b
push eax
pop edx
xor edx, 0x351
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x11b
add ecx, 3
sub ecx, eax
nop
push eax
pop ecx
xor eax, eax
nop
nop
push eax
xor eax, eax
pop eax
xor edx, edx
xor eax, edx
push ecx
pop ecx
xor eax, eax
nop
jl 0x1004110a
jmp 0x1004110c
je 0x10041107
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 0x10041126
jne 0x10041125
call 0x930801ad
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x10041134
jne 0x10041134
call 0xf3896c5
invalid
lea eax, [ebp - 0xcc]
push eax
push 0x20019
push 0
lea ecx, [ebp - 0x54]
push ecx
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x10041216
lea edx, [ebp - 0x9c]
push edx
lea eax, [ebp - 0x98]
push eax
push 0
push 0
lea ecx, [ebp - 0x24]
push ecx
mov edx, dword [ebp - 0xcc]
push edx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov eax, dword [ebp - 0xcc]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0x98]
xor edx, edx
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0xa0], edx
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebp - 0xc8]
push ecx
call fcn.10043f90
add esp, 8
mov byte [ebp - 0x18], 0x25
mov byte [ebp - 0x17], 0x48
mov byte [ebp - 0x16], 0x3a
mov byte [ebp - 0x15], 0x25
mov byte [ebp - 0x14], 0x4d
mov byte [ebp - 0x13], 0x3a
mov byte [ebp - 0x12], 0x25
mov byte [ebp - 0x11], 0x53
mov byte [ebp - 0x10], 0
lea edx, [ebp - 0xc8]
push edx
lea eax, [ebp - 0x18]
push eax
push 0x40
lea ecx, [ebp - 0x94]
push ecx
call fcn.1005c306
add esp, 0x10
lea edx, [ebp - 0x94]
push edx
mov ecx, dword [ebp + 8]
call fcn.100036a0
mov eax, dword [ebp - 0xd0]
or eax, 1
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp + 8]
jmp 0x10041254
mov byte [ebp - 0xc], 0x55
mov byte [ebp - 0xb], 0x6e
mov byte [ebp - 0xa], 0x6b
mov byte [ebp - 9], 0x6e
mov byte [ebp - 8], 0x6f
mov byte [ebp - 7], 0x77
mov byte [ebp - 6], 0x6e
mov byte [ebp - 5], 0
lea ecx, [ebp - 0xc]
push ecx
mov ecx, dword [ebp + 8]
call fcn.100036a0
mov edx, dword [ebp - 0xd0]
or edx, 1
mov dword [ebp - 0xd0], edx
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1004ce42
mov esp, ebp
pop ebp
ret