Function at 0x10021bfb
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
push esi
push edi
push 0x13
push 0
lea eax, [ebp - 0x20]
push eax
call fcn.10036e19
add esp, 0xc
jp 0x10021c16
mov eax, eax
dec edi
inc edi
jle 0x10021c1c
jbe 0x10021c31
pushf
cmp esi, dword [esp + 0x10]
stc
popf
xchg esp, esp
jne 0x10021c2b
lea esp, [esp]
ja 0x10021c31
mov edi, 0x48e045c6
mov byte [ebp - 0x20], 0x48
mov byte [ebp - 0x1b], 0x65
mov byte [ebp - 0x16], 0x6a
mov byte [ebp - 0x11], 0x6e
mov byte [ebp - 0x1f], 0x66
mov byte [ebp - 0x1a], 0x76
mov byte [ebp - 0x14], 0x66
mov byte [ebp - 0x10], 0x66
mov byte [ebp - 0x1e], 0x75
mov byte [ebp - 0x19], 0x6d
mov byte [ebp - 0x15], 0x6d
mov byte [ebp - 0xf], 0x58
mov byte [ebp - 0x1d], 0x4e
mov byte [ebp - 0x18], 0x66
mov byte [ebp - 0x13], 0x4f
mov byte [ebp - 0xe], 0
mov byte [ebp - 0x1c], 0x70
mov byte [ebp - 0x17], 0x47
mov byte [ebp - 0x12], 0x62
jmp 0x10021c7f
stc
shr esp, 0
jns 0x10021c8c
xchg esp, esp
nop
js 0x10021c8c
sub dword [ebx - 0x76], 0xe980e04d
add dword [eax + 0x558ae04d], ecx
in eax, 0x80
ljmp 0x458a
mov cl, byte [ebp - 0x20]
sub cl, 1
mov byte [ebp - 0x20], cl
mov dl, byte [ebp - 0x1b]
sub dl, 1
mov byte [ebp - 0x1b], dl
mov al, byte [ebp - 0x16]
sub al, 1
mov byte [ebp - 0x16], al
mov cl, byte [ebp - 0x11]
sub cl, 1
mov byte [ebp - 0x11], cl
mov dl, byte [ebp - 0x1f]
sub dl, 1
mov byte [ebp - 0x1f], dl
mov al, byte [ebp - 0x1a]
sub al, 1
mov byte [ebp - 0x1a], al
mov cl, byte [ebp - 0x15]
sub cl, 1
mov byte [ebp - 0x15], cl
mov dl, byte [ebp - 0x10]
sub dl, 1
mov byte [ebp - 0x10], dl
mov al, byte [ebp - 0x1e]
sub al, 1
mov byte [ebp - 0x1e], al
mov cl, byte [ebp - 0x19]
sub cl, 1
mov byte [ebp - 0x19], cl
mov dl, byte [ebp - 0x14]
sub dl, 1
mov byte [ebp - 0x14], dl
mov al, byte [ebp - 0xf]
sub al, 1
mov byte [ebp - 0xf], al
mov cl, byte [ebp - 0x1d]
sub cl, 1
mov byte [ebp - 0x1d], cl
mov dl, byte [ebp - 0x18]
sub dl, 1
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x13]
sub al, 1
mov byte [ebp - 0x13], al
mov cl, byte [ebp - 0x1c]
sub cl, 1
mov byte [ebp - 0x1c], cl
mov dl, byte [ebp - 0x17]
sub dl, 1
mov byte [ebp - 0x17], dl
mov al, byte [ebp - 0x12]
sub al, 1
mov byte [ebp - 0x12], al
or esi, 0
lea ebx, [ebx + 0x1d9c]
lea ebx, [ebx - 0x1d9c]
jl 0x10021d45
jb 0x10021d3b
lea esp, [esp]
lea esp, [esp]
jge 0x10021d45
add eax, 0xd415e8bc
invalid
call fcn.1001f15f
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x10021d5a
xor eax, eax
jmp 0x1002201a
mov edx, edx
lea edx, [edx + 0x4b66]
lea edx, [edx - 0x4b66]
ror edi, 0x1a
rol edi, 0x1a
jl 0x10021d7d
xchg esi, edx
xchg esi, edx
xchg ecx, eax
xchg ecx, eax
jg 0x10021d78
jbe 0x10021d7a
jge 0x10021d7d
lcall 0x558b, 0x51e04d8d
clc
lea ecx, [ebp - 0x20]
push ecx
mov edx, dword [ebp - 8]
push edx
call fcn.1001f190
mov dword [ebp - 4], eax
push 0x13
push 0
lea eax, [ebp - 0x20]
push eax
call fcn.10036e19
add esp, 0xc
lea esp, [esp]
or esi, esi
jnp 0x10021db6
pushf
test ebx, esi
js 0x10021daa
popf
jae 0x10021dae
lea esp, [esp]
jbe 0x10021db3
jp 0x10021db6
mov esp, 0xfc7d83
cmp dword [ebp - 4], 0
jne 0x10021dc3
xor eax, eax
jmp 0x1002201a
test dword [esp + 0xc], edi
cmc
mov esi, esi
jns 0x10021ddf
jo 0x10021dce
mov edi, edi
lea eax, [eax + 0x1124]
lea eax, [eax - 0x1124]
js 0x10021ddf
ljmp 0x87e8:0x51fc4d8b
mov ecx, dword [ebp - 4]
push ecx
call fcn.1003a66f
add esp, 4
push 0x13
push 0
lea edx, [ebp - 0x20]
push edx
call fcn.10036e19
add esp, 0xc
lea edi, [edi + 0x40de]
lea edi, [edi - 0x40de]
jae 0x10021e13
jns 0x10021e0b
jo 0x10021e0d
mov edi, edi
jb 0x10021e13
jmp 0xf047e4be
mov byte [ebp - 0x20], 0x48
mov byte [ebp - 0x1b], 0x65
mov byte [ebp - 0x16], 0x6a
mov byte [ebp - 0x11], 0x6e
mov byte [ebp - 0x1f], 0x66
mov byte [ebp - 0x1a], 0x76
mov byte [ebp - 0x14], 0x66
mov byte [ebp - 0x10], 0x66
mov byte [ebp - 0x1e], 0x75
mov byte [ebp - 0x19], 0x6d
mov byte [ebp - 0x15], 0x6d
mov byte [ebp - 0xf], 0x42
mov byte [ebp - 0x1d], 0x4e
mov byte [ebp - 0x18], 0x66
mov byte [ebp - 0x13], 0x4f
mov byte [ebp - 0xe], 0
mov byte [ebp - 0x1c], 0x70
mov byte [ebp - 0x17], 0x47
mov byte [ebp - 0x12], 0x62
test esi, 0x143b
shl esp, 0
ror ebx, 0x1a
ror ebx, 6
jno 0x10021e79
lea esp, [esp]
jno 0x10021e75
jo 0x10021e79
jmp 0xf047a923
mov al, byte [ebp - 0x20]
sub al, 1
mov byte [ebp - 0x20], al
mov cl, byte [ebp - 0x1b]
sub cl, 1
mov byte [ebp - 0x1b], cl
mov dl, byte [ebp - 0x16]
sub dl, 1
mov byte [ebp - 0x16], dl
mov al, byte [ebp - 0x11]
sub al, 1
mov byte [ebp - 0x11], al
mov cl, byte [ebp - 0x1f]
sub cl, 1
mov byte [ebp - 0x1f], cl
mov dl, byte [ebp - 0x1a]
sub dl, 1
mov byte [ebp - 0x1a], dl
mov al, byte [ebp - 0x15]
sub al, 1
mov byte [ebp - 0x15], al
mov cl, byte [ebp - 0x10]
sub cl, 1
mov byte [ebp - 0x10], cl
mov dl, byte [ebp - 0x1e]
sub dl, 1
mov byte [ebp - 0x1e], dl
mov al, byte [ebp - 0x19]
sub al, 1
mov byte [ebp - 0x19], al
mov cl, byte [ebp - 0x14]
sub cl, 1
mov byte [ebp - 0x14], cl
mov dl, byte [ebp - 0xf]
sub dl, 1
mov byte [ebp - 0xf], dl
mov al, byte [ebp - 0x1d]
sub al, 1
mov byte [ebp - 0x1d], al
mov cl, byte [ebp - 0x18]
sub cl, 1
mov byte [ebp - 0x18], cl
mov dl, byte [ebp - 0x13]
sub dl, 1
mov byte [ebp - 0x13], dl
mov al, byte [ebp - 0x1c]
sub al, 1
mov byte [ebp - 0x1c], al
mov cl, byte [ebp - 0x17]
sub cl, 1
mov byte [ebp - 0x17], cl
mov dl, byte [ebp - 0x12]
sub dl, 1
mov byte [ebp - 0x12], dl
jle 0x10021f17
sub ecx, 0
ror esp, 0
jno 0x10021f2c
pushf
xchg edx, edx
push ebx
pop ebx
popf
xchg esi, esi
jo 0x10021f2c
mov eax, 0x2b083d83
add dword [eax], edx
add byte [ebx + eax*2 - 3], dh
cmp dword [0x10012b08], 0
je 0x10021f78
std
cld
shl esp, 0
add edx, 0x6805
sub edx, 0x6805
jo 0x10021f65
pushf
jae 0x10021f4c
lea ecx, [ecx + 0xf16]
lea ecx, [ecx - 0xf16]
jns 0x10021f5a
popf
xchg ebx, ebx
jae 0x10021f60
jb 0x10021f62
jno 0x10021f65
mov edi, 0x50e0458d
lea eax, [ebp - 0x20]
push eax
mov ecx, dword [0x10012b08]
push ecx
call fcn.1001f190
mov dword [ebp - 0xc], eax
jge 0x10021f7a
lea esp, [esp]
add ecx, 0
jbe 0x10021f82
jge 0x10021fa2
lea esi, [esi + 0x4d41]
lea esi, [esi - 0x4d41]
jns 0x10021f92
lea edx, [edx + 0x4881]
lea edx, [edx - 0x4881]
jl 0x10021fa2
xor eax, 0x6a136a66
add byte [ebp - 0x17ad1fab], cl
push 0x4e
add dword [eax], eax
push 0x13
push 0
lea edx, [ebp - 0x20]
push edx
call fcn.10036e19
add esp, 0xc
neg eax
neg eax
jl 0x10021fc2
xchg ebx, ebx
xchg edi, ecx
xchg edi, ecx
jge 0x10021fc2
mov edi, 0xf47d831e
add byte [eax + ebx - 0x7d], dh
les eax, [eax]
cmp dword [ebp - 0xc], 0
je 0x10021fe0
add esp, 0
jp 0x10021fd4
jo 0x10021fcf
jnp 0x10021fd4
mov esi, 0x458b3de0
hlt
mov eax, dword [ebp - 0xc]
push eax
call fcn.1003a66f
add esp, 4
stc
lea ebx, [ebx + 0x3017]
lea ebx, [ebx - 0x3017]
call fcn.10021ff2