Function at 0x10084570
Capabilities:
Parse pe header

Disassembly:
push 0x178
mov eax, 0x100dd9d8
call fcn.100c745c
mov dword [ebp - 0x78], ecx
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x5c], eax
mov ebx, edi
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0x7c], ebx
call fcn.100662f7
push 0x128
mov eax, dword [eax + 0x9c]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x18], edi
call fcn.100b45be
mov esi, eax
pop ecx
mov dword [ebp - 0x5c], esi
mov dword [ebp - 4], edi
test esi, esi
je 0x1008472e
mov ebx, 0x100eadb0
lea ecx, [ebp - 0x74]
push ebx
call fcn.100b45be
push ebx
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 1
mov dword [ebp - 0x7c], 1
call fcn.100b45be
push ebx
lea ecx, [ebp - 0x9c]
mov dword [ebp - 4], 2
mov dword [ebp - 0x7c], 3
mov dword [ebp - 0x80], edi
call fcn.100b45be
push 7
pop edi
push ebx
lea ecx, [ebp - 0x184]
mov dword [ebp - 4], 3
mov dword [ebp - 0x7c], edi
call fcn.100b45be
push ebx
lea ecx, [ebp - 0x16c]
mov dword [ebp - 4], 4
mov dword [ebp - 0x7c], 0xf
call fcn.100b45be
push ebx
lea ecx, [ebp - 0x154]
mov dword [ebp - 4], 5
mov dword [ebp - 0x7c], 0x1f
call fcn.100b45be
push ebx
lea ecx, [ebp - 0x13c]
mov dword [ebp - 4], 6
mov dword [ebp - 0x7c], 0x3f
call fcn.100b45be
push ebx
lea ecx, [ebp - 0x124]
mov dword [ebp - 4], edi
mov dword [ebp - 0x7c], 0x7f
call fcn.100b45be
push ebx
lea ecx, [ebp - 0x10c]
mov dword [ebp - 4], 8
mov dword [ebp - 0x7c], 0xff
call fcn.100b45be
push ebx
lea ecx, [ebp - 0xdc]
mov dword [ebp - 4], 9
mov dword [ebp - 0x7c], 0x1ff
call fcn.100b45be
xor edi, edi
mov dword [ebp - 4], 0xa
lea eax, [ebp - 0x74]
mov ebx, 0x3ff
push eax
push edi
push edi
lea eax, [ebp - 0xb4]
mov dword [ebp - 0x7c], ebx
push eax
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x58]
push eax
push edi
push edi
push edi
push edi
push edi
push edi
push edi
push edi
push edi
push edi
call fcn.1006d33e
pop ecx
pop ecx
push edx
push eax
lea eax, [ebp - 0x9c]
mov ecx, esi
push eax
lea eax, [ebp - 0x184]
push eax
lea eax, [ebp - 0x16c]
push eax
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0xdc]
push eax
call fcn.100ad1f3
jmp 0x10084730
mov eax, edi
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], 0x15
test ebx, 0x200
je 0x10084753
lea ecx, [ebp - 0xdc]
and ebx, 0xfffffdff
call fcn.100090b6
test ebx, 0x100
je 0x1008476c
lea ecx, [ebp - 0x10c]
and ebx, 0xfffffeff
call fcn.100090b6
test bl, bl
jns 0x10084781
lea ecx, [ebp - 0x124]
and ebx, 0xffffff7f
call fcn.100090b6
test bl, 0x40
je 0x10084794
lea ecx, [ebp - 0x13c]
and ebx, 0xffffffbf
call fcn.100090b6
test bl, 0x20
je 0x100847a7
lea ecx, [ebp - 0x154]
and ebx, 0xffffffdf
call fcn.100090b6
test bl, 0x10
je 0x100847ba
lea ecx, [ebp - 0x16c]
and ebx, 0xffffffef
call fcn.100090b6
test bl, 8
je 0x100847cd
lea ecx, [ebp - 0x184]
and ebx, 0xfffffff7
call fcn.100090b6
test bl, 4
je 0x100847e0
lea ecx, [ebp - 0x9c]
and ebx, 0xfffffffb
call fcn.100090b6
test bl, 2
je 0x100847f3
lea ecx, [ebp - 0xb4]
and ebx, 0xfffffffd
call fcn.100090b6
mov byte [ebp - 4], 0x1f
test bl, 1
je 0x10084804
lea ecx, [ebp - 0x74]
call fcn.100090b6
mov ebx, dword [ebp - 0x78]
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], edi
mov eax, dword [ebx + 4]
add eax, 0x18
push eax
call fcn.100b45be
mov eax, dword [ebx + 4]
xor ecx, ecx
mov byte [ebp - 4], 0x20
mov edi, dword [eax + 0x30]
mov dword [ebp - 0x20], ecx
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x14], ecx
lea ecx, [ebp - 0x20]
mov dword [ebp - 0xc4], eax
mov eax, dword [edi]
push ecx
lea ecx, [ebp - 0x14]
push ecx
mov esi, dword [eax]
mov ecx, esi
call dword [0x100e97d8]
mov ecx, edi
call esi
cmp dword [ebp - 0x20], 0
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 0x21
mov dword [ebp - 0xbc], eax
je 0x100849d7
mov edi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push edi
call fcn.100b45be
push edi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x22
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x23
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x24
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x21
call fcn.100090b6
test esi, esi
je 0x10084999
push edi
lea ecx, [ebp - 0x9c]
call fcn.100b45be
push edi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x25
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x26
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x27
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
mov edi, eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.10080588
add esp, 0x14
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 0x28
jb 0x1008494a
mov eax, dword [eax]
mov esi, dword [edi]
push str.ValidateAndGetPrefetchedSP
push str._s_:_Failed_to_fetch_principal
push eax
mov ecx, dword [esi + 0x24]
push edi
call dword [0x100e97d8]
call dword [esi + 0x24]
add esp, 0x10
lea ecx, [ebp - 0xf4]
call fcn.100090b6
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x21
call fcn.100090b6
mov edi, 0x100eadb0
push edi
lea ecx, [ebp - 0x74]
call fcn.100b45be
push dword [ebp - 0x58]
mov esi, dword [ebp - 0xb8]
push ecx
mov eax, esp
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0xbc]
and dword [eax], 0
lea eax, [ebp - 0x74]
push eax
push 0xda
push esi
call fcn.10078bae
lea ecx, [ebp - 0x74]
call fcn.100090b6
jmp 0x10085927
and dword [ebp - 0x1c], 0
lea eax, [ebp - 0x24]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5c], ecx
push dword [ebx + 4]
call fcn.100b45be
mov edi, dword [ebp - 0xc4]
lea ecx, [ebp - 0x1c]
push ecx
mov eax, dword [edi]
mov esi, dword [eax + 0xc]
mov ecx, esi
call dword [0x100e97d8]
mov ecx, edi
call esi
mov eax, dword [ebp - 0x24]
mov byte [ebp - 4], 0x2a
test eax, eax
je 0x10084bf8
cmp eax, 0xb
ja 0x10084a5a
je 0x10084a53
cmp eax, 1
je 0x10084a4c
cmp eax, 2
je 0x10084a45
cmp eax, 3
je 0x10084a3e
add eax, 0xfffffffc
cmp eax, 2
ja 0x10084a6e
mov edi, 0xd0
jmp 0x10084a8f
mov edi, 0xcd
jmp 0x10084a8f
mov edi, 0xd1
jmp 0x10084a8f
mov edi, 0xcf
jmp 0x10084a8f
mov edi, 0xe4
jmp 0x10084a8f
sub eax, 0xc
je 0x10084a8a
sub eax, 1
je 0x10084a83
sub eax, 1
je 0x10084a7c
sub eax, 1
je 0x10084a75
mov edi, 0xd2
jmp 0x10084a8f
mov edi, 0xe0
jmp 0x10084a8f
mov edi, 0xe1
jmp 0x10084a8f
mov edi, 0xe2
jmp 0x10084a8f
mov edi, 0xfb
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x2b
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x2c
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x2d
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x2a
call fcn.100090b6
test esi, esi
je 0x10084bbf
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x2e
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x2f
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x30
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
mov ebx, eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.100805f6
add esp, 0x14
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 0x31
jb 0x10084b75
mov eax, dword [eax]
mov esi, dword [ebx]
push str.ValidateAndGetPrefetchedSP
push str._s_:_Failed_to_fetch_prefetched_ASNP
push eax
mov ecx, dword [esi + 0x24]
push ebx
call dword [0x100e97d8]
call dword [esi + 0x24]
add esp, 0x10
lea ecx, [ebp - 0xf4]
call fcn.100090b6
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x2a
call fcn.100090b6
push 0x100eadb0
lea ecx, [ebp - 0x74]
call fcn.100b45be
push dword [ebp - 0x58]
mov byte [ebp - 4], 0x32
push ecx
mov eax, esp
and dword [eax], 0
lea eax, [ebp - 0x74]
push eax
push edi
mov esi, dword [ebp - 0xb8]
lea ecx, [ebp - 0xbc]
push esi
call fcn.10078bae
lea ecx, [ebp - 0x74]
jmp 0x1008591a
and dword [ebp - 0xc0], 0
mov edi, 0xf8
mov byte [ebp - 4], 0x33
push edi
call fcn.100b45be
mov esi, eax
pop ecx
mov dword [ebp - 0x5c], esi
mov byte [ebp - 4], 0x34
test esi, esi
je 0x10084c3f
push edi
push 0
push esi
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [ebp - 0x1c]
add esp, 0xc
call fcn.10077fc4
push eax
mov ecx, esi
call fcn.1003e0ee
mov edi, eax
mov dword [ebp - 0x80], eax
jmp 0x10084c44
xor edi, edi
mov dword [ebp - 0x80], edi
mov byte [ebp - 4], 0x33
mov dword [ebp - 0xc0], edi
call fcn.100aa243
mov ecx, eax
call fcn.1000a4af
sub esp, 0x18
mov ecx, eax
mov esi, esp
mov dword [ebp - 0x5c], esp
call fcn.1002c015
push eax
mov ecx, esi
call fcn.100b45be
sub esp, 0x18
mov byte [ebp - 4], 0x35
mov ecx, edi
mov esi, esp
call fcn.1003e9b1
mov ecx, eax
call fcn.1002c00a
push eax
mov ecx, esi
call fcn.100b45be
mov byte [ebp - 4], 0x33
call fcn.100b0332
add esp, 0x30
test al, al
jne 0x10084e09
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x36
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x37
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x38
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x33
call fcn.100090b6
test esi, esi
je 0x10084ddb
mov esi, 0x100eadb0
mov dword [ebp - 0x78], 0xde
push esi
lea ecx, [ebp - 0x9c]
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x39
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x3a
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x3b
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
mov ebx, eax
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.1008051a
add esp, 0x14
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 0x3c
jb 0x10084d91
mov eax, dword [eax]
mov esi, dword [ebx]
push str.ValidateAndGetPrefetchedSP
push str._s_:_Runtime_mode_mismatch
push eax
mov ecx, dword [esi + 0x24]
push ebx
call dword [0x100e97d8]
call dword [esi + 0x24]
add esp, 0x10
lea ecx, [ebp - 0xf4]
call fcn.100090b6
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x33
call fcn.100090b6
push 0x100eadb0
lea ecx, [ebp - 0x74]
call fcn.100b45be
push dword [ebp - 0x58]
and dword [ebp - 0xc0], 0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x3d
mov dword [eax], edi
lea eax, [ebp - 0x74]
push eax
push 0xde
jmp 0x10084bde
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x84], esp
mov dword [ebp - 0x5c], ecx
push dword [ebx + 4]
call fcn.100b45be
sub esp, 0x18
mov byte [ebp - 4], 0x3e
mov ecx, edi
mov esi, esp
call fcn.1003e9b1
mov ecx, eax
call fcn.10021680
push eax
mov ecx, esi
call fcn.100b45be
mov byte [ebp - 4], 0x33
call fcn.100b0332
add esp, 0x30
test al, al
jne 0x10084fb7
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x3f
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x40
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x41
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x33
call fcn.100090b6
test esi, esi
je 0x10084f89
mov esi, 0x100eadb0
mov dword [ebp - 0x78], 0xdf
push esi
lea ecx, [ebp - 0x9c]
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x42
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x43
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x44
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
mov ebx, eax
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.1008051a
add esp, 0x14
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 0x45
jb 0x10084f3f
mov eax, dword [eax]
mov esi, dword [ebx]
push str.ValidateAndGetPrefetchedSP
push str._s_:App_Id_mismatch
push eax
mov ecx, dword [esi + 0x24]
push ebx
call dword [0x100e97d8]
call dword [esi + 0x24]
add esp, 0x10
lea ecx, [ebp - 0xf4]
call fcn.100090b6
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x33
call fcn.100090b6
push 0x100eadb0
lea ecx, [ebp - 0x74]
call fcn.100b45be
push dword [ebp - 0x58]
and dword [ebp - 0xc0], 0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x46
mov dword [eax], edi
lea eax, [ebp - 0x74]
push eax
push 0xdf
jmp 0x10084bde
sub esp, 0x18
lea eax, [ebp - 0x3c]
mov ecx, esp
mov dword [ebp - 0x84], esp
push eax
and dword [ecx + 0x10], 0
and dword [ecx + 0x14], 0
call fcn.100b45be
sub esp, 0x18
mov byte [ebp - 4], 0x47
mov ecx, edi
mov esi, esp
call fcn.1003e9b1
mov ecx, eax
call fcn.1002bfdf
push eax
mov ecx, esi
call fcn.100b45be
mov byte [ebp - 4], 0x33
call fcn.100b0332
add esp, 0x30
test al, al
jne 0x100851cc
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x48
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x49
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x4a
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x33
call fcn.100090b6
test esi, esi
je 0x10085142
mov esi, 0x100eadb0
mov dword [ebp - 0x78], 0xdd
push esi
lea ecx, [ebp - 0x9c]
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x4b
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x4c
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x4d
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
mov esi, eax
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0xf4]
mov dword [ebp - 0x80], esi
push eax
call fcn.1008051a
add esp, 0x14
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 0x4e
jb 0x100850f6
mov eax, dword [eax]
mov esi, dword [esi]
push str.ValidateAndGetPrefetchedSP
push str._s_:DeviceID_mismatch
push eax
push dword [ebp - 0x80]
mov ecx, dword [esi + 0x24]
call dword [0x100e97d8]
call dword [esi + 0x24]
add esp, 0x10
lea ecx, [ebp - 0xf4]
call fcn.100090b6
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x33
call fcn.100090b6
push dword [ebx + 4]
and dword [ebp - 0xcc], 0
lea ecx, [ebp - 0xdc]
and dword [ebp - 0xc8], 0
call fcn.100b45be
mov ebx, dword [ebp - 0xc4]
lea ecx, [ebp - 0xdc]
push ecx
mov byte [ebp - 4], 0x4f
mov eax, dword [ebx]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x100e97d8]
mov ecx, ebx
call esi
mov eax, dword [ebp - 0xc8]
mov byte [ebp - 4], 0x33
cmp eax, 0x10
jb 0x1008519e
inc eax
push eax
push dword [ebp - 0xdc]
call fcn.100b45be
pop ecx
pop ecx
push 0x100eadb0
lea ecx, [ebp - 0x74]
call fcn.100b45be
push dword [ebp - 0x58]
and dword [ebp - 0xc0], 0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x50
mov dword [eax], edi
lea eax, [ebp - 0x74]
push eax
push 0xdd
jmp 0x10084bde
push 0x100eadb0
lea ecx, [ebp - 0x54]
call fcn.100b45be
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x54]
push eax
mov byte [ebp - 4], 0x51
call fcn.1002c00a
push eax
call fcn.100a0e97
pop ecx
pop ecx
test al, al
je 0x10085423
sub esp, 0x18
lea eax, [ebp - 0x54]
mov ecx, esp
mov dword [ebp - 0x84], esp
push eax
and dword [ecx + 0x10], 0
and dword [ecx + 0x14], 0
call fcn.100b45be
sub esp, 0x18
mov byte [ebp - 4], 0x52
mov ecx, edi
mov esi, esp
call fcn.1003e9b1
mov ecx, eax
call fcn.1002bfe3
push eax
mov ecx, esi
call fcn.100b45be
mov byte [ebp - 4], 0x51
call fcn.100b0332
add esp, 0x30
test al, al
jne 0x10085423
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x53
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x54
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x55
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x51
call fcn.100090b6
test esi, esi
je 0x10085384
mov esi, 0x100eadb0
mov dword [ebp - 0x78], 0xdd
push esi
lea ecx, [ebp - 0x9c]
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x56
call fcn.100b45be
push dword [ebx + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x57
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x58
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
mov esi, eax
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0xf4]
mov dword [ebp - 0x80], esi
push eax
call fcn.1008051a
add esp, 0x14
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 0x59
jb 0x10085338
mov eax, dword [eax]
mov esi, dword [esi]
push str.ValidateAndGetPrefetchedSP
push str._s_:Device_token_hash_mismatch
push eax
push dword [ebp - 0x80]
mov ecx, dword [esi + 0x24]
call dword [0x100e97d8]
call dword [esi + 0x24]
add esp, 0x10
lea ecx, [ebp - 0xf4]
call fcn.100090b6
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x51
call fcn.100090b6
push dword [ebx + 4]
and dword [ebp - 0xcc], 0
lea ecx, [ebp - 0xdc]
and dword [ebp - 0xc8], 0
call fcn.100b45be
mov ebx, dword [ebp - 0xc4]
lea ecx, [ebp - 0xdc]
push ecx
mov byte [ebp - 4], 0x5a
mov eax, dword [ebx]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x100e97d8]
mov ecx, ebx
call esi
mov eax, dword [ebp - 0xc8]
mov byte [ebp - 4], 0x51
cmp eax, 0x10
jb 0x100853e0
inc eax
push eax
push dword [ebp - 0xdc]
call fcn.100b45be
pop ecx
pop ecx
push 0x100eadb0
lea ecx, [ebp - 0x74]
call fcn.100b45be
push dword [ebp - 0x58]
mov esi, dword [ebp - 0xb8]
and dword [ebp - 0xc0], 0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0xbc]
mov dword [eax], edi
lea eax, [ebp - 0x74]
push eax
push 0xdd
push esi
call fcn.10078bae
lea ecx, [ebp - 0x74]
jmp 0x10085912
mov ecx, edi
call fcn.1003e9b1
mov ecx, eax
call fcn.1002bfd2
push edx
push eax
call fcn.1006d33e
pop ecx
pop ecx
mov ecx, dword [ebp - 0x80]
mov esi, eax
mov edi, edx
call fcn.1003e9b1
mov ecx, eax
call fcn.1002bfa2
mov ecx, dword [ebp - 0x80]
mov ebx, eax
sub ebx, esi
mov esi, edx
sbb esi, edi
call fcn.1003e9b1
mov ecx, eax
call fcn.1002bfd2
add eax, ebx
mov edi, edx
mov ebx, dword [ebp - 0x80]
push ecx
push ecx
mov dword [ebp - 0x5c], eax
adc edi, esi
mov eax, esp
mov dword [ebp - 0x84], esp
push ebx
push eax
call fcn.1006f779
pop ecx
pop ecx
mov byte [ebp - 4], 0x5c
call fcn.100aa243
mov ecx, eax
call fcn.100aa23e
mov ecx, eax
mov byte [ebp - 4], 0x51
call fcn.10092321
test edi, edi
jg 0x100857b9
jl 0x100854b2
cmp dword [ebp - 0x5c], 0
jae 0x100857b9
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x5d
call fcn.100b45be
mov edi, dword [ebp - 0x78]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x5e
push dword [edi + 8]
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x5f
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x51
call fcn.100090b6
test esi, esi
je 0x100855bc
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x60
call fcn.100b45be
push dword [edi + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x61
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x62
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
mov ecx, dword [eax]
push str.ValidateAndGetPrefetchedSP
push str._s_:_ASNP_expired__deleting_it
push eax
mov esi, dword [ecx + 0x14]
mov ecx, esi
call dword [0x100e97d8]
call esi
add esp, 0xc
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x51
call fcn.100090b6
push dword [edi + 4]
and dword [ebp - 0xcc], 0
lea ecx, [ebp - 0xdc]
and dword [ebp - 0xc8], 0
call fcn.100b45be
mov eax, dword [ebp - 0xc4]
lea ecx, [ebp - 0xdc]
push ecx
mov byte [ebp - 4], 0x63
mov eax, dword [eax]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x100e97d8]
mov ecx, dword [ebp - 0xc4]
call esi
mov eax, dword [ebp - 0xc8]
mov byte [ebp - 4], 0x51
cmp eax, 0x10
jb 0x1008561c
inc eax
push eax
push dword [ebp - 0xdc]
call fcn.100b45be
pop ecx
pop ecx
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x64
call fcn.100b45be
push dword [edi + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x65
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x66
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x51
call fcn.100090b6
test esi, esi
je 0x10085753
mov esi, 0x100eadb0
mov dword [ebp - 0x5c], 0xfc
push esi
lea ecx, [ebp - 0x9c]
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x67
call fcn.100b45be
push dword [edi + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x68
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x69
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
mov edi, eax
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.1008051a
add esp, 0x14
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 0x6a
jb 0x10085709
mov eax, dword [eax]
mov esi, dword [edi]
push str.ValidateAndGetPrefetchedSP
push str._s_:_Cachelifetime_elapsed
push eax
mov ecx, dword [esi + 0x24]
push edi
call dword [0x100e97d8]
call dword [esi + 0x24]
add esp, 0x10
lea ecx, [ebp - 0xf4]
call fcn.100090b6
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x51
call fcn.100090b6
push 0x100eadb0
lea ecx, [ebp - 0x74]
call fcn.100b45be
push dword [ebp - 0x58]
mov esi, dword [ebp - 0xb8]
push ecx
mov eax, esp
mov byte [ebp - 4], 0x6b
lea ecx, [ebp - 0xbc]
and dword [eax], 0
lea eax, [ebp - 0x74]
push eax
push 0xfc
push esi
call fcn.10078bae
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0x54]
call fcn.100090b6
test ebx, ebx
je 0x1008591f
mov ecx, ebx
call fcn.10035805
push 0xf8
push ebx
call fcn.100b45be
pop ecx
pop ecx
jmp 0x1008591f
mov ecx, ebx
call fcn.1003e9bf
mov esi, 0x100eadb0
mov dword [ebp - 0x5c], eax
push esi
lea ecx, [ebp - 0x9c]
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x6c
call fcn.100b45be
mov edi, dword [ebp - 0x78]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x6d
push dword [edi + 8]
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x6e
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x51
call fcn.100090b6
test esi, esi
je 0x100858cd
mov esi, 0x100eadb0
lea ecx, [ebp - 0x9c]
push esi
call fcn.100b45be
push esi
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x6f
call fcn.100b45be
push dword [edi + 8]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x70
call fcn.100b45be
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0x71
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100aa486
add esp, 0xc
mov ecx, dword [eax]
push str.ValidateAndGetPrefetchedSP
push str._s_:_ASNP_from_prefetch_cache_successfully_retrieved_validated
push eax
mov esi, dword [ecx + 0x14]
mov ecx, esi
call dword [0x100e97d8]
call esi
add esp, 0xc
lea ecx, [ebp - 0x74]
call fcn.100090b6
lea ecx, [ebp - 0xb4]
call fcn.100090b6
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x51
call fcn.100090b6
push 0x100eadb0
lea ecx, [ebp - 0xf4]
call fcn.100b45be
push dword [ebp - 0x58]
mov esi, dword [ebp - 0xb8]
and dword [ebp - 0xc0], 0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x72
lea ecx, [ebp - 0xbc]
mov dword [eax], ebx
lea eax, [ebp - 0xf4]
push eax
push dword [ebp - 0x5c]
push esi
call fcn.10078bae
lea ecx, [ebp - 0xf4]
call fcn.100090b6
lea ecx, [ebp - 0x54]
call fcn.100090b6
lea ecx, [ebp - 0x1c]
call fcn.10078607
cmp dword [ebp - 0x14], 0
je 0x10085938
push dword [ebp - 0x14]
lea ecx, [ebp - 0x14]
call fcn.100b45be
mov eax, dword [ebp - 0x28]
cmp eax, 0x10
jb 0x1008594c
inc eax
push eax
push dword [ebp - 0x3c]
call fcn.100b45be
pop ecx
pop ecx
cmp dword [ebp - 0x18], 0
je 0x1008595d
push dword [ebp - 0x18]
lea ecx, [ebp - 0x18]
call fcn.100b45be
mov eax, esi
call fcn.100c7406
ret 4