Function at 0x10004ef2
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x860
mov eax, 0x10050fe1
call fcn.1005068e
mov eax, dword [0x10107ff4]
mov esi, dword [ebp + 0x10]
push 0x4000
push ecx
lea ecx, [ebp - 0x858]
mov dword [ebp - 0x85c], eax
call fcn.10004dd6
and dword [ebp - 4], 0
lea eax, [ebp - 0x858]
mov ecx, eax
mov dword [ebp - 0x86c], eax
call fcn.1000571a
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0x858]
mov byte [ebp - 4], 1
call fcn.10004e5a
mov edx, 0x100535b4
lea ecx, [ebp - 0x858]
call fcn.10005af0
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x52584e59
mov dword [ebp - 0x1c], 0x58444c4f
mov dword [ebp - 0x18], 0x4c405a44
mov word [ebp - 0x14], 0x100
call fcn.1000534f
mov ebx, eax
mov edi, ebx
lea eax, [edi + 1]
mov cl, byte [edi]
inc edi
test cl, cl
jne 0x10004f83
push ecx
lea ecx, [ebp - 0x858]
sub edi, eax
call fcn.10005849
push edi
push ebx
lea ecx, [ebp - 0x858]
call fcn.10005920
lea eax, [ebp - 0x858]
mov edx, str.args
mov ecx, eax
mov dword [ebp - 0x868], eax
call fcn.10006610
lea ecx, [ebp - 0x858]
call fcn.1000571a
mov edx, 0x10054078
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x858]
call fcn.10005af0
push dword [ebp - 0x85c]
lea ecx, [ebp - 0x858]
call fcn.100057d6
test esi, esi
je 0x10005313
lea eax, [ebp - 0x858]
mov ecx, eax
mov dword [ebp - 0x864], eax
call fcn.100066f5
lea ecx, [ebp - 0x858]
call fcn.1000571a
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x858]
push dword [esi]
mov edx, str.state
call fcn.10005bd5
pop ecx
push dword [esi + 4]
lea ecx, [ebp - 0x858]
call fcn.10005cd9
mov eax, dword [esi + 8]
lea edi, [esi + 0x10]
or eax, dword [esi + 0xc]
pop ecx
jne 0x1000504b
mov eax, dword [edi]
or eax, dword [edi + 4]
je 0x100050c4
lea eax, [ebp - 0x858]
mov ecx, eax
mov dword [ebp - 0x85c], eax
call fcn.100067dd
lea ecx, [ebp - 0x858]
call fcn.1000571a
mov eax, dword [esi + 8]
or eax, dword [esi + 0xc]
je 0x10005092
mov edx, str.start
lea ecx, [ebp - 0x858]
call fcn.10005a0b
push dword [esi + 0xc]
lea ecx, [ebp - 0x858]
push dword [esi + 8]
call fcn.1000575d
mov eax, dword [edi]
or eax, dword [edi + 4]
je 0x100050b9
mov edx, 0x100540ac
lea ecx, [ebp - 0x858]
call fcn.10005af0
push dword [edi + 4]
lea ecx, [ebp - 0x858]
push dword [edi]
call fcn.1000575d
lea ecx, [ebp - 0x85c]
call fcn.10004e2c
mov eax, dword [esi + 0x18]
test eax, eax
je 0x100050d0
cmp byte [eax], 0
jne 0x100050f4
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x100050dc
cmp byte [eax], 0
jne 0x100050f4
mov eax, dword [esi + 0x20]
test eax, eax
je 0x100050e8
cmp byte [eax], 0
jne 0x100050f4
mov eax, dword [esi + 0x24]
test eax, eax
je 0x1000516d
cmp byte [eax], 0
je 0x1000516d
lea eax, [ebp - 0x858]
mov ecx, eax
mov dword [ebp - 0x85c], eax
call fcn.100068c5
lea ecx, [ebp - 0x858]
call fcn.1000571a
push dword [esi + 0x18]
mov edx, str.large_image
lea ecx, [ebp - 0x858]
call fcn.10005de0
pop ecx
push dword [esi + 0x1c]
mov edx, str.large_text
lea ecx, [ebp - 0x858]
call fcn.10005ee4
pop ecx
push dword [esi + 0x20]
mov edx, str.small_image
lea ecx, [ebp - 0x858]
call fcn.10005de0
pop ecx
push dword [esi + 0x24]
mov edx, str.small_text
lea ecx, [ebp - 0x858]
call fcn.10005ee4
pop ecx
lea ecx, [ebp - 0x85c]
call fcn.10004e2c
mov eax, dword [esi + 0x28]
test eax, eax
je 0x10005179
cmp byte [eax], 0
jne 0x10005190
xor ebx, ebx
cmp dword [esi + 0x2c], ebx
jne 0x10005192
cmp dword [esi + 0x30], ebx
jne 0x10005192
cmp dword [esi + 0x34], ebx
je 0x1000523e
jmp 0x10005192
xor ebx, ebx
lea eax, [ebp - 0x858]
mov edx, str.party
mov ecx, eax
mov dword [ebp - 0x860], eax
call fcn.10005a0b
lea ecx, [ebp - 0x858]
call fcn.1000571a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x858]
push dword [esi + 0x28]
call fcn.10005fe8
pop ecx
cmp dword [esi + 0x2c], ebx
je 0x1000520c
cmp dword [esi + 0x30], ebx
je 0x1000520c
push ecx
lea eax, [ebp - 0x858]
push eax
lea ecx, [ebp - 0x85c]
call fcn.100060ef
push dword [esi + 0x2c]
lea ecx, [ebp - 0x858]
call fcn.100057d6
push dword [esi + 0x30]
lea ecx, [ebp - 0x858]
call fcn.100057d6
lea ecx, [ebp - 0x85c]
call fcn.10004e43
cmp dword [esi + 0x34], ebx
je 0x1000522f
mov edx, str.privacy
lea ecx, [ebp - 0x858]
call fcn.1000614d
push dword [esi + 0x34]
lea ecx, [ebp - 0x858]
call fcn.100057d6
lea ecx, [ebp - 0x860]
mov byte [ebp - 4], 3
call fcn.10004e2c
mov eax, dword [esi + 0x38]
test eax, eax
je 0x1000524a
cmp byte [eax], 0
jne 0x10005262
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x10005256
cmp byte [eax], 0
jne 0x10005262
mov eax, dword [esi + 0x40]
test eax, eax
je 0x100052c2
cmp byte [eax], 0
je 0x100052c2
lea eax, [ebp - 0x858]
mov edx, str.secrets
mov ecx, eax
mov dword [ebp - 0x860], eax
call fcn.1000614d
lea ecx, [ebp - 0x858]
call fcn.1000571a
push dword [esi + 0x38]
mov edx, str.match
lea ecx, [ebp - 0x858]
call fcn.10005bd5
pop ecx
push dword [esi + 0x3c]
lea ecx, [ebp - 0x858]
call fcn.10006232
pop ecx
push dword [esi + 0x40]
lea ecx, [ebp - 0x858]
call fcn.10006339
pop ecx
lea ecx, [ebp - 0x860]
call fcn.10004e2c
push ecx
lea ecx, [ebp - 0x858]
call fcn.10005849
push 8
push str.instance
lea ecx, [ebp - 0x858]
call fcn.10005920
cmp byte [esi + 0x44], 0
push ecx
lea ecx, [ebp - 0x858]
setne byte [ebp - 0x860]
call fcn.10005849
push dword [ebp - 0x860]
lea ecx, [ebp - 0x858]
call fcn.10005897
lea ecx, [ebp - 0x864]
call fcn.10004e2c
lea ecx, [ebp - 0x868]
call fcn.10004e2c
lea ecx, [ebp - 0x86c]
call fcn.10004e2c
mov esi, dword [ebp - 0x82c]
sub esi, dword [ebp - 0x834]
push 0x808
push dword [ebp - 0x850]
call fcn.1004cf77
pop ecx
pop ecx
mov eax, esi
call fcn.1005064c
ret