Function at 0x21021529
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x168
mov eax, dword [ebp + 8]
mov dword [0x2107bdc0], eax
push 0x2a
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [0x2107b914], eax
cmp dword [0x2107b914], 0
je 0x21021577
lea ecx, [ebp - 0x44]
push ecx
push 0x3c
push 0x11
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
call dword [sym.imp.GDI32.dll_GetObjectA]
test eax, eax
je 0x21021577
lea edx, [ebp - 0x44]
push edx
call fcn.21046d54
mov dword [0x2107b910], eax
push 0x2107bdac
push 0x2107bdae
push 0x2107bdb0
push 0x2107bdb4
push 0x2107bdb8
push 0x2107bdbc
call fcn.2102daaa
call fcn.21002fe0
movsx eax, byte [0x2107bf48]
test eax, eax
jne 0x210215c8
push 0x21073d00
push 0x28be
push 0x21073d0c
push 0x80
push 0x2107bf48
call fcn.21021b6a
movsx ecx, byte [0x2107bec8]
test ecx, ecx
jne 0x210215f1
push 0x21073d18
push 0x28bf
push 0x21073d28
push 0x80
push 0x2107bec8
call fcn.21021b6a
push 0x21073d34
push 0x28c0
push 0x21073d40
push 0x80
push 0x2107b760
call fcn.21021b6a
push 0x21073d50
push 0x28c1
push 0x21073d5c
push 0x80
push 0x2107b6e0
call fcn.21021b6a
push 0x21073d68
push 0x28c2
push 0x21073d74
push 0x80
push 0x2107b660
call fcn.21021b6a
push 0x21073d7c
push 0x28c3
push 0x21073d88
push 0x80
push 0x2107be48
call fcn.21021b6a
push 0x21073da0
push 0x28c4
push 0x21073dac
push 0x80
push 0x2107bdc8
call fcn.21021b6a
cmp dword [0x2107bdbc], 0
je 0x2102169e
mov edx, dword [str.t6_a_]
mov dword [0x2107bda4], edx
jmp 0x210216a8
mov eax, dword [0x21073498]
mov dword [0x2107bda4], eax
cmp dword [0x2107bdbc], 0
je 0x210216f7
mov ecx, dword [str.fppdr3.drv]
mov dword [0x2107b404], ecx
mov edx, dword [str.fppdr3.drv]
mov dword [0x2107b400], edx
mov eax, dword [0x210735d0]
mov dword [0x2107b3fc], eax
mov ecx, dword [str.fppmon3a.dll]
mov dword [0x2107b3f8], ecx
mov edx, dword [0x210735d8]
mov dword [0x2107b3f4], edx
mov eax, dword [0x210735dc]
mov dword [0x2107b3f0], eax
jmp 0x2102173b
mov ecx, dword [str.fppgraf3.dll]
mov dword [0x2107b404], ecx
mov edx, dword [str.fppint3.dll]
mov dword [0x2107b400], edx
mov eax, dword [str.fppdes3a.dll]
mov dword [0x2107b3fc], eax
mov ecx, dword [str.fppmon3.dll]
mov dword [0x2107b3f8], ecx
mov edx, dword [str.fppui3a.dll]
mov dword [0x2107b3f4], edx
mov eax, dword [str.fppdis3a.exe]
mov dword [0x2107b3f0], eax
push 0x50
push 0x2107ba24
push 0x1001
push 0x800
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
push 0x20
lea ecx, [ebp - 0x168]
push ecx
push 9
push 0x800
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
push 0x10
lea edx, [ebp - 8]
push edx
lea eax, [ebp - 0x168]
push eax
call fcn.21049e5f
add esp, 0xc
mov word [0x2107ba20], ax
push 0x2107ae9c
push pe_nt_image_headers32
push 0x2107b508
call fcn.210032d1
push 0x2107ad9c
push pe_nt_image_headers32
push 0x2107b408
call fcn.210032d1
mov ecx, dword [ebp + 8]
push ecx
call fcn.21021cac
test eax, eax
jne 0x210217e7
push 0x104
lea edx, [ebp - 0x148]
push edx
push 0x271a
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
test eax, eax
jne 0x210217de
xor eax, eax
jmp 0x21021b64
mov ecx, dword [ebp + 8]
mov dword [0x2107bdc4], ecx
push str.AppTitle
push 0x28be
push 0x21073de8
push 0x80
push 0x2107bf48
call fcn.21021b6a
push str.AppTitleFull
push 0x28bf
push 0x21073e04
push 0x80
push 0x2107bec8
call fcn.21021b6a
push str.DriverName
push 0x28c0
push str.pdfFactory_3
push 0x80
push 0x2107b760
call fcn.21021b6a
push str.PrinterName
push 0x28c1
push str.pdfFactory
push 0x80
push 0x2107b6e0
call fcn.21021b6a
push str.PortName
push 0x28c2
push str.FPP3:
push 0x80
push 0x2107b660
call fcn.21021b6a
push str.CompanyName
push 0x28c3
push str.FinePrint_Software__LLC
push 0x80
push 0x2107be48
call fcn.21021b6a
push str.Copyright
push 0x28c4
push str.Copyright__c__2001_2007_FinePrint_Software__LLC
push 0x80
push 0x2107bdc8
call fcn.21021b6a
push str.UrlHome
push 0x285b
push 0
push 0xc0
push 0x2107bce4
call fcn.21021b6a
push 1
push 0x2107bce4
push 0x21073ec0
call fcn.210481b9
test eax, eax
je 0x210218ff
push 0x2107bceb
push 0xc0
push 0x2107bc24
call fcn.210032d1
jmp 0x21021913
push 0x2107bce4
push 0xc0
push 0x2107bc24
call fcn.210032d1
push str.UrlSupport
push 0x28bc
push 0
push 0xc0
push 0x2107bb64
call fcn.21021b6a
movsx edx, byte [0x2107bb64]
test edx, edx
jne 0x2102194b
push 0x2107bce4
push 0x2107bb64
call fcn.21048fc0
add esp, 8
push str.UrlPurchaseOnline
push 0x277d
push 0
push 0xc0
push 0x2107baa4
call fcn.21021b6a
movsx eax, byte [0x2107baa4]
test eax, eax
jne 0x21021983
push 0x2107bce4
push 0x2107baa4
call fcn.21048fc0
add esp, 8
push 0x2107bf48
push 0x2716
push 0x28
push 0x2107b638
call fcn.2103fdd0
add esp, 0x10
movsx ecx, byte [0x2107b638]
test ecx, ecx
jne 0x210219be
push 0x2107bf48
push str.1_Dispatcher
push 0x2107b638
call fcn.21048f5f
add esp, 0xc
push 3
push 0x2107b638
push str._s_v_d
push 0x2107b608
call fcn.21048f5f
add esp, 0x10
push 0x2741
push 0x80
push 0x2107b7e0
call fcn.2103fdd0
add esp, 0xc
mov dword [ebp - 4], 0
jmp 0x21021a00
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 3
jge 0x21021a6d
cmp dword [ebp - 4], 0
jne 0x21021a4b
push 0x20
mov eax, dword [ebp - 4]
shl eax, 5
add eax, 0x2107b860
push eax
push str.UrlPurchaseOffline
call fcn.2103dfbb
test eax, eax
jne 0x21021a49
mov ecx, dword [ebp - 4]
add ecx, 0x2742
push ecx
push 0x20
mov edx, dword [ebp - 4]
shl edx, 5
add edx, 0x2107b860
push edx
call fcn.2103fdd0
add esp, 0xc
jmp 0x21021a6b
mov eax, dword [ebp - 4]
add eax, 0x2742
push eax
push 0x20
mov ecx, dword [ebp - 4]
shl ecx, 5
add ecx, 0x2107b860
push ecx
call fcn.2103fdd0
add esp, 0xc
jmp 0x210219f7
push 0x273f
push 0x20
push 0x2107ba84
call fcn.2103fdd0
add esp, 0xc
push 0x2740
push 0x104
lea edx, [ebp - 0x148]
push edx
call fcn.2103fdd0
add esp, 0xc
lea eax, [ebp - 0x148]
push eax
call fcn.2104a20c
add esp, 4
mov dword [0x2107ba80], eax
cmp dword [0x2107ba80], 0
jg 0x21021ac1
mov dword [0x2107ba80], 8
push 0x273e
push 0x104
lea ecx, [ebp - 0x148]
push ecx
call fcn.2103fdd0
add esp, 0xc
lea edx, [ebp - 0x148]
push edx
call fcn.2104a20c
add esp, 4
mov dword [0x2107ba7c], eax
cmp dword [0x2107ba7c], 0
ja 0x21021b01
mov dword [0x2107ba7c], 1
push 0x274c
push 0x104
lea eax, [ebp - 0x148]
push eax
call fcn.2103fdd0
add esp, 0xc
lea ecx, [ebp - 0x148]
push ecx
call fcn.2104a20c
add esp, 4
mov dword [0x2107ba78], eax
push 0x2107bf48
push 0x2764
push 0x50
push 0x2107b8c0
call fcn.2103fdd0
add esp, 0x10
call fcn.21021c31
push 0
mov ecx, 0x2107bfd8
call fcn.2102cbcf
xor eax, eax
cmp dword [0x2107bdc4], 0
setne al
mov esp, ebp
pop ebp
ret 4