Function at 0x140047400
Capabilities:
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push rbp
lea rbp, [rsp - 0x80]
sub rsp, 0x180
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
mov rax, qword [0x1400dc040]
xor rax, rsp
mov qword [rbp + 0x58], rax
mov rbx, qword [0x14014eec8]
mov dword [rbx + 0x4a28], 0x44480000
mov dword [rbx + 0x4a2c], 0x442f0000
mov dword [rbx + 0x4a10], 1
or dword [rbx + 0x4a08], 3
xor r14d, r14d
mov qword [rbx + 0x4a18], r14
mov qword [rbx + 0x4a20], r14
mov dword [rbx + 0x4a0c], 1
lea rcx, [rbx + 0x4a90]
movss xmm1, dword [rbx + 0x38f0]
movss xmm0, dword [rbx + 0x38f4]
mov dword [rsp + 0x50], 2
movss dword [rsp + 0x54], xmm1
movss dword [rsp + 0x58], xmm0
lea rdx, [rsp + 0x50]
call fcn.140063240
mov qword [rbx + 0x38f0], r14
xor edx, edx
mov r8d, 0x1012b
lea rcx, str.MainForm
call fcn.1400550b0
mov rax, qword [0x14014eec8]
mov rax, qword [rax + 0x4b18]
lea r8, str.Foreground
lea edx, [r14 + 1]
mov rcx, qword [rax]
call fcn.14004ece0
mov rbx, rax
lea rcx, [0x14014db38]
call fcn.14004b1b0
mov dword [rsp + 0x60], 0x44480000
mov dword [rsp + 0x64], 0x442f0000
xorps xmm7, xmm7
mov qword [rsp + 0x68], r14
mov dword [rsp + 0x28], r14d
movss xmm6, dword [0x1400ca260]
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x68]
mov rcx, rbx
call fcn.14006f760
lea rcx, [0x14014db28]
call fcn.14004b1b0
mov dword [rsp + 0x68], 0x44480000
mov dword [rsp + 0x6c], 0x428c0000
mov qword [rsp + 0x60], r14
mov dword [rsp + 0x28], 0x30
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.14006f760
mov dword [rsp + 0x68], 0x3f800000
mov dword [rsp + 0x6c], 0x3f800000
mov qword [rsp + 0x60], r14
mov dword [rsp + 0x70], 0x43dfa000
mov dword [rsp + 0x74], 0x42368000
mov dword [rsp + 0x50], 0x43b06000
mov dword [rsp + 0x54], 0x41c30000
mov rdi, qword [0x14014eea0]
mov rsi, qword [rbx + 0x70]
cmp rdi, rsi
je 0x1400475d1
mov rdx, rdi
mov rcx, rbx
call fcn.14006cf20
mov edx, 6
lea r8d, [rdx - 2]
mov rcx, rbx
call fcn.14006cfa0
mov dword [rsp + 0x28], 0xffffffff
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x60]
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14006d0b0
cmp rdi, rsi
je 0x140047641
movsxd rcx, dword [rbx + 0xa8]
lea eax, [rcx - 1]
mov dword [rbx + 0xa8], eax
test eax, eax
jne 0x140047629
mov rax, r14
jmp 0x140047635
mov rax, qword [rbx + 0xb0]
mov rax, qword [rax + rcx*8 - 0x10]
mov qword [rbx + 0x70], rax
mov rcx, rbx
call fcn.14006cce0
movss xmm6, dword [0x1400ca288]
xorps xmm0, xmm0
unpcklps xmm0, xmm7
movq r9, xmm0
movss xmm1, dword [0x1400ca348]
unpcklps xmm1, xmm6
movq r8, xmm1
mov rcx, qword [0x14014ee88]
call fcn.140041360
test al, al
je 0x14004767d
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov esi, 8
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov eax, dword [rsi + rdi]
cmp dword [0x14014f480], eax
jle 0x1400476ce
lea rcx, [0x14014f480]
call fcn.14009ab60
cmp dword [0x14014f480], 0xffffffff
jne 0x1400476ce
mov dword [0x14014f458], 0x438daaab
mov dword [0x14014f45c], 0x43070000
lea rcx, [0x14014f480]
call fcn.14009aaf4
mov eax, dword [rsi + rdi]
cmp dword [0x14014f46c], eax
jle 0x14004770e
lea rcx, [0x14014f46c]
call fcn.14009ab60
cmp dword [0x14014f46c], 0xffffffff
jne 0x14004770e
mov dword [0x14014f428], 0x4443d556
mov dword [0x14014f42c], 0x441ec000
lea rcx, [0x14014f46c]
call fcn.14009aaf4
mov rdx, qword [0x14014f428]
mov rcx, qword [0x14014f458]
call fcn.140040e80
mov eax, dword [0x1400de858]
cmp eax, 1
jne 0x140047735
lea r8, str.___Bus_Path_Mode
jmp 0x140047757
cmp eax, 2
jne 0x140047743
lea r8, str.___Waypoint_Mode
jmp 0x140047757
lea rcx, str.___Zone_Circle_Mode
lea r8, str.___Settings
test eax, eax
cmove r8, rcx
lea rcx, [0x14014da38]
call fcn.14004b1b0
mov r9d, eax
movss xmm1, dword [0x14014f42c]
addss xmm1, xmm6
mov dword [rsp + 0x50], 0x438daaab
movss dword [rsp + 0x54], xmm1
mov rcx, qword [0x14014ee60]
test eax, 0xff000000
je 0x1400477fb
cmp byte [r8], r14b
je 0x1400477fb
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], r14b
jne 0x1400477a0
add rdx, r8
test rcx, rcx
jne 0x1400477b9
mov rax, qword [rbx + 0x38]
mov rcx, qword [rax + 8]
movups xmm0, xmmword [rbx + 0x60]
movups xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x48], r14b
movss dword [rsp + 0x40], xmm7
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], r8
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
lea r9, [rsp + 0x50]
movss xmm2, dword [0x1400ca2d0]
mov rdx, rbx
call fcn.140073b40
lea rax, [rbp - 0x68]
mov qword [rsp + 0x50], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x50], r14
mov r8d, 3
lea rdx, [0x1400c8c80]
lea rcx, [rbp - 0x68]
call fcn.1400126c0
nop
mov rsi, qword [0x14014ee60]
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x30], xmm1
mov r8d, 3
lea rdx, [0x1400c8c84]
lea rcx, [rbp - 0x40]
call fcn.1400126c0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x10], xmm1
mov r8d, 3
lea rdx, [0x1400c8c88]
lea rcx, [rbp - 0x20]
call fcn.1400126c0
nop
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x10], xmm1
mov r8d, 3
lea rdx, [0x1400c8c8c]
lea rcx, [rbp]
call fcn.1400126c0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x30], xmm1
mov r8d, 3
lea rdx, [0x1400c8c90]
lea rcx, [rbp + 0x20]
call fcn.1400126c0
nop
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r14
mov ecx, 0x80
call fcn.14009aa40
mov rbx, rax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
lea rcx, [rax + 0x80]
mov qword [rbp - 0x70], rcx
lea rax, [rbp - 0x80]
mov qword [rsp + 0x70], rax
lea rdi, [rbp - 0x40]
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x40], rbx
mov qword [rbp + 0x48], rbx
lea rax, [rbp - 0x80]
mov qword [rbp + 0x50], rax
nop dword [rax]
mov rdx, rdi
mov rcx, rbx
call fcn.14000bf30
add rbx, 0x20
mov qword [rbp + 0x48], rbx
add rdi, 0x20
lea rax, [rbp + 0x40]
cmp rdi, rax
jne 0x140047920
mov rdx, rbx
mov rcx, rbx
call fcn.1400429e0
mov qword [rbp - 0x78], rbx
lea r9, [rbp - 0x68]
mov r8, rsi
lea rdx, [rbp - 0x80]
movss xmm0, dword [0x1400ca328]
call fcn.14003e8c0
nop
lea r9, [fcn.14000be00]
mov edx, 0x20
lea r8d, [rdx - 0x1c]
lea rcx, [rbp - 0x40]
call fcn.14009abd8
mov ecx, dword [0x1400de858]
test ecx, ecx
je 0x140047b1d
sub ecx, 1
je 0x140047a31
sub ecx, 1
je 0x1400479cd
cmp ecx, 1
jne 0x140047b9b
mov rax, qword [0x14014eec8]
mov rcx, qword [rax + 0x4b18]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx]
call fcn.14004ece0
jmp 0x140047b9b
mov rax, qword [0x14014eec8]
mov rcx, qword [rax + 0x4b18]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx]
call fcn.14004ece0
movss xmm1, dword [0x1400ca2f4]
mov r9b, 6
lea r8, str.Always_Mark_Top_of_Buildings
lea rdx, [0x14014ee48]
movss xmm0, dword [0x1400ca2d0]
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.14003e130
test al, al
je 0x140047b9b
mov byte [0x14014db18], 1
jmp 0x140047b9b
mov rax, qword [0x14014eec8]
mov rcx, qword [rax + 0x4b18]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx]
call fcn.14004ece0
mov rbx, rax
movss xmm1, dword [0x1400ca2f4]
mov r9b, 4
lea r8, str.Auto_Determine_Bus_Path
lea rdx, [0x14014ee4d]
movss xmm0, dword [0x1400ca2d0]
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.14003e130
lea rcx, [0x14014da38]
call fcn.14004b1b0
mov dword [rsp + 0x50], 0x434d0000
mov dword [rsp + 0x54], 0x43080000
mov rcx, qword [0x14014ee60]
test eax, 0xff000000
je 0x140047b0a
test rcx, rcx
jne 0x140047abb
mov rcx, qword [rbx + 0x38]
mov rcx, qword [rcx + 8]
movups xmm0, xmmword [rbx + 0x60]
movups xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm7
lea rdx, [0x1400c8a6b]
mov qword [rsp + 0x38], rdx
lea rdx, str.____MMB_
mov qword [rsp + 0x30], rdx
lea rdx, [rsp + 0x70]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x50]
movss xmm2, dword [0x1400ca2a8]
mov rdx, rbx
call fcn.140073b40
mov r9b, 1
lea r8, str.Hide_Bus_Path_When_Tracking_Zones
lea rdx, [0x14014ee4b]
jmp 0x140047b7e
mov rax, qword [0x14014eec8]
mov rcx, qword [rax + 0x4b18]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rcx]
call fcn.14004ece0
movss xmm1, dword [0x1400ca2f4]
mov r9b, 4
lea r8, str.Predict_Zone_Pull
lea rdx, [0x14014ee4a]
movss xmm0, dword [0x1400ca2d0]
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.14003e130
mov r9b, 6
lea r8, str.Show_Congestion
lea rdx, [0x14014ee49]
movss xmm1, dword [0x1400ca300]
movss xmm0, dword [0x1400ca2d0]
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.14003e130
call fcn.140057710
mov rcx, qword [rbp + 0x58]
xor rcx, rsp
call fcn.14009aa20
lea r11, [rsp + 0x180]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop rbp
ret