Function at 0x10015881
Capabilities:
Get geographical location

Disassembly:
push 0x124
mov eax, 0x100ae482
call fcn.10081a41
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x84], ecx
mov edi, dword [ebp + 8]
xor edx, edx
mov dword [ebp - 0x88], ecx
push 0xf
pop eax
mov dword [ecx], edx
mov dword [ebp - 0x78], edi
mov dword [ecx + 0x10], edx
mov dword [ecx + 0x14], eax
mov byte [ecx], dl
lea esi, [ecx + 0x18]
mov dword [ebp - 4], edx
mov dword [esi], edx
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], eax
mov byte [esi], dl
lea ebx, [ecx + 0x30]
mov dword [ebx], edx
mov dword [ebx + 0x10], edx
mov dword [ebx + 0x14], eax
mov byte [ebx], dl
mov dword [ecx + 0x48], edx
mov dword [ecx + 0x58], edx
mov dword [ecx + 0x5c], eax
mov byte [ecx + 0x48], dl
mov dword [ecx + 0x60], edx
mov dword [ecx + 0x70], edx
mov dword [ecx + 0x74], eax
mov byte [ecx + 0x60], dl
mov dword [ecx + 0x7c], edx
mov dword [ecx + 0x8c], edx
mov dword [ecx + 0x90], eax
mov byte [ecx + 0x7c], dl
lea eax, [ecx + 0x94]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0xac]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0xc4]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0xe0]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0xf8]
mov dword [ebp - 0x74], eax
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea eax, [ecx + 0x104]
mov dword [ebp - 0x80], eax
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
lea eax, [ecx + 0x110]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0x128]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0x140]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0x158]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0x170]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0x188]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0x1a4]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0x1bc]
mov dword [eax], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], 0xf
mov byte [eax], dl
lea eax, [ecx + 0x1d8]
mov dword [ebp - 0x84], eax
lea ecx, [eax + 8]
mov byte [ebp - 4], 0x14
push edx
mov byte [eax], dl
call fcn.1000830e
xor eax, eax
mov byte [ebp - 4], 0x15
push str.distributor_name
mov byte [ebp - 0x14], al
lea ecx, [ebp - 0x60]
push dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
push 0x10
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], al
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x16
push eax
push esi
call fcn.10014683
add esp, 0xc
mov dword [ebp - 0x18], 0xf
xor eax, eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x14], al
mov dword [ebp - 0x2c], eax
push str.distributor_product_name
push dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x2c], al
push 0x18
call fcn.1000364d
mov esi, dword [ebp - 0x7c]
lea eax, [ebp - 0x2c]
push edi
push eax
push esi
mov byte [ebp - 4], 0x17
call fcn.10014683
mov eax, dword [ebp - 0x18]
add esp, 0xc
cmp eax, 0x10
jb 0x10015ad8
mov ecx, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x14], ecx
cmp eax, 0x1000
jb 0x10015acf
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x48]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], cl
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015b24
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015b19
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
xor ecx, ecx
push str.offer_product_name
mov byte [ebp - 0x14], cl
push dword [ebp - 0x14]
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x50], ecx
mov byte [ebp - 0x60], cl
lea ecx, [ebp - 0x60]
push 0x12
mov dword [ebp - 0x4c], 0xf
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x18
push eax
push ebx
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015b96
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015b8d
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
xor ebx, ebx
mov dword [ebp - 0x4c], 0xf
push str.offer_partner_name
mov byte [ebp - 0x14], bl
lea ecx, [ebp - 0x60]
push dword [ebp - 0x14]
mov dword [ebp - 0x60], ebx
push 0x12
mov dword [ebp - 0x50], ebx
mov byte [ebp - 0x60], bl
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x19
push eax
lea eax, [esi + 0x48]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015c0d
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015c04
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push str.offer_product_id
mov byte [ebp - 0x14], bl
lea ecx, [ebp - 0x60]
push dword [ebp - 0x14]
mov dword [ebp - 0x60], ebx
push 0x10
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [esi + 0x60]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015c82
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015c79
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push 6
mov dword [ebp - 0x60], ebx
lea ecx, [ebp - 0x60]
push str.status
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000ec5f
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x1b
push eax
lea eax, [esi + 0x78]
push eax
call fcn.10014d88
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015cf1
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015ce8
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push 0xa
mov dword [ebp - 0x60], ebx
lea ecx, [ebp - 0x60]
push 0x100b3494
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000ec5f
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [esi + 0x7c]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015d60
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015d57
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push 0xc
mov dword [ebp - 0x60], ebx
lea ecx, [ebp - 0x60]
push str.country_name
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000ec5f
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x1d
push eax
lea eax, [esi + 0x94]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015dd2
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015dc9
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push 9
mov dword [ebp - 0x60], ebx
lea ecx, [ebp - 0x60]
push 0x100b34b0
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000ec5f
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [esi + 0xac]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015e44
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015e3b
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push 9
mov dword [ebp - 0x60], ebx
lea ecx, [ebp - 0x60]
push str.lang_name
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000ec5f
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x1f
push eax
lea eax, [esi + 0xc4]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015eb6
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015ead
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push 0xe
mov dword [ebp - 0x60], ebx
lea ecx, [ebp - 0x60]
push str.priority_order
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000ec5f
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x20
push eax
lea eax, [esi + 0xdc]
push eax
call fcn.10014d88
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015f28
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015f1f
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push 0xc
mov dword [ebp - 0x60], ebx
lea ecx, [ebp - 0x60]
push str.offer_set_id
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000ec5f
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x21
push eax
lea eax, [esi + 0xe0]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10015f9a
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10015f91
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push 0xd
mov dword [ebp - 0x60], ebx
lea ecx, [ebp - 0x60]
push str.installer_url
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000ec5f
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x22
push eax
lea eax, [esi + 0x110]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x1001600c
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10016003
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push str.installer_params
mov byte [ebp - 0x14], bl
lea ecx, [ebp - 0x60]
push dword [ebp - 0x14]
mov dword [ebp - 0x60], ebx
push 0x10
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x23
push eax
lea eax, [esi + 0x128]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10016084
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x1001607b
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
push str.installer_exe_name
mov byte [ebp - 0x14], bl
lea ecx, [ebp - 0x60]
push dword [ebp - 0x14]
mov dword [ebp - 0x60], ebx
push 0x12
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], bl
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x24
push eax
lea ebx, [esi + 0x140]
push ebx
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x100160fc
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x100160f3
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x4c], 0xf
push str.reg_display_name
mov byte [ebp - 0x14], al
lea ecx, [ebp - 0x60]
push dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
push 0x10
mov dword [ebp - 0x50], eax
mov byte [ebp - 0x60], al
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x25
push eax
lea eax, [esi + 0x158]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10016176
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x1001616d
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x4c], 0xf
push str.application_exe_name
mov byte [ebp - 0x14], al
lea ecx, [ebp - 0x60]
push dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
push 0x14
mov dword [ebp - 0x50], eax
mov byte [ebp - 0x60], al
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x26
push eax
lea eax, [esi + 0x170]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x100161f0
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x100161e7
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x4c], 0xf
push str.installer_auto_launch
mov byte [ebp - 0x14], al
lea ecx, [ebp - 0x60]
push dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
push 0x15
mov dword [ebp - 0x50], eax
mov byte [ebp - 0x60], al
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x27
push eax
lea eax, [esi + 0x1a0]
push eax
call fcn.10014e18
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x1001626a
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10016261
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x4c], 0xf
push 0xc
mov dword [ebp - 0x60], eax
lea ecx, [ebp - 0x60]
push str.verification
mov dword [ebp - 0x50], eax
mov byte [ebp - 0x60], al
call fcn.1000ec5f
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x28
push eax
lea eax, [esi + 0x1a4]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x100162de
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x100162d5
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x4c], 0xf
push str.installer_subject
mov byte [ebp - 0x14], al
lea ecx, [ebp - 0x60]
push dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
push 0x11
mov dword [ebp - 0x50], eax
mov byte [ebp - 0x60], al
call fcn.1000364d
push edi
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x29
push eax
lea eax, [esi + 0x1bc]
push eax
call fcn.10014683
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov byte [ebp - 4], 0x15
cmp eax, 0x10
jb 0x10016358
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x1001634f
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
xor eax, eax
mov byte [ebp - 0x14], al
lea eax, [ebp - 0xa0]
push dword [ebp - 0x14]
push ebx
push eax
call fcn.100024b9
add esp, 0xc
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x2a
push eax
lea ecx, [ebp - 0xa0]
call fcn.100171ae
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x2c
call fcn.1000e787
cmp dword [ebp - 0x30], 8
lea ecx, [ebp - 0x6d]
push ecx
push dword [ebp - 0x34]
lea eax, [ebp - 0x44]
cmovae eax, dword [ebp - 0x44]
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.10014f81
add esp, 0x10
lea eax, [ebp - 0x60]
lea ecx, [esi + 0x188]
push eax
call fcn.100090d3
lea ecx, [ebp - 0x60]
call fcn.1000e761
xor ebx, ebx
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
push 0xf
pop esi
push 0xa
mov dword [ebp - 0x60], ebx
lea ecx, [ebp - 0x60]
push str.offer_copy
mov byte [ebp - 4], 0x2d
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], esi
mov byte [ebp - 0x60], bl
call fcn.1000ec5f
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 0x2e
push eax
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100156cd
mov eax, dword [ebp - 0x4c]
cmp eax, 0x10
jb 0x10016443
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x1001643a
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], esi
mov byte [ebp - 0x60], bl
mov ebx, dword [ebp - 0x6c]
mov byte [ebp - 4], 0x31
test ebx, ebx
je 0x10016480
mov esi, ebx
jmp 0x1001646a
movzx eax, byte [esi]
lea ecx, [esi + 8]
push eax
call fcn.1000f3ba
add esi, 0x10
cmp esi, dword [ebp - 0x68]
jne 0x1001645b
mov eax, dword [ebp - 0x64]
sub eax, ebx
and eax, 0xfffffff0
push eax
push ebx
call fcn.10002792
pop ecx
pop ecx
mov esi, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x1c]
cmp esi, ebx
je 0x100164d6
mov edi, dword [ebp - 0x74]
push esi
lea ecx, [ebp - 0x104]
call fcn.1001805d
mov ecx, eax
mov eax, dword [edi + 4]
mov byte [ebp - 4], 0x32
push ecx
cmp eax, dword [edi + 8]
je 0x100164b5
mov ecx, eax
call fcn.100167e9
add dword [edi + 4], 0x64
jmp 0x100164bd
push eax
mov ecx, edi
call fcn.10015164
lea ecx, [ebp - 0x104]
mov byte [ebp - 4], 0x31
call fcn.1001683a
add esi, 0x10
cmp esi, ebx
jne 0x1001648d
mov edi, dword [ebp - 0x78]
lea ecx, [ebp - 0x20]
call fcn.1000e72f
xor ebx, ebx
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
push 0xf
pop esi
push str.install_reg_keys
mov byte [ebp - 0x74], bl
lea ecx, [ebp - 0x60]
push dword [ebp - 0x74]
mov dword [ebp - 0x60], ebx
push 0x10
mov byte [ebp - 4], 0x33
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], esi
mov byte [ebp - 0x60], bl
call fcn.1000364d
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 0x34
push eax
lea eax, [ebp - 0x60]
mov ecx, edi
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.100156cd
mov eax, dword [ebp - 0x4c]
cmp eax, 0x10
jb 0x1001655f
mov ecx, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x48], ecx
cmp eax, 0x1000
jb 0x10016556
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000c2e0
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x48]
push eax
push ecx
call fcn.100814bc
pop ecx
pop ecx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], esi
mov byte [ebp - 0x60], bl
mov ebx, dword [ebp - 0x6c]
mov byte [ebp - 4], 0x37
test ebx, ebx
je 0x1001659c
mov esi, ebx
jmp 0x10016586
movzx eax, byte [esi]
lea ecx, [esi + 8]
push eax
call fcn.1000f3ba
add esi, 0x10
cmp esi, dword [ebp - 0x68]
jne 0x10016577
mov eax, dword [ebp - 0x64]
sub eax, ebx
and eax, 0xfffffff0
push eax
push ebx
call fcn.10002792
pop ecx
pop ecx
mov esi, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x1c]
cmp esi, ebx
je 0x100165ec
mov edi, dword [ebp - 0x80]
push esi
lea ecx, [ebp - 0x130]
call fcn.10014873
mov ecx, dword [edi + 4]
mov byte [ebp - 4], 0x38
push eax
cmp ecx, dword [edi + 8]
je 0x100165cb
mov ecx, edi
call fcn.10015083
jmp 0x100165d3
push ecx
mov ecx, edi
call fcn.100150a5
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x37
call fcn.10012ff6
add esi, 0x10
cmp esi, ebx
jne 0x100165a9
mov edi, dword [ebp - 0x78]
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x2c
call fcn.1000e72f
sub esp, 0x10
mov ecx, esp
push edi
call fcn.100073c2
mov ecx, dword [ebp - 0x84]
call fcn.10009091
lea ecx, [ebp - 0x44]
call fcn.1000e787
mov eax, dword [ebp - 0x7c]
call fcn.100819f0
ret 4