Function at 0x584da0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6d08d8
mov eax, dword fs:[0]
push eax
sub esp, 0xd0
push esi
push edi
mov eax, dword [0x7e500c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x80], edi
mov eax, dword [ebp + 8]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x84], 0
cmp byte [ebp + 0x48], 0
mov dword [ebp - 4], 4
je 0x584e0d
mov ecx, dword [edi + 0x10]
mov eax, dword [ecx]
call dword [eax + 0x18]
mov ecx, dword [edi + 0x14]
mov eax, dword [ecx]
call dword [eax + 0x20]
mov eax, dword [edi + 0x18]
mov ecx, dword [eax]
test ecx, ecx
je 0x584e0d
call fcn.00596e60
mov eax, dword [edi]
mov ecx, dword [eax]
mov dword [ebp - 0x60], ecx
test ecx, ecx
jne 0x5859db
mov eax, dword [edi + 4]
push 0x808068
cmp byte [eax], cl
je 0x585161
call fcn.006549b4
add esp, 4
test eax, eax
jne 0x586bcb
push eax
push 0x720b07
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], al
call fcn.00427530
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x28]
push 0
push 0x720b07
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00427530
mov byte [ebp - 4], 6
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x584ea0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x78]
call fcn.00427530
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 7
push eax
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x78]
call fcn.005b7140
add esp, 4
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x64]
test eax, eax
setne byte [ebp - 0xd]
cmp edx, 0x10
jb 0x584f07
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x584efd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bd1
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x584f51
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x584f47
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bd1
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x584f89
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x584f7f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bd1
push edx
push ecx
call fcn.0065106e
add esp, 8
cmp byte [ebp - 0xd], 0
je 0x585101
push 0
push 0x720b07
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.00427530
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x40]
push 0
push 0x720b07
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00427530
mov byte [ebp - 4], 9
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x585000
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x78]
call fcn.00427530
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xa
push eax
lea edx, [ebp - 0x40]
lea ecx, [ebp - 0x78]
call fcn.005b7140
cmp dword [ebp + 0x44], 0x10
lea ecx, [ebp + 0x30]
mov edx, eax
cmovae ecx, dword [ebp + 0x30]
push ecx
push str.operator___
mov eax, dword [edx]
push str._s_:_Routed_to_Unauthenticated_call_to_get_a_wf_since_the_cached_ASNP_handed_over_is_no_longer_valid___s_
push edx
call dword [eax + 0x14]
mov byte [ebp - 4], 9
add esp, 0x14
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x58507f
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585075
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bd6
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x5850c9
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5850bf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bd6
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x585101
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5850f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bd6
push edx
push ecx
call fcn.0065106e
add esp, 8
push 0x808068
call fcn.006549d9
add esp, 4
test eax, eax
jne 0x586bdb
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov dword [ebp + 0x10], 0
mov dword [ebp + 0xc], eax
test esi, esi
je 0x58513f
mov ecx, esi
call fcn.00459ae0
push 0x94
push esi
call fcn.0065106e
add esp, 8
push dword [edi]
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp - 0x7c]
push ecx
mov ecx, esp
mov dword [ebp + 0xc], 0
push esi
mov dword [ecx], eax
mov ecx, dword [edi + 0x20]
call fcn.0057f2c0
jmp 0x585610
mov eax, dword [edi + 8]
cmp dword [eax], 4
jne 0x5856f3
call fcn.006549b4
add esp, 4
test eax, eax
jne 0x586be1
push eax
push 0x720b07
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], al
call fcn.00427530
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x40]
push 0
push 0x720b07
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00427530
mov byte [ebp - 4], 0xc
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5851e0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x78]
call fcn.00427530
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xd
push eax
lea edx, [ebp - 0x40]
lea ecx, [ebp - 0x78]
call fcn.005b7140
add esp, 4
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x64]
test eax, eax
setne byte [ebp - 0xd]
cmp edx, 0x10
jb 0x585247
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x58523d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586be7
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x585291
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585287
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586be7
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x5852c9
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5852bf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586be7
push edx
push ecx
call fcn.0065106e
add esp, 8
cmp byte [ebp - 0xd], 0
je 0x58553f
push 0
push 0x720b07
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x40]
push 0
push 0x720b07
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00427530
mov byte [ebp - 4], 0xf
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x585340
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00427530
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x10
push eax
lea edx, [ebp - 0x40]
lea ecx, [ebp - 0x28]
call fcn.005b7140
movaps xmm0, xmmword [0x7a0da0]
add esp, 4
movups xmmword [ebp - 0xc0], xmm0
mov edi, eax
mov dword [ebp - 0x90], 0x45a02257
movaps xmm0, xmmword [0x7a0d30]
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0x8c], 0xd64e594a
movaps xmm0, xmmword [0x7a0e00]
movups xmmword [ebp - 0xa0], xmm0
mov word [ebp - 0x88], 0x86
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x78]
push 0x39
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
mov dword [ebp - 0x84], 0x10
call fcn.0044cca0
xor esi, esi
nop
mov eax, 0xf2b9d649
mov ecx, esi
mul esi
shr edx, 8
imul eax, edx, 0x10e
sub ecx, eax
mov al, byte [ecx + 0x71d2d0]
lea ecx, [ebp - 0x78]
xor al, byte [ebp + esi - 0xc0]
movzx eax, al
push eax
push 1
call fcn.0043c7b0
inc esi
cmp esi, 0x39
jb 0x5853e0
cmp dword [ebp + 0x44], 0x10
lea edx, [ebp + 0x30]
mov eax, dword [edi]
lea ecx, [ebp - 0x78]
cmovae edx, dword [ebp + 0x30]
cmp dword [ebp - 0x64], 0x10
push edx
cmovae ecx, dword [ebp - 0x78]
push str.operator___
push ecx
push edi
call dword [eax + 0x14]
mov byte [ebp - 4], 0x10
add esp, 0x10
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x585473
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585469
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bec
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x5854bd
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5854b3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bec
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x585507
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5854fd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bec
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x44]
cmp edx, 0x10
jb 0x58553f
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585535
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bec
push edx
push ecx
call fcn.0065106e
add esp, 8
push 0x808068
call fcn.006549d9
add esp, 4
test eax, eax
jne 0x586bf1
push 0x24
call fcn.00650ded
mov edi, eax
add esp, 4
mov dword [ebp - 0x60], edi
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x58]
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
movups xmmword [edi], xmm0
push 0
movups xmmword [edi + 0x10], xmm0
push 0x720b07
mov dword [edi + 0x20], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov eax, dword [ebp - 0x80]
mov esi, dword [ebp + 0x14]
mov dword [ebp + 0x14], 0
mov dword [ebp - 0x84], 1
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x5c], esi
mov eax, dword [eax]
mov dword [ebp - 4], 0x14
lea ecx, [edi + 8]
mov dword [edi + 4], eax
lea eax, [ebp - 0x58]
push eax
mov dword [edi], 0xff
call fcn.004382a0
mov dword [edi + 0x20], esi
mov esi, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x44]
mov dword [esi], edi
cmp edx, 0x10
jb 0x585610
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585606
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bc6
push edx
push ecx
call fcn.0065106e
add esp, 8
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x58562c
mov ecx, edi
call fcn.00459ae0
push 0x94
push edi
call fcn.0065106e
add esp, 8
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x585648
mov ecx, edi
call fcn.00459ae0
push 0x94
push edi
call fcn.0065106e
add esp, 8
mov edi, dword [ebp + 0x14]
test edi, edi
je 0x585664
mov ecx, edi
call fcn.004a3930
push 0x128
push edi
call fcn.0065106e
add esp, 8
mov edx, dword [ebp + 0x2c]
cmp edx, 0x10
jb 0x585698
mov ecx, dword [ebp + 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x58568e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bc6
push edx
push ecx
call fcn.0065106e
add esp, 8
mov edx, dword [ebp + 0x44]
mov byte [ebp + 0x18], 0
mov dword [ebp + 0x2c], 0xf
mov dword [ebp + 0x28], 0
cmp edx, 0x10
jb 0x5856de
mov ecx, dword [ebp + 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5856d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bc6
push edx
push ecx
call fcn.0065106e
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x44
call fcn.006549b4
add esp, 4
test eax, eax
jne 0x586bf7
push eax
push 0x720b07
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], al
call fcn.00427530
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x58]
push 0
push 0x720b07
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov byte [ebp - 4], 0x17
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x585764
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00427530
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x18
push eax
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x28]
call fcn.005b7140
add esp, 4
mov byte [ebp - 4], 0x17
mov edx, dword [ebp - 0x14]
test eax, eax
setne byte [ebp - 0xd]
cmp edx, 0x10
jb 0x5857cb
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5857c1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bfd
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x585815
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x58580b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bfd
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x58584d
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585843
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bfd
push edx
push ecx
call fcn.0065106e
add esp, 8
cmp byte [ebp - 0xd], 0
je 0x5859c1
push 0
push 0x720b07
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00427530
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x58]
push 0
push 0x720b07
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov byte [ebp - 4], 0x1a
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5858c0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00427530
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x1b
push eax
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x28]
call fcn.005b7140
cmp dword [ebp + 0x44], 0x10
lea ecx, [ebp + 0x30]
mov edx, eax
cmovae ecx, dword [ebp + 0x30]
push ecx
push str.operator___
mov eax, dword [edx]
push str._s_:_Routed_to_Unauthenticated_call_to_get_SUSI___s_
push edx
call dword [eax + 0x14]
mov byte [ebp - 4], 0x1a
add esp, 0x14
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x58593f
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585935
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c02
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x585989
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x58597f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c02
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x5859c1
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5859b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c02
push edx
push ecx
call fcn.0065106e
add esp, 8
push 0x808068
call fcn.006549d9
add esp, 4
test eax, eax
jne 0x586c07
jmp 0x58513f
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x585a9e
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x5859f0
mov ecx, dword [esi]
mov edx, dword [esi + 0x10]
push 0xb
push str.signin_user
call fcn.00495440
add esp, 8
test eax, eax
je 0x585ad7
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x585a14
mov ecx, dword [esi]
push 0x21
push str.signout_user_without_confirmation
call fcn.00495440
add esp, 8
test eax, eax
je 0x585a9b
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x585a31
mov ecx, dword [esi]
push 0xc
push str.signout_user
call fcn.00495440
add esp, 8
test eax, eax
je 0x585a9b
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x585a4e
mov ecx, dword [esi]
push 0x14
push str.device_token_removed
call fcn.00495440
add esp, 8
test eax, eax
je 0x585a9b
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x585a6b
mov ecx, dword [esi]
push 0x18
push str.device_token_invalidated
call fcn.00495440
add esp, 8
test eax, eax
je 0x585a9b
cmp dword [esi + 0x14], 0x10
jb 0x585a88
mov eax, dword [esi]
jmp 0x585a8a
mov eax, esi
push 0x12
push str.device_token_added
mov ecx, eax
call fcn.00495440
add esp, 8
mov ecx, dword [ebp - 0x60]
mov eax, dword [edi + 8]
cmp dword [eax], 4
jne 0x5866d0
mov eax, dword [edi + 0x1c]
mov eax, dword [eax]
cmp eax, 6
je 0x585abd
cmp eax, 3
jne 0x5866d0
push 0x808068
call fcn.006549b4
add esp, 4
test eax, eax
jne 0x586c0d
jmp 0x585db4
push 0x808068
call fcn.006549b4
add esp, 4
test eax, eax
jne 0x586c13
push eax
push 0x720b07
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], al
call fcn.00427530
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x58]
push 0
push 0x720b07
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov byte [ebp - 4], 0x1d
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x585b50
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00427530
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x1e
push eax
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x28]
call fcn.005b7140
add esp, 4
mov byte [ebp - 4], 0x1d
mov edx, dword [ebp - 0x14]
test eax, eax
setne byte [ebp - 0xd]
cmp edx, 0x10
jb 0x585bb7
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585bad
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c19
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x585c01
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585bf7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c19
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x585c39
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585c2f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c19
push edx
push ecx
call fcn.0065106e
add esp, 8
cmp byte [ebp - 0xd], 0
je 0x5859c1
push 0
push 0x720b07
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00427530
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x58]
push 0
push 0x720b07
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov byte [ebp - 4], 0x20
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x585cb0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00427530
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x21
push eax
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x28]
call fcn.005b7140
cmp dword [ebp + 0x44], 0x10
lea ecx, [ebp + 0x30]
mov edx, eax
cmovae ecx, dword [ebp + 0x30]
push ecx
push str.operator___
mov eax, dword [edx]
push str._s_:_SignIn_triggered___Routed_to_Unauthenticated_call_to_get_SUSI___s_
push edx
call dword [eax + 0x14]
mov byte [ebp - 4], 0x20
add esp, 0x14
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x585d2f
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585d25
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c1e
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0x1f
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x585d79
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585d6f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c1e
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x5859c1
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5859b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c1e
jmp 0x5859b7
push 0
push 0x720b07
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00427530
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x58]
push 0
push 0x720b07
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov byte [ebp - 4], 0x23
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea esi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x585e20
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00427530
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x24
push eax
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x28]
call fcn.005b7140
add esp, 4
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x14]
test eax, eax
setne byte [ebp - 0xd]
cmp edx, 0x10
jb 0x585e87
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585e7d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c23
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x585ed1
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585ec7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c23
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x585f09
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x585eff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c23
push edx
push ecx
call fcn.0065106e
add esp, 8
cmp byte [ebp - 0xd], 0
je 0x586633
push 0
push 0x720b07
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00427530
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x58]
push 0
push 0x720b07
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov byte [ebp - 4], 0x26
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x585f80
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00427530
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x27
push eax
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x28]
call fcn.005b7140
add esp, 4
mov edi, eax
push 0
push 0x25
call fcn.0058eaa0
push 1
push 0x73
mov byte [ebp - 0xdc], al
call fcn.0058eaa0
push 2
push 0x20
mov byte [ebp - 0xdb], al
call fcn.0058eaa0
push 3
push 0x3a
mov byte [ebp - 0xda], al
call fcn.0058eaa0
push 4
push 0x20
mov byte [ebp - 0xd9], al
call fcn.0058eaa0
push 5
push 0x42
mov byte [ebp - 0xd8], al
call fcn.0058eaa0
push 6
push 0x6c
mov byte [ebp - 0xd7], al
call fcn.0058eaa0
push 7
push 0x6f
mov byte [ebp - 0xd6], al
call fcn.0058eaa0
push 8
push 0x63
mov byte [ebp - 0xd5], al
call fcn.0058eaa0
push 9
push 0x6b
mov byte [ebp - 0xd4], al
call fcn.0058eaa0
push 0xa
push 0x20
mov byte [ebp - 0xd3], al
call fcn.0058eaa0
push 0xb
push 0x61
mov byte [ebp - 0xd2], al
call fcn.0058eaa0
push 0xc
push 0x6e
mov byte [ebp - 0xd1], al
call fcn.0058eaa0
push 0xd
push 0x79
mov byte [ebp - 0xd0], al
call fcn.0058eaa0
push 0xe
push 0x20
mov byte [ebp - 0xcf], al
call fcn.0058eaa0
push 0xf
push 0x73
mov byte [ebp - 0xce], al
call fcn.0058eaa0
push 0x10
push 0x75
mov byte [ebp - 0xcd], al
call fcn.0058eaa0
push 0x11
push 0x62
mov byte [ebp - 0xcc], al
call fcn.0058eaa0
push 0x12
push 0x73
mov byte [ebp - 0xcb], al
call fcn.0058eaa0
push 0x13
push 0x65
mov byte [ebp - 0xca], al
call fcn.0058eaa0
push 0x14
push 0x71
mov byte [ebp - 0xc9], al
call fcn.0058eaa0
push 0x15
push 0x75
mov byte [ebp - 0xc8], al
call fcn.0058eaa0
push 0x16
push 0x65
mov byte [ebp - 0xc7], al
call fcn.0058eaa0
push 0x17
push 0x6e
mov byte [ebp - 0xc6], al
call fcn.0058eaa0
push 0x18
push 0x74
mov byte [ebp - 0xc5], al
call fcn.0058eaa0
push 0x19
push 0x20
mov byte [ebp - 0xc4], al
call fcn.0058eaa0
push 0x1a
push 0x63
mov byte [ebp - 0xc3], al
call fcn.0058eaa0
push 0x1b
push 0x61
mov byte [ebp - 0xc2], al
call fcn.0058eaa0
push 0x1c
push 0x6c
mov byte [ebp - 0xc1], al
call fcn.0058eaa0
push 0x1d
push 0x6c
mov byte [ebp - 0xc0], al
call fcn.0058eaa0
push 0x1e
push 0x73
mov byte [ebp - 0xbf], al
call fcn.0058eaa0
push 0x1f
push 0x20
mov byte [ebp - 0xbe], al
call fcn.0058eaa0
push 0x20
push 0x66
mov byte [ebp - 0xbd], al
call fcn.0058eaa0
push 0x21
push 0x6f
mov byte [ebp - 0xbc], al
call fcn.0058eaa0
push 0x22
push 0x72
mov byte [ebp - 0xbb], al
call fcn.0058eaa0
push 0x23
push 0x20
mov byte [ebp - 0xba], al
call fcn.0058eaa0
push 0x24
push 0x55
mov byte [ebp - 0xb9], al
call fcn.0058eaa0
mov byte [ebp - 0xb8], al
push 0x25
push 0x6e
call fcn.0058eaa0
push 0x26
push 0x6c
mov byte [ebp - 0xb7], al
call fcn.0058eaa0
push 0x27
push 0x69
mov byte [ebp - 0xb6], al
call fcn.0058eaa0
push 0x28
push 0x63
mov byte [ebp - 0xb5], al
call fcn.0058eaa0
push 0x29
push 0x65
mov byte [ebp - 0xb4], al
call fcn.0058eaa0
push 0x2a
push 0x6e
mov byte [ebp - 0xb3], al
call fcn.0058eaa0
push 0x2b
push 0x73
mov byte [ebp - 0xb2], al
call fcn.0058eaa0
push 0x2c
push 0x65
mov byte [ebp - 0xb1], al
call fcn.0058eaa0
push 0x2d
push 0x64
mov byte [ebp - 0xb0], al
call fcn.0058eaa0
push 0x2e
push 0x20
mov byte [ebp - 0xaf], al
call fcn.0058eaa0
push 0x2f
push 0x61
mov byte [ebp - 0xae], al
call fcn.0058eaa0
push 0x30
push 0x70
mov byte [ebp - 0xad], al
call fcn.0058eaa0
push 0x31
push 0x70
mov byte [ebp - 0xac], al
call fcn.0058eaa0
push 0x32
push 0x20
mov byte [ebp - 0xab], al
call fcn.0058eaa0
push 0x33
push 0x69
mov byte [ebp - 0xaa], al
call fcn.0058eaa0
push 0x34
push 0x6e
mov byte [ebp - 0xa9], al
call fcn.0058eaa0
push 0x35
push 0x20
mov byte [ebp - 0xa8], al
call fcn.0058eaa0
push 0x36
push 0x63
mov byte [ebp - 0xa7], al
call fcn.0058eaa0
push 0x37
push 0x61
mov byte [ebp - 0xa6], al
call fcn.0058eaa0
push 0x38
push 0x73
mov byte [ebp - 0xa5], al
call fcn.0058eaa0
mov byte [ebp - 0xa4], al
push 0x39
push 0x65
call fcn.0058eaa0
push 0x3a
push 0x20
mov byte [ebp - 0xa3], al
call fcn.0058eaa0
push 0x3b
push 0x74
mov byte [ebp - 0xa2], al
call fcn.0058eaa0
push 0x3c
push 0x68
mov byte [ebp - 0xa1], al
call fcn.0058eaa0
push 0x3d
push 0x65
mov byte [ebp - 0xa0], al
call fcn.0058eaa0
push 0x3e
push 0x72
mov byte [ebp - 0x9f], al
call fcn.0058eaa0
push 0x3f
push 0x65
mov byte [ebp - 0x9e], al
call fcn.0058eaa0
push 0x40
push 0x20
mov byte [ebp - 0x9d], al
call fcn.0058eaa0
push 0x41
push 0x69
mov byte [ebp - 0x9c], al
call fcn.0058eaa0
push 0x42
push 0x73
mov byte [ebp - 0x9b], al
call fcn.0058eaa0
push 0x43
push 0x20
mov byte [ebp - 0x9a], al
call fcn.0058eaa0
push 0x44
push 0x6e
mov byte [ebp - 0x99], al
call fcn.0058eaa0
push 0x45
push 0x6f
mov byte [ebp - 0x98], al
call fcn.0058eaa0
push 0x46
push 0x20
mov byte [ebp - 0x97], al
call fcn.0058eaa0
push 0x47
push 0x75
mov byte [ebp - 0x96], al
call fcn.0058eaa0
push 0x48
push 0x73
mov byte [ebp - 0x95], al
call fcn.0058eaa0
push 0x49
push 0x65
mov byte [ebp - 0x94], al
call fcn.0058eaa0
push 0x4a
push 0x72
mov byte [ebp - 0x93], al
call fcn.0058eaa0
push 0x4b
push 0x20
mov byte [ebp - 0x92], al
call fcn.0058eaa0
push 0x4c
push 0x6c
mov byte [ebp - 0x91], al
call fcn.0058eaa0
push 0x4d
mov byte [ebp - 0x90], al
push 0x6f
call fcn.0058eaa0
push 0x4e
push 0x67
mov byte [ebp - 0x8f], al
call fcn.0058eaa0
push 0x4f
push 0x67
mov byte [ebp - 0x8e], al
call fcn.0058eaa0
push 0x50
push 0x65
mov byte [ebp - 0x8d], al
call fcn.0058eaa0
push 0x51
push 0x64
mov byte [ebp - 0x8c], al
call fcn.0058eaa0
push 0x52
push 0x20
mov byte [ebp - 0x8b], al
call fcn.0058eaa0
push 0x53
push 0x69
mov byte [ebp - 0x8a], al
call fcn.0058eaa0
push 0x54
push 0x6e
mov byte [ebp - 0x89], al
call fcn.0058eaa0
mov byte [ebp - 0x88], al
mov byte [ebp - 0x87], 0
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x78]
push 0x55
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
mov dword [ebp - 0x84], 0x20
call fcn.0044cca0
xor esi, esi
nop dword [eax]
mov eax, 0xf2b9d649
mov ecx, esi
mul esi
shr edx, 8
imul eax, edx, 0x10e
sub ecx, eax
mov al, byte [ecx + 0x71d2d0]
lea ecx, [ebp - 0x78]
xor al, byte [ebp + esi - 0xdc]
movzx eax, al
push eax
push 1
call fcn.0043c7b0
inc esi
cmp esi, 0x55
jb 0x5864e0
cmp dword [ebp - 0x64], 0x10
lea ecx, [ebp - 0x78]
mov eax, dword [edi]
cmovae ecx, dword [ebp - 0x78]
push str.operator___
push ecx
push edi
call dword [eax + 0x14]
mov byte [ebp - 4], 0x27
add esp, 0xc
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x586567
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x58655d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c28
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x5865b1
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5865a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c28
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x5865fb
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5865f1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c28
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x586633
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x586629
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c28
push edx
push ecx
call fcn.0065106e
add esp, 8
push 0x808068
call fcn.006549d9
add esp, 4
test eax, eax
jne 0x586c2d
push 0x24
call fcn.00650ded
mov edi, eax
add esp, 4
mov dword [ebp - 0x60], edi
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x58]
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
movups xmmword [edi], xmm0
push 0
movups xmmword [edi + 0x10], xmm0
push 0x720b07
mov dword [edi + 0x20], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov eax, dword [ebp - 0x80]
mov esi, dword [ebp + 0x14]
mov dword [ebp + 0x14], 0
mov dword [ebp - 0x84], 4
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x5c], esi
mov eax, dword [eax]
mov dword [ebp - 4], 0x2b
lea ecx, [edi + 8]
mov dword [edi + 4], eax
lea eax, [ebp - 0x58]
push eax
mov dword [edi], 0xff
call fcn.004382a0
mov dword [edi + 0x20], esi
jmp 0x5855d7
cmp ecx, 1
jne 0x586749
mov eax, dword [edi + 0x1c]
cmp dword [eax], 6
jne 0x586749
call fcn.005b6ea0
call fcn.005bb010
push 0x8086a4
mov esi, eax
call fcn.006549b4
add esp, 4
test eax, eax
jne 0x586c33
mov al, byte [esi + 0x70]
mov byte [ebp - 0xd], al
push 0x8086a4
mov byte [ebp - 4], 0x2d
call fcn.006549d9
add esp, 4
test eax, eax
jne 0x586c39
cmp byte [ebp - 0xd], 1
mov byte [ebp - 4], 4
jne 0x586749
push dword [edi]
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp - 0x7c]
push ecx
mov edx, esp
mov dword [ebp + 0xc], 0
push esi
mov dword [edx], eax
mov ecx, dword [edi + 0x20]
call fcn.0057f2c0
jmp 0x585610
push 0x808068
call fcn.006549b4
add esp, 4
test eax, eax
jne 0x586c3f
push eax
push 0x720b07
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], al
call fcn.00427530
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x58]
push 0
push 0x720b07
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov byte [ebp - 4], 0x2f
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5867c0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00427530
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x30
push eax
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x28]
call fcn.005b7140
add esp, 4
mov byte [ebp - 4], 0x2f
mov edx, dword [ebp - 0x14]
test eax, eax
setne byte [ebp - 0xd]
cmp edx, 0x10
jb 0x586827
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x58681d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c45
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0x2e
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x586871
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x586867
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c45
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x5868a9
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x58689f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c45
push edx
push ecx
call fcn.0065106e
add esp, 8
cmp byte [ebp - 0xd], 0
je 0x586a2d
push 0
push 0x720b07
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00427530
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x58]
push 0
push 0x720b07
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov byte [ebp - 4], 0x32
mov eax, dword [edi + 0x20]
mov edx, dword [eax + 8]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x586920
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00427530
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x33
push eax
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x28]
call fcn.005b7140
cmp dword [ebp + 0x44], 0x10
lea edx, [ebp + 0x30]
mov esi, eax
lea ecx, [ebp + 0x18]
cmovae edx, dword [ebp + 0x30]
cmp dword [ebp + 0x2c], 0x10
push edx
cmovae ecx, dword [ebp + 0x18]
mov eax, dword [esi]
push str.operator___
push str._s_:__s_inform_Controller
push ecx
push esi
call dword [eax + 0x24]
mov byte [ebp - 4], 0x32
add esp, 0x18
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x5869ab
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5869a1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c4a
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
cmp edx, 0x10
jb 0x5869f5
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5869eb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c4a
push edx
push ecx
call fcn.0065106e
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
cmp edx, 0x10
jb 0x586a2d
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x586a23
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586c4a
push edx
push ecx
call fcn.0065106e
add esp, 8
push 0x808068
call fcn.006549d9
add esp, 4
test eax, eax
jne 0x586c4f
push 0x24
call fcn.00650ded
mov edi, eax
add esp, 4
mov dword [ebp - 0x60], edi
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x58]
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
movups xmmword [edi], xmm0
push 0
movups xmmword [edi + 0x10], xmm0
push 0x720b07
mov dword [edi + 0x20], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.00427530
mov eax, dword [ebp - 0x80]
mov esi, dword [ebp + 0x14]
mov dword [ebp + 0x14], 0
mov dword [ebp - 0x84], 8
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x5c], esi
mov eax, dword [eax]
mov dword [ebp - 4], 0x36
lea ecx, [edi + 8]
mov dword [edi + 4], eax
lea eax, [ebp - 0x58]
push eax
mov dword [edi], 0xdc
call fcn.004382a0
mov dword [edi + 0x20], esi
mov esi, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x44]
mov dword [esi], edi
cmp edx, 0x10
jb 0x586afe
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x586af4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bc6
push edx
push ecx
call fcn.0065106e
add esp, 8
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x586b1a
mov ecx, edi
call fcn.00459ae0
push 0x94
push edi
call fcn.0065106e
add esp, 8
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x586b36
mov ecx, edi
call fcn.00459ae0
push 0x94
push edi
call fcn.0065106e
add esp, 8
mov edi, dword [ebp + 0x14]
test edi, edi
je 0x586b52
mov ecx, edi
call fcn.004a3930
push 0x128
push edi
call fcn.0065106e
add esp, 8
mov edx, dword [ebp + 0x2c]
cmp edx, 0x10
jb 0x586b82
mov ecx, dword [ebp + 0x18]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x586b78
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x586bc6
push edx
push ecx
call fcn.0065106e
add esp, 8
mov edx, dword [ebp + 0x44]
mov dword [ebp + 0x28], 0
mov dword [ebp + 0x2c], 0xf
mov byte [ebp + 0x18], 0
cmp edx, 0x10
jb 0x5856de
mov ecx, dword [ebp + 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5856d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x5856d4
call fcn.0066bea5
push eax
call fcn.00654ca6
call fcn.0066bea5
call fcn.0066bea5
push eax
call fcn.00654ca6
push eax
call fcn.00654ca6
call fcn.0066bea5
call fcn.0066bea5
push eax
call fcn.00654ca6
push eax
call fcn.00654ca6
call fcn.0066bea5
call fcn.0066bea5
push eax
call fcn.00654ca6
push eax
call fcn.00654ca6
push eax
call fcn.00654ca6
call fcn.0066bea5
call fcn.0066bea5
call fcn.0066bea5
call fcn.0066bea5
push eax
call fcn.00654ca6
push eax
call fcn.00654ca6
push eax
call fcn.00654ca6
push eax
call fcn.00654ca6
call fcn.0066bea5
call fcn.0066bea5
push eax
call fcn.00654ca6
int3