Function at 0x341f84e9
Capabilities:
Get geographical location

Disassembly:
sub esp, 0x2c
mov eax, dword [0x342226fc]
xor eax, esp
mov dword [esp + 0x28], eax
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
push ebx
mov ebx, dword [esp + 0x44]
push ebp
push esi
mov esi, dword [esp + 0x3c]
push edi
mov edi, ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x10], ecx
lea ecx, [edx + edx]
xor ebp, ebp
push ecx
push ebp
push eax
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x28], ebp
call sub.msvcr80.dll_memset
add esp, 0xc
cmp ebx, ebp
jne 0x34263738
mov dword [edi + 0xdc], 0xfffeff
mov word [edi + 0xe0], bp
movzx eax, word [esi]
cmp ax, 0x3b
jne 0x3429b29f
movzx eax, word [esi]
cmp ax, bp
je 0x341f86fc
mov edi, edi
cmp ax, 0x20
je 0x3429b2be
cmp word [esi], 0x3b
jne 0x341f86fc
movzx eax, word [esi + 2]
add esi, 2
test ax, ax
je 0x341f86fc
cmp ax, 0x20
je 0x3429b2cd
movzx eax, word [esi]
test ax, ax
je 0x341f86fc
mov ebp, esi
cmp ax, 0x3d
je 0x341f85c6
cmp ax, 0x20
je 0x341f85c6
movzx eax, word [esi + 2]
add esi, 2
test ax, ax
jne 0x341f85a9
jmp 0x3429b2dd
cmp word [esi], 0
je 0x3429b2dd
mov ebx, esi
sub ebx, ebp
sar ebx, 1
cmp word [esi], 0x20
je 0x3429b2f2
cmp word [esi], 0x3d
jne 0x3429b301
add esi, 2
cmp word [esi], 0
je 0x3429b301
cmp word [esi], 0x20
mov edi, esi
je 0x3429b316
cmp dword [esp + 0x1c], 0
jne 0x341f8622
push 3
push ebp
push 0x341f872c
call fcn.341f8750
add esp, 0xc
test eax, eax
je 0x3429b325
cmp word [esi], 0
je 0x3429b397
push 6
push ebp
push 0x341f8734
call fcn.341f8750
add esp, 0xc
test eax, eax
je 0x3429b3ac
push 4
push ebp
push 0x341f8744
call fcn.341f8750
add esp, 0xc
test eax, eax
jne 0x3429b3e9
cmp ebx, 4
jne 0x3429b3e9
mov ebx, 3
push 0
lea eax, [esp + 0x1c]
push eax
push esi
call dword [sym.imp.msvcr80.dll_wcstol]
add esp, 0xc
cmp esi, dword [esp + 0x18]
mov edi, eax
je 0x3429b3bc
test ebx, ebx
mov esi, dword [esp + 0x18]
je 0x341f8698
cmp ebx, 3
jne 0x3429b3d1
test edi, edi
je 0x3429b4dc
mov ebx, dword [esp + 0x28]
mov edx, dword [ebx + 0xdc]
push 0xa
lea eax, [esp + 0x30]
push eax
and edx, 0xff000000
push 0x1004
add edx, edi
push edi
mov dword [ebx + 0xdc], edx
call dword [sym.imp.kernel32.dll_GetLocaleInfoA]
test eax, eax
je 0x3429b4f1
lea ecx, [esp + 0x2c]
push ecx
call dword [sym.imp.msvcr80.dll_atoi]
add esp, 4
mov word [ebx + 0xe0], ax
mov dword [esp + 0x20], 1
movzx eax, word [esi]
test ax, ax
jne 0x341f856d
mov eax, dword [esp + 0x10]
test byte [eax], 8
pop edi
pop esi
pop ebp
pop ebx
jne 0x341f871b
cmp dword [esp + 0x3c], 0
jne 0x341f871b
cmp dword [esp + 0x10], 0
je 0x3429b522
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.341f1b18
add esp, 0x2c
ret 0x18
push 0x144
push ebp
push ebx
call sub.msvcr80.dll_memset
add esp, 0xc
jmp 0x341f8541
movzx eax, ax
cmp ax, bp
je 0x341f855f
movzx eax, word [esi + 2]
add esi, 2
cmp ax, 0x3b
je 0x341f855f
jmp 0x3429b2a2
add esi, 2
cmp word [esi], 0x20
jne 0x341f8577
jmp 0x3429b2be
nop
add esi, 2
cmp word [esi], 0x20
jne 0x341f859b
jmp 0x3429b2ce
mov ecx, dword [esp + 0x10]
push 1
push 0xfffffc15
call fcn.341f7675
jmp 0x341f85d0
add esi, 2
cmp word [esi], 0x20
jne 0x341f85e0
jmp 0x3429b2f2
mov ecx, dword [esp + 0x10]
push 1
push 0xfffffc15
call fcn.341f7675
jmp 0x341f85f7
add esi, 2
cmp word [esi], 0x20
jne 0x341f8603
jmp 0x3429b316
cmp ebx, 3
jne 0x341f8622
movzx eax, word [edi]
xor ecx, ecx
test ax, ax
mov dword [esp + 0x1c], 1
mov esi, edi
je 0x341f86f0
movzx eax, ax
cmp ax, 0x3b
je 0x341f86f0
cmp ax, 0x5c
jne 0x3429b360
cmp word [esi + 2], 0
je 0x3429b382
cmp ecx, dword [esp + 0x48]
jae 0x3429b382
mov edx, dword [esp + 0x24]
add esi, 2
mov word [edx + ecx*2], ax
movzx eax, word [esi]
add ecx, 1
test ax, ax
je 0x341f86fc
jmp 0x3429b349
mov ecx, dword [esp + 0x10]
push 1
push 0xfffff88f
call fcn.341f7675
jmp 0x341f86f0
mov ecx, dword [esp + 0x10]
push 1
push 0xfffffc15
call fcn.341f7675
jmp 0x341f86f0
cmp ebx, 6
jne 0x341f8644
xor ebx, ebx
jmp 0x341f866a
mov ecx, dword [esp + 0x10]
push 1
push 0xfffffc15
call fcn.341f7675
jmp 0x341f8687
cmp ebx, 7
jne 0x341f86f0
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x140], edi
jmp 0x341f86f0
cmp dword [esp + 0x14], 0
je 0x3429b4b1
push 3
push ebp
push 0x3429b538
call fcn.341f8750
add esp, 0xc
test eax, eax
jne 0x3429b46e
cmp ebx, 3
jne 0x3429b46e
mov eax, 5
mov ebx, dword [esp + 0x14]
mov ecx, eax
sub ecx, 5
xor edi, edi
neg ecx
sbb ecx, ecx
and ecx, 0xffffffa0
add ecx, 0x80
cmp eax, 5
je 0x3429b435
add ebx, 0x100
movzx eax, word [esi]
test ax, ax
je 0x3429b517
cmp ax, 0x3b
je 0x3429b517
lea edx, [ecx - 1]
cmp edi, edx
jge 0x3429b507
add esi, 2
mov word [ebx + edi*2], ax
movzx eax, word [esi]
add edi, 1
test ax, ax
je 0x3429b517
jmp 0x3429b441
push 5
push ebp
push 0x3429b540
call fcn.341f8750
add esp, 0xc
test eax, eax
jne 0x3429b48e
cmp ebx, 5
jne 0x3429b48e
mov eax, 6
jmp 0x3429b412
push 6
push ebp
push 0x3429b54c
call fcn.341f8750
add esp, 0xc
test eax, eax
jne 0x3429b4b1
cmp ebx, 6
jne 0x3429b4b1
mov ebx, 7
jmp 0x341f866a
movzx eax, word [esi]
test ax, ax
je 0x341f86fc
lea esp, [esp]
cmp ax, 0x3b
je 0x341f86f0
movzx eax, word [esi + 2]
add esi, 2
test ax, ax
je 0x341f86fc
jmp 0x3429b4c0
mov ecx, dword [esp + 0x10]
push 1
push 0xffffec5e
call fcn.341f7675
jmp 0x341f86f0
mov word [ebx + 0xe0], 0
mov dword [esp + 0x20], 1
jmp 0x341f86f0
mov ecx, dword [esp + 0x10]
push 1
push 0xfffffc15
call fcn.341f7675
mov word [ebx + edi*2], 0
jmp 0x341f86f0
push 1
push 0xfffffbda
mov ecx, eax
call fcn.341f7675
jmp 0x341f871b