Function at 0x434894
Capabilities:
Get geographical location

Disassembly:
push ebp
sub esp, 0x19c
lea ebp, [esp - 4]
mov eax, dword [0x4f9590]
xor eax, ebp
mov dword [ebp + 0x19c], eax
push 0x3c
mov eax, 0x4c19ea
call fcn.00494508
mov eax, dword [ebp + 0x1a8]
and dword [ebp - 0x38], 0
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 0x1ac]
mov esi, ecx
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x34], eax
call fcn.004724b0
push str.stub
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 1
call fcn.00472760
mov ebx, dword [ebp + 0x1b0]
and ebx, 0xbb
mov byte [ebp - 4], 2
mov edi, str.prod
je 0x43492d
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x14]
push edi
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0x44
je 0x434963
lea eax, [esi + 0x16c]
push eax
lea eax, [ebp - 0x14]
push edi
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 4
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0x3b
je 0x4349b4
push 0x4cfd04
lea ecx, [ebp - 0x40]
call fcn.00472760
push eax
lea eax, [ebp - 0x14]
push str.version
push eax
mov byte [ebp - 4], 5
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 6
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 5
call fcn.00472740
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 2
call fcn.00472740
mov eax, dword [ebp + 0x1b0]
and eax, 0xcc
mov dword [ebp - 0x3c], eax
je 0x4349f5
lea eax, [esi + 0x184]
push eax
lea eax, [ebp - 0x14]
push str.ver
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 7
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0xaa
je 0x434a2f
lea eax, [esi + 0x15c]
push eax
lea eax, [ebp - 0x14]
push str.DistCode
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 8
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0xdd
je 0x434a69
lea eax, [esi + 0x15c]
push eax
lea eax, [ebp - 0x14]
push 0x4d0220
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 9
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0xab
je 0x434aae
lea edi, [esi + 0x4c8]
mov ecx, edi
call fcn.0040d513
test al, al
jne 0x434aae
push edi
lea eax, [ebp - 0x14]
push str.testid
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xa
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
cmp byte [ebp + 0x1b0], 0
je 0x434ae8
lea eax, [esi + 0x194]
push eax
lea eax, [ebp - 0x14]
push 0x4d0218
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xb
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test ebx, ebx
je 0x434b52
lea eax, [esi + 0xec]
push eax
lea eax, [ebp - 0x14]
push str.userid
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xc
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test ebx, ebx
je 0x434b52
lea eax, [esi + 0xf4]
push eax
lea eax, [ebp - 0x14]
push str.sysid
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xd
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0xf
je 0x434b9f
lea eax, [esi + 0x15c]
push eax
lea edi, [esi + 0x174]
push edi
call fcn.0040d59b
pop ecx
pop ecx
test al, al
je 0x434b9f
push edi
lea eax, [ebp - 0x14]
push str.prevcode
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xe
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
mov eax, dword [ebp + 0x1b0]
and eax, 0x99
mov dword [ebp - 0x28], eax
je 0x434be0
lea eax, [esi + 0x16c]
push eax
lea eax, [ebp - 0x14]
push str.payload
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xf
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0xfd
je 0x434c1a
lea eax, [esi + 0x17c]
push eax
lea eax, [ebp - 0x14]
push str.li
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x10
call fcn.00472ca0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0x9d
mov ebx, 0xff
je 0x434d10
and dword [ebp], 0
push 0x98
lea eax, [ebp + 4]
push 0
push eax
call fcn.00493f80
lea edi, [ebx - 0x63]
push edi
lea eax, [ebp]
push 0
push eax
call fcn.00493f80
add esp, 0x18
lea eax, [ebp]
mov dword [ebp], edi
mov edi, dword [sym.imp.KERNEL32.dll_GetVersionExA]
push eax
call edi
test eax, eax
jne 0x434c72
lea eax, [ebp]
push eax
mov dword [ebp], 0x94
call edi
lea ecx, [ebp - 0x14]
call fcn.004724b0
push ebx
lea eax, [ebp + 0x9d]
push 0
push eax
mov byte [ebp - 4], 0x11
mov byte [ebp + 0x9c], 0
call fcn.00493f80
add esp, 0xc
push 0x100
lea eax, [ebp + 0x9c]
push eax
push 0x59
push 0x400
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
lea eax, [ebp + 0x9c]
push eax
movzx eax, word [ebp + 0x94]
push eax
push dword [ebp + 0xc]
lea eax, [ebp - 0x14]
push dword [ebp + 8]
push dword [ebp + 4]
push str._d._d._dSP_d_s
push eax
call fcn.00473410
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x24]
push str.os
push eax
call fcn.00473090
add esp, 0x28
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x12
call fcn.00472ca0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x11
call fcn.00472740
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
mov edi, dword [ebp - 0x28]
test edi, edi
je 0x434e7d
lea ecx, [ebp - 0x14]
call fcn.004724b0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x13
call fcn.004724b0
xor eax, eax
push eax
push eax
lea ecx, [ebp - 0x2c]
push ecx
push eax
push str.SOFTWAREMicrosoftWindowsCurrentVersionApp_Pathsiexplore.exe
push reloc.OLEAUT32.dll_SysReAllocString
mov byte [ebp - 4], 0x14
call fcn.0041014a
add esp, 0x18
test eax, eax
je 0x434d94
push ebx
lea eax, [ebp + 0x9d]
push 0
push eax
mov byte [ebp + 0x9c], 0
call fcn.00493f80
add esp, 0xc
lea eax, [ebp - 0x2c]
cmp byte [ebp - 0x25], bl
jne 0x434d76
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp + 0x9c]
push ecx
push eax
call fcn.00410568
pop ecx
pop ecx
lea eax, [ebp + 0x9c]
push eax
lea ecx, [ebp - 0x14]
call fcn.00472890
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x24]
push str.ie
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x15
call fcn.00472ca0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x14
call fcn.00472740
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x13
call fcn.00472740
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.00472740
test edi, edi
je 0x434e7d
lea eax, [esi + 0x84]
push eax
lea eax, [ebp - 0x24]
push str.origcode
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x16
call fcn.00472ca0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00472740
test edi, edi
je 0x434e7d
lea eax, [esi + 0x8c]
push eax
lea eax, [ebp - 0x24]
push str.overcode
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x17
call fcn.00472ca0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00472740
test edi, edi
je 0x434e7d
lea eax, [esi + 0x3dc]
push eax
lea eax, [ebp - 0x24]
push str.xml_id
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x18
call fcn.00472ca0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0x10
je 0x434eb7
lea eax, [esi + 0x144]
push eax
lea eax, [ebp - 0x24]
push str.impetus
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x19
call fcn.00472ca0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0x89
je 0x434ef1
lea eax, [esi + 0x3e4]
push eax
lea eax, [ebp - 0x24]
push str.pkg_id
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x1a
call fcn.00472ca0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00472740
test byte [ebp + 0x1b0], 0x88
je 0x434f2b
lea eax, [esi + 0x16c]
push eax
lea eax, [ebp - 0x24]
push str.product
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x1b
call fcn.00472ca0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00472740
cmp dword [ebp - 0x3c], 0
je 0x434f62
add esi, 0x4d0
push esi
lea eax, [ebp - 0x24]
push str.oem
push eax
call fcn.00473090
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x1c
call fcn.00472ca0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00472740
mov ecx, dword [ebp - 0x34]
push 0x3f
call fcn.00472530
cmp eax, 0xffffffff
jne 0x434f87
lea ecx, [ebp - 0x1c]
call fcn.00472f90
lea eax, [ebp - 0x1c]
cmp byte [ebp - 0x15], bl
jne 0x434f84
mov eax, dword [ebp - 0x1c]
mov byte [eax], 0x3f
lea eax, [ebp - 0x1c]
push eax
push dword [ebp - 0x34]
push dword [ebp - 0x30]
call fcn.00472ff0
add esp, 0xc
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 1
mov byte [ebp - 4], 1
call fcn.00472740
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0
call fcn.00472740
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x19c]
xor ecx, ebp
call fcn.004944f9
add ebp, 0x1a0
leave
ret 0xc