Function at 0x1004082f
Capabilities:
Contain obfuscated stackstrings

Disassembly:
jae 0x100407da
jmp 0x100407d5
call fcn.100407dc
jae 0x100407d5
add esp, 4
jmp 0x100407e1
dec dword [esp]
jno 0x100407e6
jns 0x100407d1
jp 0x100407ea
add esp, 4
popf
jmp 0x100407f1
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1004080a
jne 0x1004080a
call 0x1fc43b5e
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 0x10040820
or ebp, dword [esi + 0x66]
pushfd
pushf
push 0xa
jae 0x1004082d
jmp 0x10040828
call 0x1004082f
jae 0x10040828
add esp, 4
jmp 0x10040834
dec dword [esp]
jno 0x10040839
jns 0x10040824
jp 0x1004083d
add esp, 4
popf
jmp 0x10040844
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0xfc
xor edx, eax
add eax, edx
sub edx, 0xfc
push eax
pop edx
xor edx, 0x2f4
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0xfc
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 0x10040898
jmp 0x1004089a
je 0x10040895
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 0x100408b4
jne 0x100408b3
call 0x9307f93b
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x100408c2
jne 0x100408c2
call 0x63b04e8c
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 0x100409af
jne 0x100409ae
call 0x9307fa36
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
lcall 0x8702, 0x73f8fb74
lcall 0x3300, 0xff35
xor eax, 3
add eax, 4
xor eax, 5
jl 0x100409bd
jmp 0x100409bf
je 0x100409ba
clc
jae 0x100409c4
xchg dword [edx + 0xff35], ebx
add byte [ebx], dh
xor eax, 0xff
xor edx, eax
add eax, edx
sub edx, 0xff
push eax
pop edx
xor edx, 0x2fd
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0xff
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
rol byte [ebx], 1
ret 0xea81
jae 0x10040a0c
jmp 0x10040a07
call 0x10040a0e
jae 0x10040a07
add esp, 4
jmp 0x10040a13
dec dword [esp]
jno 0x10040a18
jns 0x10040a03
jp 0x10040a1c
add esp, 4
popf
jmp 0x10040a23
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10040a3c
jne 0x10040a3c
call 0x1fc43d90
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 0x10040a52
pop esp
add byte [esi - 0x64], ah
pushf
push 0xa
jae 0x10040a5f
jmp 0x10040a5a
call 0x10040a61
jae 0x10040a5a
add esp, 4
jmp 0x10040a66
dec dword [esp]
jno 0x10040a6b
jns 0x10040a56
jp 0x10040a6f
add esp, 4
popf
jmp 0x10040a76
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0x100
xor edx, eax
add eax, edx
sub edx, 0x100
push eax
pop edx
xor edx, 0x300
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x100
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 0x10040aca
jmp 0x10040acc
je 0x10040ac7
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 0x10040ae6
jne 0x10040ae5
call 0x9307fb6d
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x10040af4
jne 0x10040af4
call 0xf389085
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 0x10040bd9
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], 0x59
mov byte [ebp - 0x16], 0x2d
mov byte [ebp - 0x15], 0x25
mov byte [ebp - 0x14], 0x6d
mov byte [ebp - 0x13], 0x2d
mov byte [ebp - 0x12], 0x25
mov byte [ebp - 0x11], 0x64
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 0x10040d65
xor eax, eax
test eax, eax
je 0x10040be2
jne 0x10040be1
call 0x9307fc69
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
or esi, dword [ebx + edi*8 - 8]
xor eax, 3
add eax, 4
xor eax, 5
jl 0x10040bf0
jmp 0x10040bf2
je 0x10040bed
clc
jae 0x10040bf7
dec ebp
or esi, dword [0x10c]
xor eax, 0x10c
xor edx, eax
add eax, edx
sub edx, 0x10c
push eax
pop edx
xor edx, 0x324
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x10c
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 0x10040c3f
jmp 0x10040c3a
call 0x10040c41
jae 0x10040c3a
add esp, 4
jmp 0x10040c46
dec dword [esp]
jno 0x10040c4b
jns 0x10040c36
jp 0x10040c4f
add esp, 4
popf
jmp 0x10040c56
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10040c6f
jne 0x10040c6f
call 0x1fc43fc3
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 0x10040c85
and ch, byte [esi + 0x66]
pushfd
pushf
push 0xa
jae 0x10040c92
jmp 0x10040c8d
call 0x10040c94
jae 0x10040c8d
add esp, 4
jmp 0x10040c99
dec dword [esp]
jno 0x10040c9e
jns 0x10040c89
jp 0x10040ca2
add esp, 4
popf
jmp 0x10040ca9
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0x10d
xor edx, eax
add eax, edx
sub edx, 0x10d
push eax
pop edx
xor edx, 0x327
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x10d
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 0x10040cfd
jmp 0x10040cff
je 0x10040cfa
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 0x10040d19
jne 0x10040d18
call 0x9307fda0
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x10040d27
jne 0x10040d27
call 0x65f852f1
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