Function at 0x586170
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x394]
cmp eax, dword [ecx + 8]
jbe 0x586860
sub esp, 0x414
mov dword [esp + 0x39], 0
mov dword [esp + 0x3a], 0
mov dword [esp + 0x3e], 0
mov dword [esp + 0x39], 0x303d312a
mov dword [esp + 0x3d], 0x333f7230
mov byte [esp + 0x41], 0x31
mov byte [esp + 0x27], 0
mov byte [esp + 0x27], 0x5c
xor eax, eax
jmp 0x5861df
movzx edx, byte [esp + eax + 0x39]
movzx ebx, byte [esp + 0x27]
xor ebx, edx
mov byte [esp + eax + 0x39], bl
inc eax
cmp eax, 9
jge 0x5861eb
jb 0x5861ce
jmp 0x586855
mov dword [esp], 0
lea eax, [esp + 0x39]
mov dword [esp + 4], eax
mov dword [esp + 8], 9
call fcn.0044da70
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004d8ba0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x586273
mov dword [esp + 0x42], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x42], 0x3e723538
mov dword [esp + 0x46], 0x26263530
mov dword [esp + 0x4a], 0x72382e3d
mov word [esp + 0x4e], 0x323f
mov byte [esp + 0x26], 0
mov byte [esp + 0x26], 0x5c
xor eax, eax
jmp 0x5867ad
call fcn.00585fc0
mov dword [esp + 0x278], 0
mov dword [esp + 0x27c], 0
mov dword [esp + 0x280], 0
mov dword [esp + 0x284], 0
lea eax, [0x5a6c60]
mov dword [esp + 0x278], eax
lea ecx, [0x62d170]
mov dword [esp + 0x27c], ecx
mov dword [esp + 0x280], eax
lea ecx, [0x62d178]
mov dword [esp + 0x284], ecx
mov ecx, dword [0x787570]
lea edx, [0x62d8fc]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x278]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004b2480
lea edi, [esp + 0x50]
xor eax, eax
call fcn.004625a0
mov dword [esp + 0x2c], 0x100
lea ecx, [esp + 0x50]
mov dword [esp], ecx
lea ecx, [esp + 0x2c]
mov dword [esp + 4], ecx
call fcn.00509bf0
lea eax, [esp + 0x50]
mov dword [esp], eax
mov dword [esp + 4], 0x100
mov dword [esp + 8], 0x100
call fcn.004759f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x268], 0
mov dword [esp + 0x26c], 0
mov dword [esp + 0x270], 0
mov dword [esp + 0x274], 0
lea edx, [0x5a6c60]
mov dword [esp + 0x268], edx
lea ebx, [0x62d180]
mov dword [esp + 0x26c], ebx
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409590
mov eax, dword [esp + 8]
lea ecx, [0x5a6c60]
mov dword [esp + 0x270], ecx
mov dword [esp + 0x274], eax
mov eax, dword [0x787570]
lea edx, [0x62d8fc]
mov dword [esp], edx
mov dword [esp + 4], eax
lea eax, [esp + 0x268]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004b2480
mov dword [esp + 0x250], 0
mov dword [esp + 0x254], 0
mov eax, dword [esp + 0x418]
mov dword [esp], eax
call fcn.00409480
mov eax, dword [esp + 4]
lea ecx, [0x5a6420]
mov dword [esp + 0x250], ecx
mov dword [esp + 0x254], eax
mov eax, dword [0x787570]
lea edx, [0x62d8fc]
mov dword [esp], edx
mov dword [esp + 4], eax
lea eax, [esp + 0x250]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004b2480
mov eax, 1
mov ecx, 1
jmp 0x586519
mov dword [esp + 0x30], eax
mov dword [esp + 0x258], 0
mov dword [esp + 0x25c], 0
mov dword [esp + 0x260], 0
mov dword [esp + 0x264], 0
lea edx, [0x5a6c60]
mov dword [esp + 0x258], edx
lea ebx, [0x62d188]
mov dword [esp + 0x25c], ebx
imul ecx, eax
mov dword [esp + 0x28], ecx
mov dword [esp], ecx
call fcn.00409480
mov eax, dword [esp + 4]
lea ecx, [0x5a6420]
mov dword [esp + 0x260], ecx
mov dword [esp + 0x264], eax
mov eax, dword [0x787570]
lea edx, [0x62d8fc]
mov dword [esp], edx
mov dword [esp + 4], eax
lea eax, [esp + 0x258]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004b2480
mov eax, dword [esp + 0x30]
inc eax
mov ecx, dword [esp + 0x28]
cmp eax, 5
jle 0x58646c
call fcn.00486c10
lea edi, [esp + 0x2b8]
lea esi, [esp]
call fcn.00462afe
lea edi, [esp]
lea esi, [esp + 0x2b8]
call fcn.00462afe
lea eax, [0x5e8068]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x1d
call fcn.00481eb0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x2a8], 0
mov dword [esp + 0x2ac], 0
mov dword [esp + 0x2b0], 0
mov dword [esp + 0x2b4], 0
lea edx, [0x5a6c60]
mov dword [esp + 0x2a8], edx
lea ebx, [0x62d190]
mov dword [esp + 0x2ac], ebx
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409590
mov eax, dword [esp + 8]
lea ecx, [0x5a6c60]
mov dword [esp + 0x2b0], ecx
mov dword [esp + 0x2b4], eax
mov eax, dword [0x787570]
lea edx, [0x62d8fc]
mov dword [esp], edx
mov dword [esp + 4], eax
lea eax, [esp + 0x2a8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004b2480
lea edi, [esp + 0x2cc]
xor eax, eax
call fcn.004625fe
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], 0
mov dword [esp + 0x2a0], 0
mov dword [esp + 0x2a4], 0
lea ecx, [0x5a6c60]
mov dword [esp + 0x298], ecx
lea edx, [0x62d198]
mov dword [esp + 0x29c], edx
lea edx, [0x5cb360]
mov dword [esp], edx
lea ebx, [esp + 0x2cc]
mov dword [esp + 4], ebx
call fcn.004093b0
mov eax, dword [esp + 8]
lea ecx, [0x5cb360]
mov dword [esp + 0x2a0], ecx
mov dword [esp + 0x2a4], eax
mov eax, dword [0x787570]
lea ecx, [0x62d8fc]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [esp + 0x298]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004b2480
lea edi, [esp + 0x354]
xor eax, eax
call fcn.004625f0
mov dword [esp + 0x288], 0
mov dword [esp + 0x28c], 0
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
lea eax, [0x5a6c60]
mov dword [esp + 0x288], eax
lea eax, [0x62d1a0]
mov dword [esp + 0x28c], eax
lea eax, [0x5ceb20]
mov dword [esp], eax
lea ecx, [esp + 0x354]
mov dword [esp + 4], ecx
call fcn.004093b0
mov eax, dword [esp + 8]
lea ecx, [0x5ceb20]
mov dword [esp + 0x290], ecx
mov dword [esp + 0x294], eax
mov eax, dword [0x787570]
lea ecx, [0x62d8fc]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [esp + 0x288]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004b2480
mov eax, dword [esp + 0x418]
mov dword [esp + 0x42c], eax
mov dword [esp + 0x430], 0
mov dword [esp + 0x434], 0
add esp, 0x414
ret
movzx edx, byte [esp + eax + 0x42]
movzx ebx, byte [esp + 0x26]
xor ebx, edx
mov byte [esp + eax + 0x42], bl
inc eax
cmp eax, 0xe
jge 0x5867b9
jb 0x58679c
jmp 0x58684b
xor eax, eax
jmp 0x5867be
inc eax
cmp eax, 0x3c
jge 0x586278
mov dword [esp + 0x34], eax
mov dword [esp], 0
lea eax, [esp + 0x42]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xe
call fcn.0044da70
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004d8ba0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x586841
mov eax, dword [esp + 0x34]
cmp eax, 0x3a
jl 0x5867bd
mov dword [esp], 0xb8
lea eax, [0x5e199d]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x12
movsd xmm0, qword [0x62cfe0]
movsd qword [esp + 0xc], xmm0
call fcn.00585770
mov eax, dword [esp + 0x34]
jmp 0x5867bd
call fcn.00585fc0
jmp 0x586278
mov ecx, 0xe
call fcn.00462480
mov ecx, 9
call fcn.00462480
nop
call fcn.00460ff0
jmp fcn.00586170