Function at 0x401a45
Capabilities:
Accept command line arguments
Get geographical location

Disassembly:
sub esp, 0xd24
push ebx
push ebp
push esi
push edi
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
call fcn.00401016
and byte [esp + 0x30], 0
and dword [esp + 0x18], 0
push 1
mov word [0x4076c0], ax
pop ebp
push 0
mov dword [esp + 0x14], ebp
call fcn.00403379
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edi, 0x4076bc
mov dword [esp], 0x4063d4
push edi
call esi
lea eax, [esp + 0x1c]
push str.joff
push eax
call esi
mov dword [esp + 0x14], ebp
call dword [sym.imp.MSVCRT.dll___p___argc]
cmp dword [eax], ebp
mov ebp, dword [sym.imp.KERNEL32.dll_lstrcatA]
mov ebx, 0x4063c8
jle 0x401be5
mov edi, dword [sym.imp.MSVCRT.dll___p___argv]
mov eax, dword [esp + 0x14]
push str._lang
mov esi, eax
shl esi, 2
call edi
mov eax, dword [eax]
push dword [eax + esi]
call dword [sym.imp.MSVCRT.dll_strstr]
pop ecx
test eax, eax
pop ecx
je 0x401b16
push 0x4063bc
call edi
mov eax, dword [eax]
push dword [eax + esi]
call dword [sym.imp.MSVCRT.dll_strstr]
inc eax
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
mov esi, eax
push esi
call fcn.0040107a
add esp, 0x10
test eax, eax
je 0x401bca
mov word [0x4076c0], si
jmp 0x401bca
push 3
push 0x4063b8
call edi
mov eax, dword [eax]
push dword [eax + esi]
call dword [sym.imp.MSVCRT.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x401b65
lea eax, [esp + 0x30]
push ebx
push eax
call ebp
call edi
mov eax, dword [eax]
push dword [eax + esi]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
sub eax, 4
push eax
call edi
mov eax, dword [eax]
mov eax, dword [eax + esi]
add eax, 3
push eax
lea eax, [esp + 0x38]
push eax
call dword [sym.imp.MSVCRT.dll_strncat]
add esp, 0xc
jmp 0x401bc2
push 2
push 0x4063b4
call edi
mov eax, dword [eax]
push dword [eax + esi]
call dword [sym.imp.MSVCRT.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x401b94
lea eax, [esp + 0x30]
push ebx
push eax
call ebp
call edi
mov eax, dword [eax]
mov eax, dword [eax + esi]
inc eax
inc eax
push eax
jmp 0x401bbb
push 0x4063b0
call edi
mov eax, dword [eax]
push dword [eax + esi]
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x401bb4
mov dword [esp + 0x18], 1
jmp 0x401bca
call edi
mov eax, dword [eax]
push dword [eax + esi]
lea eax, [esp + 0x34]
push eax
call ebp
lea eax, [esp + 0x30]
push ebx
push eax
call ebp
inc dword [esp + 0x14]
call dword [sym.imp.MSVCRT.dll___p___argc]
mov ecx, dword [esp + 0x14]
cmp ecx, dword [eax]
jl 0x401abc
mov edi, 0x4076bc
call fcn.004016cf
test eax, eax
jne 0x401c12
lea eax, [esp + 0x30]
push eax
push 0x4074b8
push dword [esp + 0xd40]
call fcn.0040175a
add esp, 0xc
test eax, eax
jne 0x401c12
push 0xfffffffffffffffe
jmp 0x401c93
lea eax, [esp + 0x430]
push eax
call fcn.004019d6
lea eax, [esp + 0x434]
push eax
push str.JAVA_INSTALLER
push 0x65
push dword [esp + 0xd48]
call fcn.00401598
add esp, 0x14
test eax, eax
je 0x401dcf
lea eax, [esp + 0x934]
push eax
call fcn.00401254
test eax, eax
pop ecx
jne 0x401c5d
and dword [0x406010], eax
xor esi, esi
cmp dword [0x4077c4], esi
jne 0x401c6f
cmp dword [0x406010], esi
je 0x401c7c
push edi
push 0x4076c4
call fcn.004024b8
pop ecx
pop ecx
push 0x104
push 0x4074b8
call fcn.00401857
pop ecx
test eax, eax
pop ecx
jne 0x401c99
push 0xfffffffffffffffd
pop eax
jmp 0x401dd3
cmp dword [esp + 0x18], esi
je 0x401cc1
lea eax, [esp + 0x30]
push 0x40639c
push eax
call dword [sym.imp.MSVCRT.dll_strstr]
pop ecx
test eax, eax
pop ecx
jne 0x401cc1
lea eax, [esp + 0x30]
push str.__qn
push eax
call ebp
cmp dword [0x4077c4], 0
mov esi, 0x4075bc
je 0x401d0a
lea eax, [esp + 0x30]
push str._METHOD
push eax
call ebp
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x34]
push eax
call ebp
lea eax, [esp + 0x30]
push ebx
push eax
call ebp
push edi
push str.Country
call fcn.00402bb4
push esi
push str.PostStatusUrl
call fcn.00402bb4
add esp, 0x10
jmp 0x401d18
push 0
push str.PostStatusUrl
call fcn.00402bb4
pop ecx
pop ecx
mov ax, word [0x4076c0]
cmp ax, 0x409
jne 0x401d4e
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x434]
push eax
push 0x4074b8
lea eax, [esp + 0x540]
push str.__s___i___s___s
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
jmp 0x401d7a
movzx eax, ax
lea ecx, [esp + 0x30]
push ecx
push eax
lea eax, [esp + 0x438]
push eax
push 0x4074b8
lea eax, [esp + 0x544]
push str.__s___i___s__TRANSFORMS:_d__s
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x18
lea eax, [esp + 0x534]
push eax
call fcn.00401661
mov dword [esp + 0x14], eax
xor eax, eax
cmp dword [0x4077c4], eax
pop ecx
je 0x401dcf
cmp dword [esp + 0x10], eax
je 0x401dcf
cmp dword [esp + 0x10], 0xbc2
je 0x401dcf
cmp dword [esp + 0x10], 0x669
je 0x401dcf
push dword [esp + 0x10]
push eax
push eax
push str.1.5.0_10
push edi
lea eax, [esp + 0x30]
push 0x40633c
push eax
push esi
call fcn.00403793
add esp, 0x20
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd24
ret 0x10