Function at 0x5812c0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x593dbe
mov eax, dword fs:[0]
push eax
mov eax, 0x14c8
call fcn.00560380
mov eax, dword [0x607ba4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x14d0], 0
mov dword [ebp - 4], 0
mov byte [ebp - 0x844], 0
push 0x3ff
push 0
lea eax, [ebp - 0x843]
push eax
call fcn.005640a0
add esp, 0xc
mov dword [ebp - 0x14c8], 0
jmp 0x581338
mov ecx, dword [ebp - 0x14c8]
add ecx, 1
mov dword [ebp - 0x14c8], ecx
lea ecx, [ebp + 0xc]
call fcn.0041d590
cmp dword [ebp - 0x14c8], eax
jae 0x581368
mov edx, dword [ebp - 0x14c8]
push edx
lea ecx, [ebp + 0xc]
call fcn.00419280
mov ecx, dword [ebp - 0x14c8]
mov dl, byte [eax]
mov byte [ebp + ecx - 0x844], dl
jmp 0x581329
mov byte [ebp - 0xc44], 0
push 0x3ff
push 0
lea eax, [ebp - 0xc43]
push eax
call fcn.005640a0
add esp, 0xc
mov byte [ebp - 0x44], 0
xor ecx, ecx
mov dword [ebp - 0x43], ecx
mov dword [ebp - 0x3f], ecx
mov dword [ebp - 0x3b], ecx
mov word [ebp - 0x37], cx
mov byte [ebp - 0x35], cl
mov byte [ebp - 0x444], 0
push 0x3ff
push 0
lea edx, [ebp - 0x443]
push edx
call fcn.005640a0
add esp, 0xc
mov eax, 1
imul ecx, eax, 0x1a
mov byte [ebp + ecx - 0x34], 0x46
mov edx, 1
imul eax, edx, 0x1b
mov byte [ebp + eax - 0x34], 0x36
mov ecx, 1
imul edx, ecx, 0xb
mov byte [ebp + edx - 0x34], 0x37
mov eax, 1
imul ecx, eax, 0x18
mov byte [ebp + ecx - 0x34], 0x42
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x34], 0x38
mov eax, 1
imul ecx, eax, 9
mov byte [ebp + ecx - 0x34], 0x32
mov edx, 1
imul eax, edx, 0xd
mov byte [ebp + eax - 0x34], 0x39
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x34], 0x43
mov eax, 1
imul ecx, eax, 0xe
mov byte [ebp + ecx - 0x34], 0x46
mov edx, 1
imul eax, edx, 0x17
mov byte [ebp + eax - 0x34], 0x43
mov ecx, 1
imul edx, ecx, 0xc
mov byte [ebp + edx - 0x34], 0x45
mov eax, 1
shl eax, 5
mov dword [ebp - 0x14cc], eax
cmp dword [ebp - 0x14cc], 0x21
jae 0x581460
jmp 0x581465
call fcn.0055fd97
mov ecx, dword [ebp - 0x14cc]
mov byte [ebp + ecx - 0x34], 0
mov edx, 1
imul eax, edx, 0x15
mov byte [ebp + eax - 0x34], 0x41
mov ecx, 1
imul edx, ecx, 0x1f
mov byte [ebp + edx - 0x34], 0x39
mov eax, 1
shl eax, 4
mov byte [ebp + eax - 0x34], 0x44
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0x34], 0x37
mov eax, 1
imul ecx, eax, 0x16
mov byte [ebp + ecx - 0x34], 0x42
mov edx, 1
imul eax, edx, 0xf
mov byte [ebp + eax - 0x34], 0x36
mov ecx, 1
imul edx, ecx, 5
mov byte [ebp + edx - 0x34], 0x34
mov eax, 1
imul ecx, eax, 0x1c
mov byte [ebp + ecx - 0x34], 0x38
mov edx, 1
imul eax, edx, 0x12
mov byte [ebp + eax - 0x34], 0x42
mov ecx, 1
imul edx, ecx, 0xa
mov byte [ebp + edx - 0x34], 0x41
mov eax, 1
imul ecx, eax, 7
mov byte [ebp + ecx - 0x34], 0x43
mov edx, 1
imul eax, edx, 0x14
mov byte [ebp + eax - 0x34], 0x34
mov ecx, 1
imul edx, ecx, 0x1e
mov byte [ebp + edx - 0x34], 0x39
mov eax, 1
shl eax, 2
mov byte [ebp + eax - 0x34], 0x44
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x34], 0x38
mov edx, 1
imul eax, edx, 6
mov byte [ebp + eax - 0x34], 0x32
mov ecx, 1
imul edx, ecx, 0x19
mov byte [ebp + edx - 0x34], 0x43
mov eax, 1
imul ecx, eax, 0x1d
mov byte [ebp + ecx - 0x34], 0x46
mov edx, 1
imul eax, edx, 0x11
mov byte [ebp + eax - 0x34], 0x32
mov ecx, 1
shl ecx, 3
mov byte [ebp + ecx - 0x34], 0x44
mov edx, 1
imul eax, edx, 0x13
mov byte [ebp + eax - 0x34], 0x36
lea ecx, [ebp - 0x34]
push ecx
push 0x400
lea edx, [ebp - 0x444]
push edx
call fcn.00569360
add esp, 0xc
lea ecx, [ebp - 0x14c4]
call fcn.0040f680
mov byte [ebp - 4], 1
push 0x10
push 0x20
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x444]
push ecx
lea ecx, [ebp - 0x14c4]
call fcn.0040a570
mov byte [ebp - 0x1044], 0
push 0x3ff
push 0
lea edx, [ebp - 0x1043]
push edx
call fcn.005640a0
add esp, 0xc
push 0xc
lea ecx, [ebp - 0x1050]
call fcn.00415170
lea ecx, [ebp + 0xc]
call fcn.0041d590
push eax
lea ecx, [ebp - 0x1050]
call fcn.0041d100
mov byte [ebp - 4], 2
push 1
lea ecx, [ebp - 0x1050]
call fcn.0041d760
push eax
lea ecx, [ebp - 0x1050]
call fcn.0041d500
push eax
lea eax, [ebp - 0x844]
push eax
lea ecx, [ebp - 0x14c4]
call fcn.00407230
lea ecx, [ebp - 0x1050]
call fcn.0041d500
mov dword [ebp - 0x14d4], eax
lea ecx, [ebp + 0xc]
call fcn.0041d590
push eax
mov ecx, dword [ebp - 0x14d4]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.004053e0
add esp, 0xc
mov eax, dword [ebp - 0x14d0]
or eax, 1
mov dword [ebp - 0x14d0], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1050]
call fcn.0041d1d0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14c4]
call fcn.00580c50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00415d90
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0055fe73
mov esp, ebp
pop ebp
ret