Function at 0x18022d604
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using xor
Parse pe header

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x408]
sub rsp, 0x4c8
mov qword [rbp + 0x320], 0xfffffffffffffffe
mov r15, rcx
xor edi, edi
lea r14d, [rdi + 1]
test r8, r8
je 0x18022f0c6
mov rcx, r8
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcslen]
test rax, rax
je 0x18022f0c6
mov edx, dword [0x1802bccdc]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rsi, qword [rax + rdx*8]
or rbx, 0xffffffffffffffff
lea r12d, [rdi + 0x6e]
lea r13d, [rdi + 0x6f]
mov eax, dword [rsi + rcx]
cmp dword [0x1802ca170], eax
jle 0x18022d90d
lea rcx, [0x1802ca170]
call fcn.1802696f0
cmp dword [0x1802ca170], ebx
jne 0x18022d908
lea rax, [rbp + 0x2e0]
mov qword [rbp + 0xd0], rax
lea eax, [rdi + 0x3f]
mov dword [rsp + 0x58], eax
lea eax, [rdi + 0x71]
mov byte [rsp + 0x5c], al
mov byte [rsp + 0x5d], 0x4b
mov byte [rsp + 0x5e], r12b
lea eax, [rdi + 0x4a]
mov byte [rsp + 0x5f], al
lea edx, [rdi + 0x5a]
mov byte [rsp + 0x60], dl
mov byte [rsp + 0x61], 0x4d
lea eax, [rdi + 0x46]
mov byte [rsp + 0x62], al
mov byte [rsp + 0x63], 0x76
lea r8d, [rdi + 0x51]
mov byte [rsp + 0x64], r8b
mov byte [rsp + 0x65], 0x59
lea ecx, [rdi + 0x50]
mov byte [rsp + 0x66], cl
mov byte [rsp + 0x67], 0x4d
mov byte [rsp + 0x68], 0x52
mov byte [rsp + 0x69], 0x5e
mov byte [rsp + 0x6a], 0x4b
lea eax, [rdi + 0x56]
mov byte [rsp + 0x6b], al
mov byte [rsp + 0x6c], cl
mov byte [rsp + 0x6d], r8b
mov byte [rsp + 0x6e], r13b
mov byte [rsp + 0x6f], 0x4d
mov byte [rsp + 0x70], cl
mov byte [rsp + 0x71], 0x5c
mov byte [rsp + 0x72], dl
mov byte [rsp + 0x73], 0x4c
mov byte [rsp + 0x74], 0x4c
xor eax, eax
mov byte [rsp + 0x75], al
mov al, byte [rsp + 0x5c]
mov edx, edi
lea r12d, [rdi + 0x19]
mov al, byte [rsp + rdx + 0x5c]
mov ecx, dword [rsp + 0x58]
xor cl, al
mov byte [rsp + rdx + 0x5c], cl
add rdx, r14
cmp rdx, r12
jb 0x18022d756
mov byte [rsp + 0x75], dil
xorps xmm0, xmm0
movups xmmword [rbp + 0x2e0], xmm0
mov qword [rbp + 0x2f0], rdi
mov qword [rbp + 0x2f8], rdi
lea rax, [rsp + 0x5c]
mov r8, rbx
inc r8
cmp byte [rax + r8], dil
jne 0x18022d791
lea rdx, [rsp + 0x5c]
lea rcx, [rbp + 0x2e0]
call fcn.18007b70c
nop
mov eax, 0x7b
mov dword [rsp + 0x4c], eax
lea edx, [rax - 0x66]
mov byte [rsp + 0x50], dl
lea eax, [rdx - 6]
mov byte [rsp + 0x51], al
lea r13d, [rdx + 0xa]
mov byte [rsp + 0x52], r13b
lea eax, [rdx + 2]
mov byte [rsp + 0x53], al
mov byte [rsp + 0x54], al
xor eax, eax
mov byte [rsp + 0x55], al
mov al, byte [rsp + 0x50]
mov rdx, rdi
lea r12d, [r13 - 0x1a]
mov al, byte [rsp + rdx + 0x50]
mov ecx, dword [rsp + 0x4c]
xor cl, al
mov byte [rsp + rdx + 0x50], cl
add rdx, r14
cmp rdx, r12
jb 0x18022d7e8
mov byte [rsp + 0x55], dil
xorps xmm0, xmm0
movups xmmword [rbp + 0x2a0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2b0], xmm1
lea rax, [rsp + 0x50]
mov r8, rbx
inc r8
cmp byte [rax + r8], dil
jne 0x18022d820
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x2a0]
call fcn.18007b70c
nop
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x350]
call fcn.180188b20
nop
mov qword [rsp + 0x20], rdi
mov r9b, r14b
lea r8, [rbp + 0x2e0]
mov rdx, rax
lea rcx, [0x1802c9fc0]
call fcn.18017cc00
nop
mov rdx, qword [rbp + 0x2b8]
mov eax, 0x10
cmp rdx, rax
jb 0x18022d8b5
inc rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18022d8b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, r13
jbe 0x18022d8b0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180269534
movdqa xmm0, xmmword [0x180280de0]
movdqu xmmword [rbp + 0x2b0], xmm0
mov byte [rbp + 0x2a0], dil
xor edx, edx
lea r8d, [rdx + 6]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x1a]
lea rcx, [rsp + 0x5c]
call qword [sym.imp.VCRUNTIME140.dll_memset]
lea rcx, [0x18027e66c]
call fcn.18026951c
nop
lea rcx, [0x1802ca170]
call fcn.180269690
mov ecx, 4
mov r13d, 0x79
mov eax, dword [rsi + rcx]
cmp dword [0x1802c8bdc], eax
jle 0x18022db6f
lea rcx, [0x1802c8bdc]
call fcn.1802696f0
cmp dword [0x1802c8bdc], ebx
jne 0x18022db6f
lea rax, [rbp + 0x300]
mov qword [rbp + 0xd0], rax
mov byte [rsp + 0x36], 0x55
lea ecx, [r13 + 2]
mov byte [rsp + 0x37], cl
mov byte [rsp + 0x38], 0x59
lea edx, [rcx - 0xf]
mov byte [rsp + 0x39], dl
lea r8d, [r13 - 0x11]
mov byte [rsp + 0x3a], r8b
mov byte [rsp + 0x3b], 0x6b
lea r9d, [r13 - 0x1c]
mov byte [rsp + 0x3c], r9b
lea eax, [rcx - 0xb]
mov byte [rsp + 0x3d], al
mov byte [rsp + 0x3e], r13b
mov byte [rsp + 0x3f], cl
lea eax, [rcx + 1]
mov byte [rsp + 0x40], al
mov byte [rsp + 0x41], r8b
lea eax, [rcx - 8]
mov byte [rsp + 0x42], al
mov byte [rsp + 0x43], 0x54
mov byte [rsp + 0x44], dl
lea eax, [rcx - 7]
mov byte [rsp + 0x45], al
lea esi, [rcx - 5]
mov byte [rsp + 0x46], sil
mov byte [rsp + 0x47], r13b
mov byte [rsp + 0x48], 0x80
mov byte [rsp + 0x49], dil
mov al, byte [rsp + 0x36]
mov rcx, rdi
lea r12d, [r13 - 0x66]
mov al, byte [rsp + rcx + 0x36]
sub al, 7
mov byte [rsp + rcx + 0x36], al
add rcx, r14
cmp rcx, r12
jb 0x18022d9cd
xorps xmm0, xmm0
movups xmmword [rbp + 0x300], xmm0
mov qword [rbp + 0x310], rdi
mov qword [rbp + 0x318], rdi
lea rax, [rsp + 0x36]
mov r8, rbx
mov r12d, 0x6e
inc r8
cmp byte [rax + r8], dil
jne 0x18022da05
lea rdx, [rsp + 0x36]
lea rcx, [rbp + 0x300]
call fcn.18007b70c
nop
mov byte [rsp + 0x30], 0x78
mov byte [rsp + 0x31], 0x7e
mov byte [rsp + 0x32], r12b
mov byte [rsp + 0x33], sil
mov byte [rsp + 0x34], sil
mov byte [rsp + 0x35], dil
mov al, byte [rsp + 0x30]
mov rcx, rdi
mov r15d, 5
mov al, byte [rsp + rcx + 0x30]
sub al, 0xa
mov byte [rsp + rcx + 0x30], al
add rcx, r14
cmp rcx, r15
jb 0x18022da4b
xorps xmm0, xmm0
movups xmmword [rbp + 0x2c0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2d0], xmm1
lea rax, [rsp + 0x30]
mov r15, qword [rbp + 0x410]
inc rbx
cmp byte [rax + rbx], dil
jne 0x18022da7e
mov r8, rbx
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x2c0]
call fcn.18007b70c
nop
lea rdx, [rbp + 0x2c0]
lea rcx, [rbp + 0x370]
call fcn.180188b20
nop
mov qword [rsp + 0x20], rdi
mov r9b, r14b
lea r8, [rbp + 0x300]
mov rdx, rax
lea rcx, [0x1802c9900]
call fcn.1801bf2cc
nop
mov rdx, qword [rbp + 0x2d8]
mov eax, 0x10
cmp rdx, rax
jb 0x18022db1c
inc rdx
mov rcx, qword [rbp + 0x2c0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18022db17
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
mov r9d, 0x1f
cmp rax, r9
jbe 0x18022db17
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180269534
movdqa xmm0, xmmword [0x180280de0]
movdqu xmmword [rbp + 0x2d0], xmm0
mov byte [rbp + 0x2c0], dil
xor edx, edx
lea r8d, [rdx + 6]
lea rcx, [rsp + 0x30]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x14]
lea rcx, [rsp + 0x36]
call qword [sym.imp.VCRUNTIME140.dll_memset]
lea rcx, [0x18027e660]
call fcn.18026951c
nop
lea rcx, [0x1802c8bdc]
call fcn.180269690
lea rax, [rbp + 0x298]
mov qword [rsp + 0x28], rax
lea r9, [rbp + 0x390]
mov rdx, r15
lea rcx, [0x1802c9fc0]
call fcn.18017d73c
mov r8d, 0x2c8
mov rdx, qword [rbp + 0x398]
mov rcx, r15
call fcn.180205278
mov r14, rax
mov qword [rbp + 0xc8], rax
test rax, rax
jne 0x18022dbbc
xor al, al
jmp 0x18022f0c9
mov r8d, 0x1ac
mov rdx, qword [rax + 0x20]
mov rcx, r15
call fcn.180205278
mov qword [rbp + 0xd0], rax
test rax, rax
jne 0x18022dbf0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x18022dbb5
mov ecx, 8
lea esi, [rcx + 0x19]
lea ebx, [rcx + 0x5d]
lea r13d, [rcx + 0x18]
lea r12d, [rcx + 0x5c]
mov rdx, qword [rbp + 0x420]
test rdx, rdx
je 0x18022e3f1
mov r9d, ecx
mov r8, rdx
mov rdx, qword [rax + 0x78]
mov rcx, r15
call fcn.18022c954
test eax, eax
jne 0x18022e207
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x294], eax
lea r11d, [rsi - 0xc]
mov dword [rbp + 0x18], r11d
mov ecx, dword [rbp + 0x18]
xor cx, 0x5b
mov word [rbp + 0x1c], cx
mov ecx, dword [rbp + 0x18]
lea r14d, [rsi - 0x20]
add cx, r14w
mov edx, esi
xor cx, dx
mov word [rbp + 0x1e], cx
mov ecx, dword [rbp + 0x18]
add cx, 2
xor cx, 0x5d
mov word [rbp + 0x20], cx
mov eax, dword [rbp + 0x18]
add ax, 3
xor ax, r13w
mov word [rbp + 0x22], ax
mov eax, dword [rbp + 0x18]
add ax, 4
xor ax, 0x45
mov word [rbp + 0x24], ax
mov eax, dword [rbp + 0x18]
add ax, 5
lea r15d, [rsi + 0x51]
xor ax, r15w
mov word [rbp + 0x26], ax
mov eax, dword [rbp + 0x18]
add ax, 6
xor ax, r15w
mov word [rbp + 0x28], ax
mov eax, dword [rbp + 0x18]
add ax, 7
lea ecx, [rsi + 0x4e]
xor ax, cx
mov word [rbp + 0x2a], ax
mov eax, dword [rbp + 0x18]
add ax, 8
xor ax, r15w
mov word [rbp + 0x2c], ax
mov eax, dword [rbp + 0x18]
add ax, 9
xor ax, 0x3a
mov word [rbp + 0x2e], ax
mov eax, dword [rbp + 0x18]
add ax, 0xa
xor ax, r13w
mov word [rbp + 0x30], ax
mov eax, dword [rbp + 0x18]
add ax, 0xb
xor ax, 0x43
mov word [rbp + 0x32], ax
mov eax, dword [rbp + 0x18]
add ax, 0xc
xor ax, cx
mov word [rbp + 0x34], ax
mov eax, dword [rbp + 0x18]
add ax, 0xd
lea r10d, [rsi + 0x54]
xor ax, r10w
mov word [rbp + 0x36], ax
mov eax, dword [rbp + 0x18]
add ax, 0xe
lea ebx, [rsi + 0x4b]
xor ax, bx
mov word [rbp + 0x38], ax
mov eax, dword [rbp + 0x18]
add ax, 0xf
mov r8d, r12d
xor ax, r8w
mov word [rbp + 0x3a], ax
mov eax, dword [rbp + 0x18]
add ax, 0x10
xor ax, r13w
mov word [rbp + 0x3c], ax
mov eax, dword [rbp + 0x18]
add ax, 0x11
lea r12d, [rsi + 0x4d]
xor ax, r12w
mov word [rbp + 0x3e], ax
mov eax, dword [rbp + 0x18]
add ax, 0x12
xor ax, cx
mov word [rbp + 0x40], ax
mov eax, dword [rbp + 0x18]
add ax, 0x13
lea esi, [rdx + 0x53]
xor ax, si
mov word [rbp + 0x42], ax
mov eax, dword [rbp + 0x18]
add ax, 0x14
xor ax, r13w
mov word [rbp + 0x44], ax
mov eax, dword [rbp + 0x18]
add ax, r11w
lea r11d, [rdx + 0x42]
xor ax, r11w
mov word [rbp + 0x46], ax
mov eax, dword [rbp + 0x18]
add ax, 0x16
xor ax, 0x61
mov word [rbp + 0x48], ax
mov eax, dword [rbp + 0x18]
add ax, 0x17
xor ax, bx
mov word [rbp + 0x4a], ax
mov eax, dword [rbp + 0x18]
add ax, 0x18
xor ax, bx
mov word [rbp + 0x4c], ax
mov eax, dword [rbp + 0x18]
add ax, 0x19
xor ax, r13w
mov word [rbp + 0x4e], ax
mov eax, dword [rbp + 0x18]
add ax, 0x1a
lea ebx, [rdx + 0x2d]
xor ax, bx
mov word [rbp + 0x50], ax
mov eax, dword [rbp + 0x18]
add ax, 0x1b
xor ax, si
mov word [rbp + 0x52], ax
mov eax, dword [rbp + 0x18]
add ax, 0x1c
xor ax, 0x57
mov word [rbp + 0x54], ax
mov eax, dword [rbp + 0x18]
add ax, 0x1d
xor ax, r15w
mov word [rbp + 0x56], ax
mov eax, dword [rbp + 0x18]
add ax, 0x1e
xor ax, 0x69
mov word [rbp + 0x58], ax
mov eax, dword [rbp + 0x18]
add ax, 0x1f
xor ax, si
mov word [rbp + 0x5a], ax
mov eax, dword [rbp + 0x18]
add ax, r13w
lea ecx, [rdx + 0x44]
xor ax, cx
mov word [rbp + 0x5c], ax
mov eax, dword [rbp + 0x18]
add ax, dx
xor ax, 0x56
mov word [rbp + 0x5e], ax
mov eax, dword [rbp + 0x18]
add ax, 0x22
xor ax, 0x69
mov word [rbp + 0x60], ax
mov eax, dword [rbp + 0x18]
add ax, 0x23
xor ax, r15w
mov word [rbp + 0x62], ax
mov eax, dword [rbp + 0x18]
add ax, 0x24
xor ax, si
mov word [rbp + 0x64], ax
mov eax, dword [rbp + 0x18]
add ax, 0x25
xor ax, r10w
mov word [rbp + 0x66], ax
mov eax, dword [rbp + 0x18]
add ax, 0x26
xor ax, 0x61
mov word [rbp + 0x68], ax
mov eax, dword [rbp + 0x18]
add ax, 0x27
xor ax, 0x6c
mov word [rbp + 0x6a], ax
mov eax, dword [rbp + 0x18]
add ax, 0x28
xor ax, 0x4d
mov word [rbp + 0x6c], ax
mov eax, dword [rbp + 0x18]
add ax, 0x29
xor ax, cx
mov word [rbp + 0x6e], ax
mov eax, dword [rbp + 0x18]
add ax, 0x2a
lea r9d, [rdx + 0x4c]
xor ax, r9w
mov word [rbp + 0x70], ax
mov eax, dword [rbp + 0x18]
add ax, 0x2b
xor ax, 0x6f
mov word [rbp + 0x72], ax
mov eax, dword [rbp + 0x18]
add ax, 0x2c
xor ax, r15w
mov word [rbp + 0x74], ax
mov eax, dword [rbp + 0x18]
add ax, 0x2d
xor ax, 0x79
mov word [rbp + 0x76], ax
mov eax, dword [rbp + 0x18]
lea edx, [rsi - 0x46]
add ax, dx
xor ax, r13w
mov word [rbp + 0x78], ax
mov eax, dword [rbp + 0x18]
add ax, 0x2f
xor ax, si
mov word [rbp + 0x7a], ax
mov eax, dword [rbp + 0x18]
add ax, 0x30
xor ax, 0x6f
mov word [rbp + 0x7c], ax
mov eax, dword [rbp + 0x18]
add ax, 0x31
xor ax, r13w
mov word [rbp + 0x7e], ax
mov eax, dword [rbp + 0x18]
add ax, 0x32
xor ax, r10w
mov word [rbp + 0x80], ax
mov eax, dword [rbp + 0x18]
add ax, 0x33
xor ax, 0x70
mov word [rbp + 0x82], ax
mov eax, dword [rbp + 0x18]
add ax, 0x34
xor ax, r8w
mov word [rbp + 0x84], ax
mov eax, dword [rbp + 0x18]
add ax, 0x35
xor ax, 0x61
mov word [rbp + 0x86], ax
mov eax, dword [rbp + 0x18]
add ax, 0x36
xor ax, si
mov word [rbp + 0x88], ax
mov eax, dword [rbp + 0x18]
add ax, 0x37
xor ax, cx
mov word [rbp + 0x8a], ax
mov eax, dword [rbp + 0x18]
add ax, 0x38
xor ax, r13w
mov word [rbp + 0x8c], ax
mov eax, dword [rbp + 0x18]
add ax, 0x39
xor ax, r11w
mov word [rbp + 0x8e], ax
mov eax, dword [rbp + 0x18]
add ax, 0x3a
lea r11d, [r13 + 0x4f]
xor ax, r11w
mov word [rbp + 0x90], ax
mov eax, dword [rbp + 0x18]
add ax, 0x3b
xor ax, r9w
mov word [rbp + 0x92], ax
mov eax, dword [rbp + 0x18]
add ax, 0x3c
xor ax, r9w
mov word [rbp + 0x94], ax
mov eax, dword [rbp + 0x18]
add ax, 0x3d
xor ax, 0x61
mov word [rbp + 0x96], ax
mov eax, dword [rbp + 0x18]
add ax, 0x3e
xor ax, r12w
mov word [rbp + 0x98], ax
mov eax, dword [rbp + 0x18]
add ax, 0x3f
xor ax, r8w
mov word [rbp + 0x9a], ax
mov eax, dword [rbp + 0x18]
add ax, 0x40
xor ax, 0x6c
mov word [rbp + 0x9c], ax
mov eax, dword [rbp + 0x18]
add ax, 0x41
xor ax, 0x69
mov word [rbp + 0x9e], ax
mov eax, dword [rbp + 0x18]
add ax, 0x42
xor ax, r12w
mov word [rbp + 0xa0], ax
mov eax, dword [rbp + 0x18]
add ax, 0x43
xor ax, cx
mov word [rbp + 0xa2], ax
mov eax, dword [rbp + 0x18]
add ax, 0x44
xor ax, r13w
mov word [rbp + 0xa4], ax
mov eax, dword [rbp + 0x18]
add ax, 0x45
xor ax, 0x61
mov word [rbp + 0xa6], ax
mov eax, dword [rbp + 0x18]
add ax, 0x46
xor ax, r15w
mov word [rbp + 0xa8], ax
mov eax, dword [rbp + 0x18]
add ax, 0x47
xor ax, 0x67
mov word [rbp + 0xaa], ax
mov eax, dword [rbp + 0x18]
add ax, 0x48
xor ax, 0x73
mov word [rbp + 0xac], ax
mov eax, dword [rbp + 0x18]
add ax, 0x49
xor ax, dx
mov word [rbp + 0xae], ax
mov eax, dword [rbp + 0x18]
add ax, 0x4a
xor ax, r13w
mov word [rbp + 0xb0], ax
mov eax, dword [rbp + 0x18]
add ax, 0x4b
xor ax, 0x45
mov word [rbp + 0xb2], ax
mov eax, dword [rbp + 0x18]
add ax, 0x4c
xor ax, r15w
mov word [rbp + 0xb4], ax
mov eax, dword [rbp + 0x18]
add ax, 0x4d
xor ax, r15w
mov word [rbp + 0xb6], ax
mov eax, dword [rbp + 0x18]
add ax, bx
xor ax, r11w
mov word [rbp + 0xb8], ax
mov eax, dword [rbp + 0x18]
add ax, 0x4f
xor ax, r15w
mov word [rbp + 0xba], ax
mov eax, dword [rbp + 0x18]
add ax, 0x50
xor ax, 0x3a
mov word [rbp + 0xbc], ax
mov eax, dword [rbp + 0x18]
add ax, 0x51
xor ax, r13w
mov word [rbp + 0xbe], ax
xor eax, eax
mov word [rbp + 0xc0], ax
movzx eax, word [rbp + 0x1c]
mov rdx, rdi
movzx eax, word [rbp + rdx*2 + 0x1c]
mov ecx, dword [rbp + 0x18]
add cx, dx
xor cx, ax
mov word [rbp + rdx*2 + 0x1c], cx
add rdx, r14
cmp rdx, 0x52
jb 0x18022e198
mov word [rbp + 0xc0], di
mov edx, dword [rbp + 0x294]
lea rcx, [rbp + 0x1c]
call fcn.18009550c
nop
mov r8d, 0xa6
lea rcx, [rbp + 0x1c]
xor edx, edx
call qword [sym.imp.VCRUNTIME140.dll_memset]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, qword [rbp + 0xd0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rbp + 0xc8]
jmp 0x18022dbe3
mov edx, 8
lea rcx, [rbp + 0x340]
call qword [sym.imp.MSVCP140.dll_struct_std::_Smanip_long_long___int64_____cdecl_std::setw_long_long___int64__]
movups xmm0, xmmword [rax]
mov r8d, 1
mov dword [rbp + 0xd8], r8d
lea eax, [r8 + 0x59]
mov word [rbp + 0xdc], ax
lea eax, [r8 + 0x2e]
mov word [rbp + 0xde], ax
lea eax, [r8 + 0x5b]
mov word [rbp + 0xe0], ax
mov word [rbp + 0xe2], si
lea eax, [r8 + 0x46]
mov word [rbp + 0xe4], ax
lea ecx, [rax + 0x19]
mov word [rbp + 0xe6], cx
lea eax, [rcx + 0xa]
mov word [rbp + 0xe8], ax
mov word [rbp + 0xea], r12w
mov word [rbp + 0xec], bx
mov word [rbp + 0xee], si
lea eax, [rcx + 2]
mov word [rbp + 0xf0], ax
lea eax, [rcx + 0xe]
mov word [rbp + 0xf2], ax
lea eax, [rcx + 0xc]
mov word [rbp + 0xf4], ax
mov word [rbp + 0xf6], ax
mov word [rbp + 0xf8], cx
lea edx, [rcx + 0xf]
mov word [rbp + 0xfa], dx
mov word [rbp + 0xfc], bx
mov word [rbp + 0xfe], si
lea eax, [rcx + 0xd]
mov word [rbp + 0x100], ax
lea eax, [rcx + 8]
mov word [rbp + 0x102], ax
mov word [rbp + 0x104], dx
mov word [rbp + 0x106], r12w
mov word [rbp + 0x108], si
lea eax, [rcx + 3]
mov word [rbp + 0x10a], ax
lea eax, [rcx + 0x14]
mov word [rbp + 0x10c], ax
lea eax, [rcx + 7]
mov word [rbp + 0x10e], ax
mov word [rbp + 0x110], ax
mov word [rbp + 0x112], r12w
lea eax, [rcx + 0x13]
mov word [rbp + 0x114], ax
mov word [rbp + 0x116], si
mov word [rbp + 0x118], cx
lea eax, [rcx + 0x15]
mov word [rbp + 0x11a], ax
lea eax, [rcx - 0x25]
mov word [rbp + 0x11c], ax
mov word [rbp + 0x11e], si
lea esi, [rcx - 0x2f]
mov word [rbp + 0x120], si
lea edx, [rcx + 0x19]
mov word [rbp + 0x122], dx
xor eax, eax
mov word [rbp + 0x124], ax
movzx eax, word [rbp + 0xdc]
mov rdx, rdi
movzx eax, word [rbp + rdx*2 + 0xdc]
mov ecx, dword [rbp + 0xd8]
xor cx, ax
mov word [rbp + rdx*2 + 0xdc], cx
add rdx, r8
cmp rdx, 0x24
jb 0x18022e37b
mov word [rbp + 0x124], di
movdqu xmmword [rbp + 0x330], xmm0
lea rax, [rbp + 0x420]
mov qword [rsp + 0x20], rax
movzx r9d, r13w
lea r8, [rbp + 0x330]
lea rcx, [rbp + 0xdc]
call fcn.180265810
nop
xor edx, edx
lea r8d, [rdx + 0x4a]
lea rcx, [rbp + 0xdc]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov rdx, qword [rbp + 0x420]
mov r15, qword [rbp + 0x410]
mov rax, qword [rbp + 0x418]
movzx eax, word [rax + 0x10]
add ax, ax
mov word [rbp + 0x428], ax
mov ecx, 4
lea r8d, [rcx + 0x1e]
test rdx, rdx
je 0x18022e424
cmp word [rdx], r8w
jne 0x18022e424
add ax, cx
mov word [rbp + 0x428], ax
mov dword [rbp + 0x128], 0x76
mov esi, 0x2d
mov word [rbp + 0x12c], si
lea eax, [rsi + 0x30]
mov word [rbp + 0x12e], ax
lea eax, [rsi - 2]
mov word [rbp + 0x130], ax
lea ebx, [rsi + 0x29]
mov word [rbp + 0x132], bx
mov word [rbp + 0x134], r8w
mov word [rbp + 0x136], cx
lea r9d, [rsi - 0x2a]
mov word [rbp + 0x138], r9w
lea eax, [rsi - 0x15]
mov word [rbp + 0x13a], ax
lea r11d, [rsi - 0x18]
mov word [rbp + 0x13c], r11w
lea r8d, [rsi - 0x16]
mov word [rbp + 0x13e], r8w
lea r12d, [rsi - 0x2b]
mov word [rbp + 0x140], r12w
lea r14d, [rsi - 0xe]
mov word [rbp + 0x142], r14w
mov word [rbp + 0x144], ax
lea edx, [rsi - 0x1c]
mov word [rbp + 0x146], dx
mov word [rbp + 0x148], bx
lea r10d, [rsi - 0x27]
mov word [rbp + 0x14a], r10w
mov word [rbp + 0x14c], cx
lea r10d, [rsi - 0x14]
mov word [rbp + 0x14e], r10w
mov word [rbp + 0x150], r11w
lea r11d, [rsi - 0x1a]
mov word [rbp + 0x152], r11w
lea r10d, [rsi - 0x28]
mov word [rbp + 0x154], r10w
mov word [rbp + 0x156], r10w
mov word [rbp + 0x158], bx
mov word [rbp + 0x15a], r8w
mov word [rbp + 0x15c], cx
mov word [rbp + 0x15e], dx
mov word [rbp + 0x160], r9w
lea r8d, [rsi - 0x12]
mov word [rbp + 0x162], r8w
mov word [rbp + 0x164], r11w
mov word [rbp + 0x166], ax
mov word [rbp + 0x168], r12w
mov word [rbp + 0x16a], r10w
lea r14d, [rsi + 0x24]
mov word [rbp + 0x16c], r14w
mov word [rbp + 0x16e], bx
lea r14d, [rsi - 0x27]
mov word [rbp + 0x170], r14w
lea r14d, [rsi - 0x14]
mov word [rbp + 0x172], r14w
lea r14d, [rsi - 0xe]
mov word [rbp + 0x174], r14w
mov word [rbp + 0x176], ax
mov word [rbp + 0x178], r12w
mov word [rbp + 0x17a], r11w
mov word [rbp + 0x17c], cx
mov word [rbp + 0x17e], bx
mov word [rbp + 0x180], r10w
lea r10d, [rsi - 0x14]
mov word [rbp + 0x182], r10w
mov word [rbp + 0x184], bx
mov word [rbp + 0x186], r12w
lea r10d, [rsi - 0xf]
mov word [rbp + 0x188], r10w
lea r11d, [rsi - 0x16]
mov word [rbp + 0x18a], r11w
mov word [rbp + 0x18c], r12w
mov word [rbp + 0x18e], bx
lea r11d, [rsi - 0x14]
mov word [rbp + 0x190], r11w
mov word [rbp + 0x192], ax
lea eax, [rsi - 0x13]
mov word [rbp + 0x194], ax
lea eax, [rsi - 0x1e]
mov word [rbp + 0x196], ax
mov word [rbp + 0x198], bx
mov word [rbp + 0x19a], r14w
mov word [rbp + 0x19c], r8w
lea eax, [rsi - 0x16]
mov word [rbp + 0x19e], ax
mov word [rbp + 0x1a0], dx
lea r11d, [rsi - 0x1a]
mov word [rbp + 0x1a2], r11w
mov word [rbp + 0x1a4], bx
mov word [rbp + 0x1a6], r8w
lea eax, [rsi - 0x14]
mov word [rbp + 0x1a8], ax
lea eax, [rsi - 0x1b]
mov word [rbp + 0x1aa], ax
mov word [rbp + 0x1ac], r9w
lea edx, [rsi - 0x13]
mov word [rbp + 0x1ae], dx
mov word [rbp + 0x1b0], r11w
mov word [rbp + 0x1b2], bx
lea eax, [rsi - 0x27]
mov word [rbp + 0x1b4], ax
lea eax, [rsi - 0x16]
mov word [rbp + 0x1b6], ax
mov word [rbp + 0x1b8], r12w
mov word [rbp + 0x1ba], r10w
mov word [rbp + 0x1bc], bx
mov word [rbp + 0x1be], r14w
lea r8d, [rsi - 0x28]
mov word [rbp + 0x1c0], r8w
mov word [rbp + 0x1c2], bx
mov word [rbp + 0x1c4], cx
mov word [rbp + 0x1c6], r11w
mov word [rbp + 0x1c8], r12w
mov word [rbp + 0x1ca], cx
mov word [rbp + 0x1cc], r14w
mov word [rbp + 0x1ce], r11w
mov word [rbp + 0x1d0], di
mov word [rbp + 0x1d2], r11w
mov word [rbp + 0x1d4], ax
lea eax, [rsi - 0x19]
mov word [rbp + 0x1d6], ax
mov word [rbp + 0x1d8], dx
mov word [rbp + 0x1da], r11w
lea eax, [rsi + 0x2b]
mov word [rbp + 0x1dc], ax
xor eax, eax
mov word [rbp + 0x1de], ax
movzx eax, word [rbp + 0x12c]
mov rdx, rdi
lea r14d, [rsi - 0x2c]
movzx eax, word [rbp + rdx*2 + 0x12c]
mov ecx, dword [rbp + 0x128]
xor cx, ax
mov word [rbp + rdx*2 + 0x12c], cx
add rdx, r14
cmp rdx, 0x59
jb 0x18022e765
mov word [rbp + 0x1de], di
lea rcx, [rbp + 0x12c]
call fcn.18007aae4
nop
xor edx, edx
mov r8d, 0xb4
lea rcx, [rbp + 0x12c]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov r14, qword [rbp + 0xc8]
mov rdx, qword [r14 + 0x20]
add rdx, 0x70
mov r9, r12
lea r8, [rbp + 0x428]
mov rcx, r15
call fcn.18022c954
mov ebx, eax
add word [rbp + 0x428], r12w
mov rdx, qword [r14 + 0x20]
mov r15d, 0x72
add rdx, r15
mov r9, r12
lea r8, [rbp + 0x428]
mov rcx, qword [rbp + 0x410]
call fcn.18022c954
test eax, ebx
jne 0x18022eb59
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea eax, [r15 - 0xa]
mov word [rbp + 0x1e0], ax
lea edx, [rax - 0x3a]
mov word [rbp + 0x1e2], dx
lea eax, [rdx + 0x3c]
mov word [rbp + 0x1e4], ax
mov word [rbp + 0x1e6], si
lea eax, [rdx + 0x24]
mov word [rbp + 0x1e8], ax
lea r11d, [r15 + 0xd]
mov word [rbp + 0x1ea], r11w
mov word [rbp + 0x1ec], r11w
lea eax, [rdx + 0x4e]
mov word [rbp + 0x1ee], ax
mov word [rbp + 0x1f0], r11w
lea ecx, [rdx + 0x19]
mov word [rbp + 0x1f2], cx
mov word [rbp + 0x1f4], si
lea edx, [rax - 0x2c]
mov word [rbp + 0x1f6], dx
mov word [rbp + 0x1f8], ax
lea r9d, [r15 + 0x10]
mov word [rbp + 0x1fa], r9w
lea r14d, [r15 + 7]
mov word [rbp + 0x1fc], r14w
lea edx, [rax - 0xb]
mov word [rbp + 0x1fe], dx
mov word [rbp + 0x200], si
lea edx, [rax - 1]
mov word [rbp + 0x202], dx
mov word [rbp + 0x204], ax
lea r10d, [r15 + 0xf]
mov word [rbp + 0x206], r10w
mov word [rbp + 0x208], si
lea r13d, [r15 - 2]
mov word [rbp + 0x20a], r13w
lea ebx, [rax - 0xe]
mov word [rbp + 0x20c], bx
mov word [rbp + 0x20e], r14w
mov word [rbp + 0x210], r14w
mov word [rbp + 0x212], si
lea edx, [rax - 0x21]
mov word [rbp + 0x214], dx
mov word [rbp + 0x216], r10w
lea edx, [rax - 0x18]
mov word [rbp + 0x218], dx
mov word [rbp + 0x21a], r11w
lea r12d, [r15 + 4]
mov word [rbp + 0x21c], r12w
mov word [rbp + 0x21e], r10w
mov word [rbp + 0x220], r15w
lea eax, [rcx + 0x1c]
mov word [rbp + 0x222], ax
mov word [rbp + 0x224], r12w
mov word [rbp + 0x226], r11w
mov word [rbp + 0x228], r10w
mov word [rbp + 0x22a], r9w
mov word [rbp + 0x22c], bx
mov word [rbp + 0x22e], r14w
lea eax, [rcx + 0x13]
mov word [rbp + 0x230], ax
mov word [rbp + 0x232], r15w
lea edx, [rcx + 0x33]
mov word [rbp + 0x234], dx
lea eax, [rcx + 0x35]
mov word [rbp + 0x236], ax
mov word [rbp + 0x238], r11w
lea eax, [rcx + 0x3f]
mov word [rbp + 0x23a], ax
mov word [rbp + 0x23c], si
mov word [rbp + 0x23e], r10w
lea eax, [rcx + 0x35]
mov word [rbp + 0x240], ax
mov word [rbp + 0x242], si
mov word [rbp + 0x244], r9w
lea eax, [rcx + 0x36]
mov word [rbp + 0x246], ax
lea eax, [rcx + 0x2a]
mov word [rbp + 0x248], ax
mov word [rbp + 0x24a], bx
mov word [rbp + 0x24c], r10w
mov word [rbp + 0x24e], r15w
mov word [rbp + 0x250], si
mov word [rbp + 0x252], r13w
lea r9d, [r15 + 0xa]
mov word [rbp + 0x254], r9w
mov word [rbp + 0x256], dx
mov word [rbp + 0x258], dx
mov word [rbp + 0x25a], bx
lea eax, [rcx + 0x34]
mov word [rbp + 0x25c], ax
lea edx, [rcx + 0x2a]
mov word [rbp + 0x25e], dx
mov word [rbp + 0x260], r14w
mov word [rbp + 0x262], r12w
mov word [rbp + 0x264], ax
mov word [rbp + 0x266], r15w
mov word [rbp + 0x268], si
mov word [rbp + 0x26a], bx
mov word [rbp + 0x26c], r11w
lea edx, [rcx + 0x2d]
mov word [rbp + 0x26e], dx
mov word [rbp + 0x270], si
mov word [rbp + 0x272], r14w
mov word [rbp + 0x274], r15w
mov word [rbp + 0x276], ax
mov word [rbp + 0x278], dx
mov word [rbp + 0x27a], r10w
lea eax, [rcx + 0x2e]
mov word [rbp + 0x27c], ax
lea eax, [rcx - 0xc]
mov word [rbp + 0x27e], ax
mov word [rbp + 0x280], si
lea eax, [rcx + 0xb]
mov word [rbp + 0x282], ax
mov word [rbp + 0x284], r11w
mov word [rbp + 0x286], r11w
mov word [rbp + 0x288], r9w
mov word [rbp + 0x28a], r11w
mov word [rbp + 0x28c], cx
mov word [rbp + 0x28e], si
mov word [rbp + 0x290], di
movzx eax, word [rbp + 0x1e0]
lea r14d, [r15 - 0x71]
movzx eax, word [rbp + rdi*2 + 0x1e0]
sub ax, 0xd
mov word [rbp + rdi*2 + 0x1e0], ax
add rdi, r14
cmp rdi, 0x58
jb 0x18022eb1a
mov edx, r8d
lea rcx, [rbp + 0x1e0]
call fcn.18009550c
nop
mov r8d, 0xb2
lea rcx, [rbp + 0x1e0]
jmp 0x18022e1d5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, qword [rbp + 0xd0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, r14
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov r14d, 1
lea r10d, [r14 + 0x6e]
cmp qword [rbp + 0x410], rax
jne 0x18022ee32
lea eax, [r14 + 0x45]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x78]
xor ax, 0x5b
mov word [rsp + 0x7c], ax
mov eax, dword [rsp + 0x78]
add ax, r14w
xor ax, 0x2b
mov word [rsp + 0x7e], ax
mov eax, dword [rsp + 0x78]
add ax, r12w
xor ax, 0x5d
mov word [rbp - 0x80], ax
mov eax, dword [rsp + 0x78]
add ax, 3
xor ax, r13w
mov word [rbp - 0x7e], ax
mov eax, dword [rsp + 0x78]
add ax, 4
xor ax, 0x53
mov word [rbp - 0x7c], ax
mov eax, dword [rsp + 0x78]
add ax, 5
lea r9d, [r14 + 0x6f]
xor ax, r9w
mov word [rbp - 0x7a], ax
mov eax, dword [rsp + 0x78]
add ax, 6
xor ax, r10w
mov word [rbp - 0x78], ax
mov eax, dword [rsp + 0x78]
add ax, 7
xor ax, r10w
mov word [rbp - 0x76], ax
mov eax, dword [rsp + 0x78]
add ax, 8
xor ax, 0x66
mov word [rbp - 0x74], ax
mov eax, dword [rsp + 0x78]
add ax, 9
lea ecx, [r14 + 0x64]
xor ax, cx
mov word [rbp - 0x72], ax
mov eax, dword [rsp + 0x78]
add ax, 0xa
xor ax, 0x64
mov word [rbp - 0x70], ax
mov eax, dword [rsp + 0x78]
add ax, 0xb
xor ax, r13w
mov word [rbp - 0x6e], ax
mov eax, dword [rsp + 0x78]
add ax, 0xc
xor ax, r10w
mov word [rbp - 0x6c], ax
mov eax, dword [rsp + 0x78]
add ax, 0xd
xor ax, 0x77
mov word [rbp - 0x6a], ax
mov eax, dword [rsp + 0x78]
add ax, 0xe
lea r8d, [r14 + 0x6d]
xor ax, r8w
mov word [rbp - 0x68], ax
mov eax, dword [rsp + 0x78]
add ax, 0xf
xor ax, r13w
mov word [rbp - 0x66], ax
mov eax, dword [rsp + 0x78]
add ax, 0x10
xor ax, r9w
mov word [rbp - 0x64], ax
mov eax, dword [rsp + 0x78]
add ax, 0x11
xor ax, r15w
mov word [rbp - 0x62], ax
mov eax, dword [rsp + 0x78]
add ax, 0x12
xor ax, r10w
mov word [rbp - 0x60], ax
mov eax, dword [rsp + 0x78]
add ax, 0x13
xor ax, 0x63
mov word [rbp - 0x5e], ax
mov eax, dword [rsp + 0x78]
add ax, 0x14
xor ax, cx
mov word [rbp - 0x5c], ax
mov eax, dword [rsp + 0x78]
add ax, 0x15
lea r10d, [r14 + 0x72]
xor ax, r10w
mov word [rbp - 0x5a], ax
mov eax, dword [rsp + 0x78]
add ax, 0x16
xor ax, r10w
mov word [rbp - 0x58], ax
mov eax, dword [rsp + 0x78]
add ax, 0x17
xor ax, 0x27
mov word [rbp - 0x56], ax
mov eax, dword [rsp + 0x78]
add ax, 0x18
xor ax, r13w
mov word [rbp - 0x54], ax
mov eax, dword [rsp + 0x78]
add ax, 0x19
xor ax, 0x61
mov word [rbp - 0x52], ax
mov eax, dword [rsp + 0x78]
add ax, 0x1a
xor ax, r15w
mov word [rbp - 0x50], ax
mov eax, dword [rsp + 0x78]
add ax, 0x1b
xor ax, 0x67
mov word [rbp - 0x4e], ax
mov eax, dword [rsp + 0x78]
add ax, 0x1c
xor ax, 0x75
mov word [rbp - 0x4c], ax
mov eax, dword [rsp + 0x78]
add ax, 0x1d
xor ax, 0x6d
mov word [rbp - 0x4a], ax
mov eax, dword [rsp + 0x78]
add ax, 0x1e
xor ax, cx
mov word [rbp - 0x48], ax
mov eax, dword [rsp + 0x78]
add ax, 0x1f
xor ax, r8w
mov word [rbp - 0x46], ax
mov eax, dword [rsp + 0x78]
add ax, r13w
xor ax, 0x74
mov word [rbp - 0x44], ax
mov eax, dword [rsp + 0x78]
add ax, 0x21
xor ax, r10w
mov word [rbp - 0x42], ax
mov eax, dword [rsp + 0x78]
add ax, 0x22
xor ax, 0x2e
mov word [rbp - 0x40], ax
xor eax, eax
mov word [rbp - 0x3e], ax
movzx eax, word [rsp + 0x7c]
mov rdx, rdi
lea r9d, [r14 + 0x22]
movzx eax, word [rsp + rdx*2 + 0x7c]
mov ecx, dword [rsp + 0x78]
add cx, dx
xor cx, ax
mov word [rsp + rdx*2 + 0x7c], cx
add rdx, r14
cmp rdx, r9
jb 0x18022edf7
mov word [rbp - 0x3e], di
lea rcx, [rsp + 0x7c]
call fcn.18007aae4
nop
mov r8d, 0x48
lea rcx, [rsp + 0x7c]
jmp 0x18022f0be
mov esi, 0x25
mov dword [rbp - 0x3c], esi
mov eax, dword [rbp - 0x3c]
xor ax, 0x5b
mov word [rbp - 0x38], ax
mov eax, dword [rbp - 0x3c]
add ax, r14w
xor ax, 0x2b
mov word [rbp - 0x36], ax
mov eax, dword [rbp - 0x3c]
add ax, r12w
xor ax, 0x5d
mov word [rbp - 0x34], ax
mov eax, dword [rbp - 0x3c]
add ax, 3
xor ax, r13w
mov word [rbp - 0x32], ax
mov eax, dword [rbp - 0x3c]
add ax, 4
xor ax, 0x53
mov word [rbp - 0x30], ax
mov eax, dword [rbp - 0x3c]
add ax, 5
lea r11d, [rsi + 0x4b]
xor ax, r11w
mov word [rbp - 0x2e], ax
mov eax, dword [rbp - 0x3c]
add ax, 6
xor ax, r10w
mov word [rbp - 0x2c], ax
mov eax, dword [rbp - 0x3c]
add ax, 7
xor ax, r10w
mov word [rbp - 0x2a], ax
mov eax, dword [rbp - 0x3c]
add ax, 8
xor ax, 0x66
mov word [rbp - 0x28], ax
mov eax, dword [rbp - 0x3c]
add ax, 9
lea ecx, [rsi + 0x40]
xor ax, cx
mov word [rbp - 0x26], ax
mov eax, dword [rbp - 0x3c]
add ax, 0xa
xor ax, 0x64
mov word [rbp - 0x24], ax
mov eax, dword [rbp - 0x3c]
add ax, 0xb
xor ax, r13w
mov word [rbp - 0x22], ax
mov eax, dword [rbp - 0x3c]
add ax, 0xc
xor ax, r15w
mov word [rbp - 0x20], ax
mov eax, dword [rbp - 0x3c]
add ax, 0xd
xor ax, cx
mov word [rbp - 0x1e], ax
mov eax, dword [rbp - 0x3c]
add ax, 0xe
lea r8d, [rsi + 0x48]
xor ax, r8w
mov word [rbp - 0x1c], ax
mov eax, dword [rbp - 0x3c]
add ax, 0xf
xor ax, r10w
mov word [rbp - 0x1a], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x10
lea ebx, [rsi + 0x4f]
xor ax, bx
mov word [rbp - 0x18], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x11
xor ax, cx
mov word [rbp - 0x16], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x12
xor ax, r13w
mov word [rbp - 0x14], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x13
xor ax, r11w
mov word [rbp - 0x12], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x14
xor ax, r15w
mov word [rbp - 0x10], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x15
xor ax, r10w
mov word [rbp - 0xe], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x16
xor ax, 0x63
mov word [rbp - 0xc], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x17
xor ax, cx
mov word [rbp - 0xa], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x18
lea r10d, [rsi + 0x4e]
xor ax, r10w
mov word [rbp - 8], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x19
xor ax, r10w
mov word [rbp - 6], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x1a
xor ax, 0x27
mov word [rbp - 4], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x1b
xor ax, r13w
mov word [rbp - 2], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x1c
xor ax, 0x61
mov word [rbp], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x1d
xor ax, r15w
mov word [rbp + 2], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x1e
xor ax, 0x67
mov word [rbp + 4], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x1f
xor ax, 0x75
mov word [rbp + 6], ax
mov eax, dword [rbp - 0x3c]
add ax, r13w
xor ax, r8w
mov word [rbp + 8], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x21
xor ax, cx
mov word [rbp + 0xa], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x22
xor ax, 0x6e
mov word [rbp + 0xc], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x23
xor ax, bx
mov word [rbp + 0xe], ax
mov eax, dword [rbp - 0x3c]
add ax, 0x24
xor ax, r10w
mov word [rbp + 0x10], ax
mov eax, dword [rbp - 0x3c]
add ax, si
xor ax, 0x2e
mov word [rbp + 0x12], ax
xor eax, eax
mov word [rbp + 0x14], ax
movzx eax, word [rbp - 0x38]
mov rdx, rdi
lea r9d, [rsi + 1]
movzx eax, word [rbp + rdx*2 - 0x38]
mov ecx, dword [rbp - 0x3c]
add cx, dx
xor cx, ax
mov word [rbp + rdx*2 - 0x38], cx
add rdx, r14
cmp rdx, r9
jb 0x18022f08b
mov word [rbp + 0x14], di
lea rcx, [rbp - 0x38]
call fcn.18007aae4
nop
mov r8d, 0x4e
lea rcx, [rbp - 0x38]
xor edx, edx
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov al, r14b
add rsp, 0x4c8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret