Function at 0x1002e169
Capabilities:
Contain obfuscated stackstrings
Create thread

Disassembly:
jae 0x1002db1f
jmp 0x1002db1a
call fcn.1002db21
jae 0x1002db1a
add esp, 4
jmp 0x1002db26
dec dword [esp]
jno 0x1002db2b
jns 0x1002db16
jp 0x1002db2f
add esp, 4
popf
jmp 0x1002db36
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1002db4f
jne 0x1002db4f
call 0x1fc30ea3
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
lea ecx, [ebp - 0xcc]
push ecx
lea ecx, [ebp - 0x5a8]
call fcn.100036a0
mov byte [ebp - 4], 0x38
lea edx, [ebp - 0x5a8]
push edx
push 0x103dc860
lea eax, [ebp - 0x2c0]
push eax
call fcn.10033b70
add esp, 0xc
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x5a8]
call fcn.100037b0
clc
jae 0x1002dba5
out dx, eax
sub al, 0x66
pushfd
pushf
push 0xa
jae 0x1002dbb2
jmp 0x1002dbad
call 0x1002dbb4
jae 0x1002dbad
add esp, 4
jmp 0x1002dbb9
dec dword [esp]
jno 0x1002dbbe
jns 0x1002dba9
jp 0x1002dbc2
add esp, 4
popf
jmp 0x1002dbc9
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0x2f9
xor edx, eax
add eax, edx
sub edx, 0x2f9
push eax
pop edx
xor edx, 0x8eb
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x2f9
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 0x1002dc1d
jmp 0x1002dc1f
je 0x1002dc1a
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 0x1002dc39
jne 0x1002dc38
call 0x9306ccc0
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1002dc47
jne 0x1002dc47
call 0xf3369d8
invalid
lea ecx, [ebp - 0xd0]
push ecx
lea ecx, [ebp - 0x5c0]
call fcn.100036a0
mov byte [ebp - 4], 0x3b
lea edx, [ebp - 0x5c0]
push edx
push 0x103dc860
lea eax, [ebp - 0x128]
push eax
call fcn.10033b70
add esp, 0xc
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x5c0]
call fcn.100037b0
xor eax, eax
test eax, eax
je 0x1002dc90
jne 0x1002dc8f
call 0x9306cd17
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
bnd je 0x1002dc9b
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1002dc9e
jmp 0x1002dca0
je 0x1002dc9b
clc
jae 0x1002dca5
cdq
xor eax, 0x2fb
xor eax, 0x2fb
xor edx, eax
add eax, edx
sub edx, 0x2fb
push eax
pop edx
xor edx, 0x8f1
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x2fb
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 0x1002dced
jmp 0x1002dce8
call 0x1002dcef
jae 0x1002dce8
add esp, 4
jmp 0x1002dcf4
dec dword [esp]
jno 0x1002dcf9
jns 0x1002dce4
jp 0x1002dcfd
add esp, 4
popf
jmp 0x1002dd04
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1002dd1d
jne 0x1002dd1d
call 0x1fc31071
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
lea ecx, [ebp - 0xd4]
push ecx
lea ecx, [ebp - 0x5d8]
call fcn.100036a0
mov byte [ebp - 4], 0x3e
lea edx, [ebp - 0x5d8]
push edx
push 0x103dc860
lea eax, [ebp - 0x188]
push eax
call fcn.10033b70
add esp, 0xc
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x5d8]
call fcn.100037b0
clc
jae 0x1002dd73
inc ebx
mov ebx, 0xa6a9c66
pushf
push 0xa
jae 0x1002dd80
jmp 0x1002dd7b
call 0x1002dd82
jae 0x1002dd7b
add esp, 4
jmp 0x1002dd87
dec dword [esp]
jno 0x1002dd8c
jns 0x1002dd77
jp 0x1002dd90
add esp, 4
popf
jmp 0x1002dd97
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0x2fd
xor edx, eax
add eax, edx
sub edx, 0x2fd
push eax
pop edx
xor edx, 0x8f7
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x2fd
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 0x1002ddeb
jmp 0x1002dded
je 0x1002dde8
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 0x1002de07
jne 0x1002de06
call 0x9306ce8e
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1002de15
jne 0x1002de15
call 0xf2b6ba6
invalid
lea ecx, [ebp - 0xd8]
push ecx
lea ecx, [ebp - 0x5f0]
call fcn.100036a0
mov byte [ebp - 4], 0x41
lea edx, [ebp - 0x5f0]
push edx
push 0x103dc860
lea eax, [ebp - 0x170]
push eax
call fcn.10033b70
add esp, 0xc
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x5f0]
call fcn.100037b0
xor eax, eax
test eax, eax
je 0x1002de5e
jne 0x1002de5d
call 0x9306cee5
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 0x1002de6c
jmp 0x1002de6e
je 0x1002de69
clc
jae 0x1002de73
ljmp 0:0x2ff3584
xor eax, 0x2ff
xor edx, eax
add eax, edx
sub edx, 0x2ff
push eax
pop edx
xor edx, 0x8fd
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x2ff
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 0x1002debb
jmp 0x1002deb6
call 0x1002debd
jae 0x1002deb6
add esp, 4
jmp 0x1002dec2
dec dword [esp]
jno 0x1002dec7
jns 0x1002deb2
jp 0x1002decb
add esp, 4
popf
jmp 0x1002ded2
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1002deeb
jne 0x1002deeb
call 0x1fc3123f
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
lea ecx, [ebp - 0xdc]
push ecx
lea ecx, [ebp - 0x608]
call fcn.100036a0
mov byte [ebp - 4], 0x44
lea edx, [ebp - 0x608]
push edx
push 0x103dc860
lea eax, [ebp - 0x158]
push eax
call fcn.10033b70
add esp, 0xc
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x608]
call fcn.100037b0
xor eax, eax
test eax, eax
je 0x1002df45
jne 0x1002df44
call 0x9306cfcc
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
arpl word [ebx + edi*8 - 8], si
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1002df53
jmp 0x1002df55
je 0x1002df50
clc
jae 0x1002df5a
pop edi
arpl word [0x308], si
xor eax, 0x308
xor edx, eax
add eax, edx
sub edx, 0x308
push eax
pop edx
xor edx, 0x918
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x308
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 0x1002dfa2
jmp 0x1002df9d
call 0x1002dfa4
jae 0x1002df9d
add esp, 4
jmp 0x1002dfa9
dec dword [esp]
jno 0x1002dfae
jns 0x1002df99
jp 0x1002dfb2
add esp, 4
popf
jmp 0x1002dfb9
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1002dfd2
jne 0x1002dfd2
call 0x1fc31326
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 0x1002dfe8
xor al, 0xc6
pushf
push 0xa
jae 0x1002dff5
jmp 0x1002dff0
call 0x1002dff7
jae 0x1002dff0
add esp, 4
jmp 0x1002dffc
dec dword [esp]
jno 0x1002e001
jns 0x1002dfec
jp 0x1002e005
add esp, 4
popf
jmp 0x1002e00c
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0x309
xor edx, eax
add eax, edx
sub edx, 0x309
push eax
pop edx
xor edx, 0x91b
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x309
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 0x1002e060
jmp 0x1002e062
je 0x1002e05d
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 0x1002e07c
jne 0x1002e07b
call 0x9306d103
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1002e08a
jne 0x1002e08a
call 0x17964cf6
adc byte [ebp - 0x19f73], cl
call dword [ecx - 0x18]
push ebp
mov al, 0xff
inc dword [ebx - 0x49f0f73c]
rol byte [ebp - 0x537bf02e], 1
add byte [eax], al
add byte [ebx], dh
rol byte [ebp + 0x750374c0], 0
push 0x1007936c
lea ecx, [ebp - 0x1a0]
push ecx
call fcn.100290f0
add esp, 8
movzx edx, al
test edx, edx
je 0x1002e155
xor eax, eax
test eax, eax
je 0x1002e0b2
jne 0x1002e0b1
call 0x9306d139
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
mov al, 0x74
sti
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1002e0c0
jmp 0x1002e0c2
je 0x1002e0bd
clc
jae 0x1002e0c7
xor byte [eax + 0x30d35], 0
xor eax, 0x30d
xor edx, eax
add eax, edx
sub edx, 0x30d
push eax
pop edx
xor edx, 0x927
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x30d
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 0x1002e10f
jmp 0x1002e10a
call 0x1002e111
jae 0x1002e10a
add esp, 4
jmp 0x1002e116
dec dword [esp]
jno 0x1002e11b
jns 0x1002e106
jp 0x1002e11f
add esp, 4
popf
jmp 0x1002e126
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1002e13f
jne 0x1002e13f
call 0x1fc31493
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
jmp 0x1002e3cf
clc
jae 0x1002e15a
rol dword [edx + 0x66], 1
pushfd
pushf
push 0xa
jae 0x1002e167
jmp 0x1002e162
call 0x1002e169
jae 0x1002e162
add esp, 4
jmp 0x1002e16e
dec dword [esp]
jno 0x1002e173
jns 0x1002e15e
jp 0x1002e177
add esp, 4
popf
jmp 0x1002e17e
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0x311
xor edx, eax
add eax, edx
sub edx, 0x311
push eax
pop edx
xor edx, 0x933
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x311
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 0x1002e1d2
jmp 0x1002e1d4
je 0x1002e1cf
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 0x1002e1ee
jne 0x1002e1ed
call 0x9306d275
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1002e1fc
jne 0x1002e1fc
call 0x106ce26a
push 0
push 0
push 0
push 0x10046710
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
test eax, eax
jne 0x1002e3cf
mov eax, 0xedef1b13
push eax
lea ecx, [ebp - 0x3f8]
call fcn.1000ff90
mov dword [ebp - 0x360], eax
mov ecx, dword [ebp - 0x360]
mov dword [ebp - 0x364], ecx
mov byte [ebp - 4], 0x47
mov edx, dword [ebp - 0x364]
push edx
call fcn.10032ab0
add esp, 4
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x3f8]
call fcn.10010080
mov dword [ebp - 0x368], 1
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x158]
call fcn.100037b0
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x170]
call fcn.100037b0
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x188]
call fcn.100037b0
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x128]
call fcn.100037b0
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x2c0]
call fcn.100037b0
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x1a0]
call fcn.100037b0
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x2d8]
call fcn.100037b0
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x2f0]
call fcn.100037b0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x1b8]
call fcn.100037b0
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x1d0]
call fcn.100037b0
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x140]
call fcn.100037b0
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x1e8]
call fcn.100037b0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x308]
call fcn.100037b0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x200]
call fcn.100037b0
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x218]
call fcn.100037b0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0xf8]
call fcn.100037b0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x230]
call fcn.100037b0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x248]
call fcn.100037b0
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x260]
call fcn.100037b0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x278]
call fcn.100037b0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x290]
call fcn.100037b0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2a8]
call fcn.100037b0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x110]
call fcn.100037b0
mov eax, dword [ebp - 0x368]
jmp 0x10031632
clc
jae 0x1002e3d4
invalid
pushf
push 0xa
jae 0x1002e3e1
jmp 0x1002e3dc
call 0x1002e3e3
jae 0x1002e3dc
add esp, 4
jmp 0x1002e3e8
dec dword [esp]
jno 0x1002e3ed
jns 0x1002e3d8
jp 0x1002e3f1
add esp, 4
popf
jmp 0x1002e3f8
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
xor eax, 0x317
xor edx, eax
add eax, edx
sub edx, 0x317
push eax
pop edx
xor edx, 0x945
nop
nop
xor ecx, ecx
xor eax, eax
mov ecx, 0x317
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 0x1002e44c
jmp 0x1002e44e
je 0x1002e449
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 0x1002e468
jne 0x1002e467
call 0x9306d4ef
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1002e476
jne 0x1002e476
call 0xac055872
clc
jae 0x1002e47b
pushfd
pop eax
pushf
push 0xa
jae 0x1002e488
jmp 0x1002e483
call 0x1002e48a
jae 0x1002e483
add esp, 4
jmp 0x1002e48f
dec dword [esp]
jno 0x1002e494
jns 0x1002e47f
jp 0x1002e498
add esp, 4
popf
jmp 0x1002e49f
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1004ce42
mov esp, ebp
pop ebp
ret