Function at 0x514610
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x58ac8d
push eax
mov dword fs:[0], esp
sub esp, 0x494
push ebx
push ebp
push esi
mov ebp, ecx
push edi
xor ebx, ebx
push 0xffffffffffffffff
lea ecx, [ebp + 0x5c]
push ebx
call fcn.00515ce0
call 0x5f3d59
mov eax, dword [eax + 4]
cmp dword [eax + 0x13c], ebx
je 0x514608
call 0x5f3d59
mov eax, dword [eax + 4]
or ecx, 0xffffffff
lea edx, [esp + 0xcc]
mov edi, dword [eax + 0x13c]
xor eax, eax
add edi, 0x5168
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x514657
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push 0x5fe7d8
fsub st(7)
pop edi
add al, ch
popal
int1
or al, 0
lea ecx, [esp + 0x1c]
push ecx
call fcn.004bcaa0
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
add esp, 8
lea edx, [esp + 0xcc]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
call 0x5e370c
push 1
push ecx
lea edx, [esp + 0xd4]
mov ecx, esp
mov dword [esp + 0x38], esp
push edx
call 0x5e377a
call fcn.004bc6c0
mov eax, dword [0x5f9f88]
add esp, 8
mov dword [esp + 0x34], eax
mov dword [esp + 0x4ac], ebx
mov dword [esp + 0x94], eax
lea eax, [esp + 0xcc]
lea ecx, [esp + 0x14]
push eax
mov byte [esp + 0x4b0], 1
call 0x5e377a
push 0x5ebe1c
lea ecx, [esp + 0x1c]
push eax
push ecx
mov byte [esp + 0x4b8], 2
call 0x5e39a1
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0x4b0], 3
call 0x5e3845
lea ecx, [esp + 0x18]
mov byte [esp + 0x4ac], 2
call 0x5e370c
lea ecx, [esp + 0x14]
mov byte [esp + 0x4ac], 1
call 0x5e370c
lea edx, [esp + 0xcc]
lea ecx, [esp + 0x14]
push edx
call 0x5e377a
push 0x5effcc
push eax
lea eax, [esp + 0x20]
mov byte [esp + 0x4b4], 4
push eax
call 0x5e39a1
lea ecx, [ebp + 0x70]
push eax
mov byte [esp + 0x4b0], 5
call 0x5e3845
lea ecx, [esp + 0x18]
mov byte [esp + 0x4ac], 4
call 0x5e370c
lea ecx, [esp + 0x14]
mov byte [esp + 0x4ac], 1
call 0x5e370c
cmp dword [ebp + 0x78], ebx
je 0x51475f
lea ecx, [ebp + 0x74]
call 0x5e07ad
cmp dword [ebp + 0x78], ebx
jne 0x514771
push 1
push 3
push 0x11
push 0x14
push 0x14
lea ecx, [ebp + 0x74]
call 0x5e07f6
mov edx, dword [ebp + 0x1b8]
lea ecx, [esp + 0xbc]
push ecx
push edx
call dword [0x59772c]
mov eax, dword [esp + 0xc8]
mov edx, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc4]
sub eax, edx
push eax
mov eax, dword [esp + 0xc0]
sub ecx, eax
push ecx
lea ecx, [ebp + 0x19c]
call fcn.0054b790
mov edx, dword [esp + 0x34]
push edx
call fcn.004b9a50
add esp, 4
test al, al
je 0x514dbf
mov eax, dword [0x5f9f88]
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x84], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x88], ebx
push ebx
lea ecx, [esp + 0x5c]
mov byte [esp + 0x4b0], 9
call fcn.00519c50
mov dword [esp + 0x80], ebx
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x58]
push eax
mov byte [esp + 0x4b0], 0xa
call fcn.00519cd0
push 0x5ebdd8
lea ecx, [esp + 0x5c]
call fcn.0051a040
test al, al
je 0x514d47
lea ecx, [esp + 0x58]
call fcn.0051a520
lea ecx, [esp + 0x18]
push 0x5ebdb0
push ecx
lea ecx, [esp + 0x60]
call fcn.004caea0
mov edx, dword [esp + 0x18]
mov byte [esp + 0x4ac], 0xb
push edx
call 0x5cb577
add esp, 4
lea ecx, [esp + 0x58]
mov dword [ebp + 0x554], eax
call fcn.0051a520
push 0x5ebe70
lea ecx, [esp + 0x5c]
call fcn.00519fd0
test al, al
je 0x514d24
mov ebx, 0x10