Function at 0x1401f1228
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x18a8
call fcn.140389a00
sub rsp, rax
movaps xmmword [rsp + 0x1890], xmm9
movaps xmmword [rsp + 0x1880], xmm8
movaps xmmword [rsp + 0x1870], xmm7
movaps xmmword [rsp + 0x1860], xmm6
mov rbp, rdx
mov qword [rsp + 0x180], rcx
lea rsi, [rsp + 0x220]
mov rcx, rsi
call fcn.140230920
mov rdx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
lea rsi, [rsp + 0x470]
mov rcx, rsi
call fcn.140243f70
lea rax, [0x140490ff8]
lea rdx, [rsp + 0x7f0]
mov qword [rdx], rax
mov rcx, qword [rdx]
movabs rax, 0xc5df46a2ac959f8
mov qword [rdx], rax
mov rdx, qword [rdx]
call fcn.14000a88d
xorps xmm0, xmm0
movaps xmmword [rsp + 0x730], xmm0
mov cl, 1
xor edx, edx
lea r8, [0x140497892]
movzx r10d, byte [rdx + r8]
mov r9, rdx
or r9, 1
movzx r9d, byte [r9 + r8]
mov r11, rdx
or r11, 2
movzx r11d, byte [r11 + r8]
mov rdi, rdx
or rdi, 3
movzx edi, byte [rdi + r8]
mov rbx, rdx
or rbx, 4
movzx ebx, byte [rbx + r8]
mov r14, rdx
or r14, 5
movzx r14d, byte [r14 + r8]
mov r15, rdx
or r15, 6
mov r12, rdx
or r12, 7
movzx r15d, byte [r15 + r8]
movzx r12d, byte [r12 + r8]
shl r12, 0x38
shl r15, 0x30
or r15, r12
shl r14, 0x28
shl rbx, 0x20
shl rdi, 0x18
shl r11, 0x10
shl r9, 8
or r9, r10
or r9, r11
or r9, rdi
or r9, rbx
or r9, r14
or r9, r15
xor r9, qword [rax + rdx]
mov qword [rsp + rdx + 0x730], r9
mov edx, 8
test cl, 1
mov ecx, 0
jne 0x1401f12d6
movzx ecx, byte [rax + 0x12]
movzx eax, word [rax + 0x10]
xor eax, 0x3612
lea rdx, [rsp + 0x730]
mov word [rdx + 0x10], ax
xor cl, 0xcb
mov byte [rdx + 0x12], cl
lea rax, [rsp + 0x1b0]
mov qword [rax], rdx
mov qword [rax + 8], 0x13
lea r13, [rsp + 0x370]
mov qword [r13], rsi
lea rcx, [0x1401e0c1f]
mov qword [r13 + 8], rcx
mov qword [r13 + 0x10], rax
lea rax, [0x140071250]
mov qword [r13 + 0x18], rax
lea rax, [0x140498cb8]
lea rdx, [rsp + 0x7f0]
mov qword [rdx + 0x10], rax
mov eax, 2
mov qword [rdx + 0x18], rax
mov qword [rdx], 0
mov qword [rdx + 0x20], r13
mov qword [rdx + 0x28], rax
lea rcx, [rsp + 0x660]
call fcn.1400476f0
cmp qword [rsp + 0x470], 0
je 0x1401f143c
cmp qword [rsp + 0x478], 0
je 0x1401f143c
mov r8, qword [rsp + 0x480]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x220], 0
je 0x1401f145e
mov r8, qword [rsp + 0x228]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov r15, qword [rsp + 0x660]
mov rbx, qword [rsp + 0x668]
mov rdi, qword [rsp + 0x670]
xor eax, eax
lea r8, [rsp + 0x7f0]
mov dword [r8 + 0x20], eax
mov word [r8 + 0x24], 0
mov qword [r8], 0
mov dword [r8 + 8], eax
movaps xmm6, xmmword [0x14039afc0]
movups xmmword [r8 + 0x10], xmm6
mov al, 1
mov byte [r8 + 0x21], al
mov byte [r8 + 0x24], al
mov byte [r8 + 0x23], al
mov rcx, rbx
mov rdx, rdi
call fcn.140231440
mov rsi, rdx
test rax, rax
je 0x1401f14ec
lea rcx, [rsp + 0x630]
mov qword [rcx], rax
mov qword [rcx + 8], rsi
mov rax, qword [rsp + 0x180]
mov qword [rax + 8], 0
call fcn.1401f564e
jmp 0x1401f53ad
mov qword [rsp + 0x578], rdi
mov qword [rsp + 0x630], rax
mov qword [rsp + 0x638], rsi
lea rdi, [rsp + 0x7f0]
mov rcx, rdi
call fcn.14005c5ec
xorps xmm0, xmm0
mov eax, 1
mov qword [rsp + 0x680], rax
mov qword [rsp + 0x688], rsi
xor ecx, ecx
mov qword [rsp + 0x698], rcx
mov qword [rsp + 0x6f0], rcx
mov qword [rsp + 0x6f8], 8
movaps xmmword [rsp + 0x700], xmm0
movaps xmmword [rsp + 0x670], xmm0
movups xmm0, xmmword [rdi]
movaps xmmword [rsp + 0x660], xmm0
mov dword [rsp + 0x720], 0
mov qword [rsp + 0x710], rax
mov qword [rsp + 0x718], rcx
lea r14, [rsp + 0x7f0]
mov rcx, r14
call fcn.14026a2d4
mov eax, dword [r14]
mov dword [rsp + 0x13c], eax
mov rax, qword [r14 + 4]
mov qword [rsp + 0x320], rax
mov eax, dword [r14 + 0xc]
mov dword [rsp + 0x328], eax
mov rax, qword [r14 + 0x10]
mov qword [rsp + 0x570], rax
mov eax, dword [r14 + 0x18]
mov dword [rsp + 0x138], eax
mov eax, dword [r14 + 0x1c]
mov dword [rsp + 0x134], eax
mov edi, dword [r14 + 0x20]
mov esi, dword [r14 + 0x24]
movzx eax, word [r14 + 0x2a]
mov word [rsp + 0x132], ax
mov al, byte [r14 + 0x2c]
mov byte [rsp + 0x97], al
lea rax, [0x1404950bd]
mov qword [r14], rax
mov rcx, qword [r14]
movabs rax, 0xacc007e12041a1fd
mov qword [r14], rax
mov rdx, qword [r14]
call fcn.14000d089
movabs rcx, 0x70711306ea7b2c38
xor rcx, qword [rax]
lea rdx, [rsp + 0x470]
mov qword [rdx], rcx
movzx ecx, byte [rax + 0xa]
movzx eax, word [rax + 8]
xor eax, 0xbbce
mov word [rdx + 8], ax
xor cl, 0x2e
mov byte [rdx + 0xa], cl
lea r12, [rsp + 0x220]
mov r8d, 0xb
mov rcx, r12
call fcn.140230580
cmp byte [r12 + 0x18], 3
jne 0x1401f542e
mov dword [rsp + 0x128], edi
mov dword [rsp + 0x188], esi
mov qword [rsp + 0x168], r15
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x178], rbp
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x1a0], rax
movups xmm0, xmmword [rsp + 0x220]
movaps xmmword [rsp + 0x190], xmm0
mov ecx, 0x78
mov edx, 8
call fcn.140020b50
test rax, rax
je 0x1401f5475
mov rsi, rax
lea rax, [0x14048a2a8]
lea r15, [rsp + 0x7f0]
mov qword [r15], rax
mov rcx, qword [r15]
movabs rax, 0x2cbf2dd1c5e5b505
mov qword [r15], rax
mov rdx, qword [r15]
call fcn.14000ba74
movabs rcx, 0xef1e027a0c89561f
xor rcx, qword [rax]
mov qword [rsp + 0x370], rcx
mov qword [rsp + 0x470], r13
mov qword [rsp + 0x478], 8
lea rax, [rsp + 0x190]
mov qword [rsp + 0x220], rax
lea rdi, [0x140009a60]
mov qword [rsp + 0x228], rdi
lea r12, [rsp + 0x470]
mov qword [rsp + 0x230], r12
lea rax, [0x140071250]
mov qword [rsp + 0x238], rax
lea rbp, [0x140498cb8]
mov qword [r15 + 0x10], rbp
mov r14d, 2
mov qword [r15 + 0x18], r14
xor ebx, ebx
mov qword [r15], rbx
mov r12, r13
lea r13, [rsp + 0x220]
mov qword [r15 + 0x20], r13
mov qword [r15 + 0x28], r14
lea rcx, [rsp + 0x5b0]
mov rdx, r15
call fcn.1400476f0
lea rax, [0x140489ca1]
mov qword [r15], rax
mov rcx, qword [r15]
movabs rax, 0x6476d41a43c417a9
mov qword [r15], rax
mov rdx, qword [r15]
call fcn.14000a4e2
movabs rcx, 0x51fa1b361a6a111
xor rcx, qword [rax]
mov qword [rsp + 0x370], rcx
movzx eax, word [rax + 8]
xor eax, 0x9dc7
mov word [rsp + 0x378], ax
mov qword [rsp + 0x470], r12
mov qword [rsp + 0x478], 0xa
lea rax, [rsp + 0x190]
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], rdi
lea rax, [rsp + 0x470]
mov qword [rsp + 0x230], rax
lea rax, [0x140071250]
mov qword [rsp + 0x238], rax
mov qword [r15 + 0x10], rbp
mov qword [r15 + 0x18], r14
mov qword [r15], rbx
mov qword [r15 + 0x20], r13
mov qword [r15 + 0x28], r14
lea rcx, [rsp + 0x330]
lea r14, [rsp + 0x7f0]
mov rdx, r14
call fcn.1400476f0
lea rax, [0x14049306c]
mov qword [r14], rax
mov rcx, qword [r14]
movabs rax, 0xf195a8d12d03e3c
mov qword [r14], rax
mov rdx, qword [r14]
call fcn.14000c9e4
xorps xmm0, xmm0
movaps xmmword [rsp + 0x470], xmm0
mov dl, 1
lea rcx, [0x1404978d8]
movzx r9d, byte [rbx + rcx]
mov r8, rbx
or r8, 1
movzx r8d, byte [r8 + rcx]
mov r10, rbx
or r10, 2
movzx r10d, byte [r10 + rcx]
mov r11, rbx
or r11, 3
movzx r11d, byte [r11 + rcx]
mov r14, rbx
or r14, 4
movzx r14d, byte [r14 + rcx]
mov r15, rbx
or r15, 5
movzx r15d, byte [r15 + rcx]
mov r12, rbx
or r12, 6
mov rbp, rbx
or rbp, 7
movzx r12d, byte [r12 + rcx]
movzx ebp, byte [rbp + rcx]
shl rbp, 0x38
shl r12, 0x30
or r12, rbp
shl r15, 0x28
shl r14, 0x20
shl r11, 0x18
shl r10, 0x10
shl r8, 8
or r8, r9
or r8, r10
or r8, r11
or r8, r14
or r8, r15
or r8, r12
xor r8, qword [rax + rbx]
mov qword [rsp + rbx + 0x470], r8
mov ebx, 8
test dl, 1
mov edx, 0
jne 0x1401f1889
lea rax, [rsp + 0x470]
mov qword [rsp + 0x370], rax
mov qword [rsp + 0x378], 0x10
lea rax, [rsp + 0x190]
mov qword [rsp + 0x220], rax
lea rax, [0x140009a60]
mov qword [rsp + 0x228], rax
lea r13, [rsp + 0x370]
mov qword [rsp + 0x230], r13
lea rax, [0x140071250]
mov qword [rsp + 0x238], rax
lea r14, [rsp + 0x7f0]
lea rax, [0x140498cb8]
mov qword [r14 + 0x10], rax
mov eax, 2
mov qword [r14 + 0x18], rax
mov qword [r14], 0
lea rcx, [rsp + 0x220]
mov qword [r14 + 0x20], rcx
mov qword [r14 + 0x28], rax
lea rcx, [rsp + 0x1b0]
mov rdx, r14
call fcn.1400476f0
lea rax, [0x140496424]
mov qword [r14], rax
mov rcx, qword [r14]
movabs rax, 0x35f3d4d223f01288
mov qword [r14], rax
mov rdx, qword [r14]
call fcn.14000ab92
xorps xmm0, xmm0
movaps xmmword [rsp + 0x470], xmm0
mov cl, 1
xor edi, edi
lea r8, [0x1404978e8]
movzx r10d, byte [rdi + r8]
mov r9, rdi
or r9, 1
movzx r9d, byte [r9 + r8]
mov r11, rdi
or r11, 2
movzx r11d, byte [r11 + r8]
mov rbx, rdi
or rbx, 3
movzx r14d, byte [rbx + r8]
mov rbx, rdi
or rbx, 4
movzx r15d, byte [rbx + r8]
mov rbx, rdi
or rbx, 5
movzx ebp, byte [rbx + r8]
mov rbx, rdi
or rbx, 6
mov rdx, rdi
or rdx, 7
movzx r12d, byte [rbx + r8]
movzx edx, byte [rdx + r8]
shl rdx, 0x38
shl r12, 0x30
or r12, rdx
shl rbp, 0x28
shl r15, 0x20
shl r14, 0x18
shl r11, 0x10
shl r9, 8
or r9, r10
or r9, r11
or r9, r14
or r9, r15
or r9, rbp
or r9, r12
xor r9, qword [rax + rdi]
mov qword [rsp + rdi + 0x470], r9
mov edi, 8
test cl, 1
mov ecx, 0
jne 0x1401f1a07
mov ecx, 0xcecc4c01
xor ecx, dword [rax + 0x10]
mov dword [rsp + 0x480], ecx
mov al, byte [rax + 0x14]
xor al, 0x47
mov byte [rsp + 0x484], al
lea rax, [rsp + 0x470]
mov qword [rsp + 0x370], rax
mov qword [rsp + 0x378], 0x15
lea rax, [rsp + 0x190]
mov qword [rsp + 0x220], rax
lea rax, [0x140009a60]
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], r13
lea rdi, [0x140071250]
mov qword [rsp + 0x238], rdi
lea r14, [rsp + 0x7f0]
lea rax, [0x140498cb8]
mov qword [r14 + 0x10], rax
mov eax, 2
mov qword [r14 + 0x18], rax
mov qword [r14], 0
lea rcx, [rsp + 0x220]
mov qword [r14 + 0x20], rcx
mov qword [r14 + 0x28], rax
lea rcx, [rsp + 0x730]
mov rdx, r14
call fcn.1400476f0
lea rax, [0x140492aa6]
mov qword [r14], rax
mov rcx, qword [r14]
movabs rax, 0x9f8c0ee7796fe1cf
mov qword [r14], rax
mov rdx, qword [r14]
call fcn.14000ae95
xorps xmm0, xmm0
movaps xmmword [rsp + 0x220], xmm0
movaps xmmword [rsp + 0x230], xmm0
mov rcx, 0xfffffffffffffff8
lea rdx, [0x1404978fd]
mov r8, qword [rcx + rdx + 8]
xor r8, qword [rax + rcx + 8]
mov qword [rsp + rcx + 0x228], r8
add rcx, 8
cmp rcx, 0x18
jb 0x1401f1ba3
mov ecx, 0xe8206bcc
xor ecx, dword [rax + 0x20]
mov dword [rsp + 0x240], ecx
movzx ecx, byte [rax + 0x26]
movzx eax, word [rax + 0x24]
xor eax, 0xb560
mov word [rsp + 0x244], ax
xor cl, 0x6a
mov byte [rsp + 0x246], cl
lea rax, [rsp + 0xc0]
lea rcx, [rsp + 0x220]
mov qword [rax], rcx
mov qword [rax + 8], 0x27
lea rcx, [rsp + 0x190]
mov qword [rsp + 0x470], rcx
lea rcx, [0x140009a60]
mov qword [rsp + 0x478], rcx
mov qword [rsp + 0x480], rax
mov qword [rsp + 0x488], rdi
lea r13, [rsp + 0x7f0]
lea rax, [0x140498cb8]
mov qword [r13 + 0x10], rax
mov eax, 2
mov qword [r13 + 0x18], rax
mov qword [r13], 0
lea rcx, [rsp + 0x470]
mov qword [r13 + 0x20], rcx
mov qword [r13 + 0x28], rax
lea rdi, [rsp + 0x370]
mov rcx, rdi
mov rdx, r13
call fcn.1400476f0
mov rax, qword [rsp + 0x5c0]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rsp + 0x5b0]
movups xmmword [rsi], xmm0
mov rax, qword [rsp + 0x340]
mov qword [rsi + 0x28], rax
movups xmm0, xmmword [rsp + 0x330]
movups xmmword [rsi + 0x18], xmm0
mov rax, qword [rsp + 0x1c0]
mov qword [rsi + 0x40], rax
movups xmm0, xmmword [rsp + 0x1b0]
movups xmmword [rsi + 0x30], xmm0
mov rax, qword [rsp + 0x740]
mov qword [rsi + 0x58], rax
movups xmm0, xmmword [rsp + 0x730]
movups xmmword [rsi + 0x48], xmm0
movups xmm0, xmmword [rdi]
movups xmmword [rsi + 0x60], xmm0
mov rax, qword [rdi + 0x10]
mov qword [rsi + 0x70], rax
mov ecx, 0x138
mov edx, 8
call fcn.140020b50
test rax, rax
je 0x1401f547c
mov rbp, rax
lea rax, [0x140496c76]
lea r15, [rsp + 0x828]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0xdb21e7c104b2eb3a
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.140009ce3
mov edi, 0xe7b0ebe9
xor edi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x120], rdx
mov dword [rdx], edi
lea rax, [0x140497c48]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0xb2cec3bfa1744bf0
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000cad5
mov ecx, dword [rax]
mov bl, byte [rax + 4]
xor bl, 0x91
mov edi, 0xafbd7bd2
xor rdi, rcx
mov ecx, 5
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rdx
mov byte [rdx + 4], bl
mov dword [rdx], edi
lea rax, [0x14048e586]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0xda6ef69d9eb5d37d
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000d004
mov edi, 0xd0e110f7
xor edi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0x30], rax
mov qword [rsp + 0xb0], rdx
mov dword [rdx], edi
lea rax, [0x140488bbb]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0x88c475a336e2d55b
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000b22b
mov edi, 0x82b2d836
xor edi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x50], rdx
mov dword [rdx], edi
lea rax, [0x1404887d1]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0x606c78bd70ca000a
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000a08a
mov ecx, dword [rax]
mov bl, byte [rax + 4]
xor bl, 0xfb
mov edi, 0xf7f13174
xor rdi, rcx
mov ecx, 5
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x38], rdx
mov byte [rdx + 4], bl
mov dword [rdx], edi
lea rax, [0x140490c44]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0x3393c475323618da
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000a79b
mov edi, 0xd81c030e
xor edi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0x68], rdx
mov dword [rdx], edi
lea rax, [0x14048d0f0]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0x904ad0cafa2343a4
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000a723
mov edi, dword [rax]
mov bl, byte [rax + 4]
xor bl, 0x87
xor rdi, 0x484b205
mov ecx, 5
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x40], rdx
mov byte [rdx + 4], bl
mov dword [rdx], edi
lea rax, [0x1404898d5]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0xd1c61a609bbcd87f
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000b1fa
mov edi, 0x2d82b98e
xor edi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x118], rdx
mov dword [rdx], edi
lea rax, [0x140490797]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0x73948b34703a3a76
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000d125
mov ecx, dword [rax]
mov dil, byte [rax + 4]
xor dil, 0x5f
mov r14d, 0x9e592e74
xor r14, rcx
mov ecx, 5
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0x58], rax
mov rbx, rdx
mov byte [rdx + 4], dil
mov dword [rdx], r14d
lea rax, [0x140491c9b]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0x51a0dab83d0c4858
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000af88
mov edi, 0x7b9192db
xor edi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x588], rdx
mov dword [rdx], edi
lea rax, [0x140495ea9]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0x37f93834797154de
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000cfd2
mov edi, 0xffc8f701
xor edi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.140272bf2
mov qword [rsp + 0x580], rax
mov r12, rdx
mov dword [rdx], edi
lea rax, [0x140495a16]
mov qword [r15 - 0x38], rax
mov rcx, qword [r15 - 0x38]
movabs rax, 0x78b4b80459837ee7
mov qword [r15 - 0x38], rax
mov rdx, qword [r15 - 0x38]
call fcn.14000d214
mov r13d, 0xb31fcae7
xor r13d, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.140272bf2
mov r14, rax
mov rdi, rdx
mov dword [rdx], r13d
lea rax, [0x14049266d]
mov qword [r15 - 0x38], rax
lea rax, [rsp + 0x7f0]
mov rcx, qword [r15 - 0x38]
movabs rax, 0xac361783a6edca29
mov qword [r15 - 0x38], rax
lea rax, [rsp + 0x7f0]
mov rdx, qword [r15 - 0x38]
call fcn.140009d4f
mov r13d, 0x33368ab5
xor r13d, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.140272bf2
mov dword [rdx], r13d
lea r13, [rsp + 0x7f0]
mov rcx, qword [rsp + 0x160]
mov qword [rbp], rcx
mov rcx, qword [rsp + 0x120]
mov qword [rbp + 8], rcx
mov ecx, 4
mov qword [rbp + 0x10], rcx
mov r8, qword [rsp + 0x98]
mov qword [rbp + 0x18], r8
mov r8, qword [rsp + 0xa0]
mov qword [rbp + 0x20], r8
mov r8d, 5
mov qword [rbp + 0x28], r8
mov r9, qword [rsp + 0x30]
mov qword [rbp + 0x30], r9
mov r9, qword [rsp + 0xb0]
mov qword [rbp + 0x38], r9
mov qword [rbp + 0x40], rcx
mov r9, qword [rsp + 0xa8]
mov qword [rbp + 0x48], r9
mov r9, qword [rsp + 0x50]
mov qword [rbp + 0x50], r9
mov qword [rbp + 0x58], rcx
mov r9, qword [rsp + 0x48]
mov qword [rbp + 0x60], r9
mov r9, qword [rsp + 0x38]
mov qword [rbp + 0x68], r9
mov qword [rbp + 0x70], r8
mov r9, qword [rsp + 0xb8]
mov qword [rbp + 0x78], r9
mov r9, qword [rsp + 0x68]
mov qword [rbp + 0x80], r9
mov qword [rbp + 0x88], rcx
mov r9, qword [rsp + 0x60]
mov qword [rbp + 0x90], r9
mov r9, qword [rsp + 0x40]
mov qword [rbp + 0x98], r9
mov qword [rbp + 0xa0], r8
mov r9, qword [rsp + 0x88]
mov qword [rbp + 0xa8], r9
mov r9, qword [rsp + 0x118]
mov qword [rbp + 0xb0], r9
mov qword [rbp + 0xb8], rcx
mov r9, qword [rsp + 0x58]
mov qword [rbp + 0xc0], r9
mov qword [rbp + 0xc8], rbx
mov qword [rbp + 0xd0], r8
mov r9, qword [rsp + 0x110]
mov qword [rbp + 0xd8], r9
mov r9, qword [rsp + 0x588]
mov qword [rbp + 0xe0], r9
mov qword [rbp + 0xe8], rcx
mov r9, qword [rsp + 0x580]
mov qword [rbp + 0xf0], r9
mov qword [rbp + 0xf8], r12
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], r14
mov qword [rbp + 0x110], rdi
mov qword [rbp + 0x118], rcx
mov qword [rbp + 0x120], rax
mov qword [rbp + 0x128], rdx
mov qword [rbp + 0x130], rcx
mov rax, rsi
add rax, 0x78
mov qword [rsp + 0x590], r8
mov qword [rsp + 0x598], rsi
mov qword [rsp + 0x5a0], rax
mov qword [rsp + 0x5a8], rsi
mov ecx, dword [rsp + 0x188]
shl ecx, 0x10
or ecx, 0x80000000
cmp dword [rsp + 0x128], 0
mov eax, 0x81a40000
cmovne eax, ecx
mov dword [rsp + 0x160], eax
xorps xmm7, xmm7
movss xmm8, dword [0x14039afd0]
lea r15, [rsp + 0x220]
lea r12, [rsi + 0x18]
mov qword [rsp + 0x598], r12
mov rbx, qword [rsi + 8]
test rbx, rbx
je 0x1401f5016
mov rax, qword [rsi]
mov qword [rsp + 0x188], rax
mov r14, qword [rsi + 0x10]
mov rcx, r13
mov rdx, rbx
mov r8, r14
call fcn.1402352a0
cmp dword [rsp + 0x7f0], 2
jne 0x1401f2328
mov rax, qword [rsp + 0x7f8]
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x220], 2
jmp 0x1401f2341
mov ecx, 9
mov rdi, r15
mov rsi, r13
rep movsq qword [rdi], qword [rsi]
cmp qword [rsp + 0x220], 2
jne 0x1401f2356
lea rcx, [rsp + 0x228]
call fcn.1401b10eb
mov rsi, r12
jmp 0x1401f4feb
mov rcx, r13
mov rdx, rbx
mov r8, r14
call fcn.140248d80
xor edx, edx
mov qword [rsp + 0x810], rdx
mov qword [rsp + 0x820], 0xa
mov qword [rsp + 0x828], rdx
mov dword [rsp + 0x838], 0x100
mov qword [rsp + 0x830], 1
mov ecx, 0xa
mov rdi, r15
mov rsi, r13
rep movsq qword [rdi], qword [rsi]
lea rax, [rsp + 0x228]
movups xmm0, xmmword [rax + 0x18]
movups xmm1, xmmword [rax + 0x28]
movups xmm2, xmmword [rax + 0x38]
lea rax, [rsp + 0x478]
movups xmmword [rax + 0x38], xmm2
movups xmmword [rax + 0x28], xmm1
movups xmmword [rax + 0x18], xmm0
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x480], xmm1
movaps xmmword [rsp + 0x470], xmm0
lea r8, [rsp + 0x788]
movups xmmword [r8 + 0x28], xmm7
movups xmmword [rsp + 0x7f8], xmm7
movups xmmword [r8 + 0x40], xmm7
mov ecx, 0xa
lea rdi, [rsp + 0x730]
lea rsi, [rsp + 0x470]
rep movsq qword [rdi], qword [rsi]
mov rax, qword [rsp + 0x800]
mov qword [r8 + 0x10], rax
movups xmm0, xmmword [rsp + 0x7f0]
movups xmmword [r8], xmm0
mov qword [rsp + 0x780], rdx
mov qword [rsp + 0x7a0], rdx
mov eax, 8
mov qword [rsp + 0x7a8], rax
mov qword [rsp + 0x7c0], rax
mov qword [rsp + 0x7d8], rax
mov qword [rsp + 0x7e0], rdx
lea r12, [rsp + 0x828]
lea r14, [rsp + 0x730]
mov rcx, r13
mov rdx, r14
call fcn.1402616ee
mov rax, qword [rsp + 0x820]
cmp rax, 2
jne 0x1401f24af
mov ecx, 9
mov rdi, r15
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
mov rcx, r15
call fcn.140004d60
jmp 0x1401f247e
cmp eax, 3
je 0x1401f4fd3
mov rsi, qword [rsp + 0x7f0]
mov r14, qword [rsp + 0x7f8]
mov r12, qword [rsp + 0x800]
lea rax, [rsp + 0x828]
xor ecx, ecx
mov dword [rax - 0x18], ecx
mov word [rax - 0x14], 0
mov qword [rsp + 0x7f0], 0
mov dword [rsp + 0x7f8], ecx
movups xmmword [rsp + 0x800], xmm6
mov byte [rsp + 0x810], 1
mov rcx, r14
mov rdx, r12
mov r8, r13
call fcn.140231440
test rax, rax
jne 0x1401f2694
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0x200], rdx
mov rcx, r13
call fcn.140231650
cmp dword [rsp + 0x7f0], 2
mov qword [rsp + 0x128], rsi
jne 0x1401f2565
mov rax, qword [rsp + 0x7f8]
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x220], 2
jmp 0x1401f257e
mov ecx, 9
mov rdi, r15
mov rsi, r13
rep movsq qword [rdi], qword [rsi]
cmp qword [rsp + 0x220], 2
jne 0x1401f25b2
xor eax, eax
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], 1
mov qword [rsp + 0x150], rax
lea rcx, [rsp + 0x228]
call fcn.1401b10eb
mov esi, 1
xor edi, edi
jmp 0x1401f25e3
mov rcx, qword [rsp + 0x248]
xor edx, edx
call fcn.140272bf2
mov rdi, rax
mov rsi, rdx
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], rdx
mov qword [rsp + 0x150], 0
mov r13d, 0x10
cmp r13, 0x148
je 0x1401f2640
mov rcx, r14
mov rdx, r12
call fcn.140237fa0
test rax, rax
cmove rax, r14
cmove rdx, r12
mov rcx, rax
call fcn.140248cf0
test rax, rax
je 0x1401f5414
mov r8, qword [rbp + r13]
cmp rdx, r8
jb 0x1401f263a
mov rcx, qword [rbp + r13 - 8]
sub rdx, r8
add rax, rdx
mov rdx, rax
call fcn.14038aeb0
test eax, eax
je 0x1401f2647
add r13, 0x18
jmp 0x1401f25e9
test rdi, rdi
jne 0x1401f2654
jmp 0x1401f2666
cmp rdi, 0x26259f
jbe 0x1401f26d9
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
lea rcx, [rsp + 0x1f8]
call fcn.1401f564e
cmp qword [rsp + 0x128], 0
lea r13, [rsp + 0x7f0]
lea r12, [rsp + 0x828]
je 0x1401f2476
jmp 0x1401f26c2
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0x200], rdx
lea r12, [rsp + 0x828]
lea rcx, [rsp + 0x1f8]
call fcn.1401f564e
test rsi, rsi
je 0x1401f2476
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, r14
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x1401f2476
inc qword [0x1404fd078]
lea r13, [rsp + 0x7f0]
mov rcx, r13
lea rdx, [rsp + 0x200]
lea r8, [rsp + 0x140]
call fcn.140232e70
cmp qword [rsp + 0x7f0], 0
je 0x1401f2725
lea rcx, [rsp + 0x7f8]
call fcn.1401b10eb
lea r12, [rsp + 0x828]
jmp 0x1401f3b63
mov rsi, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x150]
mov r13d, 0x10
lea rax, [0x14041c5c0]
cmp r13, 0x238
je 0x1401f2777
mov r8, qword [r13 + rax - 8]
cmp rdi, r8
jb 0x1401f2771
mov rcx, qword [r13 + rax - 0x10]
mov rdx, rsi
call fcn.14038aeb0
test eax, eax
lea rax, [0x14041c5c0]
je 0x1401f27f9
add r13, 0x18
jmp 0x1401f2742
mov byte [rsp + 0x238], 5
lea r13, [rsp + 0x7f0]
mov rcx, r13
mov rdx, r15
call fcn.1400aa4b8
mov r8b, byte [rsp + 0x7f0]
mov al, byte [rsp + 0x828]
cmp al, 0xc
je 0x1401f2806
lea rdx, [rsp + 0x828]
mov rcx, qword [rdx - 8]
lea r9, [rsp + 0x5f1]
mov qword [r9 + 0x2f], rcx
movups xmm0, xmmword [rdx - 0x37]
movups xmm1, xmmword [rdx - 0x27]
movups xmm2, xmmword [rdx - 0x17]
movups xmmword [r9 + 0x20], xmm2
movups xmmword [r9 + 0x10], xmm1
movups xmmword [r9], xmm0
mov ecx, dword [rdx + 1]
mov edx, dword [rdx + 4]
mov dword [r9 + 0x3b], edx
mov dword [r9 + 0x38], ecx
mov byte [rsp + 0x5f0], r8b
mov byte [rsp + 0x628], al
jmp 0x1401f381e
mov r8b, byte [r13 + rax]
lea r13, [rsp + 0x7f0]
mov qword [rsp + 0x470], rsi
mov qword [rsp + 0x478], rdi
mov qword [rsp + 0x480], 0
xor eax, eax
mov dword [rsp + 0x230], eax
mov dword [rsp + 0x238], eax
mov ecx, 1
mov qword [rsp + 0x220], rcx
mov edx, 0x20000000
mov qword [rsp + 0x228], rdx
mov qword [rsp + 0x7f0], rcx
mov qword [rsp + 0x7f8], rdx
mov dword [rsp + 0x800], eax
mov dword [rsp + 0x808], eax
mov qword [rsp + 0x20], r13
lea rcx, [rsp + 0x5f0]
lea rdx, [rsp + 0x470]
mov r9, r15
call fcn.1400aafc4
cmp byte [rsp + 0x628], 0xc
jne 0x1401f381e
mov rax, qword [rsp + 0x5f0]
mov qword [rsp + 0x98], rax
mov r13, qword [rsp + 0x5f8]
mov rax, qword [rsp + 0x600]
mov qword [rsp + 0xa0], rax
mov rsi, qword [rsp + 0x608]
mov eax, dword [rsp + 0x610]
mov qword [rsp + 0x50], rax
mov eax, dword [rsp + 0x614]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x650], 1
mov qword [rsp + 0x658], 0
movups xmmword [rsp + 0x640], xmm7
mov ecx, 0x24
mov edx, 4
call fcn.140020b50
test rax, rax
je 0x1401f54ce
mov rdi, rax
mov qword [rsp + 0xb0], r13
movabs rax, 0x1010100000000
mov qword [rdi], rax
mov word [rdi + 8], 0
xor eax, eax
mov dword [rdi + 0xc], eax
mov byte [rdi + 0x10], 2
mov edx, 0x1010101
mov dword [rdi + 0x11], edx
mov cl, 1
mov byte [rdi + 0x15], cl
mov dword [rdi + 0x18], eax
mov byte [rdi + 0x1c], 3
mov dword [rdi + 0x1d], edx
mov byte [rdi + 0x21], cl
mov ecx, 0x80
mov edx, 1
call fcn.140020b50
test rax, rax
je 0x1401f54da
movups xmm0, xmmword [0x14049605c]
movups xmmword [rax + 0x30], xmm0
movups xmm0, xmmword [0x14049604c]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [0x14049603c]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [0x14049602c]
movups xmmword [rax], xmm0
movups xmm0, xmmword [0x14049606c]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [0x14049607c]
movups xmmword [rax + 0x50], xmm0
movups xmm0, xmmword [0x14049608c]
movups xmmword [rax + 0x60], xmm0
movups xmm0, xmmword [0x14049609c]
movups xmmword [rax + 0x70], xmm0
mov rcx, rax
xor edx, edx
xor r8d, r8d
lea r9, [r8 + 1]
movzx r10d, byte [rcx + r8]
imul r10d, r10d, 0xa6
lea r11d, [r10 + 0x32]
movzx r11d, r11w
shr r11d, 2
imul r11d, r11d, 0x147b
shr r11d, 0x11
mov r13d, 0xff
cmp r11d, r13d
jb 0x1401f2a05
mov r11d, 0xff
cmp r10d, 0x32
mov r10d, 1
cmovb r11d, r10d
mov byte [rcx + r8], r11b
mov r8, r9
cmp r9, 0x40
jne 0x1401f29cd
inc rdx
add rcx, 0x40
cmp rdx, 2
jne case.default.0x1401f2b11
mov ecx, 3
mov qword [rsp + 0x800], rcx
mov qword [rsp + 0x808], rdi
mov qword [rsp + 0x810], rcx
mov ecx, 2
mov qword [rsp + 0x818], rcx
mov qword [rsp + 0x820], rax
mov qword [rsp + 0x828], rcx
lea rax, [rsp + 0x640]
mov qword [rsp + 0x7f0], rax
mov dword [rsp + 0x7f8], 0
mov byte [rsp + 0x7fc], 0
xor eax, eax
mov word [rsp + 0x830], ax
lea rcx, [0x1404960ac]
mov qword [rsp + 0x838], rcx
mov word [rsp + 0xc38], ax
lea rcx, [0x1404964ac]
mov qword [rsp + 0xc40], rcx
mov word [rsp + 0x1040], ax
lea rcx, [0x1404968ac]
mov qword [rsp + 0x1048], rcx
mov word [rsp + 0x1448], ax
lea rcx, [0x140496cac]
mov qword [rsp + 0x1450], rcx
mov word [rsp + 0x1854], ax
mov dword [rsp + 0x1850], 0x10001
lea rcx, [0x1401f558c]
mov rdi, qword [rsp + 0x98]
movsxd rax, dword [rcx + rdi*4]
add rax, rcx
jmp rax
mov rcx, rsi
xor edx, edx
call fcn.14024c47c
mov qword [rsp + 0xa8], rax
mov r13, rdx
mov rcx, rdx
mov rdx, qword [rsp + 0xa0]
mov r8, rsi
call fcn.14038a820
mov rdx, qword [rsp + 0x48]
mov rax, rdx
mov rcx, qword [rsp + 0x50]
imul rax, rcx
cmp rax, rsi
ja 0x1401f54e6
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x1b0], r13
mov qword [rsp + 0x1b8], rsi
mov dword [rsp + 0x1c0], ecx
mov dword [rsp + 0x1c4], edx
mov word [rsp + 0x220], 0xd8ff
mov rcx, qword [rsp + 0x7f0]
mov r8d, 2
mov rdx, r15
call fcn.14021e77e
test rax, rax
jne 0x1401f30a2
xor eax, eax
mov qword [rsp + 0x370], rax
mov qword [rsp + 0x378], 1
mov qword [rsp + 0x380], rax
mov eax, dword [rsp + 0x1850]
mov edx, dword [rsp + 0x1854]
shl rdx, 0x20
or rdx, rax
lea rcx, [rsp + 0x370]
call fcn.1400cf373
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xe0
mov r8, rsi
call fcn.1401f5823
test rax, rax
jne 0x1401f2e09
cmp dword [rsp + 0x50], 0x10000
jae 0x1401f353d
cmp dword [rsp + 0x48], 0x10000
jae 0x1401f353d
cmp qword [rsp + 0x810], 0
je 0x1401f5532
mov r9, qword [rsp + 0x808]
mov qword [rsp + 0x20], 1
lea rcx, [rsp + 0x370]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
mov qword [rsp + 0x38], r9
call fcn.1400cf41d
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc0
mov r8, rsi
call fcn.1401f5823
test rax, rax
jne 0x1401f2e09
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x470], rax
cmp rax, 2
jne 0x1401f5555
mov rdi, qword [rsp + 0x820]
xor edx, edx
cmp rdx, 1
je 0x1401f3d91
lea r13, [rdx + 1]
lea rcx, [rsp + 0x370]
mov r8, rdi
call fcn.1400cf5e7
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xdb
mov r8, rsi
call fcn.1401f5823
add rdi, 0x40
mov rdx, r13
test rax, rax
je 0x1401f2cb3
jmp 0x1401f2e09
mov rcx, rsi
xor edx, edx
call fcn.14024c47c
mov r13, rax
mov rcx, rdx
mov qword [rsp + 0x30], rdx
mov rdx, qword [rsp + 0xa0]
mov r8, rsi
call fcn.14038a820
mov rcx, qword [rsp + 0x50]
lea rax, [rcx + rcx]
mov r8, qword [rsp + 0x48]
mul r8
jo 0x1401f54f9
cmp rax, rsi
ja 0x1401f54f9
mov qword [rsp + 0xa8], r13
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], rsi
mov dword [rsp + 0x1c0], ecx
mov dword [rsp + 0x1c4], r8d
mov word [rsp + 0x220], 0xd8ff
mov rcx, qword [rsp + 0x7f0]
mov r8d, 2
mov rdx, r15
call fcn.14021e77e
test rax, rax
jne 0x1401f30a2
xor eax, eax
mov qword [rsp + 0x370], rax
mov qword [rsp + 0x378], 1
mov qword [rsp + 0x380], rax
mov eax, dword [rsp + 0x1850]
mov edx, dword [rsp + 0x1854]
shl rdx, 0x20
or rdx, rax
lea rcx, [rsp + 0x370]
call fcn.1400cf373
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xe0
mov r8, rsi
call fcn.1401f5823
test rax, rax
je 0x1401f3445
mov qword [rsp + 0xc0], rax
mov al, 0xb
jmp 0x1401f3568
mov rcx, rsi
xor edx, edx
call fcn.14024c47c
mov r13, rax
mov rcx, rdx
mov qword [rsp + 0x30], rdx
mov rdx, qword [rsp + 0xa0]
mov r8, rsi
call fcn.14038a820
mov rcx, qword [rsp + 0x50]
lea rax, [rcx + rcx*2]
mov r8, qword [rsp + 0x48]
mul r8
jo 0x1401f550c
cmp rax, rsi
ja 0x1401f550c
mov qword [rsp + 0xa8], r13
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x208], rax
mov qword [rsp + 0x210], rsi
mov dword [rsp + 0x218], ecx
mov dword [rsp + 0x21c], r8d
mov word [rsp + 0x220], 0xd8ff
mov rcx, qword [rsp + 0x7f0]
mov r8d, 2
mov rdx, r15
call fcn.14021e77e
test rax, rax
jne 0x1401f30a2
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], rax
mov eax, dword [rsp + 0x1850]
mov edx, dword [rsp + 0x1854]
shl rdx, 0x20
or rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1400cf373
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xe0
mov qword [rsp + 0x38], r8
call fcn.1401f5823
test rax, rax
jne 0x1401f3436
cmp dword [rsp + 0x50], 0x10000
jae 0x1401f3680
cmp dword [rsp + 0x48], 0x10000
jae 0x1401f3680
mov rdx, qword [rsp + 0x810]
cmp rdx, 2
jbe 0x1401f5542
mov rsi, qword [rsp + 0x808]
mov qword [rsp + 0x20], 3
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
mov r9, rsi
call fcn.1400cf41d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc0
mov qword [rsp + 0x38], r8
call fcn.1401f5823
test rax, rax
jne 0x1401f3436
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x470], rax
cmp rax, 2
jne 0x1401f5555
mov rdi, qword [rsp + 0x820]
xor edx, edx
cmp rdx, 2
je 0x1401f408f
lea r13, [rdx + 1]
lea rcx, [rsp + 0x70]
mov r8, rdi
call fcn.1400cf5e7
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xdb
mov qword [rsp + 0x38], r8
call fcn.1401f5823
add rdi, 0x40
mov rdx, r13
test rax, rax
je 0x1401f2fb7
jmp 0x1401f3436
mov qword [rsp + 0xc0], rax
mov byte [rsp + 0xf8], 0xb
lea r13, [rsp + 0x7f0]
jmp 0x1401f36de
mov qword [rsp + 0xc0], rax
mov al, 0xb
jmp 0x1401f36ab
cmp dword [rsp + 0x50], 0x10000
jae 0x1401f353d
cmp dword [rsp + 0x48], 0x10000
jae 0x1401f353d
cmp qword [rsp + 0x810], 0
je 0x1401f5532
mov r9, qword [rsp + 0x808]
mov qword [rsp + 0x20], 1
lea rcx, [rsp + 0x370]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
mov qword [rsp + 0x38], r9
call fcn.1400cf41d
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc0
mov r8, rsi
call fcn.1401f5823
test rax, rax
jne 0x1401f2e09
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x470], rax
cmp rax, 2
jne 0x1401f5555
mov rdi, qword [rsp + 0x820]
xor edx, edx
cmp rdx, 1
je 0x1401f4656
lea r13, [rdx + 1]
lea rcx, [rsp + 0x370]
mov r8, rdi
call fcn.1400cf5e7
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xdb
mov r8, rsi
call fcn.1401f5823
add rdi, 0x40
mov rdx, r13
test rax, rax
je 0x1401f34ec
jmp 0x1401f2e09
xor eax, eax
mov word [rsp + 0xc6], ax
mov dword [rsp + 0xc2], 0
mov qword [rsp + 0xe0], 0
mov word [rsp + 0xc0], ax
mov al, 8
mov byte [rsp + 0xf8], al
cmp qword [rsp + 0x370], 0
je 0x1401f36ce
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, rsi
jmp 0x1401f36c8
xor eax, eax
mov word [rsp + 0xc6], ax
mov dword [rsp + 0xc2], 0
mov qword [rsp + 0xe0], 0
mov word [rsp + 0xc0], ax
mov al, 8
mov byte [rsp + 0xf8], al
cmp qword [rsp + 0x70], 0
je 0x1401f36ce
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, qword [rsp + 0x38]
call qword [sym.imp.kernel32.dll_HeapFree]
lea r13, [rsp + 0x7f0]
mov rdi, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x30]
cmp byte [rsp + 0xf8], 0xc
je 0x1401f36fa
lea rcx, [rsp + 0xc0]
call fcn.1400d36d4
cmp qword [rsp + 0xa8], 0
je 0x1401f3717
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
movups xmm0, xmmword [rsp + 0x640]
movups xmm1, xmmword [rsp + 0x650]
movaps xmmword [rsp + 0x230], xmm1
movaps xmmword [rsp + 0x220], xmm0
lea rax, [rsp + 0x228]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x470], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x480], rax
cmp qword [rsp + 0x140], 0
je 0x1401f3778
mov r8, qword [rsp + 0x148]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0x150], rax
movaps xmm0, xmmword [rsp + 0x470]
movaps xmmword [rsp + 0x140], xmm0
cmp qword [rsp + 0x800], 0
je 0x1401f37ba
mov r8, qword [rsp + 0x808]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x818], 0
je 0x1401f37dc
mov r8, qword [rsp + 0x820]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp rdi, 8
ja case.0x1401f37f0.0
lea rcx, [0x1401f55b4]
movsxd rax, dword [rcx + rdi*4]
add rax, rcx
jmp rax
cmp qword [rsp + 0xb0], 0
je 0x1401f3814
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, qword [rsp + 0xa0]
call qword [sym.imp.kernel32.dll_HeapFree]
cmp byte [rsp + 0x628], 0xc
je 0x1401f382b
lea rcx, [rsp + 0x5f0]
call fcn.1400d36d4
mov rcx, r14
mov rdx, r12
call fcn.140237fa0
test rax, rax
cmove rax, r14
cmove rdx, r12
mov rcx, rax
call fcn.140248cf0
test rax, rax
je 0x1401f549f
mov r12, rax
mov rdi, rdx
mov eax, dword [rsp + 0x328]
mov dword [rsp + 0x378], eax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x370], rax
mov rcx, r13
lea rdx, [rsp + 0x660]
call fcn.14026e53d
mov rsi, qword [rsp + 0x7f0]
cmp rsi, 4
jne 0x1401f38da
lea rcx, [rsp + 0x680]
call fcn.14026c3e4
mov rsi, rax
mov rdx, qword [rax]
mov r8d, 2
mov rcx, r13
xor r9d, r9d
call fcn.140233040
cmp qword [rsp + 0x7f0], 0
je 0x1401f38f7
mov rdi, qword [rsp + 0x7f8]
xor esi, esi
lea r12, [rsp + 0x828]
jmp 0x1401f3b29
mov rdi, qword [rsp + 0x7f8]
mov rax, qword [rsp + 0x800]
lea r12, [rsp + 0x828]
jmp 0x1401f3b31
mov rax, qword [rsp + 0x7f8]
mov qword [rsp + 0x98], rax
mov rcx, rdi
xor edx, edx
call fcn.140272bf2
mov rcx, rdx
mov qword [rsp + 0x820], rax
mov qword [rsp + 0x828], rdx
mov rdx, r12
mov r8, rdi
call fcn.14038a820
mov qword [rsp + 0x830], rdi
mov word [rsp + 0x896], 0x32e
mov eax, dword [rsp + 0x13c]
mov byte [rsp + 0x898], al
mov byte [rsp + 0x899], 0
mov word [rsp + 0x890], 1
movzx eax, word [rsp + 0x132]
mov word [rsp + 0x892], ax
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x880], eax
mov eax, dword [rsp + 0x134]
mov dword [rsp + 0x884], eax
mov rax, qword [rsp + 0x570]
mov qword [rsp + 0x7f0], rax
mov dword [rsp + 0x888], 0
mov eax, 0
mov qword [rsp + 0x838], rax
lea rcx, [rsp + 0x7f8]
movups xmmword [rcx], xmm7
mov ecx, 1
mov qword [rsp + 0x840], rcx
lea r12, [rsp + 0x828]
movups xmmword [r12 + 0x20], xmm7
mov qword [rsp + 0x858], rcx
movups xmmword [r12 + 0x38], xmm7
mov qword [rsp + 0x870], rcx
mov qword [rsp + 0x878], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x808], rax
movups xmmword [r12 - 0x18], xmm7
mov eax, dword [rsp + 0x160]
mov dword [rsp + 0x88c], eax
mov al, byte [rsp + 0x97]
mov byte [rsp + 0x89a], al
mov byte [rsp + 0x895], 2
mov rcx, r15
mov rdi, rsi
mov rdx, rsi
mov r8, r13
call fcn.14026bcf8
mov rsi, qword [rsp + 0x220]
cmp rsi, 4
jne 0x1401f3a89
mov rdx, qword [rdi]
mov r8d, 2
mov rcx, r15
xor r9d, r9d
call fcn.140233040
cmp qword [rsp + 0x220], 0
je 0x1401f3b96
mov rdi, qword [rsp + 0x228]
xor esi, esi
mov rax, qword [rsp + 0x120]
jmp 0x1401f3a99
mov rdi, qword [rsp + 0x228]
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x120], rax
cmp qword [rsp + 0x820], 0
je 0x1401f3ae5
mov r8, qword [rsp + 0x828]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x838], 0
je 0x1401f3ae5
mov r8, qword [rsp + 0x840]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x850], 0
je 0x1401f3b07
mov r8, qword [rsp + 0x858]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x868], 0
je 0x1401f3b29
mov r8, qword [rsp + 0x870]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x478], rdi
mov qword [rsp + 0x480], rax
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x470], rsi
test rsi, rsi
jne 0x1401f3b63
lea rcx, [rsp + 0x478]
call fcn.1401b10eb
mov rsi, qword [rsp + 0x128]
cmp qword [rsp + 0x140], 0
je 0x1401f26ac
mov r8, qword [rsp + 0x148]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x1401f26ac
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x670], rax
mov qword [rsp + 0x818], rax
mov qword [rsp + 0x678], 0
mov rcx, r15
call fcn.14005c5ec
movups xmm0, xmmword [rsp + 0x220]
movaps xmmword [rsp + 0x660], xmm0
mov rdx, qword [rsp + 0x700]
cmp rdx, qword [rsp + 0x6f0]
jne 0x1401f3bf9
lea rcx, [rsp + 0x6f0]
call fcn.14026b1b7
mov rdx, qword [rsp + 0x700]
imul rcx, rdx, 0xb0
add rcx, qword [rsp + 0x6f8]
mov r8d, 0xb0
mov rdx, r13
call fcn.14038a820
inc qword [rsp + 0x700]
cmp dword [rsp + 0x13c], 0
je 0x1401f3cfa
mov ecx, 0xe
mov rdi, r13
lea r12, [rsp + 0x680]
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
xor esi, esi
mov qword [rsp + 0x680], rsi
mov rcx, r13
call fcn.14026c25f
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], rsi
mov edi, 1
mov qword [rsp + 0x230], rdi
mov qword [rsp + 0x238], rsi
mov eax, dword [rsp + 0x378]
lea rcx, [rsp + 0x228]
mov dword [rcx + 0x20], eax
mov rax, qword [rsp + 0x370]
mov qword [rcx + 0x18], rax
mov qword [rsp + 0x7f0], rsi
mov dword [rsp + 0x7f8], 0
mov r8d, 0xc
mov rdx, r13
call fcn.14021ce82
mov rcx, r12
call fcn.1401f566c
mov qword [rsp + 0x680], rdi
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
movups xmm2, xmmword [rsp + 0x240]
movups xmmword [r12 + 0x28], xmm2
movups xmmword [r12 + 0x18], xmm1
movups xmmword [r12 + 8], xmm0
lea r12, [rsp + 0x828]
mov eax, dword [rsp + 0x134]
mov dword [rsp + 0x20], eax
mov rcx, r13
lea rdx, [rsp + 0x680]
mov r8w, 1
mov r9d, dword [rsp + 0x138]
call fcn.14026c43c
mov rsi, qword [rsp + 0x7f0]
cmp rsi, 4
jne 0x1401f3d6e
mov byte [rsp + 0x720], 1
mov rdx, qword [rsp + 0x148]
mov r8, qword [rsp + 0x150]
lea rcx, [rsp + 0x660]
call fcn.14026dad4
mov qword [rsp + 0x7f0], rax
test rax, rax
je 0x1401f3b63
mov rcx, r13
jmp 0x1401f3b5e
lea rax, [rsp + 0x7f8]
movups xmm0, xmmword [rax]
lea rax, [rsp + 0x478]
movups xmmword [rax], xmm0
mov rax, qword [rsp + 0x120]
jmp 0x1401f3b41
lea rax, [0x140426e30]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xc
lea rcx, [rsp + 0x370]
xor edx, edx
xor r8d, r8d
lea r9, [0x140426e20]
call fcn.1400cf51d
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc4
mov r8, rsi
call fcn.1401f5823
test rax, rax
jne 0x1401f2e09
lea rax, [0x140426ec0]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xa2
lea rcx, [rsp + 0x370]
mov dl, 1
xor r8d, r8d
lea r9, [0x140426eb0]
call fcn.1400cf51d
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc4
mov r8, rsi
call fcn.1401f5823
test rax, rax
jne 0x1401f2e09
mov r8d, 1
lea rcx, [rsp + 0x370]
mov rdx, qword [rsp + 0x38]
call fcn.1400cf68a
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xda
mov r8, rsi
call fcn.1401f5823
test rax, rax
jne 0x1401f2e09
movaps xmmword [rsp + 0x4a0], xmm7
movaps xmmword [rsp + 0x490], xmm7
movaps xmmword [rsp + 0x480], xmm7
movaps xmmword [rsp + 0x470], xmm7
xor edi, edi
mov r8d, 0x100
mov rcx, r15
xor edx, edx
call fcn.14038afb0
xor eax, eax
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x60], 0
test dil, 1
je 0x1401f3ee0
mov rax, qword [rsp + 0x40]
add eax, 7
mov qword [rsp + 0x40], rax
jb 0x1401f4f2d
mov rax, qword [rsp + 0x40]
cmp eax, dword [rsp + 0x48]
jae 0x1401f4f2d
mov rax, qword [rsp + 0x40]
inc eax
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x68], 0
xor eax, eax
test al, 1
je 0x1401f3f28
mov dil, 1
add dword [rsp + 0x68], 7
jb 0x1401f407e
mov eax, dword [rsp + 0x68]
cmp eax, dword [rsp + 0x50]
jb 0x1401f3f36
jmp 0x1401f407e
mov eax, dword [rsp + 0x68]
cmp eax, dword [rsp + 0x50]
jae 0x1401f407b
mov eax, dword [rsp + 0x68]
mov edx, eax
lea eax, [rdx + 1]
mov dword [rsp + 0x68], eax
lea rcx, [rsp + 0x1b0]
mov r8, qword [rsp + 0x40]
lea rdi, [rsp + 0x470]
mov r9, rdi
call fcn.1400cfd2e
mov rcx, rdi
mov rdx, r15
call fcn.1400bdad4
mov rax, qword [rsp + 0x820]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x38], rax
xor r13d, r13d
cmp qword [rsp + 0x38], 0
je 0x1401f548d
mov eax, dword [rsp + r13*4 + 0x220]
lea rdi, [r13 + 1]
lea ecx, [rax + 7]
test eax, eax
cmovns ecx, eax
sar ecx, 3
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
mov rax, qword [rsp + 0xb8]
movzx eax, byte [rax + r13]
xorps xmm1, xmm1
cvtsi2ss xmm1, eax
divss xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
cvttss2si eax, xmm0
ucomiss xmm0, xmm8
mov ecx, 0x7fffffff
cmova eax, ecx
ucomiss xmm0, xmm0
mov ecx, 0
cmovp eax, ecx
mov dword [rsp + r13*4 + 0x220], eax
mov r13, rdi
cmp rdi, 0x40
jne 0x1401f3f8b
cmp word [rsp + 0xc38], 0
lea rax, [rsp + 0xc3a]
jne 0x1401f4019
mov rax, qword [rsp + 0xc40]
cmp word [rsp + 0x830], 0
lea rcx, [rsp + 0x832]
jne 0x1401f4034
mov rcx, qword [rsp + 0x838]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x330]
lea rdx, [rsp + 0x7f0]
mov r8, r15
mov r9d, dword [rsp + 0x60]
call fcn.1401f5890
cmp dword [rsp + 0x330], 0
jne 0x1401f4f13
mov eax, dword [rsp + 0x334]
mov dword [rsp + 0x60], eax
mov al, 1
jmp 0x1401f3f07
mov dil, 1
mov eax, dword [rsp + 0x88]
mov qword [rsp + 0x40], rax
jmp 0x1401f3ec7
lea rax, [0x140426e30]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xc
lea rcx, [rsp + 0x70]
xor edx, edx
xor r8d, r8d
lea r9, [0x140426e20]
call fcn.1400cf51d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc4
mov qword [rsp + 0x38], r8
call fcn.1401f5823
test rax, rax
jne 0x1401f3436
lea rax, [0x140426ec0]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xa2
lea rcx, [rsp + 0x70]
mov dl, 1
xor r8d, r8d
lea r9, [0x140426eb0]
call fcn.1400cf51d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc4
mov qword [rsp + 0x38], r8
call fcn.1401f5823
test rax, rax
jne 0x1401f3436
lea rax, [0x140496020]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xc
lea rcx, [rsp + 0x70]
xor edx, edx
mov r8b, 1
lea r9, [0x140426e70]
call fcn.1400cf51d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc4
mov qword [rsp + 0x38], r8
call fcn.1401f5823
test rax, rax
jne 0x1401f3436
lea rax, [0x140426fa8]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xa2
lea rcx, [rsp + 0x70]
mov dl, 1
mov r8b, 1
lea r9, [0x140426f98]
call fcn.1400cf51d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc4
mov qword [rsp + 0x38], r8
call fcn.1401f5823
test rax, rax
jne 0x1401f3436
mov r8d, 3
lea rcx, [rsp + 0x70]
mov rdx, rsi
call fcn.1400cf68a
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xda
mov qword [rsp + 0x38], r8
call fcn.1401f5823
test rax, rax
jne 0x1401f3436
xor esi, esi
mov r8d, 0x100
lea rcx, [rsp + 0x370]
xor edx, edx
call fcn.14038afb0
mov r8d, 0x100
lea rcx, [rsp + 0x470]
xor edx, edx
call fcn.14038afb0
mov r8d, 0x100
mov rcx, r15
xor edx, edx
call fcn.14038afb0
movaps xmmword [rsp + 0x5e0], xmm7
movaps xmmword [rsp + 0x5d0], xmm7
movaps xmmword [rsp + 0x5c0], xmm7
movaps xmmword [rsp + 0x5b0], xmm7
movaps xmmword [rsp + 0x360], xmm7
movaps xmmword [rsp + 0x350], xmm7
movaps xmmword [rsp + 0x340], xmm7
movaps xmmword [rsp + 0x330], xmm7
movaps xmmword [rsp + 0x1e0], xmm7
movaps xmmword [rsp + 0x1d0], xmm7
movaps xmmword [rsp + 0x1c0], xmm7
movaps xmmword [rsp + 0x1b0], xmm7
xor eax, eax
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x118], 0
mov dword [rsp + 0x88], 0
mov dword [rsp + 0x40], 0
test sil, 1
je 0x1401f42fa
mov rax, qword [rsp + 0x58]
add eax, 7
mov qword [rsp + 0x58], rax
jb 0x1401f4f80
mov rax, qword [rsp + 0x58]
cmp eax, dword [rsp + 0x48]
jae 0x1401f4f80
mov rax, qword [rsp + 0x58]
inc eax
mov dword [rsp + 0x110], eax
xor eax, eax
mov dword [rsp + 0x60], 0
test al, 1
je 0x1401f4342
mov sil, 1
add dword [rsp + 0x60], 7
jb 0x1401f4645
mov eax, dword [rsp + 0x60]
cmp eax, dword [rsp + 0x50]
jb 0x1401f4350
jmp 0x1401f4645
mov eax, dword [rsp + 0x60]
cmp eax, dword [rsp + 0x50]
jae 0x1401f4642
mov eax, dword [rsp + 0x60]
mov edx, eax
lea eax, [rdx + 1]
mov dword [rsp + 0x60], eax
lea rsi, [rsp + 0x1b0]
mov qword [rsp + 0x28], rsi
lea rdi, [rsp + 0x330]
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0x208]
mov r8, qword [rsp + 0x58]
lea r13, [rsp + 0x5b0]
mov r9, r13
call fcn.1400cf9dd
mov rcx, r13
lea rdx, [rsp + 0x370]
call fcn.1400bdad4
mov rcx, rdi
lea rdx, [rsp + 0x470]
call fcn.1400bdad4
mov rcx, rsi
mov rdx, r15
call fcn.1400bdad4
mov rax, qword [rsp + 0x820]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0xb8], rax
xor esi, esi
cmp qword [rsp + 0xb8], 0
je 0x1401f54b2
mov eax, dword [rsp + rsi*4 + 0x370]
lea ecx, [rax + 7]
test eax, eax
cmovns ecx, eax
sar ecx, 3
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + rsi]
xorps xmm1, xmm1
cvtsi2ss xmm1, eax
divss xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
cvttss2si eax, xmm0
ucomiss xmm0, xmm8
mov ecx, 0x7fffffff
cmova eax, ecx
ucomiss xmm0, xmm0
mov ecx, 0
cmovp eax, ecx
mov dword [rsp + rsi*4 + 0x370], eax
cmp qword [rsp + 0xb8], 1
je 0x1401f54bb
lea r13, [rsi + 1]
mov eax, dword [rsp + rsi*4 + 0x470]
lea ecx, [rax + 7]
test eax, eax
cmovns ecx, eax
sar ecx, 3
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + rsi + 0x40]
xorps xmm9, xmm9
cvtsi2ss xmm9, eax
divss xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
cvttss2si eax, xmm0
ucomiss xmm0, xmm8
mov ecx, 0x7fffffff
cmova eax, ecx
ucomiss xmm0, xmm0
mov edi, 0
cmovp eax, edi
mov dword [rsp + rsi*4 + 0x470], eax
mov eax, dword [rsp + rsi*4 + 0x220]
lea ecx, [rax + 7]
test eax, eax
cmovns ecx, eax
sar ecx, 3
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
divss xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
cvttss2si eax, xmm0
ucomiss xmm0, xmm8
mov ecx, 0x7fffffff
cmova eax, ecx
ucomiss xmm0, xmm0
cmovp eax, edi
mov dword [rsp + rsi*4 + 0x220], eax
mov rsi, r13
cmp r13, 0x40
jne 0x1401f43de
cmp word [rsp + 0xc38], 0
lea rax, [rsp + 0xc3a]
jne 0x1401f4514
mov rax, qword [rsp + 0xc40]
cmp word [rsp + 0x830], 0
lea rcx, [rsp + 0x832]
jne 0x1401f452f
mov rcx, qword [rsp + 0x838]
cmp word [rsp + 0x1040], 0
lea rsi, [rsp + 0x1042]
jne 0x1401f454a
mov rsi, qword [rsp + 0x1048]
cmp word [rsp + 0x1448], 0
lea rdi, [rsp + 0x144a]
jne 0x1401f4565
mov rdi, qword [rsp + 0x1450]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x100]
lea rdx, [rsp + 0x7f0]
lea r8, [rsp + 0x370]
mov r9d, dword [rsp + 0x40]
call fcn.1401f5890
cmp dword [rsp + 0x100], 0
jne 0x1401f4f20
mov eax, dword [rsp + 0x104]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rsi
lea rcx, [rsp + 0x100]
lea rdx, [rsp + 0x7f0]
lea r8, [rsp + 0x470]
mov r9d, dword [rsp + 0x88]
call fcn.1401f5890
cmp dword [rsp + 0x100], 0
jne 0x1401f4f20
mov eax, dword [rsp + 0x104]
mov dword [rsp + 0x88], eax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rsi
lea rcx, [rsp + 0x100]
lea rdx, [rsp + 0x7f0]
mov r8, r15
mov r9d, dword [rsp + 0x118]
call fcn.1401f5890
cmp dword [rsp + 0x100], 0
jne 0x1401f4f20
mov eax, dword [rsp + 0x104]
mov dword [rsp + 0x118], eax
mov al, 1
jmp 0x1401f4321
mov sil, 1
mov eax, dword [rsp + 0x110]
mov qword [rsp + 0x58], rax
jmp 0x1401f42e1
lea rax, [0x140426e30]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xc
lea rcx, [rsp + 0x370]
xor edx, edx
xor r8d, r8d
lea r9, [0x140426e20]
call fcn.1400cf51d
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc4
mov r8, rsi
call fcn.1401f5823
test rax, rax
jne 0x1401f2e09
lea rax, [0x140426ec0]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xa2
lea rcx, [rsp + 0x370]
mov dl, 1
xor r8d, r8d
lea r9, [0x140426eb0]
call fcn.1400cf51d
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xc4
mov r8, rsi
call fcn.1401f5823
test rax, rax
jne 0x1401f2e09
mov r8d, 1
lea rcx, [rsp + 0x370]
mov rdx, qword [rsp + 0x38]
call fcn.1400cf68a
mov rsi, qword [rsp + 0x378]
mov r9, qword [rsp + 0x380]
mov rcx, qword [rsp + 0x7f0]
mov dl, 0xda
mov r8, rsi
call fcn.1401f5823
test rax, rax
jne 0x1401f2e09
movaps xmmword [rsp + 0x4a0], xmm7
movaps xmmword [rsp + 0x490], xmm7
movaps xmmword [rsp + 0x480], xmm7
movaps xmmword [rsp + 0x470], xmm7
xor edi, edi
mov r8d, 0x100
mov rcx, r15
xor edx, edx
call fcn.14038afb0
xor eax, eax
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x60], 0
test dil, 1
je 0x1401f47a5
mov rax, qword [rsp + 0x40]
add eax, 7
mov qword [rsp + 0x40], rax
jb 0x1401f4f2d
mov rax, qword [rsp + 0x40]
cmp eax, dword [rsp + 0x48]
jae 0x1401f4f2d
mov rax, qword [rsp + 0x40]
inc eax
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x68], 0
xor eax, eax
test al, 1
je 0x1401f47ed
mov dil, 1
add dword [rsp + 0x68], 7
jb 0x1401f4943
mov eax, dword [rsp + 0x68]
cmp eax, dword [rsp + 0x50]
jb 0x1401f47fb
jmp 0x1401f4943
mov eax, dword [rsp + 0x68]
cmp eax, dword [rsp + 0x50]
jae 0x1401f4940
mov eax, dword [rsp + 0x68]
mov edx, eax
lea eax, [rdx + 1]
mov dword [rsp + 0x68], eax
lea rcx, [rsp + 0x1b0]
mov r8, qword [rsp + 0x40]
lea rdi, [rsp + 0x470]
mov r9, rdi
call fcn.1400cfc7c
mov rcx, rdi
mov rdx, r15
call fcn.1400bdad4
mov rax, qword [rsp + 0x820]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x38], rax
xor r13d, r13d
cmp qword [rsp + 0x38], 0
je 0x1401f548d
mov eax, dword [rsp + r13*4 + 0x220]
lea rdi, [r13 + 1]
lea ecx, [rax + 7]
test eax, eax
cmovns ecx, eax
sar ecx, 3
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
mov rax, qword [rsp + 0xb8]
movzx eax, byte [rax + r13]
xorps xmm1, xmm1
cvtsi2ss xmm1, eax
divss xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
cvttss2si eax, xmm0
ucomiss xmm0, xmm8
mov ecx, 0x7fffffff
cmova eax, ecx
ucomiss xmm0, xmm0
mov ecx, 0
cmovp eax, ecx
mov dword [rsp + r13*4 + 0x220], eax
mov r13, rdi
cmp rdi, 0x40
jne 0x1401f4850
cmp word [rsp + 0xc38], 0
lea rax, [rsp + 0xc3a]
jne 0x1401f48de
mov rax, qword [rsp + 0xc40]
cmp word [rsp + 0x830], 0
lea rcx, [rsp + 0x832]
jne 0x1401f48f9
mov rcx, qword [rsp + 0x838]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x330]
lea rdx, [rsp + 0x7f0]
mov r8, r15
mov r9d, dword [rsp + 0x60]
call fcn.1401f5890
cmp dword [rsp + 0x330], 0
jne 0x1401f4f13
mov eax, dword [rsp + 0x334]
mov dword [rsp + 0x60], eax
mov al, 1
jmp 0x1401f47cc
mov dil, 1
mov eax, dword [rsp + 0x88]
mov qword [rsp + 0x40], rax
jmp 0x1401f478c
mov rax, qword [rsp + 0x338]
jmp 0x1401f2e09
mov rax, qword [rsp + 0x108]
jmp 0x1401f3436
lea rcx, [rsp + 0x7f0]
mov dx, 0x7f
mov r8b, 7
call fcn.1401f5a51
test rax, rax
jne 0x1401f2e09
mov word [rsp + 0x220], 0xd9ff
mov rcx, qword [rsp + 0x7f0]
mov r8d, 2
mov rdx, r15
call fcn.14021e77e
test rax, rax
jne 0x1401f2e09
mov byte [rsp + 0xf8], 0xc
jmp 0x1401f356f
lea rcx, [rsp + 0x7f0]
mov dx, 0x7f
mov r8b, 7
call fcn.1401f5a51
test rax, rax
jne 0x1401f3436
mov word [rsp + 0x220], 0xd9ff
mov rcx, qword [rsp + 0x7f0]
mov r8d, 2
mov rdx, r15
call fcn.14021e77e
test rax, rax
jne 0x1401f3436
mov byte [rsp + 0xf8], 0xc
jmp 0x1401f36b2
mov rcx, r13
call fcn.1401ec8ef
mov rsi, qword [rsp + 0x598]
mov rcx, r14
call fcn.1400046cf
cmp qword [rsp + 0x188], 0
je 0x1401f5008
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp rsi, qword [rsp + 0x5a0]
jne 0x1401f22ca
lea rcx, [rsp + 0x590]
call fcn.1400a9faa
lea rsi, [rsp + 0x220]
lea rdx, [rsp + 0x660]
mov rcx, rsi
call fcn.14026eb5d
cmp dword [rsi], 4
jne 0x1401f52ff
mov rcx, qword [rsp + 0x228]
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rbx, qword [0x1404fd078]
test rbx, rbx
mov rdi, qword [rsp + 0x168]
je 0x1401f5272
mov qword [rsp + 0x370], rdi
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0x578]
mov qword [rsp + 0x380], rax
lea rax, [0x14048fafd]
mov qword [rsp + 0x7f0], rax
mov rcx, qword [rsp + 0x7f0]
movabs rax, 0x33eefe183f700ed0
mov qword [rsp + 0x7f0], rax
mov rdx, qword [rsp + 0x7f0]
call fcn.14000cc40
xorps xmm0, xmm0
movaps xmmword [rsp + 0x730], xmm0
mov cl, 1
xor edx, edx
lea r8, [0x140497940]
movzx r10d, byte [rdx + r8]
mov r9, rdx
or r9, 1
movzx r9d, byte [r9 + r8]
mov r11, rdx
or r11, 2
movzx r11d, byte [r11 + r8]
mov rdi, rdx
or rdi, 3
movzx edi, byte [rdi + r8]
mov r14, rdx
or r14, 4
movzx r14d, byte [r14 + r8]
mov r15, rdx
or r15, 5
movzx r15d, byte [r15 + r8]
mov r12, rdx
or r12, 6
mov r13, rdx
or r13, 7
movzx r12d, byte [r12 + r8]
movzx r13d, byte [r13 + r8]
shl r13, 0x38
shl r12, 0x30
or r12, r13
shl r15, 0x28
shl r14, 0x20
shl rdi, 0x18
shl r11, 0x10
shl r9, 8
or r9, r10
or r9, r11
or r9, rdi
or r9, r14
or r9, r15
or r9, r12
xor r9, qword [rax + rdx]
mov qword [rsp + rdx + 0x730], r9
mov edx, 8
test cl, 1
mov ecx, 0
jne 0x1401f50de
movzx ecx, byte [rax + 0x12]
movzx eax, word [rax + 0x10]
xor eax, 0xb4b
mov word [rsp + 0x740], ax
xor cl, 0xc7
mov byte [rsp + 0x742], cl
lea rax, [rsp + 0x730]
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], 0x13
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x220], rax
lea rax, [0x140009a60]
mov qword [rsp + 0x228], rax
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x230], rax
lea rax, [0x140071250]
mov qword [rsp + 0x238], rax
lea rax, [0x140497860]
lea rdx, [rsp + 0x7f0]
mov qword [rdx + 0x10], rax
mov eax, 2
mov qword [rdx + 0x18], rax
mov qword [rdx], 0
mov qword [rdx + 0x20], rsi
mov qword [rdx + 0x28], rax
lea rsi, [rsp + 0x470]
mov rcx, rsi
call fcn.1400476f0
lea rdi, [rsp + 0x7f0]
lea rdx, [rsp + 0x370]
mov rcx, rdi
mov r8, rsi
call fcn.1401f7d3a
cmp qword [rdi], 0
je 0x1401f526a
lea rcx, [rsp + 0x7f8]
call fcn.1401b10eb
mov rdi, qword [rsp + 0x168]
xor esi, esi
mov rax, qword [rsp + 0x180]
mov qword [rax], rsi
mov qword [rax + 8], 1
mov qword [rax + 0x10], rsi
mov edx, 0xd
mov rcx, rbp
call fcn.1400ce9ad
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, rbp
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x190], rsi
je 0x1401f52cb
mov r8, qword [rsp + 0x198]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
lea rcx, [rsp + 0x660]
call fcn.1401f55d8
test rbx, rbx
mov rbp, qword [rsp + 0x178]
mov rbx, qword [rsp + 0x170]
jne 0x1401f53c4
test rdi, rdi
jne 0x1401f53b2
jmp 0x1401f53c4
movups xmm0, xmmword [rsp + 0x220]
movaps xmmword [rsp + 0x7f0], xmm0
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x800], rax
cmp qword [rsp + 0x7f0], 0
mov r15, qword [rsp + 0x168]
jne 0x1401f533f
lea rcx, [rsp + 0x7f8]
call fcn.1401b10eb
mov rax, qword [rsp + 0x180]
mov qword [rax + 8], 0
mov edx, 0xd
mov rcx, rbp
call fcn.1400ce9ad
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, rbp
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x190], 0
mov rbx, qword [rsp + 0x170]
je 0x1401f5398
mov r8, qword [rsp + 0x198]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
lea rcx, [rsp + 0x660]
call fcn.1401f55d8
mov rbp, qword [rsp + 0x178]
test r15, r15
je 0x1401f53c4
mov rcx, qword [0x1404fd180]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rbp], 0
je 0x1401f53de
mov r8, qword [rbp + 8]
mov rcx, qword [0x1404fd180]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
movaps xmm6, xmmword [rsp + 0x1860]
movaps xmm7, xmmword [rsp + 0x1870]
movaps xmm8, xmmword [rsp + 0x1880]
movaps xmm9, xmmword [rsp + 0x1890]
add rsp, 0x18a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x1404ccfb7]
lea r8, str.srcmisc_sensitive_data.rs
mov edx, 0x2b
call fcn.14038e950
ud2
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
lea r8, [rsp + 0x7f0]
movaps xmmword [r8 + 0x10], xmm1
movaps xmmword [r8], xmm0
lea rax, str.srcmisc_sensitive_data.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x1404ccfe2]
lea r9, fcn.1400047d0
mov edx, 0x2b
call fcn.14038ebe0
ud2
mov ecx, 0x78
jmp 0x1401f5481
mov ecx, 0x138
mov edx, 8
call fcn.14038e430
ud2
lea r8, [0x140495fd8]
xor ecx, ecx
xor edx, edx
call fcn.14038e8b0
ud2
lea rcx, [0x1404ccfb7]
lea r8, str.srcmisc_sensitive_data.rs
jmp 0x1401f5422
lea r8, [0x140495fa8]
jmp 0x1401f5494
lea r8, [0x140495fc0]
mov ecx, 1
mov edx, 1
jmp 0x1401f5498
mov ecx, 0x24
mov edx, 4
jmp 0x1401f5486
mov ecx, 0x80
mov edx, 1
jmp 0x1401f5486
lea rcx, [0x1404ccfb7]
lea r8, [0x1404970f8]
jmp 0x1401f5422
lea rcx, [0x1404ccfb7]
lea r8, [0x1404970e0]
jmp 0x1401f5422
lea rcx, [0x1404ccfb7]
lea r8, [0x1404970c8]
jmp 0x1401f5422
lea r8, [0x140495ff0]
mov ecx, 1
xor edx, edx
jmp 0x1401f554e
lea r8, [0x140495ff0]
mov ecx, 3
call fcn.14038e940
ud2
lea r9, [rsp + 0x220]
mov qword [r9 + 0x10], 0
lea rax, [0x140496008]
mov qword [rsp + 0x20], rax
lea r8, [0x1404a4d38]
lea rdx, [rsp + 0x470]
xor ecx, ecx
call fcn.140399a3c
ud2