Function at 0x5121dd
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
push esi
push edi
push 0xf
push 0
lea eax, [ebp - 0x18]
push eax
call fcn.005334d1
add esp, 0xc
clc
je 0x5121f9
sub edi, 0
ja 0x512227
pushf
not ebx
not ebx
shl esp, 0
push ecx
add ecx, 0x56e9
ror ecx, 0xf
pop ecx
jle 0x512214
popf
lea edi, [edi + 0x2118]
lea edi, [edi - 0x2118]
jle 0x512224
jbe 0x512227
mov eax, 0x50e845c6
mov byte [ebp - 0x18], 0x50
mov byte [ebp - 0x13], 0x44
mov byte [ebp - 0xe], 0x68
mov byte [ebp - 0x17], 0x71
mov byte [ebp - 0x12], 0x4e
mov byte [ebp - 0xd], 0x66
mov byte [ebp - 0x16], 0x66
mov byte [ebp - 0x11], 0x62
mov byte [ebp - 0xc], 0x73
mov byte [ebp - 0x15], 0x6f
mov byte [ebp - 0x10], 0x6f
mov byte [ebp - 0xb], 0x42
mov byte [ebp - 0x14], 0x54
mov byte [ebp - 0xf], 0x62
mov byte [ebp - 0xa], 0
rol edx, 0x18
rol edx, 8
lea esp, [esp]
jo 0x512273
jg 0x512270
jno 0x512273
mov ebp, 0x80e84d8a
jmp 0xe89eaa7d
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 - 0xe]
sub al, 1
mov byte [ebp - 0xe], 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
mov al, byte [ebp - 0xd]
sub al, 1
mov byte [ebp - 0xd], al
mov cl, byte [ebp - 0x16]
sub cl, 1
mov byte [ebp - 0x16], cl
mov dl, byte [ebp - 0x11]
sub dl, 1
mov byte [ebp - 0x11], dl
mov al, byte [ebp - 0xc]
sub al, 1
mov byte [ebp - 0xc], 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 - 0xb]
sub al, 1
mov byte [ebp - 0xb], 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
shr ebx, 0
ror esi, 0
jo 0x5122fa
jle 0x5122f7
jno 0x5122fa
sub eax, 0x1accfe8
add byte [ecx + 0x7d83fc45], cl
cld
add byte [ebp + 7], dh
call 0x52cfce
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x51230f
xor eax, eax
jmp 0x512585
or esp, 0
jne 0x512321
pushf
js 0x512318
ja 0x51231a
popf
mov esp, esp
je 0x512321
add eax, 0x50e8458d
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.0051c169
mov dword [ebp - 0x1c], eax
push 0xf
push 0
lea edx, [ebp - 0x18]
push edx
call fcn.005334d1
add esp, 0xc
lea edx, [edx]
jl 0x512345
je 0x512353
jo 0x512349
jo 0x51234b
lea eax, [eax]
lea esp, [esp]
jne 0x512353
mov edi, 0xe47d83
cmp dword [ebp - 0x1c], 0
jne 0x512360
xor eax, eax
jmp 0x512585
rol esp, 0
std
cld
je 0x512367
inc edx
dec edx
je 0x512372
jns 0x51236d
xchg esp, esp
jne 0x512372
mov esi, 0x50e4458b
mov eax, dword [ebp - 0x1c]
push eax
call fcn.0052fdaf
add esp, 4
push 0xf
push 0
lea ecx, [ebp - 0x18]
push ecx
call fcn.005334d1
add esp, 0xc
cmp esp, 0x4adf
xor edi, dword [esp + 0xc]
xor edi, dword [esp + 0xc]
jns 0x5123bf
pushf
test dword [esp + 0x10], ebx
shr ecx, 0
test eax, 0xd72
popf
lea ebx, [ebx + 0x196b]
lea ebx, [ebx - 0x196b]
mov esp, esp
js 0x5123bf
mov edi, 0x50e845c6
mov byte [ebp - 0x18], 0x50
mov byte [ebp - 0x13], 0x44
mov byte [ebp - 0xe], 0x68
mov byte [ebp - 0x17], 0x71
mov byte [ebp - 0x12], 0x4e
mov byte [ebp - 0xd], 0x66
mov byte [ebp - 0x16], 0x66
mov byte [ebp - 0x11], 0x62
mov byte [ebp - 0xc], 0x73
mov byte [ebp - 0x15], 0x6f
mov byte [ebp - 0x10], 0x6f
mov byte [ebp - 0xb], 0x58
mov byte [ebp - 0x14], 0x54
mov byte [ebp - 0xf], 0x62
mov byte [ebp - 0xa], 0
clc
xor esi, dword [esp]
xor esi, dword [esp]
jns 0x512404
jne 0x512419
mov esp, esp
mov edx, edx
lea ecx, [ecx + 0x60a9]
lea ecx, [ecx - 0x60a9]
je 0x512419
mov esi, 0x80e8558a
ljmp 0x458a
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 - 0xe]
sub cl, 1
mov byte [ebp - 0xe], 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
mov cl, byte [ebp - 0xd]
sub cl, 1
mov byte [ebp - 0xd], 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 - 0xc]
sub cl, 1
mov byte [ebp - 0xc], cl
mov dl, byte [ebp - 0x15]
sub dl, 1
mov byte [ebp - 0x15], dl
mov al, byte [ebp - 0x10]
sub al, 1
mov byte [ebp - 0x10], al
mov cl, byte [ebp - 0xb]
sub cl, 1
mov byte [ebp - 0xb], 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
and ebx, 0xffffffff
test dword [esp + 8], edx
jb 0x5124b2
pushf
add esi, 0x5787
sub esi, 0x5787
popf
je 0x5124ad
jbe 0x5124af
jae 0x5124b2
sub eax, 0xfc7d83
cmp dword [ebp - 4], 0
je 0x5124d7
xchg edx, edx
push edi
pop edi
jno 0x5124be
jns 0x5124c0
ja 0x5124c7
js 0x5124c4
jbe 0x5124c7
ljmp 0x558b:0x51e84d8d
lea ecx, [ebp - 0x18]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.0051c169
mov dword [ebp - 8], eax
or esp, 0
cmc
inc eax
dec eax
js 0x5124f7
pushf
shl esp, 0
jmp 0x5124e6
shr ecx, 0
xchg ecx, edx
xchg ecx, edx
popf
nop
jge 0x5124f2
jns 0x5124f4
jns 0x5124f7
mov ecx, 0x6a0f6a
push 0xf
push 0
lea eax, [ebp - 0x18]
push eax
call fcn.005334d1
add esp, 0xc
ror esp, 0
inc edi
dec edi
stc
rol esi, 0
jns 0x512529
pushf
cmp ecx, 0x1cab
shl esi, 0
clc
jno 0x512520
popf
jmp 0x512524
xchg edi, edi
js 0x512529
call 0x149a2b0
cmp dword [ebp - 8], 0
je 0x51254a
nop
rol ebx, 0x18
ror ebx, 0x18
ja 0x51253e
lea esp, [esp]
jbe 0x51253e
jmp 0x524972cd
mov ecx, dword [ebp - 8]
push ecx
call fcn.0052fdaf
add esp, 4
cmp esi, dword [esp]
ror ebx, 0x10
ror ebx, 0x10
jno 0x512555
je 0x512576
pushf
cmp edx, esi
lea esi, [esi + 0x30bc]
lea esi, [esi - 0x30bc]
rol esi, 0x15
ror esi, 0x15
popf
jmp 0x512571
jl 0x512573
jne 0x512576
mov edx, 0x5210558b
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [ebp - 0x1c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc