Function at 0x5d5258
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x8c038a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x10c
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x9c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x118], edx
mov dword [ebp - 0x9c], 0x9f6a18
mov dword [ebp - 0x98], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x9c], 0x9f6a40
lea ecx, [ebp - 0x7c]
call fcn.004e4b6c
mov dword [ebp - 0x98], 1
xor eax, eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], 0xffffffff
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov byte [ebp - 0x6c], al
mov dword [ebp - 0x80], 2
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x9c]
xor eax, eax
push 0x58585858
push eax
push eax
push eax
push dword [ebp + 0xc]
call fcn.0043c40c
test eax, eax
je 0x5d53d8
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x110], eax
mov dword [ebp - 4], 2
mov dword [ebp - 4], 3
mov dword [ebp - 0x9c], 0x9f6a40
lea ecx, [ebp - 0x9c]
call fcn.0043c3e0
mov dword [ebp - 4], 2
lea eax, [ebp - 0x7c]
mov dword [ebp - 0x108], eax
mov dword [ebp - 4], 4
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
cmp eax, edx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
je 0x5d58c7
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x100], eax
mov dword [ebp - 4], 5
mov dword [ebp - 4], 6
mov dword [ebp - 4], 5
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x18]
add eax, 0x10
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
cmp eax, edx
jne 0x5d5392
jmp 0x5d58c1
mov dword [ebp - 0x68], 0x464f524d
lea ecx, [ebp - 0x9c]
lea eax, [ebp - 0x68]
mov dword [ebp - 0x64], 0x41494646
mov dword [ebp - 0x58], 0x4150504c
mov dword [ebp - 0x54], 0x52455820
push 2
push 1
push eax
call fcn.004fe9ac
movzx eax, al
test eax, eax
jne 0x5d54c0
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x9c]
mov dword [ebp - 0xf8], eax
mov dword [ebp - 4], 7
mov dword [ebp - 4], 8
mov dword [ebp - 0x9c], 0x9f6a40
lea ecx, [ebp - 0x9c]
call fcn.0043c3e0
mov dword [ebp - 4], 7
lea eax, [ebp - 0x7c]
mov dword [ebp - 0xf0], eax
mov dword [ebp - 4], 9
mov dword [ebp - 4], 7
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
cmp eax, edx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
je 0x5d5907
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xe8], eax
mov dword [ebp - 4], 0xa
mov dword [ebp - 4], 0xb
mov dword [ebp - 4], 0xa
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x18]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x18]
add eax, 0x10
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
cmp eax, edx
jne 0x5d547a
jmp 0x5d5901
lea ecx, [ebp - 0x9c]
lea ebx, [ebp - 0x58]
lea edx, [ebp - 0x68]
mov eax, 1
push 2
push eax
push eax
push edx
push ebx
call fcn.004feb2c
movzx eax, al
test eax, eax
jne 0x5d5595
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x9c]
mov dword [ebp - 0xe0], eax
mov dword [ebp - 4], 0xc
mov dword [ebp - 4], 0xd
mov dword [ebp - 0x9c], 0x9f6a40
lea ecx, [ebp - 0x9c]
call fcn.0043c3e0
mov dword [ebp - 4], 0xc
lea eax, [ebp - 0x7c]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 4], 0xe
mov dword [ebp - 4], 0xc
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
cmp eax, edx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], edx
je 0x5d5947
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0xd0], eax
mov dword [ebp - 4], 0xf
mov dword [ebp - 4], 0x10
mov dword [ebp - 4], 0xf
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x14]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x14]
add eax, 0x10
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
cmp eax, edx
jne 0x5d554f
jmp 0x5d5941
lea ecx, [ebp - 0x48]
push 1
call fcn.0040ae94
mov dword [ebp - 4], 0x11
lea ecx, [ebp - 0x48]
push 0
push dword [ebp - 0x50]
call fcn.0040af00
lea ecx, [ebp - 0x48]
call fcn.00845940
lea ecx, [ebp - 0x9c]
push 0
push dword [ebp - 0x50]
push eax
call fcn.0043bdec
cmp eax, dword [ebp - 0x50]
je 0x5d56a0
mov dword [ebp - 4], 1
mov dword [ebp - 0x48], 0x9f05c8
mov al, byte [ebp - 0x38]
test al, al
je 0x5d55f2
lea ecx, [ebp - 0x48]
call fcn.0040acc4
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x9c]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 4], 0x12
mov dword [ebp - 4], 0x13
mov dword [ebp - 0x9c], 0x9f6a40
lea ecx, [ebp - 0x9c]
call fcn.0043c3e0
mov dword [ebp - 4], 0x12
lea eax, [ebp - 0x7c]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 4], 0x14
mov dword [ebp - 4], 0x12
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
cmp eax, edx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x1c], edx
je 0x5d5987
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 4], 0x15
mov dword [ebp - 4], 0x16
mov dword [ebp - 4], 0x15
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x14]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x14]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
cmp eax, edx
jne 0x5d565a
jmp 0x5d5981
lea ecx, [ebp - 0x48]
call fcn.00845940
mov ebx, eax
movzx edx, byte [ebx + 0xb]
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x28], edx
call fcn.0040aebc
mov dword [ebp - 0x20], eax
add dword [ebp - 0x20], ebx
add ebx, 0x3fc
xor esi, esi
xor edx, edx
xor ecx, ecx
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x1c], edx
test edi, edi
mov dword [ebp - 0x24], ecx
jle 0x5d5a3d
mov edx, dword [ebp - 0x20]
cmp ebx, edx
jb 0x5d56f1
mov eax, dword [ebp - 0x18]
mov edx, dword [eax + 0x76c]
jmp 0x5d5793
mov cl, byte [ebx]
mov dl, byte [ebx + 3]
mov byte [ebx], dl
mov dl, byte [ebx + 2]
mov byte [ebx + 3], cl
mov cl, byte [ebx + 1]
mov byte [ebx + 1], dl
mov dl, byte [ebx + 0xb]
mov byte [ebx + 2], cl
mov cl, byte [ebx + 8]
mov byte [ebx + 8], dl
mov dl, byte [ebx + 0xa]
mov byte [ebx + 0xb], cl
mov cl, byte [ebx + 9]
mov byte [ebx + 9], dl
mov dl, byte [ebx + 7]
mov byte [ebx + 0xa], cl
mov cl, byte [ebx + 4]
mov byte [ebx + 4], dl
mov dl, byte [ebx + 6]
mov byte [ebx + 7], cl
mov cl, byte [ebx + 5]
mov byte [ebx + 5], dl
mov byte [ebx + 6], cl
push 0xc
call fcn.00898760
pop ecx
mov esi, dword [ebx]
mov dword [eax], esi
mov edx, dword [ebx + 4]
mov esi, dword [ebp - 0x1c]
mov dword [eax + 4], edx
mov dword [eax + 8], esi
mov ecx, dword [ebx + 8]
test ecx, ecx
mov dword [ebp - 0x1c], ecx
jne 0x5d5765
mov edx, dword [ebp - 0x18]
mov esi, dword [edx + 0x76c]
mov dword [eax + 8], esi
mov edx, dword [ebp - 0x18]
mov edx, dword [edx + 0x76c]
cmp esi, edx
ja 0x5d5793
mov edi, dword [ebp - 0x14]
mov edx, dword [edi + 4]
test edx, edx
je 0x5d59c1
mov edx, edi
mov edx, dword [edx + 4]
mov edi, edx
mov edx, dword [edx + 4]
test edx, edx
jne 0x5d5785
jmp 0x5d59c1
cmp esi, edx
jb 0x5d5866
mov dword [ebp - 4], 1
mov dword [ebp - 0x48], 0x9f05c8
mov al, byte [ebp - 0x38]
test al, al
je 0x5d57b8
lea ecx, [ebp - 0x48]
call fcn.0040acc4
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x9c]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 4], 0x17
mov dword [ebp - 4], 0x18
mov dword [ebp - 0x9c], 0x9f6a40
lea ecx, [ebp - 0x9c]
call fcn.0043c3e0
mov dword [ebp - 4], 0x17
lea eax, [ebp - 0x7c]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 4], 0x19
mov dword [ebp - 4], 0x17
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x74]
cmp eax, edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
je 0x5d5a06
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 4], 0x1a
mov dword [ebp - 4], 0x1b
mov dword [ebp - 4], 0x1a
lea ecx, [eax + 0xc]
call fcn.00406220
mov eax, dword [ebp - 0x20]
lea ecx, [eax + 8]
call fcn.00406220
mov eax, dword [ebp - 0x20]
add eax, 0x10
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
cmp eax, edx
jne 0x5d5820
jmp 0x5d5a00
push 0xc
call fcn.00898760
pop ecx
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx + 0x76c]
xor ebx, ebx
mov dword [eax + 8], ecx
mov esi, dword [ebp - 0x14]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov edi, dword [esi + 4]
test edi, edi
je 0x5d589a
mov edx, esi
mov edx, dword [edx + 4]
mov dword [ebp - 0x14], edx
mov edx, dword [edx + 4]
test edx, edx
jne 0x5d5890
mov edx, dword [ebp - 0x14]
mov dword [edx], eax
push 8
call fcn.00898760
pop ecx
test eax, eax
je 0x5d58bd
xor edx, edx
mov dword [eax], edx
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x14]
mov dword [edx + 4], eax
jmp 0x5d579b
xor eax, eax
jmp 0x5d58b2
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x18], eax
push eax
call fcn.00888fb0
pop ecx
xor edx, edx
mov eax, 0xffffffff
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x78], edx
mov esi, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x9c], 0x9f6a18
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x18], eax
push eax
call fcn.00888fb0
pop ecx
xor edx, edx
mov eax, 0xffffffff
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x78], edx
mov esi, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x9c], 0x9f6a18
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x14], eax
push eax
call fcn.00888fb0
pop ecx
xor edx, edx
mov eax, 0xffffffff
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x78], edx
mov esi, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x9c], 0x9f6a18
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x14], eax
push eax
call fcn.00888fb0
pop ecx
xor edx, edx
mov eax, 0xffffffff
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x78], edx
mov esi, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x9c], 0x9f6a18
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
mov dword [edi], eax
push 8
call fcn.00898760
pop ecx
test eax, eax
je 0x5d59fc
xor edx, edx
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [edi + 4], eax
add ebx, 0xc
mov edx, dword [ebp - 0x24]
inc edx
mov ecx, dword [ebp - 0x28]
cmp edx, ecx
mov dword [ebp - 0x24], edx
jl 0x5d56dc
mov eax, dword [ebp - 0x18]
mov edx, dword [eax + 0x76c]
jmp 0x5d5793
xor eax, eax
jmp 0x5d59d6
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], eax
push eax
call fcn.00888fb0
pop ecx
xor edx, edx
xor eax, eax
mov edi, dword [ebp - 0x34]
mov dword [ebp - 0x78], edx
mov esi, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x9c], 0x9f6a18
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebp - 0x18]
mov edx, dword [eax + 0x76c]
jmp 0x5d5793