Function at 0x140018bc0
Capabilities:
Encode data using xor

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r14
lea rbp, [rsp - 0xb8]
sub rsp, 0x1b8
xor r14d, r14d
mov rsi, rcx
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a570]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a560]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140018bf0
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a590]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a580]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140018c60
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a5b0]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a5a0]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140018cd0
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a5d0]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a5c0]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140018d40
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a5f0]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a5e0]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140018db0
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a610]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a600]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140018e20
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a630]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a620]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140018e90
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x70], rax
mov edi, r14d
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
movups xmmword [rbp + 0x60], xmm0
nop dword [rax]
nop word [rax + rax]
lea rdx, [0x14004a650]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a640]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140018f20
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a670]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a660]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140018f90
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a690]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a680]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019000
mov rcx, qword gs:[0x58]
mov r12d, dword [0x140062c10]
mov qword [rsp + 0x1f8], r13
mov qword [rsp + 0x1b0], r15
mov r9d, 0x710
mov r10, qword [rcx + r12*8]
mov ecx, 0x734
mov qword [rbp - 0x18], r10
mov eax, dword [rcx + r10]
test al, 1
jne 0x1400191f1
movups xmm0, xmmword [0x14004b2f8]
or eax, 1
mov qword [r10 + r9], r14
movups xmm1, xmmword [0x14004b308]
mov dword [rcx + r10], eax
lea r11, [rsp + 0x7c]
mov eax, dword [0x14004b318]
lea rcx, [r10 + r9]
mov dword [rbp - 0x70], eax
lea rbx, [rsp + 0x70]
xor eax, eax
mov word [rcx + 8], r14w
mov byte [rcx + 0xa], r14b
lea rdi, [rsp + 0x72]
mov r8d, r14d
movaps xmmword [rsp + 0x70], xmm0
sub r11, rcx
movaps xmmword [rbp - 0x80], xmm1
sub rbx, rcx
lea rsi, [rsp + 0x74]
sub rdi, rcx
lea r14, [rsp + 0x76]
sub rsi, rcx
lea r15, [rsp + 0x78]
sub r14, rcx
lea r12, [rsp + 0x7a]
sub r15, rcx
lea r13, [rsp + 0x7e]
sub r12, rcx
lea rdx, [rcx + 0xe]
sub r13, rcx
xorps xmm0, xmm0
movups xmmword [rcx + 0xc], xmm0
mov qword [rcx + 0x1c], rax
lea rax, [rbp - 0x80]
sub rax, rcx
mov qword [rbp - 0x58], rax
lea rax, [rbp - 0x7e]
sub rax, rcx
mov qword [rbp - 0x20], rax
lea rax, [rbp - 0x7c]
mov r10, qword [rbp - 0x20]
sub rax, rcx
mov rcx, qword [rbp - 0x58]
mov r9, rax
nop word [rax + rax]
movzx eax, word [r11 + rdx - 0xe]
add r8d, 0xc
mov word [rdx - 2], ax
movzx eax, word [rdx + rbx]
mov word [rdx], ax
movzx eax, word [rdx + rdi]
mov word [rdx + 2], ax
movzx eax, word [rdx + rsi]
mov word [rdx + 4], ax
movzx eax, word [rdx + r14]
mov word [rdx + 6], ax
movzx eax, word [rdx + r15]
mov word [rdx + 8], ax
movzx eax, word [rdx + r12]
mov word [rdx + 0xa], ax
movzx eax, word [r11 + rdx]
mov word [rdx + 0xc], ax
movzx eax, word [rdx + r13]
mov word [rdx + 0xe], ax
movzx eax, word [rdx + rcx]
mov word [rdx + 0x10], ax
movzx eax, word [rdx + r10]
mov word [rdx + 0x12], ax
movzx eax, word [rdx + r9]
mov word [rdx + 0x14], ax
lea rdx, [rdx + 0x18]
cmp r8d, 0xc
jb 0x140019160
mov r10, qword [rbp - 0x18]
xor r14d, r14d
mov r12d, dword [0x140062c10]
mov rsi, qword [rbp + 0xf0]
mov r9d, 0x710
cmp byte [r9 + r10 + 0xa], 0
jne 0x140019213
lea r8, [r9 + r10]
mov edx, r14d
movsxd rcx, edx
lea eax, [rdx - 0x77]
inc edx
xor word [r8 + rcx*2 + 0xc], ax
cmp edx, 0xc
jb 0x140019200
lea rax, [r10 + 0xc]
mov byte [r9 + r10 + 0xa], 1
add rax, r9
mov edi, r14d
mov qword [rbp + 0x70], rax
nop word [rax + rax]
lea rdx, [0x14004a6b0]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a6a0]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019230
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a6d0]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a6c0]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x1400192a0
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a6f0]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a6e0]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019310
mov rax, qword [0x1400625a8]
mov edi, r14d
mov qword [rbp + 0x60], rax
nop word [rax + rax]
lea rdx, [0x14004a710]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a700]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019390
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a730]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a720]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019400
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a750]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a740]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019470
lea rax, [0x14000e2b0]
mov edi, r14d
mov qword [rbp + 0x38], rax
nop word [rax + rax]
lea rdx, [0x14004a770]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a760]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x1400194f0
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a790]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a780]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019560
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a7b0]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a7a0]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x1400195d0
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a7d0]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a7c0]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019640
mov qword [rbp + 0x48], rsi
mov edi, r14d
nop
lea rdx, [0x14004a7f0]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a7e0]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x1400196b0
mov edi, r14d
nop word [rax + rax]
lea rdx, [0x14004a810]
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, [0x14004a800]
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019720
mov edi, r14d
nop word [rax + rax]
lea rdx, str.Iteration
lea rcx, [0x140062840]
call fcn.140001240
inc edi
mov rcx, rax
mov edx, edi
call fcn.1400041d0
mov rcx, rax
lea rdx, str._out_of
call fcn.140001240
mov edx, 5
mov rcx, rax
call fcn.1400041d0
mov dl, 0xa
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call fcn.140018710
movzx edx, al
mov rcx, rbx
call fcn.140016e40
mov rcx, rbx
call fcn.140014e60
cmp edi, 5
jl 0x140019790
lea rcx, [rbp + 0x30]
call qword [sym.imp.USER32.dll_RegisterClassW]
test ax, ax
je 0x14001a1ad
mov rcx, qword gs:[0x58]
mov eax, r12d
mov r8d, 0x738
mov rdx, qword [rcx + rax*8]
mov ecx, 0x768
mov eax, dword [rcx + rdx]
test al, 1
jne 0x1400199e1
movups xmm0, xmmword [0x14004b320]
or eax, 1
mov dword [rbp - 0x60], r14d
movups xmm1, xmmword [0x14004b330]
mov dword [rcx + rdx], eax
lea r9, [rbp - 0x50]
mov eax, r8d
lea r10, [rbp - 0x4e]
add rax, rdx
movaps xmmword [rbp - 0x50], xmm0
movups xmm0, xmmword [0x14004b340]
xor ecx, ecx
lea rdx, [rbp - 0x3a]
lea r8, [rbp - 0x44]
movaps xmmword [rbp - 0x40], xmm1
sub rdx, rax
mov word [rax + 8], r14w
mov qword [rbp - 0x18], rdx
lea r11, [rbp - 0x4c]
mov qword [rax], 0
lea rdx, [rbp - 0x38]
sub rdx, rax
mov byte [rax + 0xa], 0
mov qword [rbp - 0x58], rdx
lea rbx, [rbp - 0x4a]
lea rdx, [rbp - 0x36]
movaps xmmword [rbp - 0x30], xmm0
sub rdx, rax
lea rdi, [rbp - 0x48]
mov qword [rbp - 0x20], rdx
lea rsi, [rbp - 0x46]
xorps xmm0, xmm0
lea rdx, [rbp - 0x34]
sub rdx, rax
lea r14, [rbp - 0x42]
mov qword [rbp - 0x10], rdx
lea r15, [rbp - 0x40]
movups xmmword [rax + 0xc], xmm0
lea r12, [rbp - 0x3e]
sub r8, rax
lea r13, [rbp - 0x3c]
sub r9, rax
lea rdx, [rbp - 0x32]
sub r10, rax
sub r11, rax
sub rbx, rax
sub rdi, rax
sub rsi, rax
sub r14, rax
sub r15, rax
sub r12, rax
sub r13, rax
sub rdx, rax
movups xmmword [rax + 0x1c], xmm0
mov qword [rbp - 8], rdx
mov edx, dword [rbp - 0x60]
mov word [rax + 0x2c], cx
lea rcx, [rax + 0xe]
nop dword [rax]
movzx eax, word [rcx + r8 - 0xe]
add edx, 0x11
mov word [rcx - 2], ax
movzx eax, word [r9 + rcx]
mov word [rcx], ax
movzx eax, word [r10 + rcx]
mov word [rcx + 2], ax
movzx eax, word [r11 + rcx]
mov word [rcx + 4], ax
movzx eax, word [rbx + rcx]
mov word [rcx + 6], ax
movzx eax, word [rdi + rcx]
mov word [rcx + 8], ax
movzx eax, word [rsi + rcx]
mov word [rcx + 0xa], ax
movzx eax, word [rcx + r8]
mov word [rcx + 0xc], ax
movzx eax, word [r14 + rcx]
mov word [rcx + 0xe], ax
movzx eax, word [r15 + rcx]
mov word [rcx + 0x10], ax
movzx eax, word [r12 + rcx]
mov word [rcx + 0x12], ax
movzx eax, word [rcx + r13]
mov word [rcx + 0x14], ax
lea rcx, [rcx + 0x22]
mov rax, qword [rbp - 0x18]
movzx eax, word [rax + rcx - 0x22]
mov word [rcx - 0xc], ax
mov rax, qword [rbp - 0x58]
movzx eax, word [rax + rcx - 0x22]
mov word [rcx - 0xa], ax
mov rax, qword [rbp - 0x20]
movzx eax, word [rax + rcx - 0x22]
mov word [rcx - 8], ax
mov rax, qword [rbp - 0x10]
movzx eax, word [rax + rcx - 0x22]
mov word [rcx - 6], ax
mov rax, qword [rbp - 8]
movzx eax, word [rax + rcx - 0x22]
mov word [rcx - 4], ax
cmp edx, 0x11
jb 0x140019910
mov r12d, dword [0x140062c10]
xor r14d, r14d
mov rsi, qword [rbp + 0xf0]
mov r8d, 0x738
mov rcx, qword gs:[0x58]
mov eax, r12d
add r8, qword [rcx + rax*8]
cmp byte [r8 + 0xa], 0
jne 0x140019a13
mov edx, r14d
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x76]
inc edx
xor word [r8 + rcx*2 + 0xc], ax
cmp edx, 0x11
jb 0x140019a00
mov rdx, qword [rbp + 0x70]
mov r9d, 0xcf0000
mov qword [rsp + 0x58], r14
xor ecx, ecx
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x38], 0xc8
mov dword [rsp + 0x30], 0x1f4
mov byte [r8 + 0xa], 1
add r8, 0xc
mov dword [rsp + 0x28], 0xc8
mov dword [rsp + 0x20], 0xc8
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov qword [rsp + 0x70], rax
mov r15, rax
test rax, rax
je 0x14001a1ad
lea rdx, [rbp]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [rbp + 8]
xor r9d, r9d
sub eax, dword [rbp]
xor r8d, r8d
cdq
sub eax, edx
sar eax, 1
mov dword [rbp + 0xf0], eax
mov eax, dword [rbp + 0xc]
sub eax, dword [rbp + 4]
cdq
sub eax, edx
xor edx, edx
sar eax, 1
mov dword [rbp - 0x60], eax
lea rax, str.Arial
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x60], 2
lea ecx, [rdx - 0xc]
mov dword [rsp + 0x58], 5
mov dword [rsp + 0x50], r14d
mov dword [rsp + 0x48], 8
mov dword [rsp + 0x40], 1
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], 0x190
call qword [sym.imp.GDI32.dll_CreateFontW]
mov rdx, qword gs:[0x58]
mov ecx, r12d
mov qword [rbp - 0x58], rax
mov eax, 0x7c0
mov r8, qword [rdx + rcx*8]
mov edx, 0x790
mov ecx, dword [rax + r8]
test cl, 1
jne 0x140019ceb
movups xmm0, xmmword [0x14004b370]
or ecx, 1
mov dword [rbp - 0x20], r14d
movups xmm1, xmmword [0x14004b380]
mov dword [rax + r8], ecx
lea r9, [rbp - 0x50]
mov eax, edx
lea r10, [rbp - 0x4e]
add rax, r8
movaps xmmword [rbp - 0x50], xmm0
movups xmm0, xmmword [0x14004b390]
xor ecx, ecx
lea rdx, [rbp - 0x3a]
lea r8, [rbp - 0x44]
movaps xmmword [rbp - 0x40], xmm1
sub rdx, rax
mov word [rax + 8], r14w
mov qword [rbp - 8], rdx
lea r11, [rbp - 0x4c]
mov qword [rax], 0
lea rdx, [rbp - 0x38]
sub rdx, rax
mov byte [rax + 0xa], 0
mov qword [rbp - 0x10], rdx
lea rbx, [rbp - 0x4a]
lea rdx, [rbp - 0x36]
movaps xmmword [rbp - 0x30], xmm0
sub rdx, rax
lea rdi, [rbp - 0x48]
mov qword [rbp - 0x18], rdx
lea rsi, [rbp - 0x46]
xorps xmm0, xmm0
lea rdx, [rbp - 0x34]
sub rdx, rax
lea r14, [rbp - 0x42]
mov qword [rbp + 0x10], rdx
lea r12, [rbp - 0x40]
movups xmmword [rax + 0xc], xmm0
lea rdx, [rbp - 0x32]
sub r8, rax
sub rdx, rax
lea r13, [rbp - 0x3e]
mov qword [rbp + 0x18], rdx
lea r15, [rbp - 0x3c]
lea rdx, [rbp - 0x30]
sub r9, rax
sub r10, rax
sub r11, rax
sub rbx, rax
sub rdi, rax
sub rsi, rax
sub r14, rax
sub r12, rax
sub r13, rax
sub r15, rax
sub rdx, rax
movups xmmword [rax + 0x1c], xmm0
mov qword [rbp + 0x20], rdx
mov edx, dword [rbp - 0x20]
mov dword [rax + 0x2c], ecx
lea rcx, [rax + 0xe]
nop word [rax + rax]
movzx eax, word [rcx + r8 - 0xe]
add edx, 0x12
mov word [rcx - 2], ax
movzx eax, word [r9 + rcx]
mov word [rcx], ax
movzx eax, word [r10 + rcx]
mov word [rcx + 2], ax
movzx eax, word [r11 + rcx]
mov word [rcx + 4], ax
movzx eax, word [rbx + rcx]
mov word [rcx + 6], ax
movzx eax, word [rdi + rcx]
mov word [rcx + 8], ax
movzx eax, word [rsi + rcx]
mov word [rcx + 0xa], ax
movzx eax, word [rcx + r8]
mov word [rcx + 0xc], ax
movzx eax, word [r14 + rcx]
mov word [rcx + 0xe], ax
movzx eax, word [r12 + rcx]
mov word [rcx + 0x10], ax
movzx eax, word [rcx + r13]
mov word [rcx + 0x12], ax
movzx eax, word [r15 + rcx]
mov word [rcx + 0x14], ax
lea rcx, [rcx + 0x24]
mov rax, qword [rbp - 8]
movzx eax, word [rax + rcx - 0x24]
mov word [rcx - 0xe], ax
mov rax, qword [rbp - 0x10]
movzx eax, word [rax + rcx - 0x24]
mov word [rcx - 0xc], ax
mov rax, qword [rbp - 0x18]
movzx eax, word [rax + rcx - 0x24]
mov word [rcx - 0xa], ax
mov rax, qword [rbp + 0x10]
movzx eax, word [rax + rcx - 0x24]
mov word [rcx - 8], ax
mov rax, qword [rbp + 0x18]
movzx eax, word [rax + rcx - 0x24]
mov word [rcx - 6], ax
mov rax, qword [rbp + 0x20]
movzx eax, word [rax + rcx - 0x24]
mov word [rcx - 4], ax
cmp edx, 0x12
jb 0x140019c10
mov r15, qword [rsp + 0x70]
xor r14d, r14d
mov r12d, dword [0x140062c10]
mov edx, 0x790
mov rcx, qword gs:[0x58]
mov eax, r12d
mov r8d, edx
add r8, qword [rcx + rax*8]
cmp byte [r8 + 0xa], 0
jne 0x140019d23
mov edx, r14d
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x75]
inc edx
xor word [r8 + rcx*2 + 0xc], ax
cmp edx, 0x12
jb 0x140019d10
mov rcx, qword gs:[0x58]
lea r13, [r8 + 0xc]
mov eax, r12d
mov byte [r8 + 0xa], 1
mov r8d, 0x770
mov rdx, qword [rcx + rax*8]
mov ecx, 0x78c
mov eax, dword [rcx + rdx]
test al, 1
jne 0x140019e30
movups xmm0, xmmword [0x14004b350]
or eax, 1
lea r9, [rsp + 0x7c]
mov dword [rcx + rdx], eax
lea r10, [rsp + 0x70]
mov eax, dword [0x14004b368]
lea r11, [rsp + 0x72]
mov ecx, r8d
lea rbx, [rsp + 0x74]
add rcx, rdx
mov dword [rbp - 0x78], eax
xor eax, eax
movaps xmmword [rsp + 0x70], xmm0
movsd xmm0, qword [0x14004b360]
lea rdi, [rsp + 0x76]
mov r8d, r14d
movsd qword [rbp - 0x80], xmm0
mov word [rcx + 8], r14w
lea rsi, [rsp + 0x78]
mov qword [rcx], 0
lea r14, [rsp + 0x7a]
mov byte [rcx + 0xa], 0
lea rdx, [rcx + 0xe]
mov qword [rcx + 0xc], rax
sub r9, rcx
sub r10, rcx
mov dword [rcx + 0x14], eax
sub r11, rcx
mov word [rcx + 0x18], ax
sub rbx, rcx
sub rdi, rcx
sub rsi, rcx
sub r14, rcx
nop dword [rax]
movzx eax, word [rdx + r9 - 0xe]
add r8d, 7
mov word [rdx - 2], ax
movzx eax, word [r10 + rdx]
mov word [rdx], ax
movzx eax, word [r11 + rdx]
mov word [rdx + 2], ax
movzx eax, word [rbx + rdx]
mov word [rdx + 4], ax
movzx eax, word [rdi + rdx]
mov word [rdx + 6], ax
movzx eax, word [rsi + rdx]
mov word [rdx + 8], ax
movzx eax, word [r14 + rdx]
mov word [rdx + 0xa], ax
lea rdx, [rdx + 0xe]
cmp r8d, 7
jb 0x140019de0
mov r8d, 0x770
mov rcx, qword gs:[0x58]
xor r14d, r14d
mov eax, r12d
mov r9d, r8d
add r9, qword [rcx + rax*8]
cmp byte [r9 + 0xa], r14b
jne 0x140019e63
mov edx, r14d
nop
movsxd rcx, edx
lea eax, [rdx - 0x76]
inc edx
xor word [r9 + rcx*2 + 0xc], ax
cmp edx, 7
jb 0x140019e50
mov edi, dword [rbp - 0x60]
lea rdx, [r9 + 0xc]
mov ebx, dword [rbp + 0xf0]
mov r8, r13
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], r14
lea eax, [rdi - 0x1c]
mov qword [rsp + 0x40], r15
lea ecx, [rbx - 0x6c]
mov dword [rsp + 0x38], 0x39
mov dword [rsp + 0x30], 0xd9
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
xor ecx, ecx
mov byte [r9 + 0xa], 1
mov r9d, 0x50000000
call qword [sym.imp.USER32.dll_CreateWindowExW]
test rax, rax
je 0x14001a1ad
mov rsi, qword [rbp - 0x58]
mov r9d, 1
mov r8, rsi
mov rcx, rax
lea edx, [r9 + 0x2f]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword gs:[0x58]
mov eax, r12d
mov r9d, 0x7e8
mov rdx, qword [rcx + rax*8]
mov ecx, 0x7f8
mov eax, dword [rcx + rdx]
test al, 1
jne 0x140019f54
movups xmm0, xmmword [0x14004b3c0]
or eax, 1
mov r8d, r9d
add r8, rdx
mov dword [rcx + rdx], eax
xor eax, eax
movaps xmmword [rsp + 0x70], xmm0
mov edx, r14d
lea rcx, [rsp + 0x7c]
mov qword [r8], 0
mov word [r8 + 8], r14w
mov byte [r8 + 0xa], 0
mov word [r8 + 0xc], ax
lea rax, [rsp + 0x7c]
sub r8, rax
nop dword [rax]
movzx eax, word [rcx]
inc edx
mov word [rcx + r8 + 0xc], ax
lea rcx, [rcx + 2]
cmp edx, 1
jb 0x140019f40
mov rcx, qword gs:[0x58]
mov eax, r12d
mov r8d, r9d
add r8, qword [rcx + rax*8]
cmp byte [r8 + 0xa], 0
jne 0x140019f84
mov edx, r14d
movsxd rcx, edx
lea eax, [rdx - 0x75]
inc edx
xor word [r8 + rcx*2 + 0xc], ax
cmp edx, 1
jb 0x140019f71
mov rcx, qword gs:[0x58]
lea r13, [r8 + 0xc]
mov eax, r12d
mov byte [r8 + 0xa], 1
mov r8d, 0x7c8
mov rdx, qword [rcx + rax*8]
mov ecx, 0x7e4
mov eax, dword [rcx + rdx]
test al, 1
jne 0x14001a0a0
movups xmm0, xmmword [0x14004b3a0]
or eax, 1
lea r9, [rsp + 0x7c]
mov dword [rcx + rdx], eax
lea r10, [rsp + 0x70]
mov eax, dword [0x14004b3b8]
lea r11, [rsp + 0x72]
mov ecx, r8d
lea rbx, [rsp + 0x74]
add rcx, rdx
mov dword [rbp - 0x78], eax
xor eax, eax
movaps xmmword [rsp + 0x70], xmm0
movsd xmm0, qword [0x14004b3b0]
lea rdi, [rsp + 0x76]
mov r8d, r14d
movsd qword [rbp - 0x80], xmm0
mov word [rcx + 8], r14w
lea rsi, [rsp + 0x78]
mov qword [rcx], 0
lea r14, [rsp + 0x7a]
mov byte [rcx + 0xa], 0
lea rdx, [rcx + 0xe]
mov qword [rcx + 0xc], rax
sub r9, rcx
sub r10, rcx
mov dword [rcx + 0x14], eax
sub r11, rcx
mov word [rcx + 0x18], ax
sub rbx, rcx
sub rdi, rcx
sub rsi, rcx
sub r14, rcx
nop dword [rax]
movzx eax, word [rdx + r9 - 0xe]
add r8d, 7
mov word [rdx - 2], ax
movzx eax, word [r10 + rdx]
mov word [rdx], ax
movzx eax, word [r11 + rdx]
mov word [rdx + 2], ax
movzx eax, word [rbx + rdx]
mov word [rdx + 4], ax
movzx eax, word [rdi + rdx]
mov word [rdx + 6], ax
movzx eax, word [rsi + rdx]
mov word [rdx + 8], ax
movzx eax, word [r14 + rdx]
mov word [rdx + 0xa], ax
lea rdx, [rdx + 0xe]
cmp r8d, 7
jb 0x14001a040
mov ebx, dword [rbp + 0xf0]
xor r14d, r14d
mov edi, dword [rbp - 0x60]
mov rsi, qword [rbp - 0x58]
mov r8d, 0x7c8
mov rcx, qword gs:[0x58]
mov eax, r12d
mov r10d, r8d
add r10, qword [rcx + rax*8]
cmp byte [r10 + 0xa], 0
jne 0x14001a0d3
mov edx, r14d
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx - 0x75]
inc edx
xor word [r10 + rcx*2 + 0xc], ax
cmp edx, 7
jb 0x14001a0c0
mov qword [rsp + 0x58], r14
lea ecx, [rbx - 0x96]
mov qword [rsp + 0x50], r14
lea eax, [rdi + 0x28]
mov qword [rsp + 0x48], r14
lea rdx, [r10 + 0xc]
mov qword [rsp + 0x40], r15
mov r9d, 0x50000000
mov dword [rsp + 0x38], 0x1e
mov r8, r13
mov dword [rsp + 0x30], 0x1f4
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
xor ecx, ecx
mov byte [r10 + 0xa], 1
call qword [sym.imp.USER32.dll_CreateWindowExW]
test rax, rax
je 0x14001a1ad
mov r9d, 1
mov r8, rsi
mov rcx, rax
lea edx, [r9 + 0x2f]
call qword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [rbp + 0x108]
mov rcx, r15
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, r15
call qword [sym.imp.USER32.dll_UpdateWindow]
xor r9d, r9d
lea rcx, [rbp + 0x80]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
je 0x14001a1a5
lea rcx, [rbp + 0x80]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp + 0x80]
call qword [sym.imp.USER32.dll_DispatchMessageW]
xor r9d, r9d
lea rcx, [rbp + 0x80]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
jne 0x14001a172
mov eax, dword [rbp + 0x90]
jmp 0x14001a1b2
mov eax, 0xffffffff
mov r15, qword [rsp + 0x1b0]
mov r13, qword [rsp + 0x1f8]
add rsp, 0x1b8
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret