Function at 0x512c24
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
mov dword [ebp - 4], 0
push 0xc
push 0
lea eax, [ebp - 0x14]
push eax
call fcn.0050de68
add esp, 0xc
cmp edi, esi
xchg esp, esp
or esi, 0
jp 0x512c54
jge 0x512c4f
jmp 0x512c51
jnp 0x512c54
mov ebp, 0x47ec45c6
mov byte [ebp - 0x14], 0x47
mov byte [ebp - 0xf], 0x6a
mov byte [ebp - 0xa], 0x42
mov byte [ebp - 0x13], 0x6a
mov byte [ebp - 0xe], 0x6f
mov byte [ebp - 9], 0
mov byte [ebp - 0x12], 0x6f
mov byte [ebp - 0xd], 0x65
mov byte [ebp - 0x11], 0x65
mov byte [ebp - 0xc], 0x70
mov byte [ebp - 0x10], 0x58
mov byte [ebp - 0xb], 0x78
xchg esp, esp
jle 0x512c88
nop
jge 0x512ca0
jge 0x512c8d
jmp 0x512c8f
lea edx, [edx + 0x5adb]
lea edx, [edx - 0x5adb]
jbe 0x512c9d
jl 0x512ca0
mov eax, 0x80ec4d8a
jmp 0xec9eb4aa
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 - 0x13]
sub cl, 1
mov byte [ebp - 0x13], cl
mov dl, byte [ebp - 0xe]
sub dl, 1
mov byte [ebp - 0xe], 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 - 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 - 0x10]
sub cl, 1
mov byte [ebp - 0x10], cl
mov dl, byte [ebp - 0xb]
sub dl, 1
mov byte [ebp - 0xb], dl
call fcn.004fc7b5
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x512d15
xor eax, eax
jmp 0x512f47
stc
clc
jp 0x512d1e
ja 0x512d1b
jnp 0x512d1e
sub eax, 0x50ec458d
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.005173f7
mov dword [ebp - 0x18], eax
push 0xc
push 0
lea edx, [ebp - 0x14]
push edx
call fcn.0050de68
add esp, 0xc
cmp edi, dword [esp]
lea ebx, [ebx + 0x56f]
sub ebx, 0x56f
rol esp, 0
call 0x512d55
lea esp, [esp + 4]
je 0x512d7a
pushf
test dword [esp + 8], ecx
lea eax, [eax + 0x1194]
lea eax, [eax - 0x1194]
xchg esi, edx
xchg esi, edx
jl 0x512d73
popf
jae 0x512d77
jne 0x512d7a
mov esi, 0xe87d83
cmp dword [ebp - 0x18], 0
jne 0x512d87
xor eax, eax
jmp 0x512f47
jbe 0x512d89
test dword [esp], ebx
or esp, 0
js 0x512d9a
lea esp, [esp]
nop
jl 0x512d97
jns 0x512d9a
call 0x51397329
mov eax, dword [ebp - 0x18]
push eax
call fcn.004ff307
add esp, 4
push 0xc
push 0
lea ecx, [ebp - 0x14]
push ecx
call fcn.0050de68
add esp, 0xc
cld
jmp 0x512db9
jb 0x512dc7
mov ebx, ebx
jae 0x512dbf
jb 0x512dc1
lea esi, [esi]
jae 0x512dc7
add eax, 0xec45c648
inc edi
mov byte [ebp - 0x14], 0x47
mov byte [ebp - 0xf], 0x6a
mov byte [ebp - 0xa], 0x58
mov byte [ebp - 0x13], 0x6a
mov byte [ebp - 0xe], 0x6f
mov byte [ebp - 9], 0
mov byte [ebp - 0x12], 0x6f
mov byte [ebp - 0xd], 0x65
mov byte [ebp - 0x11], 0x65
mov byte [ebp - 0xc], 0x70
mov byte [ebp - 0x10], 0x58
mov byte [ebp - 0xb], 0x78
xor eax, dword [esp]
xor eax, dword [esp]
push edi
pop edi
jnp 0x512e0f
xchg ecx, ebx
xchg ecx, ebx
je 0x512e07
mov ebx, ebx
jg 0x512e0b
jp 0x512e0f
sub eax, 0xec558a0d
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 - 0xa]
sub cl, 1
mov byte [ebp - 0xa], 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 - 0x12]
sub cl, 1
mov byte [ebp - 0x12], cl
mov dl, byte [ebp - 0xd]
sub dl, 1
mov byte [ebp - 0xd], 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 - 0x10]
sub dl, 1
mov byte [ebp - 0x10], dl
mov al, byte [ebp - 0xb]
sub al, 1
mov byte [ebp - 0xb], al
ja 0x512e70
je 0x512e72
sub esp, 0
jno 0x512e87
pushf
shr edi, 0
popf
je 0x512e80
xchg ebx, ebx
mov esp, esp
jo 0x512e87
add eax, 0xfc7d83
cmp dword [ebp - 4], 0
je 0x512eb8
inc ecx
dec ecx
clc
jb 0x512ea8
pushf
inc edx
dec edx
cmp ebx, ecx
dec eax
inc eax
and esp, 0xffffffff
popf
lea edi, [edi]
mov edx, edx
jp 0x512ea5
jae 0x512ea8
lcall 0x558b, 0x51ec4d8d
cld
lea ecx, [ebp - 0x14]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.005173f7
mov dword [ebp - 8], eax
ror edx, 0
jne 0x512ebd
xor ecx, 0
xchg esi, edi
xchg esi, edi
js 0x512ece
xchg ebx, ebx
jl 0x512eca
jns 0x512ece
ljmp 0x8d00:0x6a0c6a37
push 0xc
push 0
lea eax, [ebp - 0x14]
push eax
call fcn.0050de68
add esp, 0xc
mov esi, esi
jns 0x512ee2
xor edi, dword [esp]
xor edi, dword [esp]
je 0x512efa
pushf
xor edi, 0
popf
mov edx, edx
jns 0x512ef5
jae 0x512ef7
jne 0x512efa
mov edi, 0xf87d83
cmp dword [ebp - 8], 0
je 0x512f20
jns 0x512f02
jnp 0x512f04
jbe 0x512f14
pushf
js 0x512f0a
ror esp, 0
popf
ja 0x512f11
ja 0x512f14
lcall 0xeae8, 0x51f84d8b
ret
mov ecx, dword [ebp - 8]
push ecx
call fcn.004ff307
add esp, 4
and esp, 0xffffffff
ja 0x512f3c
pushf
xor esp, 0
popf
nop
lea ecx, [ecx + 0xf71]
lea ecx, [ecx - 0xf71]
jbe 0x512f3c
call 0x525d84cb
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [ebp - 0x18]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8