Function at 0x10004d64
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x860
mov eax, 0x1004dca1
call fcn.1004d42e
mov eax, dword [0x101085bc]
mov esi, dword [ebp + 0x10]
push 0x4000
push ecx
lea ecx, [ebp - 0x858]
mov dword [ebp - 0x85c], eax
call fcn.10004c48
and dword [ebp - 4], 0
lea eax, [ebp - 0x858]
mov ecx, eax
mov dword [ebp - 0x86c], eax
call fcn.1000558c
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0x858]
mov byte [ebp - 4], 1
call fcn.10004ccc
mov edx, 0x100505b4
lea ecx, [ebp - 0x858]
call fcn.10005962
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x7d75654c
mov dword [ebp - 0x1c], 0x6f716762
mov dword [ebp - 0x18], 0x737d6171
mov word [ebp - 0x14], 0x100
call fcn.100051c1
mov ebx, eax
mov edi, ebx
lea eax, [edi + 1]
mov cl, byte [edi]
inc edi
test cl, cl
jne 0x10004df5
push ecx
lea ecx, [ebp - 0x858]
sub edi, eax
call fcn.100056bb
push edi
push ebx
lea ecx, [ebp - 0x858]
call fcn.10005792
lea eax, [ebp - 0x858]
mov edx, str.args
mov ecx, eax
mov dword [ebp - 0x868], eax
call fcn.10006482
lea ecx, [ebp - 0x858]
call fcn.1000558c
mov edx, 0x10051078
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x858]
call fcn.10005962
push dword [ebp - 0x85c]
lea ecx, [ebp - 0x858]
call fcn.10005648
test esi, esi
je 0x10005185
lea eax, [ebp - 0x858]
mov ecx, eax
mov dword [ebp - 0x864], eax
call fcn.10006567
lea ecx, [ebp - 0x858]
call fcn.1000558c
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x858]
push dword [esi]
mov edx, str.state
call fcn.10005a47
pop ecx
push dword [esi + 4]
lea ecx, [ebp - 0x858]
call fcn.10005b4b
mov eax, dword [esi + 8]
lea edi, [esi + 0x10]
or eax, dword [esi + 0xc]
pop ecx
jne 0x10004ebd
mov eax, dword [edi]
or eax, dword [edi + 4]
je 0x10004f36
lea eax, [ebp - 0x858]
mov ecx, eax
mov dword [ebp - 0x85c], eax
call fcn.1000664f
lea ecx, [ebp - 0x858]
call fcn.1000558c
mov eax, dword [esi + 8]
or eax, dword [esi + 0xc]
je 0x10004f04
mov edx, str.start
lea ecx, [ebp - 0x858]
call fcn.1000587d
push dword [esi + 0xc]
lea ecx, [ebp - 0x858]
push dword [esi + 8]
call fcn.100055cf
mov eax, dword [edi]
or eax, dword [edi + 4]
je 0x10004f2b
mov edx, 0x100510ac
lea ecx, [ebp - 0x858]
call fcn.10005962
push dword [edi + 4]
lea ecx, [ebp - 0x858]
push dword [edi]
call fcn.100055cf
lea ecx, [ebp - 0x85c]
call fcn.10004c9e
mov eax, dword [esi + 0x18]
test eax, eax
je 0x10004f42
cmp byte [eax], 0
jne 0x10004f66
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x10004f4e
cmp byte [eax], 0
jne 0x10004f66
mov eax, dword [esi + 0x20]
test eax, eax
je 0x10004f5a
cmp byte [eax], 0
jne 0x10004f66
mov eax, dword [esi + 0x24]
test eax, eax
je 0x10004fdf
cmp byte [eax], 0
je 0x10004fdf
lea eax, [ebp - 0x858]
mov ecx, eax
mov dword [ebp - 0x85c], eax
call fcn.10006737
lea ecx, [ebp - 0x858]
call fcn.1000558c
push dword [esi + 0x18]
mov edx, str.large_image
lea ecx, [ebp - 0x858]
call fcn.10005c52
pop ecx
push dword [esi + 0x1c]
mov edx, str.large_text
lea ecx, [ebp - 0x858]
call fcn.10005d56
pop ecx
push dword [esi + 0x20]
mov edx, str.small_image
lea ecx, [ebp - 0x858]
call fcn.10005c52
pop ecx
push dword [esi + 0x24]
mov edx, str.small_text
lea ecx, [ebp - 0x858]
call fcn.10005d56
pop ecx
lea ecx, [ebp - 0x85c]
call fcn.10004c9e
mov eax, dword [esi + 0x28]
test eax, eax
je 0x10004feb
cmp byte [eax], 0
jne 0x10005002
xor ebx, ebx
cmp dword [esi + 0x2c], ebx
jne 0x10005004
cmp dword [esi + 0x30], ebx
jne 0x10005004
cmp dword [esi + 0x34], ebx
je 0x100050b0
jmp 0x10005004
xor ebx, ebx
lea eax, [ebp - 0x858]
mov edx, str.party
mov ecx, eax
mov dword [ebp - 0x860], eax
call fcn.1000587d
lea ecx, [ebp - 0x858]
call fcn.1000558c
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x858]
push dword [esi + 0x28]
call fcn.10005e5a
pop ecx
cmp dword [esi + 0x2c], ebx
je 0x1000507e
cmp dword [esi + 0x30], ebx
je 0x1000507e
push ecx
lea eax, [ebp - 0x858]
push eax
lea ecx, [ebp - 0x85c]
call fcn.10005f61
push dword [esi + 0x2c]
lea ecx, [ebp - 0x858]
call fcn.10005648
push dword [esi + 0x30]
lea ecx, [ebp - 0x858]
call fcn.10005648
lea ecx, [ebp - 0x85c]
call fcn.10004cb5
cmp dword [esi + 0x34], ebx
je 0x100050a1
mov edx, str.privacy
lea ecx, [ebp - 0x858]
call fcn.10005fbf
push dword [esi + 0x34]
lea ecx, [ebp - 0x858]
call fcn.10005648
lea ecx, [ebp - 0x860]
mov byte [ebp - 4], 3
call fcn.10004c9e
mov eax, dword [esi + 0x38]
test eax, eax
je 0x100050bc
cmp byte [eax], 0
jne 0x100050d4
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x100050c8
cmp byte [eax], 0
jne 0x100050d4
mov eax, dword [esi + 0x40]
test eax, eax
je 0x10005134
cmp byte [eax], 0
je 0x10005134
lea eax, [ebp - 0x858]
mov edx, str.secrets
mov ecx, eax
mov dword [ebp - 0x860], eax
call fcn.10005fbf
lea ecx, [ebp - 0x858]
call fcn.1000558c
push dword [esi + 0x38]
mov edx, str.match
lea ecx, [ebp - 0x858]
call fcn.10005a47
pop ecx
push dword [esi + 0x3c]
lea ecx, [ebp - 0x858]
call fcn.100060a4
pop ecx
push dword [esi + 0x40]
lea ecx, [ebp - 0x858]
call fcn.100061ab
pop ecx
lea ecx, [ebp - 0x860]
call fcn.10004c9e
push ecx
lea ecx, [ebp - 0x858]
call fcn.100056bb
push 8
push str.instance
lea ecx, [ebp - 0x858]
call fcn.10005792
cmp byte [esi + 0x44], 0
push ecx
lea ecx, [ebp - 0x858]
setne byte [ebp - 0x860]
call fcn.100056bb
push dword [ebp - 0x860]
lea ecx, [ebp - 0x858]
call fcn.10005709
lea ecx, [ebp - 0x864]
call fcn.10004c9e
lea ecx, [ebp - 0x868]
call fcn.10004c9e
lea ecx, [ebp - 0x86c]
call fcn.10004c9e
mov esi, dword [ebp - 0x82c]
sub esi, dword [ebp - 0x834]
push 0x808
push dword [ebp - 0x850]
call fcn.10049d03
pop ecx
pop ecx
mov eax, esi
call fcn.1004d3ec
ret