Function at 0x140205344
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1918
call fcn.1403aaf10
sub rsp, rax
movaps xmmword [rsp + 0x1900], xmm9
movaps xmmword [rsp + 0x18f0], xmm8
movaps xmmword [rsp + 0x18e0], xmm7
movaps xmmword [rsp + 0x18d0], xmm6
mov r13, rdx
mov qword [rsp + 0x238], rcx
lea rsi, [rsp + 0x270]
mov rcx, rsi
call fcn.140243800
mov rdx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
lea r14, [rsp + 0x530]
mov rcx, r14
call fcn.14025ab80
lea rax, [0x1404b2c7d]
lea rdx, [rsp + 0x860]
mov qword [rdx], rax
mov rcx, qword [rdx]
movabs rax, 0xc5df46a2ac959f8
mov qword [rdx], rax
mov rdx, qword [rdx]
call fcn.1402098b0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x160], xmm0
mov r9b, 1
xor edi, edi
lea r10, [0x1404b9818]
movzx r8d, byte [rdi + r10]
mov rcx, rdi
or rcx, 1
movzx ebx, byte [rcx + r10]
mov rcx, rdi
or rcx, 2
movzx r11d, byte [rcx + r10]
mov rcx, rdi
or rcx, 3
movzx r15d, byte [rcx + r10]
mov rcx, rdi
or rcx, 4
movzx ecx, byte [rcx + r10]
mov rsi, rdi
or rsi, 5
movzx ebp, byte [rsi + r10]
mov rsi, rdi
or rsi, 6
mov rdx, rdi
or rdx, 7
movzx esi, byte [rsi + r10]
movzx edx, byte [rdx + r10]
shl rdx, 0x38
shl rsi, 0x30
or rsi, rdx
shl rbp, 0x28
shl rcx, 0x20
shl r15, 0x18
shl r11, 0x10
shl rbx, 8
or rbx, r8
or rbx, r11
or rbx, r15
or rbx, rcx
or rbx, rbp
or rbx, rsi
xor rbx, qword [rax + rdi]
mov qword [rsp + rdi + 0x160], rbx
mov edi, 8
test r9b, 1
mov r9d, 0
jne 0x1402053f3
movzx ecx, byte [rax + 0x12]
movzx eax, word [rax + 0x10]
xor eax, 0x3612
lea rdx, [rsp + 0x160]
mov word [rdx + 0x10], ax
xor cl, 0xcb
mov byte [rdx + 0x12], cl
lea rax, [rsp + 0x810]
mov qword [rax], rdx
mov qword [rax + 8], 0x13
lea r12, [rsp + 0x430]
mov qword [r12], r14
lea rcx, [0x1400715b5]
mov qword [r12 + 8], rcx
mov qword [r12 + 0x10], rax
lea rax, [0x140134850]
mov qword [r12 + 0x18], rax
lea rdx, [rsp + 0x860]
mov qword [rdx], 0
lea rax, str.dest_is_out_of_bounds
mov qword [rdx + 0x10], rax
mov eax, 2
mov qword [rdx + 0x18], rax
mov qword [rdx + 0x20], r12
mov qword [rdx + 0x28], rax
lea rcx, [rsp + 0x6e0]
call fcn.140053dd0
cmp qword [rsp + 0x530], 0
je 0x14020555e
cmp qword [rsp + 0x538], 0
je 0x14020555e
mov r8, qword [rsp + 0x540]
mov rcx, qword [0x14051f200]
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
cmp qword [rsp + 0x270], 0
je 0x140205580
mov r8, qword [rsp + 0x278]
mov rcx, qword [0x14051f200]
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
mov rdi, qword [rsp + 0x6e0]
mov rbx, qword [rsp + 0x6e8]
mov rbp, qword [rsp + 0x6f0]
xor eax, eax
lea r8, [rsp + 0x860]
mov dword [r8 + 0x20], eax
mov word [r8 + 0x24], 0
mov qword [r8], 0
mov dword [r8 + 8], eax
movaps xmm6, xmmword [0x1403bca40]
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, rbp
call fcn.1402447f0
mov rsi, rdx
test rax, rax
je 0x140205605
mov rcx, qword [rsp + 0x238]
mov qword [rcx + 8], 0
mov rcx, rax
mov rdx, rsi
call fcn.140209c48
jmp 0x140209681
mov qword [rsp + 0x638], rbp
mov qword [rsp + 0x230], rdi
mov qword [rsp + 0x3d8], r13
lea rdi, [rsp + 0x860]
mov rcx, rdi
call fcn.140066eaa
xorps xmm0, xmm0
mov eax, 1
mov qword [rsp + 0x700], rax
mov qword [rsp + 0x708], rsi
xor ecx, ecx
mov qword [rsp + 0x718], rcx
mov qword [rsp + 0x770], rcx
mov qword [rsp + 0x778], 8
movaps xmmword [rsp + 0x780], xmm0
movaps xmmword [rsp + 0x6f0], xmm0
movups xmm0, xmmword [rdi]
movaps xmmword [rsp + 0x6e0], xmm0
mov dword [rsp + 0x7a0], 0
mov qword [rsp + 0x790], rax
mov qword [rsp + 0x798], rcx
lea rbp, [rsp + 0x860]
mov rcx, rbp
call fcn.140281a6c
mov eax, dword [rbp]
mov dword [rsp + 0x12c], eax
mov rax, qword [rbp + 4]
mov qword [rsp + 0x3e0], rax
mov eax, dword [rbp + 0xc]
mov dword [rsp + 0x3e8], eax
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x630], rax
mov eax, dword [rbp + 0x18]
mov dword [rsp + 0x128], eax
mov eax, dword [rbp + 0x1c]
mov dword [rsp + 0x124], eax
mov r14d, dword [rbp + 0x20]
mov r15d, dword [rbp + 0x24]
movzx eax, word [rbp + 0x2a]
mov word [rsp + 0x122], ax
mov al, byte [rbp + 0x2c]
mov byte [rsp + 0x9f], al
lea rax, [0x1404b6d42]
mov qword [rbp], rax
mov rcx, qword [rbp]
movabs rax, 0xacc007e12041a1fd
mov qword [rbp], rax
mov rdx, qword [rbp]
call fcn.1402098ce
movabs rcx, 0x70711306ea7b2c38
xor rcx, qword [rax]
lea rdi, [rsp + 0x530]
mov qword [rdi], rcx
movzx ecx, byte [rax + 0xa]
movzx eax, word [rax + 8]
xor eax, 0xbbce
mov word [rdi + 8], ax
xor cl, 0x2e
mov byte [rdi + 0xa], cl
lea rsi, [rsp + 0x270]
mov r8d, 0xb
mov rcx, rsi
mov rdx, rdi
call fcn.140243490
cmp byte [rsi + 0x18], 3
jne 0x140209714
mov dword [rsp + 0x240], r14d
mov dword [rsp + 0x248], r15d
mov qword [rsp + 0x228], rbx
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x260], rax
movups xmm0, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x250], xmm0
mov ecx, 0x78
mov edx, 8
call fcn.14002c720
test rax, rax
je 0x14020975b
mov r14, rax
lea rax, [0x1404abf2d]
lea rbx, [rsp + 0x860]
mov qword [rbx], rax
mov rcx, qword [rbx]
movabs rax, 0x2cbf2dd1c5e5b505
mov qword [rbx], rax
mov rdx, qword [rbx]
call fcn.1402098f7
movabs rcx, 0xef1e027a0c89561f
xor rcx, qword [rax]
mov qword [rsp + 0x430], rcx
mov qword [rsp + 0x530], r12
mov qword [rsp + 0x538], 8
lea rax, [rsp + 0x250]
mov qword [rsp + 0x270], rax
lea rbp, [0x1400099b0]
mov qword [rsp + 0x278], rbp
mov qword [rsp + 0x280], rdi
lea rsi, [0x140134850]
mov qword [rsp + 0x288], rsi
xor r15d, r15d
mov qword [rbx], r15
mov rsi, rdi
lea r13, str.dest_is_out_of_bounds
mov qword [rbx + 0x10], r13
mov edi, 2
mov qword [rbx + 0x18], rdi
lea r13, [rsp + 0x270]
mov qword [rbx + 0x20], r13
mov qword [rbx + 0x28], rdi
lea rcx, [rsp + 0x3f0]
mov rdx, rbx
call fcn.140053dd0
lea rax, [0x1404ab926]
mov qword [rbx], rax
mov rcx, qword [rbx]
movabs rax, 0x6476d41a43c417a9
mov qword [rbx], rax
mov rdx, qword [rbx]
call fcn.140209924
movabs rcx, 0x51fa1b361a6a111
xor rcx, qword [rax]
mov qword [rsp + 0x430], rcx
movzx eax, word [rax + 8]
xor eax, 0x9dc7
mov word [rsp + 0x438], ax
mov qword [rsp + 0x530], r12
mov qword [rsp + 0x538], 0xa
lea rax, [rsp + 0x250]
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], rbp
mov qword [rsp + 0x280], rsi
lea rax, [0x140134850]
mov qword [rsp + 0x288], rax
mov qword [rbx], r15
lea rax, str.dest_is_out_of_bounds
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], rdi
mov qword [rbx + 0x20], r13
mov qword [rbx + 0x28], rdi
lea rcx, [rsp + 0x390]
lea rbx, [rsp + 0x860]
mov rdx, rbx
call fcn.140053dd0
lea rax, [0x1404b4cf1]
mov qword [rbx], rax
mov rcx, qword [rbx]
movabs rax, 0xf195a8d12d03e3c
mov qword [rbx], rax
mov rdx, qword [rbx]
call fcn.14020994f
xorps xmm0, xmm0
movaps xmmword [rsp + 0x530], xmm0
mov r10b, 1
lea r9, [0x1404b9860]
movzx r8d, byte [r15 + r9]
mov rcx, r15
or rcx, 1
movzx ebx, byte [rcx + r9]
mov rcx, r15
or rcx, 2
movzx r11d, byte [rcx + r9]
mov rcx, r15
or rcx, 3
movzx edi, byte [rcx + r9]
mov rcx, r15
or rcx, 4
movzx ecx, byte [rcx + r9]
mov rdx, r15
or rdx, 5
movzx edx, byte [rdx + r9]
mov rsi, r15
or rsi, 6
mov rbp, r15
or rbp, 7
movzx esi, byte [rsi + r9]
movzx ebp, byte [rbp + r9]
shl rbp, 0x38
shl rsi, 0x30
or rsi, rbp
shl rdx, 0x28
shl rcx, 0x20
shl rdi, 0x18
shl r11, 0x10
shl rbx, 8
or rbx, r8
or rbx, r11
or rbx, rdi
or rbx, rcx
or rbx, rdx
or rbx, rsi
xor rbx, qword [rax + r15]
mov qword [rsp + r15 + 0x530], rbx
mov r15d, 8
test r10b, 1
mov r10d, 0
jne 0x14020598c
lea r13, [rsp + 0x530]
mov qword [rsp + 0x430], r13
mov qword [rsp + 0x438], 0x10
lea rax, [rsp + 0x250]
mov qword [rsp + 0x270], rax
lea rax, [0x1400099b0]
mov qword [rsp + 0x278], rax
lea r12, [rsp + 0x430]
mov qword [rsp + 0x280], r12
lea rax, [0x140134850]
mov qword [rsp + 0x288], rax
lea rbx, [rsp + 0x860]
mov qword [rbx], 0
lea rax, str.dest_is_out_of_bounds
mov qword [rbx + 0x10], rax
mov eax, 2
mov qword [rbx + 0x18], rax
lea rcx, [rsp + 0x270]
mov qword [rbx + 0x20], rcx
mov qword [rbx + 0x28], rax
lea rcx, [rsp + 0x810]
mov rdx, rbx
call fcn.140053dd0
lea rax, [0x1404b80a9]
mov qword [rbx], rax
mov rcx, qword [rbx]
movabs rax, 0x35f3d4d223f01288
mov qword [rbx], rax
mov rdx, qword [rbx]
call fcn.140209978
xorps xmm0, xmm0
movaps xmmword [rsp + 0x530], xmm0
mov r9b, 1
xor edi, edi
lea r10, [0x1404b9870]
movzx r8d, byte [rdi + r10]
mov rcx, rdi
or rcx, 1
movzx ebx, byte [rcx + r10]
mov rcx, rdi
or rcx, 2
movzx r11d, byte [rcx + r10]
mov rcx, rdi
or rcx, 3
movzx r15d, byte [rcx + r10]
mov rcx, rdi
or rcx, 4
movzx ecx, byte [rcx + r10]
mov rsi, rdi
or rsi, 5
movzx ebp, byte [rsi + r10]
mov rsi, rdi
or rsi, 6
mov rdx, rdi
or rdx, 7
movzx esi, byte [rsi + r10]
movzx edx, byte [rdx + r10]
shl rdx, 0x38
shl rsi, 0x30
or rsi, rdx
shl rbp, 0x28
shl rcx, 0x20
shl r15, 0x18
shl r11, 0x10
shl rbx, 8
or rbx, r8
or rbx, r11
or rbx, r15
or rbx, rcx
or rbx, rbp
or rbx, rsi
xor rbx, qword [rax + rdi]
mov qword [rsp + rdi + 0x530], rbx
mov edi, 8
test r9b, 1
mov r9d, 0
jne 0x140205b0f
mov ecx, 0xcecc4c01
xor ecx, dword [rax + 0x10]
mov dword [rsp + 0x540], ecx
mov al, byte [rax + 0x14]
xor al, 0x47
mov byte [rsp + 0x544], al
mov qword [rsp + 0x430], r13
mov qword [rsp + 0x438], 0x15
lea rax, [rsp + 0x250]
mov qword [rsp + 0x270], rax
lea rax, [0x1400099b0]
mov qword [rsp + 0x278], rax
mov qword [rsp + 0x280], r12
lea rax, [0x140134850]
mov qword [rsp + 0x288], rax
lea rbx, [rsp + 0x860]
mov qword [rbx], 0
lea rsi, str.dest_is_out_of_bounds
mov qword [rbx + 0x10], rsi
mov eax, 2
mov qword [rbx + 0x18], rax
lea rcx, [rsp + 0x270]
mov qword [rbx + 0x20], rcx
mov qword [rbx + 0x28], rax
lea rcx, [rsp + 0x160]
mov rdx, rbx
call fcn.140053dd0
lea rax, [0x1404b472b]
mov qword [rbx], rax
mov rcx, qword [rbx]
movabs rax, 0x9f8c0ee7796fe1cf
mov qword [rbx], rax
mov rdx, qword [rbx]
call fcn.14020999b
xorps xmm0, xmm0
movaps xmmword [rsp + 0x270], xmm0
movaps xmmword [rsp + 0x280], xmm0
mov rcx, 0xfffffffffffffff8
lea rdx, [0x1404b9885]
mov rbp, qword [rcx + rdx + 8]
xor rbp, qword [rax + rcx + 8]
mov qword [rsp + rcx + 0x278], rbp
add rcx, 8
cmp rcx, 0x18
jb 0x140205ca5
mov ecx, 0xe8206bcc
xor ecx, dword [rax + 0x20]
mov dword [rsp + 0x290], ecx
movzx ecx, byte [rax + 0x26]
movzx eax, word [rax + 0x24]
xor eax, 0xb560
mov word [rsp + 0x294], ax
xor cl, 0x6a
mov byte [rsp + 0x296], cl
lea rax, [rsp + 0x7b0]
lea rcx, [rsp + 0x270]
mov qword [rax], rcx
mov qword [rax + 8], 0x27
lea rcx, [rsp + 0x250]
mov qword [rsp + 0x530], rcx
lea rcx, [0x1400099b0]
mov qword [rsp + 0x538], rcx
mov qword [rsp + 0x540], rax
lea rax, [0x140134850]
mov qword [rsp + 0x548], rax
lea rbp, [rsp + 0x860]
mov qword [rbp], 0
mov qword [rbp + 0x10], rsi
mov eax, 2
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], r13
mov qword [rbp + 0x28], rax
lea rdi, [rsp + 0x430]
mov rcx, rdi
mov rdx, rbp
call fcn.140053dd0
mov rax, qword [rsp + 0x400]
mov qword [r14 + 0x10], rax
movups xmm0, xmmword [rsp + 0x3f0]
movups xmmword [r14], xmm0
mov rax, qword [rsp + 0x3a0]
mov qword [r14 + 0x28], rax
movups xmm0, xmmword [rsp + 0x390]
movups xmmword [r14 + 0x18], xmm0
mov rax, qword [rsp + 0x820]
mov qword [r14 + 0x40], rax
movups xmm0, xmmword [rsp + 0x810]
movups xmmword [r14 + 0x30], xmm0
mov rax, qword [rsp + 0x170]
mov qword [r14 + 0x58], rax
movups xmm0, xmmword [rsp + 0x160]
movups xmmword [r14 + 0x48], xmm0
movups xmm0, xmmword [rdi]
movups xmmword [r14 + 0x60], xmm0
mov rax, qword [rdi + 0x10]
mov qword [r14 + 0x70], rax
mov ecx, 0x138
mov edx, 8
call fcn.14002c720
test rax, rax
je 0x140209762
mov r15, rax
lea rax, [0x1404b88fb]
lea r12, [rsp + 0x890]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0xdb21e7c104b2eb3a
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.1402099c6
mov esi, 0xe7b0ebe9
xor esi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x220], rdx
mov dword [rdx], esi
lea rax, [0x1404b98cd]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0xb2cec3bfa1744bf0
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.1402099e0
mov ecx, dword [rax]
mov bl, byte [rax + 4]
xor bl, 0x91
mov esi, 0xafbd7bd2
xor rsi, rcx
mov ecx, 5
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x58], rdx
mov byte [rdx + 4], bl
mov dword [rdx], esi
lea rax, [0x1404b020b]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0xda6ef69d9eb5d37d
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209a0a
mov esi, 0xd0e110f7
xor esi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x38], rdx
mov dword [rdx], esi
lea rax, [0x1404aa840]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0x88c475a336e2d55b
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209a38
mov esi, 0x82b2d836
xor esi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x88], rdx
mov dword [rdx], esi
lea rax, [0x1404aa456]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0x606c78bd70ca000a
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209a55
mov ecx, dword [rax]
mov bl, byte [rax + 4]
xor bl, 0xfb
mov esi, 0xf7f13174
xor rsi, rcx
mov ecx, 5
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x48], rdx
mov byte [rdx + 4], bl
mov dword [rdx], esi
lea rax, [0x1404b28c9]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0x3393c475323618da
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209a8b
mov esi, 0xd81c030e
xor esi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x40], rdx
mov dword [rdx], esi
lea rax, [0x1404aed75]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0x904ad0cafa2343a4
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209abf
mov esi, dword [rax]
mov bl, byte [rax + 4]
xor bl, 0x87
xor rsi, 0x484b205
mov ecx, 5
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x90], rdx
mov byte [rdx + 4], bl
mov dword [rdx], esi
lea rax, [0x1404ab55a]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0xd1c61a609bbcd87f
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209aef
mov esi, 0x2d82b98e
xor esi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x110], rdx
mov dword [rdx], esi
lea rax, [0x1404b241c]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0x73948b34703a3a76
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209b20
mov ecx, dword [rax]
mov bl, byte [rax + 4]
xor bl, 0x5f
mov esi, 0x9e592e74
xor rsi, rcx
mov ecx, 5
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0xc0], rax
mov r13, rdx
mov byte [rdx + 4], bl
mov dword [rdx], esi
lea rax, [0x1404b3920]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0x51a0dab83d0c4858
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209b3d
mov esi, 0x7b9192db
xor esi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0x658], rax
mov qword [rsp + 0x650], rdx
mov dword [rdx], esi
lea rax, [0x1404b7b2e]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0x37f93834797154de
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209b63
mov esi, 0xffc8f701
xor esi, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0x648], rax
mov rbx, rdx
mov dword [rdx], esi
lea rax, [0x1404b769b]
mov qword [r12 - 0x30], rax
mov rcx, qword [r12 - 0x30]
movabs rax, 0x78b4b80459837ee7
mov qword [r12 - 0x30], rax
mov rdx, qword [r12 - 0x30]
call fcn.140209b95
mov ebp, 0xb31fcae7
xor ebp, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.14027db1d
mov qword [rsp + 0x640], rax
mov rsi, rdx
mov dword [rdx], ebp
lea rax, [0x1404b42f2]
mov qword [r12 - 0x30], rax
lea rax, [rsp + 0x860]
mov rcx, qword [r12 - 0x30]
movabs rax, 0xac361783a6edca29
mov qword [r12 - 0x30], rax
lea rax, [rsp + 0x860]
mov rdx, qword [r12 - 0x30]
call fcn.140209bb6
mov ebp, 0x33368ab5
xor ebp, dword [rax]
mov ecx, 4
xor edx, edx
call fcn.14027db1d
mov dword [rdx], ebp
mov rcx, qword [rsp + 0x148]
mov qword [r15], rcx
mov rcx, qword [rsp + 0x220]
mov qword [r15 + 8], rcx
mov ecx, 4
mov qword [r15 + 0x10], rcx
mov rbp, qword [rsp + 0xc8]
mov qword [r15 + 0x18], rbp
mov rbp, qword [rsp + 0x58]
mov qword [r15 + 0x20], rbp
mov ebp, 5
mov qword [r15 + 0x28], rbp
mov rdi, qword [rsp + 0xa0]
mov qword [r15 + 0x30], rdi
mov rdi, qword [rsp + 0x38]
mov qword [r15 + 0x38], rdi
mov qword [r15 + 0x40], rcx
mov rdi, qword [rsp + 0xa8]
mov qword [r15 + 0x48], rdi
mov rdi, qword [rsp + 0x88]
mov qword [r15 + 0x50], rdi
mov qword [r15 + 0x58], rcx
mov rdi, qword [rsp + 0x60]
mov qword [r15 + 0x60], rdi
mov rdi, qword [rsp + 0x48]
mov qword [r15 + 0x68], rdi
mov qword [r15 + 0x70], rbp
mov rdi, qword [rsp + 0x50]
mov qword [r15 + 0x78], rdi
mov rdi, qword [rsp + 0x40]
mov qword [r15 + 0x80], rdi
mov qword [r15 + 0x88], rcx
mov rdi, qword [rsp + 0x68]
mov qword [r15 + 0x90], rdi
mov rdi, qword [rsp + 0x90]
mov qword [r15 + 0x98], rdi
mov qword [r15 + 0xa0], rbp
mov rdi, qword [rsp + 0x118]
mov qword [r15 + 0xa8], rdi
mov rdi, qword [rsp + 0x110]
mov qword [r15 + 0xb0], rdi
mov qword [r15 + 0xb8], rcx
mov rdi, qword [rsp + 0xc0]
mov qword [r15 + 0xc0], rdi
mov qword [r15 + 0xc8], r13
mov qword [r15 + 0xd0], rbp
mov edi, 5
mov rbp, qword [rsp + 0x658]
mov qword [r15 + 0xd8], rbp
mov rbp, qword [rsp + 0x650]
mov qword [r15 + 0xe0], rbp
mov qword [r15 + 0xe8], rcx
mov rbp, qword [rsp + 0x648]
mov qword [r15 + 0xf0], rbp
mov qword [r15 + 0xf8], rbx
mov qword [r15 + 0x100], rcx
mov rbp, qword [rsp + 0x640]
mov qword [r15 + 0x108], rbp
lea rbp, [rsp + 0x860]
mov qword [r15 + 0x110], rsi
mov qword [r15 + 0x118], rcx
mov ecx, 4
mov qword [r15 + 0x120], rax
mov qword [r15 + 0x128], rdx
mov qword [r15 + 0x130], rcx
mov r13, r14
add r13, 0x78
mov qword [rsp + 0x660], rdi
mov qword [rsp + 0x668], r14
mov qword [rsp + 0x670], r13
mov qword [rsp + 0x678], r14
mov ecx, dword [rsp + 0x248]
shl ecx, 0x10
or ecx, 0x80000000
cmp dword [rsp + 0x240], 1
mov eax, 0x81a40000
cmove eax, ecx
mov dword [rsp + 0x220], eax
xorps xmm7, xmm7
movss xmm8, dword [0x1403bd040]
lea r12, [rsp + 0x270]
lea rbx, [r14 + 0x18]
mov qword [rsp + 0x668], rbx
mov rdi, qword [r14 + 8]
test rdi, rdi
je 0x140209311
mov rax, qword [r14]
mov qword [rsp + 0x248], rax
mov rsi, qword [r14 + 0x10]
mov rcx, rbp
mov rdx, rdi
mov r8, rsi
xor r9d, r9d
call fcn.140248460
cmp dword [rsp + 0x860], 2
mov qword [rsp + 0x240], rdi
jne 0x140206474
mov rcx, qword [rsp + 0x868]
call fcn.1400971ca
mov r14, rbx
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
jmp 0x1402092ea
mov rcx, rbp
mov rdx, rdi
mov r8, rsi
call fcn.14025fcb0
xor edx, edx
mov qword [rsp + 0x880], rdx
mov qword [rsp + 0x890], 0xa
mov qword [rsp + 0x898], rdx
mov dword [rsp + 0x8a8], 0x100
mov qword [rsp + 0x8a0], 1
mov ecx, 0xa
mov r14, r12
mov rdi, r12
mov rsi, rbp
rep movsq qword [rdi], qword [rsi]
lea rax, [rsp + 0x290]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
lea rax, [rsp + 0x550]
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
movups xmm0, xmmword [rsp + 0x270]
movups xmm1, xmmword [rsp + 0x280]
movaps xmmword [rsp + 0x540], xmm1
movaps xmmword [rsp + 0x530], xmm0
lea rax, [rsp + 0x438]
movups xmmword [rax], xmm7
mov ecx, 0xa
lea rbx, [rsp + 0x810]
mov rdi, rbx
lea rsi, [rsp + 0x530]
rep movsq qword [rdi], qword [rsi]
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x800], rax
movups xmm0, xmmword [rsp + 0x430]
movaps xmmword [rsp + 0x7f0], xmm0
mov ecx, 0xa
lea r13, [rsp + 0x160]
mov rdi, r13
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
mov qword [rsp + 0x1b0], rdx
mov rax, qword [rsp + 0x800]
lea rcx, [rsp + 0x1b8]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0x7f0]
movups xmmword [rcx], xmm0
mov qword [rsp + 0x1d0], rdx
mov eax, 8
mov qword [rsp + 0x1d8], rax
movups xmmword [rcx + 0x28], xmm7
mov qword [rsp + 0x1f0], rax
movups xmmword [rcx + 0x40], xmm7
mov qword [rsp + 0x208], rax
mov qword [rsp + 0x210], rdx
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
mov rcx, rbp
mov rdx, r13
call fcn.1402791fd
mov rax, qword [rsp + 0x890]
cmp rax, 2
jne 0x14020665c
mov rax, qword [rsp + 0x898]
mov r8, qword [rsp + 0x8a0]
mov rsi, qword [rsp + 0x8b8]
cmp byte [rsp + 0x8d0], 2
jne 0x14020662c
cmp byte [rsp + 0x8b0], 2
je 0x140206622
test rax, rax
je 0x140206622
mov rcx, qword [0x14051f200]
xor edx, edx
call rbx
mov rcx, rsi
call fcn.1400971ca
jmp 0x1402065cd
mov rdi, qword [rsp + 0x8c0]
test rax, rax
je 0x140206644
mov rcx, qword [0x14051f200]
xor edx, edx
call rbx
test rsi, rsi
je 0x1402065cd
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rdi
call rbx
jmp 0x1402065cd
cmp eax, 3
je 0x1402091ed
mov rax, qword [rsp + 0x860]
mov qword [rsp + 0x148], rax
mov rsi, qword [rsp + 0x868]
mov r14, qword [rsp + 0x870]
lea rax, [rsp + 0x890]
xor ecx, ecx
mov dword [rax - 0x10], ecx
mov word [rax - 0xc], 0
mov qword [rsp + 0x860], 0
mov dword [rsp + 0x868], ecx
movups xmmword [rsp + 0x870], xmm6
mov byte [rsp + 0x880], 1
mov rcx, rsi
mov rdx, r14
mov r8, rbp
call fcn.1402447f0
mov rdi, rdx
test rax, rax
je 0x140206708
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rdi
lea r14, [rsp + 0x270]
mov rcx, rax
mov rdx, rdi
call fcn.140209c48
cmp qword [rsp + 0x148], 0
jne 0x14020686c
jmp 0x1402065cd
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rdi
mov rcx, rbp
mov rdx, rdi
call fcn.140245460
cmp dword [rsp + 0x860], 2
jne 0x140206762
mov rcx, qword [rsp + 0x868]
xor eax, eax
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], 1
mov qword [rsp + 0x140], rax
call fcn.1400971ca
mov ebx, 1
xor r12d, r12d
jmp 0x140206793
mov rcx, qword [rsp + 0x888]
xor edx, edx
call fcn.14027db1d
mov r12, rax
mov rbx, rdx
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], rdx
mov qword [rsp + 0x140], 0
mov r13d, 0x10
cmp r13, 0x148
je 0x1402067ef
mov rcx, rsi
mov rdx, r14
call fcn.14024d7e0
test rax, rax
cmove rax, rsi
cmove rdx, r14
mov rcx, rax
call fcn.14025fc20
test rax, rax
je 0x1402096e8
mov r8, qword [r15 + r13]
cmp rdx, r8
jb 0x1402067e9
mov rcx, qword [r15 + r13 - 8]
sub rdx, r8
add rax, rdx
mov rdx, rax
call fcn.1403acae0
test eax, eax
je 0x14020680f
add r13, 0x18
jmp 0x140206799
test r12, r12
jne 0x140206818
xor ecx, ecx
lea rbp, [rsp + 0x860]
lea r13, [rsp + 0x160]
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
jmp 0x14020684d
cmp r12, 0x26259f
jbe 0x14020687f
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rbx
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
call rbx
mov rcx, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x158]
lea rbp, [rsp + 0x860]
lea r13, [rsp + 0x160]
mov rdx, rdi
call fcn.140209c48
cmp qword [rsp + 0x148], 0
lea r14, [rsp + 0x270]
je 0x1402065cd
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rsi
call rbx
jmp 0x1402065cd
inc qword [0x14051f0f8]
lea rbp, [rsp + 0x860]
mov rcx, rbp
lea rdx, [rsp + 0x158]
lea r8, [rsp + 0x130]
call fcn.1402460d0
cmp qword [rsp + 0x860], 0
lea r13, [rsp + 0x160]
je 0x1402068da
mov rcx, qword [rsp + 0x868]
call fcn.1400971ca
lea r14, [rsp + 0x270]
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
jmp 0x140208cc8
mov qword [rsp + 0xc8], rsi
mov r12, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x140]
mov edi, 0x10
lea rsi, [0x140440f28]
mov r8, qword [rdi + rsi - 8]
cmp r8, rbx
ja 0x14020691d
mov rcx, qword [rdi + rsi - 0x10]
mov rdx, r12
call fcn.1403acae0
test eax, eax
je 0x1402069b9
add rdi, 0x18
cmp rdi, 0x238
jne 0x1402068fe
mov byte [rsp + 0x288], 5
lea rcx, [rsp + 0x860]
lea rdx, [rsp + 0x270]
call fcn.1400f758c
mov r8b, byte [rsp + 0x860]
mov al, byte [rsp + 0x898]
cmp al, 0xc
je 0x1402069bd
lea rdx, [rsp + 0x890]
mov rcx, qword [rdx]
lea rbp, [rsp + 0x681]
mov qword [rbp + 0x2f], rcx
movups xmm0, xmmword [rdx - 0x2f]
movups xmm1, xmmword [rdx - 0x1f]
movups xmm2, xmmword [rdx - 0xf]
movups xmmword [rbp + 0x20], xmm2
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
mov ecx, dword [rdx + 9]
mov edx, dword [rdx + 0xc]
mov dword [rbp + 0x3b], edx
mov dword [rbp + 0x38], ecx
mov byte [rsp + 0x680], r8b
mov byte [rsp + 0x6b8], al
lea rbp, [rsp + 0x860]
mov rsi, qword [rsp + 0xc8]
jmp 0x140208bde
mov r8b, byte [rdi + rsi]
mov rsi, qword [rsp + 0xc8]
mov qword [rsp + 0x530], r12
mov qword [rsp + 0x538], rbx
mov qword [rsp + 0x540], 0
xor eax, eax
mov dword [rsp + 0x280], eax
mov dword [rsp + 0x288], eax
mov ecx, 1
mov qword [rsp + 0x270], rcx
mov edx, 0x20000000
mov qword [rsp + 0x278], rdx
mov qword [rsp + 0x860], rcx
mov qword [rsp + 0x868], rdx
mov dword [rsp + 0x870], eax
mov dword [rsp + 0x878], eax
lea rbp, [rsp + 0x860]
mov qword [rsp + 0x20], rbp
lea rcx, [rsp + 0x680]
lea rdx, [rsp + 0x530]
lea r9, [rsp + 0x270]
call fcn.1400d64b0
cmp byte [rsp + 0x6b8], 0xc
jne 0x140208bde
mov rdi, qword [rsp + 0x680]
mov rsi, qword [rsp + 0x688]
mov rax, qword [rsp + 0x690]
mov qword [rsp + 0xa0], rax
mov r13, qword [rsp + 0x698]
mov eax, dword [rsp + 0x6a0]
mov qword [rsp + 0x88], rax
mov ebx, dword [rsp + 0x6a4]
mov qword [rsp + 0x6d0], 1
mov qword [rsp + 0x6d8], 0
movups xmmword [rsp + 0x6c0], xmm7
mov ecx, 0x24
mov edx, 4
call fcn.14002c720
test rax, rax
je 0x1402097a8
mov r12, rax
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0xa8], rsi
mov qword [rsp + 0x38], r15
movabs rax, 0x1010100000000
mov qword [r12], rax
mov word [r12 + 8], 0
xor eax, eax
mov dword [r12 + 0xc], eax
mov byte [r12 + 0x10], 2
mov edx, 0x1010101
mov dword [r12 + 0x11], edx
mov cl, 1
mov byte [r12 + 0x15], cl
mov dword [r12 + 0x18], eax
mov byte [r12 + 0x1c], 3
mov dword [r12 + 0x1d], edx
mov byte [r12 + 0x21], cl
mov ecx, 0x80
mov edx, 1
call fcn.14002c720
test rax, rax
je 0x1402097b4
movups xmm0, xmmword [0x140440c00]
movups xmmword [rax + 0x30], xmm0
movups xmm0, xmmword [0x140440bf0]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [0x140440be0]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [0x140440bd0]
movups xmmword [rax], xmm0
movups xmm0, xmmword [0x140440c10]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [0x140440c20]
movups xmmword [rax + 0x50], xmm0
movups xmm0, xmmword [0x140440c30]
movups xmmword [rax + 0x60], xmm0
movups xmm0, xmmword [0x140440c40]
movups xmmword [rax + 0x70], xmm0
mov rcx, rax
xor r8d, r8d
mov r9d, 1
xor ebx, ebx
lea rdi, [rbx + 1]
movzx ebp, byte [rcx + rbx]
imul ebp, ebp, 0xa6
lea esi, [rbp + 0x32]
imul rsi, rsi, 0x51eb851f
shr rsi, 0x25
mov edx, 0xff
cmp esi, edx
jb 0x140206be1
mov esi, 0xff
cmp ebp, 0x32
cmovb esi, r9d
mov byte [rcx + rbx], sil
mov rbx, rdi
cmp rdi, 0x40
jne 0x140206bb7
inc r8
add rcx, 0x40
cmp r8, 2
jne case.default.0x140206ce3
mov ecx, 3
mov qword [rsp + 0x870], rcx
mov qword [rsp + 0x878], r12
mov qword [rsp + 0x880], rcx
mov ecx, 2
mov qword [rsp + 0x888], rcx
mov qword [rsp + 0x890], rax
mov qword [rsp + 0x898], rcx
lea rax, [rsp + 0x6c0]
mov qword [rsp + 0x860], rax
mov dword [rsp + 0x868], 0
mov byte [rsp + 0x86c], 0
xor eax, eax
mov word [rsp + 0x8a0], ax
lea rcx, [0x14043f270]
mov qword [rsp + 0x8a8], rcx
mov word [rsp + 0xca8], ax
lea rcx, [0x14043fa7c]
mov qword [rsp + 0xcb0], rcx
mov word [rsp + 0x10b0], ax
lea rcx, [0x14043f67c]
mov qword [rsp + 0x10b8], rcx
mov word [rsp + 0x14b8], ax
lea rcx, [0x14043fe7c]
mov qword [rsp + 0x14c0], rcx
mov word [rsp + 0x18c4], ax
mov dword [rsp + 0x18c0], 0x10001
lea rcx, [0x140209864]
mov r12, qword [rsp + 0x58]
movsxd rax, dword [rcx + r12*4]
add rax, rcx
jmp rax
mov rcx, r13
xor edx, edx
call fcn.140056949
mov rbx, rax
mov rdi, rdx
mov rcx, rdx
mov rdx, qword [rsp + 0xa0]
mov r8, r13
call fcn.1403abad0
mov rdx, qword [rsp + 0x60]
mov rax, rdx
mov rcx, qword [rsp + 0x88]
imul rax, rcx
cmp rax, r13
mov rsi, qword [sym.imp.KERNEL32.DLL_HeapFree]
ja 0x1402097c0
mov qword [rsp + 0x390], rdi
mov qword [rsp + 0x398], r13
mov dword [rsp + 0x3a0], ecx
mov dword [rsp + 0x3a4], edx
mov word [rsp + 0x270], 0xd8ff
mov rcx, qword [rsp + 0x860]
mov r8d, 2
lea rdx, [rsp + 0x270]
call fcn.14023193a
test rax, rax
mov r15, qword [rsp + 0x38]
lea rbp, [rsp + 0x860]
jne 0x1402072da
mov qword [rsp + 0x48], rdi
xor eax, eax
mov qword [rsp + 0x430], rax
mov qword [rsp + 0x438], 1
mov qword [rsp + 0x440], rax
mov eax, dword [rsp + 0x18c0]
mov edx, dword [rsp + 0x18c4]
shl rdx, 0x20
or rdx, rax
lea rcx, [rsp + 0x430]
call fcn.1400cad8d
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xe0
mov r8, rdi
call fcn.1400085f1
test rax, rax
lea r13, [rsp + 0x160]
jne 0x140207017
mov rdx, qword [rsp + 0x88]
cmp edx, 0x10000
jae 0x14020778a
cmp dword [rsp + 0x60], 0x10000
jae 0x14020778a
mov qword [rsp + 0x40], rbx
cmp qword [rsp + 0x880], 0
je 0x14020980c
mov r12, qword [rsp + 0x878]
mov qword [rsp + 0x20], 1
lea rcx, [rsp + 0x430]
mov r8, qword [rsp + 0x60]
mov r9, r12
call fcn.1400cae36
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc0
mov r8, rdi
call fcn.1400085f1
test rax, rax
jne 0x140208a02
mov rax, qword [rsp + 0x898]
mov qword [rsp + 0x530], rax
cmp rax, 2
jne 0x14020982f
mov rbx, qword [rsp + 0x890]
xor edx, edx
cmp rdx, 1
je 0x1402078ea
lea rsi, [rdx + 1]
lea rcx, [rsp + 0x430]
mov r8, rbx
call fcn.1400caffd
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xdb
mov r8, rdi
call fcn.1400085f1
add rbx, 0x40
mov rdx, rsi
test rax, rax
je 0x140206ea8
jmp 0x140208a02
mov rcx, r13
xor edx, edx
call fcn.140056949
mov rbx, rax
mov rdi, rdx
mov rcx, rdx
mov rdx, qword [rsp + 0xa0]
mov r8, r13
call fcn.1403abad0
mov rcx, qword [rsp + 0x88]
lea rax, [rcx + rcx]
mov rbp, qword [rsp + 0x60]
mul rbp
mov rsi, qword [sym.imp.KERNEL32.DLL_HeapFree]
jo 0x1402097d3
cmp rax, r13
ja 0x1402097d3
mov qword [rsp + 0x390], rdi
mov qword [rsp + 0x398], r13
mov dword [rsp + 0x3a0], ecx
mov dword [rsp + 0x3a4], ebp
mov word [rsp + 0x270], 0xd8ff
mov rcx, qword [rsp + 0x860]
mov r8d, 2
lea rdx, [rsp + 0x270]
call fcn.14023193a
test rax, rax
mov r15, qword [rsp + 0x38]
lea rbp, [rsp + 0x860]
jne 0x1402072da
mov qword [rsp + 0x48], rdi
xor eax, eax
mov qword [rsp + 0x430], rax
mov qword [rsp + 0x438], 1
mov qword [rsp + 0x440], rax
mov eax, dword [rsp + 0x18c0]
mov edx, dword [rsp + 0x18c4]
shl rdx, 0x20
or rdx, rax
lea rcx, [rsp + 0x430]
call fcn.1400cad8d
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xe0
mov r8, rdi
call fcn.1400085f1
test rax, rax
lea r13, [rsp + 0x160]
je 0x14020768e
mov qword [rsp + 0xd0], rax
mov al, 0xb
jmp 0x140208a2d
mov rcx, r13
xor edx, edx
call fcn.140056949
mov rbx, rax
mov rdi, rdx
mov rcx, rdx
mov rdx, qword [rsp + 0xa0]
mov r8, r13
call fcn.1403abad0
mov rcx, qword [rsp + 0x88]
lea rax, [rcx + rcx*2]
mov rbp, qword [rsp + 0x60]
mul rbp
mov rsi, qword [sym.imp.KERNEL32.DLL_HeapFree]
jo 0x1402097e6
cmp rax, r13
ja 0x1402097e6
mov qword [rsp + 0x378], rdi
mov qword [rsp + 0x380], r13
mov dword [rsp + 0x388], ecx
mov dword [rsp + 0x38c], ebp
mov word [rsp + 0x270], 0xd8ff
mov rcx, qword [rsp + 0x860]
mov r8d, 2
lea rdx, [rsp + 0x270]
call fcn.14023193a
test rax, rax
mov r15, qword [rsp + 0x38]
lea rbp, [rsp + 0x860]
jne 0x1402072da
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], rax
mov eax, dword [rsp + 0x18c0]
mov edx, dword [rsp + 0x18c4]
shl rdx, 0x20
or rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1400cad8d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x860]
mov dl, 0xe0
mov qword [rsp + 0x50], r8
call fcn.1400085f1
test rax, rax
lea r13, [rsp + 0x160]
jne 0x14020767f
mov rax, qword [rsp + 0x88]
cmp eax, 0x10000
jae 0x1402078ba
cmp dword [rsp + 0x60], 0x10000
jae 0x1402078ba
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rbx
mov rdx, qword [rsp + 0x880]
cmp rdx, 2
jbe 0x14020981c
mov rdi, qword [rsp + 0x878]
mov qword [rsp + 0x20], 3
lea rcx, [rsp + 0x70]
mov edx, eax
mov r8, qword [rsp + 0x60]
mov r9, rdi
call fcn.1400cae36
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc0
mov qword [rsp + 0x50], r8
call fcn.1400085f1
test rax, rax
jne 0x140208a61
mov rax, qword [rsp + 0x898]
mov qword [rsp + 0x530], rax
cmp rax, 2
jne 0x14020982f
mov rbx, qword [rsp + 0x890]
xor edx, edx
cmp rdx, 2
je 0x140207bc9
lea rsi, [rdx + 1]
lea rcx, [rsp + 0x70]
mov r8, rbx
call fcn.1400caffd
mov rbp, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x860]
mov dl, 0xdb
mov r8, rbp
call fcn.1400085f1
add rbx, 0x40
mov rdx, rsi
test rax, rax
je 0x1402071e5
jmp 0x1402078b0
mov qword [rsp + 0xd0], rax
mov byte [rsp + 0x108], 0xb
lea r13, [rsp + 0x160]
jmp 0x140208ab5
mov qword [rsp + 0xd0], rax
mov al, 0xb
jmp 0x140208a96
mov rdx, qword [rsp + 0x88]
cmp edx, 0x10000
jae 0x14020778a
cmp dword [rsp + 0x60], 0x10000
jae 0x14020778a
mov qword [rsp + 0x40], rbx
cmp qword [rsp + 0x880], 0
je 0x14020980c
mov r12, qword [rsp + 0x878]
mov qword [rsp + 0x20], 1
lea rcx, [rsp + 0x430]
mov r8, qword [rsp + 0x60]
mov r9, r12
call fcn.1400cae36
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc0
mov r8, rdi
call fcn.1400085f1
test rax, rax
jne 0x140208a02
mov rax, qword [rsp + 0x898]
mov qword [rsp + 0x530], rax
cmp rax, 2
jne 0x14020982f
mov rbx, qword [rsp + 0x890]
xor edx, edx
cmp rdx, 1
je 0x140208172
lea rsi, [rdx + 1]
lea rcx, [rsp + 0x430]
mov r8, rbx
call fcn.1400caffd
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xdb
mov r8, rdi
call fcn.1400085f1
add rbx, 0x40
mov rdx, rsi
test rax, rax
je 0x140207739
jmp 0x140208a02
xor eax, eax
mov word [rsp + 0xd6], ax
mov dword [rsp + 0xd2], 0
mov qword [rsp + 0xf0], 0
mov word [rsp + 0xd0], ax
mov al, 8
jmp 0x140208a2d
mov qword [rsp + 0x50], rbp
jmp 0x140208a61
xor eax, eax
mov word [rsp + 0xd6], ax
mov dword [rsp + 0xd2], 0
mov qword [rsp + 0xf0], 0
mov word [rsp + 0xd0], ax
mov al, 8
jmp 0x140208a96
lea rax, [0x140449b08]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xc
lea rcx, [rsp + 0x430]
xor edx, edx
xor r8d, r8d
lea r9, [0x140449af8]
call fcn.1400caf2d
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc4
mov r8, rdi
call fcn.1400085f1
test rax, rax
jne 0x140208a02
lea rax, [0x140449b98]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xa2
lea rcx, [rsp + 0x430]
mov dl, 1
xor r8d, r8d
lea r9, [0x140449b88]
call fcn.1400caf2d
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc4
mov r8, rdi
call fcn.1400085f1
test rax, rax
jne 0x140208a02
mov r8d, 1
lea rcx, [rsp + 0x430]
mov rdx, r12
call fcn.1400cb087
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xda
mov r8, rdi
call fcn.1400085f1
test rax, rax
jne 0x140208a02
movaps xmmword [rsp + 0x560], xmm7
movaps xmmword [rsp + 0x550], xmm7
movaps xmmword [rsp + 0x540], xmm7
movaps xmmword [rsp + 0x530], xmm7
xor ebx, ebx
mov r8d, pe_nt_image_headers64
lea rcx, [rsp + 0x270]
xor edx, edx
call fcn.1403ac180
xor r15d, r15d
mov dword [rsp + 0x68], 0
test bl, 1
je 0x140207a2e
add r15d, 7
jb 0x1402090e0
cmp r15d, dword [rsp + 0x60]
jae 0x1402090e0
lea eax, [r15 + 1]
mov dword [rsp + 0x90], eax
mov dword [rsp + 0x50], 0
xor eax, eax
test al, 1
je 0x140207a71
mov bl, 1
add dword [rsp + 0x50], 7
jb 0x140207bba
mov eax, dword [rsp + 0x50]
cmp eax, dword [rsp + 0x88]
jb 0x140207a82
jmp 0x140207bba
mov eax, dword [rsp + 0x50]
cmp eax, dword [rsp + 0x88]
jae 0x140207bb8
mov eax, dword [rsp + 0x50]
mov edx, eax
lea eax, [rdx + 1]
mov dword [rsp + 0x50], eax
lea rcx, [rsp + 0x390]
mov r8d, r15d
lea rsi, [rsp + 0x530]
mov r9, rsi
call fcn.1400cb9db
mov rcx, rsi
lea rdx, [rsp + 0x270]
call fcn.1400cb3d8
mov rbx, qword [rsp + 0x890]
mov r13, qword [rsp + 0x898]
xor r12d, r12d
mov ebp, 0x7fffffff
test r13, r13
je 0x140209702
mov eax, dword [rsp + r12*4 + 0x270]
lea rsi, [r12 + 1]
lea ecx, [rax + 7]
test eax, eax
cmovns ecx, eax
sar ecx, 3
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
movzx eax, byte [rbx + r12]
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
cmova eax, ebp
ucomiss xmm0, xmm0
mov ecx, 0
cmovp eax, ecx
mov dword [rsp + r12*4 + 0x270], eax
mov r12, rsi
cmp rsi, 0x40
jne 0x140207ad2
cmp word [rsp + 0xca8], 0
lea rax, [rsp + 0xcaa]
jne 0x140207b51
mov rax, qword [rsp + 0xcb0]
cmp word [rsp + 0x8a0], 0
lea rcx, [rsp + 0x8a2]
jne 0x140207b6c
mov rcx, qword [rsp + 0x8a8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x3f0]
lea rdx, [rsp + 0x860]
lea r8, [rsp + 0x270]
mov r9d, dword [rsp + 0x68]
call fcn.140008457
cmp dword [rsp + 0x3f0], 0
jne 0x1402089fa
mov eax, dword [rsp + 0x3f4]
mov dword [rsp + 0x68], eax
mov al, 1
jmp 0x140207a4e
mov bl, 1
mov eax, dword [rsp + 0x90]
mov r15d, eax
jmp 0x140207a1f
lea rax, [0x140449b08]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xc
lea rcx, [rsp + 0x70]
xor edx, edx
xor r8d, r8d
lea r9, [0x140449af8]
call fcn.1400caf2d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc4
mov qword [rsp + 0x50], r8
call fcn.1400085f1
test rax, rax
jne 0x140208a61
lea rax, [0x140449b98]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xa2
lea rcx, [rsp + 0x70]
mov dl, 1
xor r8d, r8d
lea r9, [0x140449b88]
call fcn.1400caf2d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc4
mov qword [rsp + 0x50], r8
call fcn.1400085f1
test rax, rax
jne 0x140208a61
lea rax, [0x14043f670]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xc
lea rcx, [rsp + 0x70]
xor edx, edx
mov r8b, 1
lea r9, [0x140449b48]
call fcn.1400caf2d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc4
mov qword [rsp + 0x50], r8
call fcn.1400085f1
test rax, rax
jne 0x140208a61
lea rax, [0x140449c80]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xa2
lea rcx, [rsp + 0x70]
mov dl, 1
mov r8b, 1
lea r9, [0x140449c70]
call fcn.1400caf2d
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc4
mov qword [rsp + 0x50], r8
call fcn.1400085f1
test rax, rax
jne 0x140208a61
mov r8d, 3
lea rcx, [rsp + 0x70]
mov rdx, rdi
call fcn.1400cb087
mov r8, qword [rsp + 0x78]
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x860]
mov dl, 0xda
mov qword [rsp + 0x50], r8
call fcn.1400085f1
test rax, rax
jne 0x140208a61
xor edi, edi
mov r8d, pe_nt_image_headers64
lea rcx, [rsp + 0x430]
xor edx, edx
call fcn.1403ac180
mov r8d, pe_nt_image_headers64
lea rcx, [rsp + 0x530]
xor edx, edx
call fcn.1403ac180
mov r8d, pe_nt_image_headers64
lea rcx, [rsp + 0x270]
xor edx, edx
call fcn.1403ac180
movaps xmmword [rsp + 0x7e0], xmm7
movaps xmmword [rsp + 0x7d0], xmm7
movaps xmmword [rsp + 0x7c0], xmm7
movaps xmmword [rsp + 0x7b0], xmm7
movaps xmmword [rsp + 0x420], xmm7
movaps xmmword [rsp + 0x410], xmm7
movaps xmmword [rsp + 0x400], xmm7
movaps xmmword [rsp + 0x3f0], xmm7
movaps xmmword [rsp + 0x3c0], xmm7
movaps xmmword [rsp + 0x3b0], xmm7
movaps xmmword [rsp + 0x3a0], xmm7
movaps xmmword [rsp + 0x390], xmm7
xor r12d, r12d
mov dword [rsp + 0x110], 0
mov dword [rsp + 0x118], 0
mov dword [rsp + 0x90], 0
test dil, 1
je 0x140207e2f
add r12d, 7
jb 0x14020917b
cmp r12d, dword [rsp + 0x60]
jae 0x14020917b
lea eax, [r12 + 1]
mov dword [rsp + 0xc0], eax
xor eax, eax
mov dword [rsp + 0x68], 0
test al, 1
je 0x140207e74
mov dil, 1
add dword [rsp + 0x68], 7
jb 0x140208163
mov eax, dword [rsp + 0x68]
cmp eax, dword [rsp + 0x88]
jb 0x140207e85
jmp 0x140208163
mov eax, dword [rsp + 0x68]
cmp eax, dword [rsp + 0x88]
jae 0x140208160
mov eax, dword [rsp + 0x68]
mov edx, eax
lea eax, [rdx + 1]
mov dword [rsp + 0x68], eax
lea rdi, [rsp + 0x390]
mov qword [rsp + 0x28], rdi
lea rsi, [rsp + 0x3f0]
mov qword [rsp + 0x20], rsi
lea rcx, [rsp + 0x378]
mov r8d, r12d
lea rbx, [rsp + 0x7b0]
mov r9, rbx
call fcn.1400cb689
mov rcx, rbx
lea rdx, [rsp + 0x430]
call fcn.1400cb3d8
mov rcx, rsi
lea rdx, [rsp + 0x530]
call fcn.1400cb3d8
mov rcx, rdi
lea rdx, [rsp + 0x270]
call fcn.1400cb3d8
mov r15, qword [rsp + 0x890]
mov r13, qword [rsp + 0x898]
xor ebx, ebx
test r13, r13
je 0x140209786
mov eax, dword [rsp + rbx*4 + 0x430]
lea ecx, [rax + 7]
test eax, eax
cmovns ecx, eax
sar ecx, 3
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
movzx eax, byte [r15 + rbx]
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 + rbx*4 + 0x430], eax
cmp r13, 1
je 0x140209792
lea rdi, [rbx + 1]
mov eax, dword [rsp + rbx*4 + 0x530]
lea ecx, [rax + 7]
test eax, eax
cmovns ecx, eax
sar ecx, 3
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
movzx eax, byte [r15 + rbx + 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 esi, 0x7fffffff
cmova eax, esi
ucomiss xmm0, xmm0
mov ebp, 0
cmovp eax, ebp
mov dword [rsp + rbx*4 + 0x530], eax
mov eax, dword [rsp + rbx*4 + 0x270]
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
cmova eax, esi
ucomiss xmm0, xmm0
cmovp eax, ebp
mov dword [rsp + rbx*4 + 0x270], eax
mov rbx, rdi
cmp rdi, 0x40
jne 0x140207f09
cmp word [rsp + 0xca8], 0
lea rax, [rsp + 0xcaa]
jne 0x140208027
mov rax, qword [rsp + 0xcb0]
cmp word [rsp + 0x8a0], 0
lea rcx, [rsp + 0x8a2]
jne 0x140208042
mov rcx, qword [rsp + 0x8a8]
cmp word [rsp + 0x10b0], 0
lea rdi, [rsp + 0x10b2]
jne 0x14020805d
mov rdi, qword [rsp + 0x10b8]
cmp word [rsp + 0x14b8], 0
lea rbx, [rsp + 0x14ba]
jne 0x140208078
mov rbx, qword [rsp + 0x14c0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x860]
lea r8, [rsp + 0x430]
mov r9d, dword [rsp + 0x90]
call fcn.140008457
cmp dword [rsp + 0xb0], 0
jne 0x140208a59
mov eax, dword [rsp + 0xb4]
mov dword [rsp + 0x90], eax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x860]
lea r8, [rsp + 0x530]
mov r9d, dword [rsp + 0x118]
call fcn.140008457
cmp dword [rsp + 0xb0], 0
jne 0x140208a59
mov eax, dword [rsp + 0xb4]
mov dword [rsp + 0x118], eax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x860]
lea r8, [rsp + 0x270]
mov r9d, dword [rsp + 0x110]
call fcn.140008457
cmp dword [rsp + 0xb0], 0
jne 0x140208a59
mov eax, dword [rsp + 0xb4]
mov dword [rsp + 0x110], eax
mov al, 1
jmp 0x140207e50
mov dil, 1
mov eax, dword [rsp + 0xc0]
mov r12d, eax
jmp 0x140207e1f
lea rax, [0x140449b08]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xc
lea rcx, [rsp + 0x430]
xor edx, edx
xor r8d, r8d
lea r9, [0x140449af8]
call fcn.1400caf2d
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc4
mov r8, rdi
call fcn.1400085f1
test rax, rax
jne 0x140208a02
lea rax, [0x140449b98]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0xa2
lea rcx, [rsp + 0x430]
mov dl, 1
xor r8d, r8d
lea r9, [0x140449b88]
call fcn.1400caf2d
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xc4
mov r8, rdi
call fcn.1400085f1
test rax, rax
jne 0x140208a02
mov r8d, 1
lea rcx, [rsp + 0x430]
mov rdx, r12
call fcn.1400cb087
mov rdi, qword [rsp + 0x438]
mov r9, qword [rsp + 0x440]
mov rcx, qword [rsp + 0x860]
mov dl, 0xda
mov r8, rdi
call fcn.1400085f1
test rax, rax
jne 0x140208a02
movaps xmmword [rsp + 0x560], xmm7
movaps xmmword [rsp + 0x550], xmm7
movaps xmmword [rsp + 0x540], xmm7
movaps xmmword [rsp + 0x530], xmm7
xor ebx, ebx
mov r8d, pe_nt_image_headers64
lea rcx, [rsp + 0x270]
xor edx, edx
call fcn.1403ac180
xor r15d, r15d
mov dword [rsp + 0x68], 0
test bl, 1
je 0x1402082b6
add r15d, 7
jb 0x1402090e0
cmp r15d, dword [rsp + 0x60]
jae 0x1402090e0
lea eax, [r15 + 1]
mov dword [rsp + 0x90], eax
mov dword [rsp + 0x50], 0
xor eax, eax
test al, 1
je 0x1402082f9
mov bl, 1
add dword [rsp + 0x50], 7
jb 0x140208442
mov eax, dword [rsp + 0x50]
cmp eax, dword [rsp + 0x88]
jb 0x14020830a
jmp 0x140208442
mov eax, dword [rsp + 0x50]
cmp eax, dword [rsp + 0x88]
jae 0x140208440
mov eax, dword [rsp + 0x50]
mov edx, eax
lea eax, [rdx + 1]
mov dword [rsp + 0x50], eax
lea rcx, [rsp + 0x390]
mov r8d, r15d
lea rsi, [rsp + 0x530]
mov r9, rsi
call fcn.1400cb92a
mov rcx, rsi
lea rdx, [rsp + 0x270]
call fcn.1400cb3d8
mov rbx, qword [rsp + 0x890]
mov r13, qword [rsp + 0x898]
xor r12d, r12d
mov ebp, 0x7fffffff
test r13, r13
je 0x140209702
mov eax, dword [rsp + r12*4 + 0x270]
lea rsi, [r12 + 1]
lea ecx, [rax + 7]
test eax, eax
cmovns ecx, eax
sar ecx, 3
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
movzx eax, byte [rbx + r12]
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
cmova eax, ebp
ucomiss xmm0, xmm0
mov ecx, 0
cmovp eax, ecx
mov dword [rsp + r12*4 + 0x270], eax
mov r12, rsi
cmp rsi, 0x40
jne 0x14020835a
cmp word [rsp + 0xca8], 0
lea rax, [rsp + 0xcaa]
jne 0x1402083d9
mov rax, qword [rsp + 0xcb0]
cmp word [rsp + 0x8a0], 0
lea rcx, [rsp + 0x8a2]
jne 0x1402083f4
mov rcx, qword [rsp + 0x8a8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x3f0]
lea rdx, [rsp + 0x860]
lea r8, [rsp + 0x270]
mov r9d, dword [rsp + 0x68]
call fcn.140008457
cmp dword [rsp + 0x3f0], 0
jne 0x1402089fa
mov eax, dword [rsp + 0x3f4]
mov dword [rsp + 0x68], eax
mov al, 1
jmp 0x1402082d6
mov bl, 1
mov eax, dword [rsp + 0x90]
mov r15d, eax
jmp 0x1402082a7
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0xd0], rax
mov al, 0xb
mov r15, qword [rsp + 0x38]
lea rbp, [rsp + 0x860]
lea r13, [rsp + 0x160]
mov rsi, qword [sym.imp.KERNEL32.DLL_HeapFree]
mov rbx, qword [rsp + 0x40]
mov byte [rsp + 0x108], al
cmp qword [rsp + 0x430], 0
je 0x140208a4d
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rdi
call rsi
mov r12, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x48]
jmp 0x140208ab5
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0xd0], rax
mov al, 0xb
mov r15, qword [rsp + 0x38]
lea rbp, [rsp + 0x860]
lea r13, [rsp + 0x160]
mov rsi, qword [sym.imp.KERNEL32.DLL_HeapFree]
mov r12, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov byte [rsp + 0x108], al
cmp qword [rsp + 0x70], 0
je 0x140208ab5
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, qword [rsp + 0x50]
call rsi
cmp byte [rsp + 0x108], 0xc
je 0x140208acc
lea rcx, [rsp + 0xd0]
call fcn.140209c60
test rbx, rbx
je 0x140208adf
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rdi
call rsi
movups xmm0, xmmword [rsp + 0x6c0]
movups xmm1, xmmword [rsp + 0x6d0]
movaps xmmword [rsp + 0x280], xmm1
movaps xmmword [rsp + 0x270], xmm0
lea rax, [rsp + 0x278]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x530], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x540], rax
cmp qword [rsp + 0x130], 0
je 0x140208b3c
mov r8, qword [rsp + 0x138]
mov rcx, qword [0x14051f200]
xor edx, edx
call rsi
mov rax, qword [rsp + 0x540]
mov qword [rsp + 0x140], rax
movaps xmm0, xmmword [rsp + 0x530]
movaps xmmword [rsp + 0x130], xmm0
cmp qword [rsp + 0x870], 0
je 0x140208b7a
mov r8, qword [rsp + 0x878]
mov rcx, qword [0x14051f200]
xor edx, edx
call rsi
cmp qword [rsp + 0x888], 0
je 0x140208b98
mov r8, qword [rsp + 0x890]
mov rcx, qword [0x14051f200]
xor edx, edx
call rsi
cmp r12, 8
ja case.0x140208bac.0
lea rcx, [0x14020988c]
movsxd rax, dword [rcx + r12*4]
add rax, rcx
jmp rax
cmp qword [rsp + 0xa8], 0
je 0x140208bcc
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, qword [rsp + 0xa0]
call rsi
cmp byte [rsp + 0x6b8], 0xc
mov rsi, qword [rsp + 0xc8]
je 0x140208beb
lea rcx, [rsp + 0x680]
call fcn.140209c60
mov rcx, rsi
mov rdx, r14
call fcn.14024d7e0
test rax, rax
cmove rax, rsi
cmove rdx, r14
mov rcx, rax
call fcn.14025fc20
test rax, rax
je 0x140209773
mov rdi, rax
mov rbx, rdx
mov eax, dword [rsp + 0x3e8]
mov dword [rsp + 0x538], eax
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0x530], rax
mov rcx, rbp
lea rdx, [rsp + 0x6e0]
call fcn.140285f95
mov rsi, qword [rsp + 0x860]
cmp rsi, 4
lea r14, [rsp + 0x270]
jne 0x140208ca4
lea rcx, [rsp + 0x700]
call fcn.140283b77
mov r12, rax
mov rdx, qword [rax]
mov r8d, 2
mov rcx, rbp
xor r9d, r9d
call fcn.140246120
cmp qword [rsp + 0x860], 0
je 0x140208cfb
mov rdi, qword [rsp + 0x868]
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
mov rsi, qword [rsp + 0xc8]
jmp 0x140208cc0
mov rdi, qword [rsp + 0x868]
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
test rsi, rsi
mov rsi, qword [rsp + 0xc8]
jne 0x140208cc8
mov rcx, rdi
call fcn.1400971ca
cmp qword [rsp + 0x130], 0
je 0x140208ce6
mov r8, qword [rsp + 0x138]
mov rcx, qword [0x14051f200]
xor edx, edx
call rbx
mov rax, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x158]
jmp 0x1402066e9
mov r14, qword [rsp + 0x868]
lea rsi, [rsp + 0x890]
mov rcx, rsi
mov rdx, rdi
mov r8, rbx
call fcn.140054330
mov word [rsp + 0x906], 0x32e
mov eax, dword [rsp + 0x12c]
mov byte [rsp + 0x908], al
mov byte [rsp + 0x909], 0
mov word [rsp + 0x900], 1
movzx eax, word [rsp + 0x122]
mov word [rsp + 0x902], ax
mov eax, dword [rsp + 0x128]
mov dword [rsp + 0x8f0], eax
mov eax, dword [rsp + 0x124]
mov dword [rsp + 0x8f4], eax
mov rax, qword [rsp + 0x630]
mov qword [rsp + 0x860], rax
mov dword [rsp + 0x8f8], 0
mov eax, 0
mov qword [rsp + 0x8a8], rax
movups xmmword [rsi - 0x28], xmm7
mov ecx, 1
mov qword [rsp + 0x8b0], rcx
movups xmmword [rsi + 0x28], xmm7
mov qword [rsp + 0x8c8], rcx
movups xmmword [rsi + 0x40], xmm7
mov qword [rsp + 0x8e0], rcx
mov qword [rsp + 0x8e8], rax
mov qword [rsp + 0x878], r14
lea r14, [rsp + 0x270]
movups xmmword [rsi - 0x10], xmm7
mov eax, dword [rsp + 0x220]
mov dword [rsp + 0x8fc], eax
mov al, byte [rsp + 0x9f]
mov byte [rsp + 0x90a], al
mov byte [rsp + 0x905], 2
mov rcx, r14
mov rdx, r12
mov r8, rbp
call fcn.140283430
mov rsi, qword [rsp + 0x270]
cmp rsi, 4
jne 0x140208e5b
mov rdx, qword [r12]
mov r8d, 2
mov rcx, r14
xor r9d, r9d
call fcn.140246120
cmp qword [rsp + 0x270], 0
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
je 0x140208ef3
mov rdi, qword [rsp + 0x278]
xor esi, esi
lea rbp, [rsp + 0x860]
jmp 0x140208e72
mov rdi, qword [rsp + 0x278]
lea rbp, [rsp + 0x860]
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
cmp qword [rsp + 0x890], 0
je 0x140208eae
mov r8, qword [rsp + 0x898]
mov rcx, qword [0x14051f200]
xor edx, edx
call rbx
cmp qword [rsp + 0x8a8], 0
je 0x140208eae
mov r8, qword [rsp + 0x8b0]
mov rcx, qword [0x14051f200]
xor edx, edx
call rbx
cmp qword [rsp + 0x8c0], 0
je 0x140208ecc
mov r8, qword [rsp + 0x8c8]
mov rcx, qword [0x14051f200]
xor edx, edx
call rbx
cmp qword [rsp + 0x8d8], 0
je 0x140208cb3
mov r8, qword [rsp + 0x8e0]
mov rcx, qword [0x14051f200]
xor edx, edx
call rbx
jmp 0x140208cb3
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x6f0], rax
mov qword [rsp + 0x888], rax
mov qword [rsp + 0x6f8], 0
mov rcx, r14
call fcn.140066eaa
movups xmm0, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x6e0], xmm0
mov rdx, qword [rsp + 0x780]
cmp rdx, qword [rsp + 0x770]
lea rbp, [rsp + 0x860]
jne 0x140208f5e
lea rcx, [rsp + 0x770]
call fcn.140282bc0
mov rdx, qword [rsp + 0x780]
imul rcx, rdx, 0xb0
add rcx, qword [rsp + 0x778]
mov r8d, 0xb0
mov rdx, rbp
call fcn.1403abad0
inc qword [rsp + 0x780]
cmp dword [rsp + 0x12c], 1
jne 0x14020905f
mov ecx, 0xe
mov rdi, rbp
lea rbx, [rsp + 0x700]
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
xor esi, esi
mov qword [rsp + 0x700], rsi
mov rcx, rbp
call fcn.1402839a5
mov ecx, dword [rsp + 0x538]
lea rdx, [rsp + 0x290]
mov dword [rdx + 8], ecx
mov rcx, qword [rsp + 0x530]
mov qword [rdx], rcx
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], rsi
mov edi, 1
mov qword [rsp + 0x280], rdi
mov qword [rsp + 0x288], rsi
mov qword [rsp + 0x860], rsi
mov dword [rsp + 0x868], 0
mov r8d, 0xc
lea rcx, [rsp + 0x278]
mov rdx, rbp
call fcn.14005777d
mov rcx, rbx
call fcn.140209d50
mov qword [rsp + 0x700], rdi
movups xmm0, xmmword [rsp + 0x270]
movups xmm1, xmmword [rsp + 0x280]
movups xmm2, xmmword [rsp + 0x290]
movups xmmword [rbx + 0x28], xmm2
movups xmmword [rbx + 0x18], xmm1
movups xmmword [rbx + 8], xmm0
mov rbx, qword [sym.imp.KERNEL32.DLL_HeapFree]
mov eax, dword [rsp + 0x124]
mov dword [rsp + 0x20], eax
mov rcx, rbp
lea rdx, [rsp + 0x700]
mov r8w, 1
mov r9d, dword [rsp + 0x128]
call fcn.140283bd0
mov rsi, qword [rsp + 0x860]
cmp rsi, 4
jne 0x1402090d3
mov byte [rsp + 0x7a0], 1
mov rdx, qword [rsp + 0x138]
mov r8, qword [rsp + 0x140]
lea rcx, [rsp + 0x6e0]
call fcn.140285224
test rax, rax
mov rsi, qword [rsp + 0xc8]
je 0x140208cc8
mov rcx, rax
jmp 0x140208cc3
mov rdi, qword [rsp + 0x868]
jmp 0x140208cb3
lea rcx, [rsp + 0x860]
mov dx, 0x7f
mov r8b, 7
call fcn.1400083b5
test rax, rax
jne 0x140208a02
mov word [rsp + 0x270], 0xd9ff
mov rcx, qword [rsp + 0x860]
mov r8d, 2
lea rdx, [rsp + 0x270]
call fcn.14023193a
test rax, rax
jne 0x140208a02
mov byte [rsp + 0x108], 0xc
cmp qword [rsp + 0x430], 0
je 0x140209150
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.DLL_HeapFree]
mov r15, qword [rsp + 0x38]
lea rbp, [rsp + 0x860]
lea r13, [rsp + 0x160]
mov rsi, qword [sym.imp.KERNEL32.DLL_HeapFree]
mov r12, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x40]
jmp 0x140208a52
lea rcx, [rsp + 0x860]
mov dx, 0x7f
mov r8b, 7
call fcn.1400083b5
test rax, rax
jne 0x140208a61
mov word [rsp + 0x270], 0xd9ff
mov rcx, qword [rsp + 0x860]
mov r8d, 2
lea rdx, [rsp + 0x270]
call fcn.14023193a
test rax, rax
jne 0x140208a61
mov byte [rsp + 0x108], 0xc
cmp qword [rsp + 0x70], 0
je 0x140209150
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, qword [rsp + 0x50]
jmp 0x14020914a
mov rcx, qword [rsp + 0x180]
test rcx, rcx
je 0x140209231
mov rax, qword [rsp + 0x188]
call qword [rax]
mov rax, qword [rsp + 0x188]
cmp qword [rax + 8], 0
je 0x140209231
mov r8, qword [rsp + 0x180]
cmp qword [rax + 0x10], 0x11
jb 0x140209226
mov r8, qword [r8 - 8]
mov rcx, qword [0x14051f200]
xor edx, edx
call rbx
mov r12, r14
cmp byte [rsp + 0x178], 2
je 0x14020925c
cmp qword [rsp + 0x160], 0
je 0x14020925c
mov r8, qword [rsp + 0x168]
mov rcx, qword [0x14051f200]
xor edx, edx
call rbx
mov rcx, qword [rsp + 0x1d8]
mov rdx, qword [rsp + 0x1e0]
call fcn.14020efb8
mov rcx, qword [rsp + 0x1d0]
mov rdx, qword [rsp + 0x1d8]
call fcn.140053680
mov rcx, qword [rsp + 0x1f0]
mov rdx, qword [rsp + 0x1f8]
call fcn.14020f028
mov rcx, qword [rsp + 0x1e8]
mov rdx, qword [rsp + 0x1f0]
call fcn.140053680
mov rcx, qword [rsp + 0x208]
mov rdx, qword [rsp + 0x210]
call fcn.14020f0bd
mov rcx, qword [rsp + 0x200]
mov rdx, qword [rsp + 0x208]
call fcn.140053680
mov r14, qword [rsp + 0x668]
mov r13, qword [rsp + 0x670]
cmp qword [rsp + 0x248], 0
je 0x140209308
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, qword [rsp + 0x240]
call rbx
cmp r14, r13
jne 0x14020640d
lea rcx, [rsp + 0x660]
call fcn.1400f7c60
lea rsi, [rsp + 0x860]
lea rdx, [rsp + 0x6e0]
mov rcx, rsi
call fcn.1402865c7
mov rax, qword [rsi]
cmp rax, 4
je 0x1402093d0
test rax, rax
mov r13, qword [rsp + 0x3d8]
mov rbx, qword [rsp + 0x228]
mov rdi, qword [rsp + 0x230]
jne 0x14020936d
mov rcx, qword [rsp + 0x868]
call fcn.1400971ca
mov rax, qword [rsp + 0x238]
mov qword [rax + 8], 0
mov edx, 0xd
mov rcx, r15
call fcn.140031a1c
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.DLL_HeapFree]
cmp qword [rsp + 0x250], 0
je 0x1402093be
mov r8, qword [rsp + 0x258]
mov rcx, qword [0x14051f200]
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
lea rcx, [rsp + 0x6e0]
call fcn.140209bd2
jmp 0x140209681
mov rcx, qword [rsp + 0x868]
call qword [sym.imp.KERNEL32.DLL_CloseHandle]
mov r14, qword [0x14051f0f8]
test r14, r14
mov r13, qword [rsp + 0x3d8]
mov rbx, qword [rsp + 0x228]
mov rdi, qword [rsp + 0x230]
je 0x140209616
mov r12, r15
mov qword [rsp + 0x430], rdi
mov qword [rsp + 0x438], rbx
mov rax, qword [rsp + 0x638]
mov qword [rsp + 0x440], rax
lea rax, [0x1404b1782]
mov qword [rsp + 0x860], rax
mov rcx, qword [rsp + 0x860]
movabs rax, 0x33eefe183f700ed0
mov qword [rsp + 0x860], rax
mov rdx, qword [rsp + 0x860]
call fcn.140209e90
xorps xmm0, xmm0
movaps xmmword [rsp + 0x160], xmm0
mov r9b, 1
xor esi, esi
lea r10, [0x1404b98e8]
movzx r8d, byte [rsi + r10]
mov rcx, rsi
or rcx, 1
movzx edi, byte [rcx + r10]
mov rcx, rsi
or rcx, 2
movzx r11d, byte [rcx + r10]
mov rcx, rsi
or rcx, 3
movzx r15d, byte [rcx + r10]
mov rcx, rsi
or rcx, 4
movzx ecx, byte [rcx + r10]
mov rbx, rsi
or rbx, 5
movzx ebp, byte [rbx + r10]
mov rbx, rsi
or rbx, 6
mov rdx, rsi
or rdx, 7
movzx ebx, byte [rbx + r10]
movzx edx, byte [rdx + r10]
shl rdx, 0x38
shl rbx, 0x30
or rbx, rdx
shl rbp, 0x28
shl rcx, 0x20
shl r15, 0x18
shl r11, 0x10
shl rdi, 8
or rdi, r8
or rdi, r11
or rdi, r15
or rdi, rcx
or rdi, rbp
or rdi, rbx
xor rdi, qword [rax + rsi]
mov qword [rsp + rsi + 0x160], rdi
mov esi, 8
test r9b, 1
mov r9d, 0
jne 0x140209476
movzx ecx, byte [rax + 0x12]
movzx eax, word [rax + 0x10]
xor eax, 0xb4b
mov word [rsp + 0x170], ax
xor cl, 0xc7
mov byte [rsp + 0x172], cl
lea rax, [rsp + 0x160]
mov qword [rsp + 0x810], rax
mov qword [rsp + 0x818], 0x13
mov qword [rsp + 0x270], r13
lea rax, [0x1400099b0]
mov qword [rsp + 0x278], rax
lea rax, [rsp + 0x810]
mov qword [rsp + 0x280], rax
lea rax, [0x140134850]
mov qword [rsp + 0x288], rax
lea rdx, [rsp + 0x860]
mov qword [rdx], 0
lea rax, str.dest_is_out_of_bounds
mov qword [rdx + 0x10], rax
mov eax, 2
mov qword [rdx + 0x18], rax
lea rcx, [rsp + 0x270]
mov qword [rdx + 0x20], rcx
mov qword [rdx + 0x28], rax
lea rsi, [rsp + 0x530]
mov rcx, rsi
call fcn.140053dd0
lea rdi, [rsp + 0x860]
lea rdx, [rsp + 0x430]
mov rcx, rdi
mov r8, rsi
call fcn.140200955
cmp qword [rdi], 0
je 0x140209603
mov rcx, qword [rsp + 0x868]
call fcn.1400971ca
mov rbx, qword [rsp + 0x228]
mov rdi, qword [rsp + 0x230]
mov r15, r12
xor esi, esi
mov rax, qword [rsp + 0x238]
mov qword [rax], rsi
mov qword [rax + 8], 1
mov qword [rax + 0x10], rsi
mov edx, 0xd
mov rcx, r15
call fcn.140031a1c
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.DLL_HeapFree]
cmp qword [rsp + 0x250], rsi
je 0x14020966f
mov r8, qword [rsp + 0x258]
mov rcx, qword [0x14051f200]
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
lea rcx, [rsp + 0x6e0]
call fcn.140209bd2
test r14, r14
jne 0x140209698
test rdi, rdi
je 0x140209698
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
cmp qword [r13], 0
je 0x1402096b2
mov r8, qword [r13 + 8]
mov rcx, qword [0x14051f200]
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
movaps xmm6, xmmword [rsp + 0x18d0]
movaps xmm7, xmmword [rsp + 0x18e0]
movaps xmm8, xmmword [rsp + 0x18f0]
movaps xmm9, xmmword [rsp + 0x1900]
add rsp, 0x1918
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.srcmisc_sensitive_data.rs
mov edx, 0x2b
call fcn.1403af950
ud2
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsjpegencoder.rsJFIF
xor ecx, ecx
xor edx, edx
call fcn.1403af8b0
ud2
movups xmm0, xmmword [rsp + 0x270]
movups xmm1, xmmword [rsp + 0x280]
lea r8, [rsp + 0x860]
movaps xmmword [r8 + 0x10], xmm1
movaps xmmword [r8], xmm0
lea rax, str.srcmisc_sensitive_data.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x1404ef56b]
lea r9, fcn.140006040
mov edx, 0x2b
call fcn.1403afcb0
ud2
mov ecx, 0x78
jmp 0x140209767
mov ecx, 0x138
mov edx, 8
call fcn.1403af440
ud2
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.srcmisc_sensitive_data.rs
jmp 0x1402096f6
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsjpegencoder.rsJFIF
jmp 0x140209709
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsjpegencoder.rsJFIF
mov ecx, 1
mov edx, 1
jmp 0x14020970d
mov ecx, 0x24
mov edx, 4
jmp 0x14020976c
mov ecx, 0x80
mov edx, 1
jmp 0x14020976c
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsjpegencoder.rsJFIF
jmp 0x1402096f6
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsjpegencoder.rsJFIF
jmp 0x1402096f6
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsjpegencoder.rsJFIF
jmp 0x1402096f6
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsjpegencoder.rsJFIF
mov ecx, 1
xor edx, edx
jmp 0x140209828
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsjpegencoder.rsJFIF
mov ecx, 3
call fcn.1403af940
ud2
lea r9, [rsp + 0x270]
mov qword [r9 + 0x10], 0
lea rax, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsjpegencoder.rsJFIF
mov qword [rsp + 0x20], rax
lea r8, [0x1404c62b0]
lea rdx, [rsp + 0x530]
xor ecx, ecx
call fcn.1403b0d11
ud2