Function at 0x61247515
Capabilities:
Get geographical location
Hide graphical window
Query or enumerate registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x258
mov eax, dword [0x61253ebc]
push ebx
push esi
push edi
push 5
pop ecx
push 0x42e
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push 0xe
xor ebx, ebx
mov esi, 0x61241350
lea edi, [ebp - 0x18]
push eax
mov dword [ebp - 0x220], eax
mov word [ebp - 0x234], bx
rep movsd dword es:[edi], dword [esi]
call fcn.6124be2f
mov esi, dword [ebp - 0x220]
push 0x434
push 0x51
push esi
call fcn.6124be2f
push 0x437
push 0xc
push esi
call fcn.6124be2f
push 0x431
push 0xf
push esi
call fcn.6124be2f
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x430
push esi
call edi
push 0x432
push esi
mov dword [ebp - 0x224], eax
call edi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x228], eax
mov dword [ebp - 0x21c], 0x61252a14
push dword [ebp - 0x21c]
push 0xffffffffffffffff
push 0x14a
push dword [ebp - 0x224]
call esi
add dword [ebp - 0x21c], 6
cmp dword [ebp - 0x21c], 0x61252a50
jl 0x612475b6
push 0x80
lea eax, [ebp - 0x118]
push eax
push 0x11
push dword [0x61254ab0]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x6124760c
lea eax, [ebp - 0x118]
push eax
push 0xffffffffffffffff
push 0x14d
jmp 0x61247613
push ebx
push ebx
push 0x14e
push dword [ebp - 0x224]
call esi
lea eax, [ebp - 0x234]
push 0x80
mov dword [ebp - 0x24c], eax
lea eax, [ebp - 0x218]
push eax
push 0xf
push dword [0x61254ab0]
mov dword [ebp - 0x258], ebx
mov dword [ebp - 0x254], ebx
mov dword [ebp - 0x244], ebx
mov dword [ebp - 0x248], eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push 0x80
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x18]
push eax
push ebx
push dword [0x61254ab0]
mov dword [ebp - 0x250], ebx
call dword [sym.imp.KERNEL32.dll_GetNumberFormatW]
lea eax, [ebp - 0x118]
push eax
push 0xffffffffffffffff
push 0x14a
push dword [ebp - 0x228]
call esi
push 0x80
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x18]
push eax
push ebx
push dword [0x61254ab0]
mov dword [ebp - 0x250], 3
call dword [sym.imp.KERNEL32.dll_GetNumberFormatW]
lea eax, [ebp - 0x118]
push eax
push 0xffffffffffffffff
push 0x14a
push dword [ebp - 0x228]
call esi
push 0x80
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x18]
push eax
push ebx
push dword [0x61254ab0]
mov dword [ebp - 0x250], 0x20
call dword [sym.imp.KERNEL32.dll_GetNumberFormatW]
lea eax, [ebp - 0x118]
push eax
push 0xffffffffffffffff
push 0x14a
push dword [ebp - 0x228]
call esi
push 0x80
lea eax, [ebp - 0x118]
push eax
push 0x10
push dword [0x61254ab0]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x61247841
mov ax, word [ebp - 0x118]
cmp ax, bx
je 0x61247841
cmp ax, 0x33
mov dword [ebp - 0x21c], ebx
jne 0x61247791
cmp word [ebp - 0x116], 0x3b
jne 0x61247782
cmp word [ebp - 0x114], 0x32
jne 0x61247782
mov dword [ebp - 0x21c], 2
jmp 0x61247838
mov dword [ebp - 0x21c], 1
jmp 0x61247838
cmp ax, 0x30
jbe 0x61247838
cmp ax, 0x39
ja 0x61247838
cmp word [ebp - 0x116], bx
je 0x612477c4
push 0x61241348
lea eax, [ebp - 0x116]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
jne 0x61247838
movzx eax, word [ebp - 0x118]
sub eax, 0x30
push 0x80
mov dword [ebp - 0x250], eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x18]
push eax
push ebx
push dword [0x61254ab0]
call dword [sym.imp.KERNEL32.dll_GetNumberFormatW]
test eax, eax
je 0x61247838
lea eax, [ebp - 0x118]
push eax
push 0xffffffffffffffff
push 0x14a
push dword [ebp - 0x228]
call esi
cmp eax, ebx
mov dword [ebp - 0x21c], eax
jl 0x61247832
push dword [ebp - 0x250]
push eax
push 0x151
push dword [ebp - 0x228]
call esi
jmp 0x61247838
mov dword [ebp - 0x21c], ebx
push ebx
push dword [ebp - 0x21c]
jmp 0x61247843
push ebx
push ebx
push 0x14e
push dword [ebp - 0x228]
call esi
push ebx
push 0x438
push dword [ebp - 0x220]
call fcn.6124bcfb
test eax, eax
je 0x612478d9
push ebx
push dword [0x61254ab0]
push 0x6124c10f
call fcn.6124c23c
push ebx
push 0x438
push ebx
call fcn.6124bcfb
push 0x80
lea eax, [ebp - 0x118]
push eax
push 0x12
push dword [0x61254ab0]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x612478c5
push ebx
lea eax, [ebp - 0x118]
push eax
call fcn.6124b0a3
push eax
push 0x14e
push 0x438
push dword [ebp - 0x220]
call edi
push eax
call esi
jmp 0x612478d9
push 0x40
push ebx
push 0x612543e0
push dword [ebp - 0x220]
call dword [sym.imp.USER32.dll_MessageBoxW]
push ebx
push 0x436
push dword [ebp - 0x220]
call fcn.6124bcfb
test eax, eax
je 0x61247965
push ebx
push dword [0x61254ab0]
push 0x6124c10f
call fcn.6124c312
push ebx
push 0x436
push ebx
call fcn.6124bcfb
push 0x80
lea eax, [ebp - 0x118]
push eax
push 0x1010
push dword [0x61254ab0]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x61247951
push ebx
lea eax, [ebp - 0x118]
push eax
call fcn.6124b0a3
push eax
push 0x14e
push 0x436
push dword [ebp - 0x220]
call edi
push eax
call esi
jmp 0x61247965
push 0x40
push ebx
push 0x612543e0
push dword [ebp - 0x220]
call dword [sym.imp.USER32.dll_MessageBoxW]
push ebx
push 0x439
push dword [ebp - 0x220]
call fcn.6124bcfb
test eax, eax
je 0x612479ee
push ebx
push dword [0x61254ab0]
push 0x6124c0f5
call fcn.6124c3e4
push ebx
push 0x439
push ebx
call fcn.6124bcfb
push 0x80
lea eax, [ebp - 0x118]
push eax
push 0xd
push dword [0x61254ab0]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x612479da
push ebx
lea eax, [ebp - 0x118]
push eax
call fcn.6124b0a3
push eax
push 0x14e
push 0x439
push dword [ebp - 0x220]
call edi
push eax
call esi
jmp 0x612479ee
push 0x40
push ebx
push 0x612543e0
push dword [ebp - 0x220]
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0x43b
push dword [ebp - 0x220]
call edi
cmp dword [0x61254970], ebx
mov dword [ebp - 0x224], eax
mov eax, 0x61242134
jne 0x61247a13
mov eax, 0x612420a4
push eax
push ebx
push 0x143
push dword [ebp - 0x224]
call esi
push ebx
push ebx
push 0x14e
push dword [ebp - 0x224]
call esi
lea eax, [ebp - 0x240]
push eax
push 0x20019
push ebx
push 0x612420c8
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x61247b50
mov dword [ebp - 0x22c], 1
mov dword [ebp - 0x228], 0x61241ea0
mov eax, dword [ebp - 0x228]
cmp dword [eax], ebx
je 0x61247b27
push dword [ebp - 0x22c]
lea eax, [ebp - 0x118]
push 0x612420c0
push eax
mov dword [ebp - 0x238], ebx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
lea eax, [ebp - 0x238]
push eax
push ebx
push ebx
push ebx
lea eax, [ebp - 0x118]
push eax
push dword [ebp - 0x240]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
push 2
pop eax
cmp dword [ebp - 0x238], eax
jbe 0x61247b27
mov ecx, dword [ebp - 0x228]
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x21c]
mov eax, dword [eax]
cmp eax, ebx
je 0x61247b18
lea eax, [eax*4 + 0x61241f18]
push dword [eax]
mov dword [ebp - 0x230], eax
push 0xffffffffffffffff
push 0x158
push dword [ebp - 0x224]
call esi
cmp eax, 0xffffffff
jne 0x61247b18
mov eax, dword [ebp - 0x230]
push dword [eax]
push ebx
push 0x143
push dword [ebp - 0x224]
call esi
add dword [ebp - 0x21c], 4
dec dword [ebp - 0x23c]
jne 0x61247ad3
add dword [ebp - 0x228], 8
inc dword [ebp - 0x22c]
cmp dword [ebp - 0x228], 0x61241f18
jl 0x61247a6a
push dword [ebp - 0x240]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x80
lea eax, [ebp - 0x118]
push eax
push 0x13
push dword [0x61254ab0]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x61247bc2
lea eax, [ebp - 0x118]
push eax
call fcn.61246fb9
test eax, eax
jne 0x61247bc2
lea eax, [ebp - 0x118]
push eax
push 0xffffffffffffffff
push 0x158
push dword [ebp - 0x224]
call esi
cmp eax, 0xffffffff
jne 0x61247bb3
lea eax, [ebp - 0x118]
push eax
push ebx
push 0x143
push dword [ebp - 0x224]
call esi
cmp eax, 0xffffffff
je 0x61247bc2
push ebx
push eax
push 0x14e
push dword [ebp - 0x224]
call esi
push 0x80
lea eax, [ebp - 0x118]
push eax
push 0x80000013
push dword [0x61254ab0]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x61247c23
lea eax, [ebp - 0x118]
push eax
call fcn.61246fb9
test eax, eax
jne 0x61247c23
lea eax, [ebp - 0x118]
push eax
push 0xffffffffffffffff
push 0x158
push dword [ebp - 0x224]
call esi
cmp eax, 0xffffffff
jne 0x61247c23
lea eax, [ebp - 0x118]
push eax
push ebx
push 0x143
push dword [ebp - 0x224]
call esi
push ebx
push ebx
push 0x146
push dword [ebp - 0x224]
call esi
xor ebx, ebx
cmp eax, 1
setg bl
push ebx
push 0x43a
push dword [ebp - 0x220]
call edi
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
push ebx
push 0x43b
push dword [ebp - 0x220]
call edi
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
neg ebx
sbb ebx, ebx
and ebx, 5
push ebx
push 0x43a
push dword [ebp - 0x220]
mov dword [ebp - 0x230], ebx
call edi
mov ebx, dword [sym.imp.USER32.dll_ShowWindow]
push eax
call ebx
push dword [ebp - 0x230]
push 0x43b
push dword [ebp - 0x220]
call edi
push eax
call ebx
push 0x43d
push dword [ebp - 0x220]
call edi
and dword [ebp - 0x21c], 0
mov dword [ebp - 0x224], eax
push 0x80
lea eax, [ebp - 0x118]
push eax
mov eax, dword [ebp - 0x21c]
add eax, 0x384
push eax
push dword [0x612543d0]
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x118]
push eax
push dword [ebp - 0x21c]
push 0x14a
push dword [ebp - 0x224]
call esi
inc dword [ebp - 0x21c]
cmp dword [ebp - 0x21c], 2
jle 0x61247cb8
push 0
call fcn.61246ff5
push eax
push 0x14e
push dword [ebp - 0x224]
call esi
push dword [0x61254970]
mov esi, 0x43c
push esi
push dword [ebp - 0x220]
call edi
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
push dword [0x61254970]
push dword [ebp - 0x224]
call dword [sym.imp.USER32.dll_EnableWindow]
mov eax, dword [0x61254970]
neg eax
sbb eax, eax
and eax, 5
push eax
push esi
push dword [ebp - 0x220]
call edi
push eax
call ebx
mov eax, dword [0x61254970]
neg eax
sbb eax, eax
and eax, 5
push eax
push dword [ebp - 0x224]
call ebx
push dword [ebp - 0x220]
call fcn.6124704d
mov ecx, dword [ebp - 4]
pop edi
pop esi
pop ebx
call fcn.6124ff04
leave
ret 4