Function at 0x466690
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x5aa857
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x10
push ebx
push ebp
mov ebp, ecx
push esi
xor ebx, ebx
push edi
lea ecx, [esp + 0x10]
mov dword [esp + 0x18], ebx
call sub.MFC42.DLL_CString::CString_1
mov edi, dword [esp + 0x30]
lea eax, [esp + 0x10]
push eax
push str.ticket_no
push edi
mov dword [esp + 0x34], ebx
call fcn.00466170
add esp, 0xc
cmp eax, ebx
je 0x466a64
lea ecx, [esp + 0x10]
push ecx
mov ecx, ebp
call sub.MFC42.DLL_CString::operator_1
lea edx, [esp + 0x10]
push edx
push str.ACCESS_TKT
push edi
call fcn.004ecf00
add esp, 0xc
cmp eax, ebx
je 0x466a64
mov eax, dword [esp + 0x10]
mov dl, byte [eax]
cmp dl, 0x31
lea edx, [esp + 0x10]
push edx
push str.NAME
sete cl
push edi
mov byte [ebp + 0x2c], cl
call fcn.004ecf00
add esp, 0xc
cmp eax, ebx
je 0x466a64
lea eax, [esp + 0x10]
lea ecx, [ebp + 4]
push eax
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x10]
push ecx
push str.EXCH
push edi
call fcn.004ecf00
mov edx, dword [esp + 0x1c]
add esp, 0xc
lea esi, [ebp + 0xc]
cmp dword [edx - 8], ebx
je 0x466764
push str.EXCH
jmp 0x466769
push str.TKTT
mov ecx, esi
call sub.MFC42.DLL_CString::operator
lea eax, [esp + 0x10]
push eax
push 0x614340
push edi
call fcn.004ecf00
add esp, 0xc
cmp eax, ebx
je 0x466a64
lea ecx, [esp + 0x10]
push ecx
lea ecx, [ebp + 8]
call sub.MFC42.DLL_CString::operator_1
lea edx, [esp + 0x10]
push edx
push str.OFFICECODE
push edi
call fcn.004ecf00
add esp, 0xc
cmp eax, ebx
je 0x466a64
lea eax, [esp + 0x10]
lea ecx, [ebp + 0x24]
push eax
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x10]
push ecx
push str.CATACODE
push edi
call fcn.004ecf00
add esp, 0xc
cmp eax, ebx
je 0x466a64
lea edx, [esp + 0x10]
lea ecx, [ebp + 0x28]
push edx
call sub.MFC42.DLL_CString::operator_1
cmp byte [ebp + 0x2c], bl
jne 0x466872
mov esi, dword [esi]
push str.TKTT
push esi
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
mov eax, 0x614324
je 0x466810
mov eax, str.CNY_TOTAL
lea ecx, [esp + 0x14]
push ecx
push eax
push edi
call fcn.004ed140
add esp, 0xc
cmp eax, ebx
je 0x466a64
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x14]
push eax
push str.TCNYCN
push edi
mov dword [ebp + 0x30], edx
call fcn.004ed140
add esp, 0xc
cmp eax, ebx
je 0x466a64
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x14]
push edx
push str.TCNYYQ
push edi
mov dword [ebp + 0x38], ecx
call fcn.004ed140
add esp, 0xc
cmp eax, ebx
je 0x466a64
mov eax, dword [esp + 0x14]
mov dword [ebp + 0x34], eax
lea ecx, [esp + 0x10]
push ecx
push str.CITYSTART_code
push edi
call fcn.00466170
add esp, 0xc
cmp eax, ebx
je 0x466a54
mov edx, dword [ebp + 0x10]
lea esi, [ebp + 0x10]
cmp dword [edx - 8], ebx
je 0x4668a1
push 0x2f
mov ecx, esi
call fcn.00596ed0
lea eax, [esp + 0x10]
mov ecx, esi
push eax
call fcn.0059716a
lea ecx, [esp + 0x10]
push ecx
push str.CITYARRIVE_code
push edi
call fcn.00466170
add esp, 0xc
cmp eax, ebx
je 0x466a5c
push 0x2d
mov ecx, esi
call fcn.00596ed0
lea edx, [esp + 0x10]
mov ecx, esi
push edx
call fcn.0059716a
lea eax, [esp + 0x10]
push eax
push str.CARRIER
push edi
call fcn.004ecf00
add esp, 0xc
cmp eax, ebx
je 0x466a86
mov ecx, dword [ebp + 0x14]
lea esi, [ebp + 0x14]
cmp dword [ecx - 8], ebx
je 0x46690f
push 0x613e34
mov ecx, esi
call fcn.00596eca
lea edx, [esp + 0x10]
mov ecx, esi
push edx
call fcn.0059716a
lea eax, [esp + 0x10]
push eax
push str.FLIGHT
push edi
call fcn.004ecf00
add esp, 0xc
cmp eax, ebx
je 0x466a86
mov ecx, dword [ebp + 0x18]
lea esi, [ebp + 0x18]
cmp dword [ecx - 8], ebx
je 0x46694d
push 0x613e34
mov ecx, esi
call fcn.00596eca
lea edx, [esp + 0x10]
mov ecx, esi
push edx
call fcn.0059716a
lea eax, [esp + 0x10]
push eax
push str.CLASS
push edi
call fcn.004ecf00
add esp, 0xc
cmp eax, ebx
je 0x466a86
mov ecx, dword [ebp + 0x1c]
lea esi, [ebp + 0x1c]
cmp dword [ecx - 8], ebx
je 0x46698b
push 0x613e34
mov ecx, esi
call fcn.00596eca
lea edx, [esp + 0x10]
mov ecx, esi
push edx
call fcn.0059716a
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::CString_1
lea eax, [esp + 0x10]
mov byte [esp + 0x28], 1
push eax
push str.DATE
push edi
call fcn.004ecf00
mov edi, eax
add esp, 0xc
cmp edi, ebx
je 0x466a79
mov eax, dword [esp + 0x10]
cmp dword [eax - 8], 5
jle 0x4669e5
add eax, 5
lea ecx, [esp + 0x1c]
push eax
call sub.MFC42.DLL_CString::CString_3
or dword [esp + 0x18], 1
mov byte [esp + 0x28], 2
jmp 0x4669e9
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x34]
call sub.MFC42.DLL_CString::operator_1
mov al, byte [esp + 0x18]
mov dword [esp + 0x28], 1
test al, 1
je 0x466a16
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x1c]
and al, 0xfe
mov dword [esp + 0x18], eax
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::TrimRight
mov ecx, dword [ebp + 0x20]
lea esi, [ebp + 0x20]
cmp dword [ecx - 8], ebx
je 0x466a36
push 0x613e34
mov ecx, esi
call fcn.00596eca
lea edx, [esp + 0x30]
mov ecx, esi
push edx
call fcn.0059716a
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call sub.MFC42.DLL_CString::CString
jmp 0x466872
mov eax, dword [ebp + 0x10]
cmp dword [eax - 8], ebx
jmp 0x466a62
mov ecx, dword [ebp + 0x10]
cmp dword [ecx - 8], ebx
jne 0x466a9b
lea ecx, [esp + 0x10]
mov dword [esp + 0x28], 0xffffffff
call sub.MFC42.DLL_CString::CString
xor al, al
jmp 0x466aae
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov dword [esp + 0x28], 0xffffffff
call sub.MFC42.DLL_CString::CString
xor al, al
jmp 0x466aae
lea ecx, [esp + 0x10]
mov dword [esp + 0x28], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov al, 1
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1c
ret 4