Function at 0x46c418
Capabilities:
Check if file exists
Get geographical location

Disassembly:
push 0x2d0
mov eax, 0x572bc8
call fcn.0041439c
mov edi, ecx
mov dword [ebp - 0x2c0], edi
lea esi, [edi + 4]
xor ebx, ebx
mov dword [ebp - 0x2b8], ebx
push esi
mov dword [ebp - 0x2c4], esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
xor eax, eax
mov dword [ebp - 4], ebx
inc eax
mov dword [ebp - 0x2bc], eax
cmp byte [edi + 0x21], bl
jne 0x46c6d6
cmp dword [edi + 0x24], ebx
je 0x46c6d6
mov byte [edi + 0x21], al
lea eax, [ebp - 0x21c]
push 0x105
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x46c6d3
cmp eax, 0x105
jae 0x46c6d3
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x254]
call fcn.0040e610
cmp dword [ebp - 0x240], 8
lea eax, [ebp - 0x254]
push 0x5c
cmovae eax, dword [ebp - 0x254]
push 0xffffffffffffffff
push dword [ebp - 0x244]
mov byte [ebp - 4], 1
push eax
call fcn.0046ca80
add esp, 0x10
mov dword [ebp - 0x224], ebx
xor ecx, ecx
mov dword [ebp - 0x220], 7
mov word [ebp - 0x234], cx
lea ecx, [ebp - 0x234]
push eax
push ebx
lea eax, [ebp - 0x254]
push eax
call fcn.0046cab6
mov byte [ebp - 0x2bc], bl
lea eax, [ebp - 0x234]
push dword [ebp - 0x2bc]
lea ecx, [ebp - 0x254]
push eax
call fcn.0046caf8
mov eax, dword [ebp - 0x220]
cmp eax, 8
jb 0x46c536
lea eax, [eax*2 + 2]
push eax
push dword [ebp - 0x234]
call fcn.0046cb60
pop ecx
pop ecx
push 0xa
lea eax, [ebp - 0x268]
push eax
push 3
push dword [edi + 0x24]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x46c6c8
lea eax, [ebp - 0x268]
push eax
lea ecx, [ebp - 0x234]
call fcn.0040e610
mov byte [ebp - 4], 2
mov eax, ebx
mov dword [ebp - 0x2b8], ebx
push dword [eax*8 + 0x590bc4]
lea eax, [ebp - 0x268]
push eax
call fcn.0040c291
pop ecx
test eax, eax
mov eax, dword [ebp - 0x2b8]
pop ecx
je 0x46c59d
inc eax
mov dword [ebp - 0x2b8], eax
cmp eax, 8
jb 0x46c570
jmp 0x46c5af
push dword [eax*8 + 0x590bc0]
lea ecx, [ebp - 0x234]
call fcn.00440b97
mov eax, 0x58f798
mov dword [ebp - 0x2b8], ebx
mov dword [ebp - 0x2bc], eax
push eax
lea ecx, [ebp - 0x234]
call fcn.0045628a
test eax, eax
je 0x46c5f1
mov eax, dword [ebp - 0x2bc]
inc dword [ebp - 0x2b8]
add eax, 0x1e
mov dword [ebp - 0x2bc], eax
cmp eax, 0x590bc0
jl 0x46c5c0
jmp 0x46c6b6
imul edi, dword [ebp - 0x2b8], 0x1e
mov ecx, dword [ebp - 0x2c0]
push str.Locale_
lea eax, [edi + 0x58f798]
mov dword [ecx + 0x28], eax
lea ecx, [ebp - 0x254]
call fcn.0046cbc1
lea eax, [edi + 0x58f7a0]
push eax
lea ecx, [ebp - 0x254]
call fcn.0046cbc1
push str._brdlang32.
lea ecx, [ebp - 0x254]
call fcn.0046cbc1
cmp dword [ebp - 0x220], 8
lea eax, [ebp - 0x234]
push dword [ebp - 0x224]
cmovae eax, dword [ebp - 0x234]
lea ecx, [ebp - 0x254]
push eax
call fcn.0040ddb0
lea eax, [ebp - 0x254]
push ebx
push eax
call fcn.0042ba20
pop ecx
pop ecx
test al, al
jne 0x46c6b0
cmp dword [ebp - 0x240], 8
lea eax, [ebp - 0x254]
cmovae eax, dword [ebp - 0x254]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x46c6b0
cmp dword [ebp - 0x240], 8
lea eax, [ebp - 0x254]
push 2
cmovae eax, dword [ebp - 0x254]
push ebx
push eax
call fcn.00485230
mov ebx, eax
mov edi, dword [ebp - 0x2c0]
lea ecx, [ebp - 0x234]
call fcn.0046cb24
test ebx, ebx
je 0x46c6c8
mov dword [edi + 0x1c], ebx
lea ecx, [ebp - 0x254]
jmp 0x46ca67
xor eax, eax
inc eax
cmp byte [edi + 0x20], 0
jne 0x46ca6c
push str.SoftwareAdobeAcrobat_ReaderDCLanguage
lea ecx, [ebp - 0x29c]
mov byte [edi + 0x20], al
call fcn.0040e610
mov ecx, dword [0x5f3910]
mov byte [ebp - 4], 4
call fcn.0049abd8
test al, al
je 0x46c716
push str.SoftwareAdobeAdobe_AcrobatDCLanguage
lea ecx, [ebp - 0x29c]
call fcn.00440b97
push str.current_
lea ecx, [ebp - 0x29c]
call fcn.0046cbc1
xorps xmm0, xmm0
lea ecx, [ebp - 0x23c]
movlpd qword [ebp - 0x23c], xmm0
call fcn.00415390
push 8
pop edi
cmp dword [ebp - 0x288], edi
lea eax, [ebp - 0x29c]
push 0x20019
cmovae eax, dword [ebp - 0x29c]
lea ecx, [ebp - 0x23c]
push eax
push 0x80000001
mov byte [ebp - 4], 5
call fcn.004153a0
test eax, eax
je 0x46c7a1
cmp dword [ebp - 0x288], edi
lea eax, [ebp - 0x29c]
push 0x20019
cmovae eax, dword [ebp - 0x29c]
lea ecx, [ebp - 0x23c]
push eax
push 0x80000002
call fcn.004153a0
test eax, eax
jne 0x46ca56
xor eax, eax
mov dword [ebp - 0x274], ebx
mov dword [ebp - 0x270], 7
mov word [ebp - 0x284], ax
lea eax, [ebp - 0x284]
mov byte [ebp - 4], 7
push eax
push 0x586454
lea ecx, [ebp - 0x23c]
call fcn.0041f7a0
test eax, eax
jne 0x46ca1e
push 7
pop ecx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x220], ecx
mov word [ebp - 0x234], ax
mov dword [ebp - 0x25c], ebx
mov dword [ebp - 0x258], ecx
mov word [ebp - 0x26c], ax
cmp dword [ebp - 0x270], edi
lea ecx, [ebp - 0x26c]
push ecx
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 9
lea eax, [ebp - 0x284]
cmovae eax, dword [ebp - 0x284]
push ecx
mov ecx, dword [ebp - 0x2c0]
push eax
call fcn.0049ad51
test al, al
je 0x46c9c7
cmp dword [ebp - 0x224], 0
je 0x46c9c7
cmp dword [ebp - 0x25c], 0
je 0x46c9c7
push 0x104
lea eax, [ebp - 0x21c]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x46c9c7
cmp eax, 0x104
jae 0x46c9c7
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
je 0x46c9c7
push 0x58f62c
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
test eax, eax
je 0x46c9c7
cmp dword [ebp - 0x220], edi
lea eax, [ebp - 0x234]
cmovae eax, dword [ebp - 0x234]
push eax
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
test eax, eax
je 0x46c9c7
push str.brdlang32
lea ecx, [ebp - 0x2b4]
call fcn.0040e610
cmp dword [ebp - 0x258], edi
lea eax, [ebp - 0x26c]
push dword [ebp - 0x25c]
cmovae eax, dword [ebp - 0x26c]
lea ecx, [ebp - 0x2b4]
push eax
mov byte [ebp - 4], 0xa
call fcn.0040ddb0
cmp dword [ebp - 0x2a0], edi
lea eax, [ebp - 0x2b4]
cmovae eax, dword [ebp - 0x2b4]
push eax
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
test eax, eax
je 0x46c9bc
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x2dc]
call fcn.0040e610
lea eax, [ebp - 0x2dc]
mov byte [ebp - 4], 0xb
push ebx
push eax
mov dword [ebp - 0x2b8], 1
call fcn.0042ba20
pop ecx
pop ecx
test al, al
jne 0x46c97d
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x46c983
mov byte [ebp - 0x2bc], bl
lea ecx, [ebp - 0x2dc]
mov dword [ebp - 4], 0xa
call fcn.0046cb24
cmp byte [ebp - 0x2bc], 0
je 0x46c9bc
push 2
push ebx
lea eax, [ebp - 0x21c]
push eax
call fcn.00485230
mov ecx, eax
test ecx, ecx
je 0x46c9bc
mov eax, dword [ebp - 0x2c0]
mov dword [eax + 0x1c], ecx
lea ecx, [ebp - 0x2b4]
call fcn.0046cb24
mov eax, dword [ebp - 0x258]
cmp eax, edi
jb 0x46c9e6
lea eax, [eax*2 + 2]
push eax
push dword [ebp - 0x26c]
call fcn.0046cb60
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x25c], ebx
mov word [ebp - 0x26c], ax
mov eax, dword [ebp - 0x220]
mov dword [ebp - 0x258], 7
cmp eax, edi
jb 0x46ca1e
lea eax, [eax*2 + 2]
push eax
push dword [ebp - 0x234]
call fcn.0046cb60
pop ecx
pop ecx
mov eax, dword [ebp - 0x270]
cmp eax, edi
jb 0x46ca3d
lea eax, [eax*2 + 2]
push eax
push dword [ebp - 0x284]
call fcn.0046cb60
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x274], ebx
mov dword [ebp - 0x270], 7
mov word [ebp - 0x284], ax
lea ecx, [ebp - 0x23c]
call fcn.0040c8e0
lea ecx, [ebp - 0x29c]
call fcn.0046cb24
push esi
mov dword [ebp - 4], 0xc
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call fcn.00414f8b
ret