Function at 0x140183165
Capabilities:
Hide graphical window

Disassembly:
jmp 0x1402ea0b0
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
sub rsp, 0xa70
lea rbp, [rsp + 0x60]
lea rdi, [rsp + 0x60]
mov ecx, 0x1c4
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xa98]
mov rax, qword [0x1408e6f40]
xor rax, rbp
mov qword [rbp + 0xa00], rax
lea rcx, [0x14091a5cb]
call fcn.140183b47
mov dword [rbp + 0x10], 0x50
mov dword [rbp + 0x14], 0x40
lea rax, [0x14017be0b]
mov qword [rbp + 0x18], rax
mov dword [rbp + 0x20], 0
mov dword [rbp + 0x24], 0
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0
lea rax, str.Class
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], 0
lea rcx, [rbp + 0x10]
call qword [sym.imp.USER32.dll_RegisterClassExW]
mov qword [rsp + 0x58], 0
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov eax, dword [rbp + 0xa40]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0xa38]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 0x64
mov dword [rsp + 0x20], 0x64
mov r9d, 0x80000000
lea r8, [0x140494c1c]
mov rdx, qword [rbp + 0x50]
xor ecx, ecx
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov qword [rbp + 0x78], rax
mov rdx, qword [rbp + 0x78]
mov rcx, qword [rbp + 0xa30]
call fcn.14017d3d2
movzx eax, al
test eax, eax
jne 0x1402ea210
mov rcx, qword [rbp + 0xa30]
call fcn.14018370a
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x50]
call qword [sym.imp.USER32.dll_UnregisterClassW]
xor al, al
jmp 0x1402eac69
mov edx, 0xa
mov rcx, qword [rbp + 0x78]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [rbp + 0x78]
call qword [sym.imp.USER32.dll_UpdateWindow]
xor ecx, ecx
call fcn.1401837f5
call fcn.140181987
mov qword [rbp + 0x98], rax
call fcn.1401829c2
mov qword [rbp + 0xb8], rax
mov rax, qword [rbp + 0x98]
mov rax, qword [rax + 0x48]
mov qword [rbp + 0x9f8], rax
xor edx, edx
mov rcx, qword [rbp + 0x9f8]
call fcn.14017c1df
lea rcx, [rbp + 0xe0]
call fcn.1401841cd
mov byte [rbp + 0x128], 1
mov byte [rbp + 0x100], 1
mov rax, qword [rbp + 0x98]
mov rax, qword [rax + 0x48]
mov qword [rbp + 0x9f8], rax
lea rax, [0x140500bac]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x20], rax
movss xmm3, dword [0x1404a9a98]
mov r8d, 0x226cc
lea rdx, [0x1404de4e0]
mov rcx, qword [rbp + 0x9f8]
call fcn.140180eb5
mov rax, qword [rbp + 0xb8]
movss xmm0, dword [0x1404a9a98]
movss dword [rax + 0x74], xmm0
mov rax, qword [rbp + 0xb8]
movss xmm0, dword [0x14049540c]
movss dword [rax + 0x80], xmm0
mov rax, qword [rbp + 0xb8]
movss xmm0, dword [0x1404a9a98]
movss dword [rax + 0x7c], xmm0
mov rax, qword [rbp + 0xb8]
movss xmm0, dword [0x1404a9a7c]
movss dword [rax + 0x44], xmm0
mov rax, qword [rbp + 0xb8]
movss xmm0, dword [0x1404a9a7c]
movss dword [rax + 0x88], xmm0
mov rax, qword [rbp + 0x98]
mov qword [rax + 0x18], 0
mov rcx, qword [rbp + 0x78]
call fcn.14017d6b1
mov rcx, qword [0x1408f2078]
call fcn.14017bfe1
movss xmm0, dword [0x1404953ec]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1404cc3c0]
movss xmm2, dword [0x1404cc3c0]
movss xmm1, dword [0x1404cc3c0]
lea rcx, [rbp + 0x188]
call fcn.140181270
mov byte [rbp + 0x1b4], 0
movzx eax, byte [rbp + 0x1b4]
test eax, eax
jne 0x1402eac32
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x1d8]
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x1402ea3f0
lea rcx, [rbp + 0x1d8]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp + 0x1d8]
call qword [sym.imp.USER32.dll_DispatchMessageW]
cmp dword [rbp + 0x1e0], 0x12
jne 0x1402ea3ee
mov byte [rbp + 0x1b4], 1
jmp 0x1402ea3a3
movzx eax, byte [rbp + 0x1b4]
test eax, eax
je 0x1402ea400
jmp 0x1402eac32
call fcn.14017eaa2
call fcn.140180960
call fcn.1401815b3
mov rax, qword [rbp + 0xb8]
add rax, 0xc8
mov qword [rbp + 0x228], rax
lea r8, [0x1408e9ce8]
lea rdx, [rbp + 0x584]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [0x1404953ec]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1404cc3c4]
movss xmm2, dword [0x1404cc3c4]
movss xmm1, dword [0x1404cc3c4]
lea rcx, [rbp + 0x5b4]
call fcn.140181270
mov ecx, 0x10
imul rcx, rcx, 2
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [0x1404953ec]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1404cc3c4]
movss xmm2, dword [0x1404cc3c4]
movss xmm1, dword [0x1404cc3c4]
lea rcx, [rbp + 0x5e4]
call fcn.140181270
mov ecx, 0x10
imul rcx, rcx, 4
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x614]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 5
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [0x1404cc420]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1404a9a24]
movss xmm2, dword [0x1404a9a24]
movss xmm1, dword [0x1404a9a24]
lea rcx, [rbp + 0x644]
call fcn.140181270
mov ecx, 0x10
imul rcx, rcx, 7
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x674]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0xb
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [0x1404cc420]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1404cc3d4]
movss xmm2, dword [0x1404cc3d4]
movss xmm1, dword [0x1404cc3d4]
lea rcx, [rbp + 0x6a4]
call fcn.140181270
mov ecx, 0x10
imul rcx, rcx, 8
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [0x1404cc420]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1404cc3dc]
movss xmm2, dword [0x1404cc3dc]
movss xmm1, dword [0x1404cc3dc]
lea rcx, [rbp + 0x6d4]
call fcn.140181270
mov ecx, 0x10
imul rcx, rcx, 9
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [0x1404953ec]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1404cc3c4]
movss xmm2, dword [0x1404cc3c4]
movss xmm1, dword [0x1404cc3c4]
lea rcx, [rbp + 0x704]
call fcn.140181270
mov ecx, 0x10
imul rcx, rcx, 0xe
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x734]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0xf
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x764]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x2f
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x794]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x12
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x7c4]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x13
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cd8]
lea rdx, [rbp + 0x7f4]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x14
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x824]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x15
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cc8]
lea rdx, [rbp + 0x854]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x16
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cd8]
lea rdx, [rbp + 0x884]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x17
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x8b4]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x18
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cc8]
lea rdx, [rbp + 0x8e4]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x19
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cd8]
lea rdx, [rbp + 0x914]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x1a
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x944]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x1b
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cb8]
lea rdx, [rbp + 0x974]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x21
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cc8]
lea rdx, [rbp + 0x9a4]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x22
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [0x1408e9cd8]
lea rdx, [rbp + 0x9d4]
mov rcx, qword [rbp + 0xa30]
call fcn.140180e56
mov ecx, 0x10
imul rcx, rcx, 0x23
mov rdx, qword [rbp + 0x228]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov r9d, dword [rbp + 0xa40]
mov r8d, dword [rbp + 0xa38]
mov rdx, qword [rbp + 0x78]
mov rcx, qword [rbp + 0xa30]
call fcn.14017b870
call fcn.14017d486
mov rax, qword [0x1408f2078]
mov rax, qword [rax]
mov rax, qword [rax + 0x1c8]
mov qword [rbp + 0x9f8], rax
xor r8d, r8d
mov edx, 7
mov rcx, qword [0x1408f2078]
call qword [rbp + 0x9f8]
mov rax, qword [0x1408f2078]
mov rax, qword [rax]
mov rax, qword [rax + 0x1c8]
mov qword [rbp + 0x9f8], rax
xor r8d, r8d
mov edx, 0x1b
mov rcx, qword [0x1408f2078]
call qword [rbp + 0x9f8]
mov rax, qword [0x1408f2078]
mov rax, qword [rax]
mov rax, qword [rax + 0x1c8]
mov qword [rbp + 0x9f8], rax
xor r8d, r8d
mov edx, 0xae
mov rcx, qword [0x1408f2078]
call qword [rbp + 0x9f8]
movss xmm0, dword [rbp + 0x194]
mulss xmm0, dword [0x1404a9acc]
cvttss2si eax, xmm0
and eax, 0xff
shl eax, 0x18
movss xmm0, dword [rbp + 0x188]
mulss xmm0, dword [rbp + 0x194]
mulss xmm0, dword [0x1404a9acc]
cvttss2si ecx, xmm0
and ecx, 0xff
shl ecx, 0x10
or eax, ecx
movss xmm0, dword [rbp + 0x18c]
mulss xmm0, dword [rbp + 0x194]
mulss xmm0, dword [0x1404a9acc]
cvttss2si ecx, xmm0
and ecx, 0xff
shl ecx, 8
or eax, ecx
movss xmm0, dword [rbp + 0x190]
mulss xmm0, dword [rbp + 0x194]
mulss xmm0, dword [0x1404a9acc]
cvttss2si ecx, xmm0
and ecx, 0xff
or eax, ecx
mov dword [rbp + 0x244], eax
mov rax, qword [0x1408f2078]
mov rax, qword [rax]
mov rax, qword [rax + 0x158]
mov qword [rbp + 0x9f8], rax
mov dword [rsp + 0x30], 0
movss xmm0, dword [0x1404953f0]
movss dword [rsp + 0x28], xmm0
mov eax, dword [rbp + 0x244]
mov dword [rsp + 0x20], eax
mov r9d, 3
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x1408f2078]
call qword [rbp + 0x9f8]
mov rax, qword [0x1408f2078]
mov rax, qword [rax]
mov rcx, qword [0x1408f2078]
call qword [rax + 0x148]
test eax, eax
jl 0x1402eabc5
call fcn.140183665
call fcn.140182da5
mov rcx, rax
call fcn.140182f1c
mov rax, qword [0x1408f2078]
mov rax, qword [rax]
mov rcx, qword [0x1408f2078]
call qword [rax + 0x150]
mov rax, qword [0x1408f2078]
mov rax, qword [rax]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x9f8], rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x1408f2078]
call qword [rbp + 0x9f8]
mov dword [rbp + 0x264], eax
cmp dword [rbp + 0x264], 0x88760868
jne 0x1402eac2d
mov rax, qword [0x1408f2078]
mov rax, qword [rax]
mov rcx, qword [0x1408f2078]
call qword [rax + 0x18]
cmp eax, 0x88760869
jne 0x1402eac2d
call fcn.1401807a8
jmp 0x1402ea394
call fcn.140180c0d
call fcn.14017c847
xor ecx, ecx
call fcn.140180b8b
mov rcx, qword [rbp + 0xa30]
call fcn.14018370a
mov rcx, qword [rbp + 0x78]
call qword [sym.imp.USER32.dll_DestroyWindow]
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x50]
call qword [sym.imp.USER32.dll_UnregisterClassW]
xor al, al
mov rdi, rax
lea rcx, [rbp - 0x60]
lea rdx, [0x140507ff0]
call fcn.1401822b0
mov rax, rdi
mov rcx, qword [rbp + 0xa00]
xor rcx, rbp
call fcn.14017f2c7
lea rsp, [rbp + 0xa10]
pop rdi
pop rsi
pop rbp
ret