Function at 0x523830
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push ebx
push esi
push edi
push eax
pop eax
test dword [esp + 0xc], ecx
xor ebx, dword [esp + 0x10]
xor ebx, dword [esp + 0x10]
test esp, 0x50db
jnp 0x523861
nop
lea esi, [esi + 0x621e]
lea esi, [esi - 0x621e]
xchg edx, edx
jp 0x523861
call 0xbc52cf
push 0x1a
push 0
lea eax, [ebp - 0x20]
push eax
call fcn.00533a13
add esp, 0xc
mov byte [ebp - 0x20], 0x5b
loopne 0x5238d0
mov byte [ebp - 0x1f], 0x78
mov byte [ebp - 0x1e], 0x52
mov byte [ebp - 0x1d], 0x76
mov byte [ebp - 0x1c], 0x66
mov byte [ebp - 0x1b], 0x73
mov byte [ebp - 0x1a], 0x7a
mov byte [ebp - 0x19], 0x54
mov byte [ebp - 0x18], 0x7a
mov byte [ebp - 0x17], 0x74
mov byte [ebp - 0x16], 0x75
mov byte [ebp - 0x15], 0x66
mov byte [ebp - 0x14], 0x6e
mov byte [ebp - 0x13], 0x4a
mov byte [ebp - 0x12], 0x6f
mov byte [ebp - 0x11], 0x67
mov byte [ebp - 0x10], 0x70
mov byte [ebp - 0xf], 0x73
mov byte [ebp - 0xe], 0x6e
mov byte [ebp - 0xd], 0x62
mov byte [ebp - 0xc], 0x75
mov byte [ebp - 0xb], 0x6a
mov byte [ebp - 0xa], 0x70
mov byte [ebp - 9], 0x6f
outsd dx, dword [esi]
mov byte [ebp - 8], 0
lea eax, [eax]
test esp, 0x54b2
cmp esp, 0x37c1
jl 0x5238ef
lea esp, [esp]
mov edi, edi
jge 0x5238ef
xor eax, 0x4d8af5e4
loopne 0x523873
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 - 0xc]
sub dl, 1
mov byte [ebp - 0xc], dl
mov al, byte [ebp - 0x1f]
sub al, 1
mov byte [ebp - 0x1f], al
mov cl, byte [ebp - 0x1a]
sub cl, 1
mov byte [ebp - 0x1a], 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 - 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 - 0xa]
sub al, 1
mov byte [ebp - 0xa], 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 - 0xe]
sub cl, 1
mov byte [ebp - 0xe], cl
mov dl, byte [ebp - 9]
sub dl, 1
mov byte [ebp - 9], 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
mov al, byte [ebp - 0xd]
sub al, 1
mov byte [ebp - 0xd], al
jno 0x5239c1
jmp 0xe09fc0f9
xchg ecx, esi
xchg ecx, esi
jae 0x5239c7
stc
js 0x5239e5
pushf
inc esi
dec esi
shr esp, 0
popf
lea edx, [edx + 0x450c]
lea edx, [edx - 0x450c]
nop
lea eax, [eax]
jns 0x5239e5
add eax, 0x51e04d8d
lea ecx, [ebp - 0x20]
push ecx
mov edx, dword [0x5203c8]
push edx
call fcn.00523000
mov dword [0x520754], eax
mov esp, esp
jns 0x5239fe
cmp ebx, dword [esp]
cmp edi, ecx
jo 0x523a24
pushf
lea edx, [edx + 0x626a]
sub edx, 0x626a
jns 0x523a15
jbe 0x523a17
mov esp, esp
popf
jae 0x523a1d
jge 0x523a1f
je 0x523a21
jno 0x523a24
mov ecx, 0x6a1a6a
push 0x1a
push 0
lea eax, [ebp - 0x20]
push eax
call fcn.00533a13
add esp, 0xc
mov byte [ebp - 0x20], 0x5b
mov byte [ebp - 0x1f], 0x78
mov byte [ebp - 0x1e], 0x52
mov byte [ebp - 0x1d], 0x76
mov byte [ebp - 0x1c], 0x66
mov byte [ebp - 0x1b], 0x73
mov byte [ebp - 0x1a], 0x7a
mov byte [ebp - 0x19], 0x4a
mov byte [ebp - 0x18], 0x6f
mov byte [ebp - 0x17], 0x67
mov byte [ebp - 0x16], 0x70
mov byte [ebp - 0x15], 0x73
mov byte [ebp - 0x14], 0x6e
mov byte [ebp - 0x13], 0x62
mov byte [ebp - 0x12], 0x75
mov byte [ebp - 0x11], 0x6a
mov byte [ebp - 0x10], 0x70
mov byte [ebp - 0xf], 0x6f
mov byte [ebp - 0xe], 0x51
mov byte [ebp - 0xd], 0x73
mov byte [ebp - 0xc], 0x70
mov byte [ebp - 0xb], 0x64
mov byte [ebp - 0xa], 0x66
mov byte [ebp - 9], 0x74
mov byte [ebp - 8], 0x74
mov byte [ebp - 7], 0
xor esp, 0
cld
or edx, edx
std
cld
jns 0x523abc
pushf
shl ebx, 0
jmp 0x523aad
xor ebx, ecx
xor ebx, ecx
popf
xchg ebx, eax
xchg ebx, eax
ja 0x523ab7
jmp 0x523ab9
js 0x523abc
mov esi, 0x80e04d8a
jmp 0xe09fc2c6
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 - 0xc]
sub dl, 1
mov byte [ebp - 0xc], dl
mov al, byte [ebp - 0x1f]
sub al, 1
mov byte [ebp - 0x1f], al
mov cl, byte [ebp - 0x1a]
sub cl, 1
mov byte [ebp - 0x1a], 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 - 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 - 0xa]
sub al, 1
mov byte [ebp - 0xa], 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 - 0xe]
sub cl, 1
mov byte [ebp - 0xe], cl
mov dl, byte [ebp - 9]
sub dl, 1
mov byte [ebp - 9], 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
mov al, byte [ebp - 0xd]
sub al, 1
mov byte [ebp - 0xd], al
mov cl, byte [ebp - 8]
sub cl, 1
mov byte [ebp - 8], cl
xor ebx, dword [esp]
xor ebx, dword [esp]
js 0x523ba9
jbe 0x523b9f
mov eax, eax
xchg edi, ecx
xchg edi, ecx
jns 0x523ba9
call 0xe0a7c96b
lea edx, [ebp - 0x20]
push edx
mov eax, dword [0x5203c8]
push eax
call fcn.00523000
mov dword [0x520758], eax
push ebx
add ebx, 0x785
ror ebx, 5
pop ebx
jle 0x523bca
rol edi, 2
ror edi, 2
je 0x523be0
mov ebx, ebx
mov edi, edi
lea ebx, [ebx]
xchg edx, ecx
xchg edx, ecx
jne 0x523be0
mov esi, 0x6a1a6a6a
add byte [ebp - 0x17ae1fb3], cl
inc byte es:[eax]
add byte [ebx + 0x7d0cc4], al
push 0x1a
push 0
lea ecx, [ebp - 0x20]
push ecx
call fcn.00533a13
add esp, 0xc
jge 0x523bf2
nop
jnp 0x523c0a
xchg esi, eax
xchg esi, eax
lea esi, [esi + 0x1c5e]
lea esi, [esi - 0x1c5e]
lea ecx, [ecx]
jl 0x523c07
jp 0x523c0a
mov ebp, 0xd3bae8
add byte [ebx + 0x5203c0], ah
call fcn.00530fc9
mov dword [0x5203c0], eax
shr esp, 0
jnp 0x523c42
pushf
ror eax, 0x10
ror eax, 0x10
lea esi, [esi + 0x6cc0]
lea esi, [esi - 0x6cc0]
jge 0x523c2f
popf
lea eax, [eax + 0x40fc]
lea eax, [eax - 0x40fc]
jg 0x523c3f
jp 0x523c42
lcall 0x52, 0x754158b
mov edx, dword [0x520754]
mov dword [ebp - 4], edx
add edi, 0
jmp 0x523c50
add ecx, dword [esp]
sub ecx, dword [esp]
jae 0x523c6f
pushf
test dword [esp + 8], edx
or esi, 0
and eax, 0xffffffff
inc eax
dec eax
popf
jae 0x523c6a
jae 0x523c6c
jb 0x523c6f
mov esi, 0xfc7d83
cmp dword [ebp - 4], 0
jne 0x523c91
jbe 0x523c77
sub esp, 0
sub esi, 0
je 0x523c87
nop
nop
jae 0x523c83
jne 0x523c87
mov esp, 0x13b82a
add byte [eax], al
mov eax, 0x13
jmp 0x523e3e
lea ebx, [ebx + 0x2b45]
lea ebx, [ebx - 0x2b45]
add edx, 0
jb 0x523ca2
jle 0x523cb3
pushf
jnp 0x523ca8
and edi, edi
or edi, edi
popf
jge 0x523cb0
jg 0x523cb3
mov edx, 0x26a006a
push 0
push 2
lea eax, [ebp - 0x24]
push eax
push 0x23
call dword [ebp - 4]
test eax, eax
jne 0x523d4b
cmp edx, dword [esp + 0x10]
xor eax, ecx
xor eax, ecx
test dword [esp], eax
js 0x523ce4
pushf
inc ebx
dec ebx
popf
je 0x523cdd
jae 0x523cdf
lea ebx, [ebx]
jns 0x523ce4
mov esp, 0x81dc4d8b
loope 0x523ce9
mov ecx, dword [ebp - 0x24]
and ecx, 0xff
inc dword [eax]
add byte [eax], al
add byte [eax], al
add byte [ebp - 0x72a58b37], al
or dword [ebp + 0x10cec11b], ecx
test ecx, ecx
je 0x523d4b
lea ecx, [ecx]
lea ebx, [ebx]
ror esi, 0x10
ror esi, 0x10
jg 0x523d0a
pushf
jbe 0x523d01
popf
mov eax, eax
jne 0x523d07
jle 0x523d0a
add eax, 0x81dd558b
loop 0x523d0f
mov edx, dword [ebp - 0x23]
and edx, 0xff
inc dword [eax]
add byte [eax], al
add byte [eax], al
add byte [ebp - 0x14fd8b2e], al
xor al, byte [ebx - 0xfaff34]
aaa
add byte [eax], al
test edx, edx
je 0x523d19
jmp 0x523d4b
or esp, 0
add eax, 0x37ff
sub eax, 0x37ff
neg edi
neg edi
jbe 0x523d2c
js 0x523d41
pushf
shl esp, 0
clc
sub esp, 0
popf
jns 0x523d3b
lea esp, [esp]
jns 0x523d41
xor eax, 0x10b8
add cl, ch
add byte [eax], al
add byte [ebx], bh
mov eax, 0x10
jmp 0x523e3e
jnp 0x523d4d
xor esi, dword [esp]
xor esi, dword [esp]
cmp edx, ebx
jl 0x523d6d
pushf
std
cld
cmp ebx, dword [esp + 4]
dec eax
inc eax
add esp, 0
popf
xchg ecx, edi
xchg ecx, edi
jge 0x523d6d
mov edi, 0x520758a1
add byte [ecx + 0x7ad445], cl
mov eax, dword [0x520758]
mov dword [ebp - 0x2c], eax
jp 0x523d77
je 0x523d79
mov esp, esp
jnp 0x523d85
lea esp, [esp]
jp 0x523d85
mov edx, 0x7d83a4c8
aam 0
cmp dword [ebp - 0x2c], 0
jne 0x523daf
add ebx, 0
jae 0x523da5
pushf
std
cld
popf
lea esi, [esi + 0x75bb]
lea esi, [esi - 0x75bb]
jb 0x523da5
mov esp, 0x13b8
add cl, ch
pop dword [eax]
add byte [eax], al
mov eax, 0x13
jmp 0x523e3e
xchg esp, esp
js 0x523dd3
pushf
jbe 0x523db7
jo 0x523db9
jnp 0x523dbb
xor esp, 0
popf
lea edi, [edi + 0x327a]
lea edi, [edi - 0x327a]
jbe 0x523dce
xchg edi, edi
jns 0x523dd3
mov esp, 0x46a006a
push 0
push 4
lea ecx, [ebp - 0x28]
push ecx
push 7
mov edx, dword [0x5203c0]
push edx
call dword [ebp - 0x2c]
test eax, eax
je 0x523ded
jmp 0x523e2a
shr esp, 0
rol ecx, 0
cld
jge 0x523dfe
xchg ecx, ecx
jo 0x523dfa
jl 0x523dfe
xor eax, 0xd87d8378
add byte [esi + 0x77], dh
add byte [ecx], bh
cmp dword [ebp - 0x28], 0
je 0x523e2a
ja 0x523e06
jns 0x523e08
jbe 0x523e23
pushf
nop
inc ebx
dec ebx
call fcn.00523e14
cmp esi, dword [esp]