Function at 0x1800bcb28
Capabilities:
Authenticate hmac
Encode data using base64
Encode data using xor

Disassembly:
mov byte [rsp + 0x10], dl
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x4a8]
sub rsp, 0x5a8
mov qword [rbp + 0x458], 0xfffffffffffffffe
mov bl, dl
mov r12, rcx
xor edi, edi
lea r10d, [rdi + 1]
test rcx, rcx
je 0x1800bf063
lea edx, [rdi + 0x56]
lea r9d, [rdi + 0x4c]
lea r8d, [rdi + 0x10]
mov qword [rbp + 0x3c8], 0x19
lea r11d, [rdi + 0x1f]
or rsi, 0xffffffffffffffff
lea eax, [rdi + 0x69]
lea ecx, [rdi + 0x74]
lea r14d, [rdi + 0x6a]
mov dword [rbp + 0x3a8], 0x77
lea r15d, [rdi + 0x73]
lea r13d, [rdi + 0x71]
mov qword [rbp + 0xc0], 0xe
test r12, r12
jns 0x1800bd117
test bl, bl
jne 0x1800bcd6c
mov dword [rbp + 0x238], 0x76
lea eax, [rdi + 0x2d]
mov word [rbp + 0x23c], ax
lea ebx, [rdi + 0x58]
mov word [rbp + 0x23e], bx
lea eax, [rdi + 0x2b]
mov word [rbp + 0x240], ax
mov word [rbp + 0x242], dx
lea eax, [rdi + 0x32]
mov word [rbp + 0x244], ax
lea r11d, [rdi + 0x13]
mov word [rbp + 0x246], r11w
lea eax, [rdi + 0x1a]
mov word [rbp + 0x248], ax
lea eax, [rdi + 0x17]
mov word [rbp + 0x24a], ax
lea ecx, [rdi + 0xf]
mov word [rbp + 0x24c], cx
mov word [rbp + 0x24e], r9w
mov word [rbp + 0x250], dx
lea eax, [rdi + 0x39]
mov word [rbp + 0x252], ax
mov word [rbp + 0x254], r8w
mov word [rbp + 0x256], r8w
mov word [rbp + 0x258], r11w
lea r9d, [rdi + 4]
mov word [rbp + 0x25a], r9w
mov word [rbp + 0x25c], dx
mov word [rbp + 0x25e], cx
lea eax, [rdi + 0x19]
mov word [rbp + 0x260], ax
lea ecx, [rdi + 3]
mov word [rbp + 0x262], cx
mov word [rbp + 0x264], dx
lea eax, [rdi + 0x1e]
mov word [rbp + 0x266], ax
lea eax, [rdi + 0x17]
mov word [rbp + 0x268], ax
mov word [rbp + 0x26a], di
mov word [rbp + 0x26c], r11w
mov word [rbp + 0x26e], dx
lea eax, [rdi + 2]
mov word [rbp + 0x270], ax
lea eax, [rdi + 0x19]
mov word [rbp + 0x272], ax
mov word [rbp + 0x274], dx
mov word [rbp + 0x276], r9w
mov word [rbp + 0x278], r11w
mov word [rbp + 0x27a], r8w
mov word [rbp + 0x27c], cx
lea eax, [rdi + 5]
mov word [rbp + 0x27e], ax
mov word [rbp + 0x280], r11w
mov word [rbp + 0x282], bx
xor eax, eax
mov word [rbp + 0x284], ax
movzx eax, word [rbp + 0x23c]
mov edx, edi
lea r12d, [rdi + 0x24]
movzx eax, word [rbp + rdx*2 + 0x23c]
mov ecx, dword [rbp + 0x238]
xor cx, ax
mov word [rbp + rdx*2 + 0x23c], cx
add rdx, r10
cmp rdx, r12
jb 0x1800bcd1d
mov word [rbp + 0x284], di
lea rcx, [rbp + 0x23c]
call fcn.18007aae4
nop
xor edx, edx
lea r8d, [rdx + 0x4a]
lea rcx, [rbp + 0x23c]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov r12, qword [rbp + 0x4f0]
mov edx, 0x10000000
xor ecx, ecx
lea r8d, [rcx + 4]
call fcn.18019dce4
mov rbx, rax
test rax, rax
je 0x1800bd459
xor edx, edx
mov r8d, 0x10000000
mov rcx, rax
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov byte [rbx], 0xaa
lea rax, [rbx + 1]
mov ecx, 0x1f
mov byte [rax], cl
mov edx, 0xffffffd
lea r11d, [rcx - 0x1e]
xor cl, byte [rax - 1]
inc rax
mov byte [rax], cl
sub rdx, r11
jne 0x1800bcdb0
mov edx, dword [0x1802bccdc]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov ecx, dword [rcx + rax]
cmp dword [0x1802c3268], ecx
jle 0x1800bd08c
lea rcx, [0x1802c3268]
call fcn.1802696f0
cmp dword [0x1802c3268], esi
jne 0x1800bd08c
lea rax, [rbp + 0x438]
mov qword [rbp + 0x500], rax
mov eax, 0x27
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
xor al, 0x56
mov byte [rsp + 0x44], al
mov eax, dword [rsp + 0x40]
mov r8d, 1
add al, r8b
xor al, 0x69
mov byte [rsp + 0x45], al
mov eax, dword [rsp + 0x40]
add al, 2
lea edx, [r8 + 0x71]
xor al, dl
mov byte [rsp + 0x46], al
mov eax, dword [rsp + 0x40]
add al, 3
xor al, 0x74
mov byte [rsp + 0x47], al
mov eax, dword [rsp + 0x40]
add al, 4
xor al, 0x75
mov byte [rsp + 0x48], al
mov eax, dword [rsp + 0x40]
add al, 5
xor al, 0x61
mov byte [rsp + 0x49], al
mov eax, dword [rsp + 0x40]
add al, 6
xor al, 0x6c
mov byte [rsp + 0x4a], al
mov eax, dword [rsp + 0x40]
add al, 7
xor al, 0x46
mov byte [rsp + 0x4b], al
mov eax, dword [rsp + 0x40]
add al, 8
xor al, dl
mov byte [rsp + 0x4c], al
mov eax, dword [rsp + 0x40]
add al, 9
lea ecx, [rdx - 0xd]
xor al, cl
mov byte [rsp + 0x4d], al
mov eax, dword [rsp + 0x40]
add al, 0xa
xor al, cl
mov byte [rsp + 0x4e], al
mov eax, dword [rsp + 0x40]
add al, 0xb
xor al, 0x45
mov byte [rsp + 0x4f], al
mov eax, dword [rsp + 0x40]
add al, 0xc
xor al, 0x78
mov byte [rsp + 0x50], al
xor eax, eax
mov byte [rsp + 0x51], al
mov al, byte [rsp + 0x44]
mov rdx, rdi
lea r12d, [r8 + 0xc]
mov al, byte [rsp + rdx + 0x44]
mov ecx, dword [rsp + 0x40]
add cl, dl
xor cl, al
mov byte [rsp + rdx + 0x44], cl
add rdx, r8
cmp rdx, r12
jb 0x1800bcecc
mov byte [rsp + 0x51], dil
xorps xmm0, xmm0
movups xmmword [rbp + 0x438], xmm0
mov qword [rbp + 0x448], rdi
mov qword [rbp + 0x450], rdi
lea rax, [rsp + 0x44]
mov r8, rsi
inc r8
cmp byte [rax + r8], dil
jne 0x1800bcf09
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0x438]
call fcn.18007b70c
nop
mov eax, 0x70
mov byte [rsp + 0x54], al
mov byte [rsp + 0x55], r14b
mov eax, 0x77
mov byte [rsp + 0x56], al
mov byte [rsp + 0x57], r15b
mov byte [rsp + 0x58], r14b
mov byte [rsp + 0x59], r13b
mov byte [rsp + 0x5a], 0x38
mov byte [rsp + 0x5b], 0x37
mov byte [rsp + 0x5c], dil
mov al, byte [rsp + 0x54]
mov rcx, rdi
mov r14d, 1
lea r12d, [r14 + 7]
mov al, byte [rsp + rcx + 0x54]
sub al, 5
mov byte [rsp + rcx + 0x54], al
add rcx, r14
cmp rcx, r12
jb 0x1800bcf6a
xorps xmm0, xmm0
movups xmmword [rbp + 0x3d8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x3e8], xmm1
lea rax, [rsp + 0x54]
mov r8, rsi
mov r12, qword [rbp + 0x4f0]
inc r8
cmp byte [rax + r8], dil
jne 0x1800bcfa0
lea rdx, [rsp + 0x54]
lea rcx, [rbp + 0x3d8]
call fcn.18007b70c
nop
lea rdx, [rbp + 0x3d8]
lea rcx, [rbp + 0x460]
call fcn.180188b20
nop
mov qword [rsp + 0x20], rdi
mov r9b, r14b
lea r8, [rbp + 0x438]
mov rdx, rax
lea rcx, [0x1802c2af0]
call fcn.180101a5c
nop
mov rdx, qword [rbp + 0x3f0]
mov eax, 0x10
cmp rdx, rax
jb 0x1800bd036
inc rdx
mov rcx, qword [rbp + 0x3d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bd031
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800bd031
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 + 0x3e8], xmm0
mov byte [rbp + 0x3d8], dil
xor edx, edx
lea r8d, [rdx + 9]
lea rcx, [rsp + 0x54]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
mov r8, qword [rbp + 0xc0]
xor edx, edx
lea rcx, [rsp + 0x44]
call qword [sym.imp.VCRUNTIME140.dll_memset]
lea rcx, [0x18027d720]
call fcn.18026951c
nop
lea rcx, [0x1802c3268]
call fcn.180269690
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rsi, rax
lea r14, [0x1802c2b08]
mov rcx, r14
mov eax, 0x10
cmp qword [0x1802c2b20], rax
cmovae rcx, qword [0x1802c2b08]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
jne 0x1800bd0ed
mov rcx, r14
mov eax, 0x10
cmp qword [0x1802c2b20], rax
cmovae rcx, qword [0x1802c2b08]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x1802c2b00], rax
mov r8, rax
mov rdx, r14
call fcn.18008c99c
mov r9d, 0x4000
mov r8d, 0x10000000
mov rdx, rbx
mov rcx, rsi
call qword [0x1802c2af8]
mov eax, 0x69
mov bl, byte [rbp + 0x4f8]
lea ecx, [rax + 0xb]
lea r11d, [rax - 0x4a]
mov edx, 0x34
lea esi, [rdx + 0x4b]
lea r8d, [rdx + 0x45]
lea r14d, [rdx + 0x37]
mov dword [rbp + 0x500], 0x6f
mov dword [rbp + 0x508], 0x7a
bt r12, 0x3e
jae 0x1800bd2c9
test bl, bl
jne 0x1800bd2c9
lea r9d, [rdx + 0x2d]
mov word [rbp + 0x1f8], r9w
mov word [rbp + 0x1fa], dx
lea r9d, [rdx + 0x2f]
mov word [rbp + 0x1fc], r9w
lea r10d, [rdx - 0xe]
mov word [rbp + 0x1fe], r10w
lea r9d, [rdx + 0x16]
mov word [rbp + 0x200], r9w
mov word [rbp + 0x202], r14w
lea r9d, [rdx + 0x3e]
mov word [rbp + 0x204], r9w
lea r9d, [rdx + 0x33]
mov word [rbp + 0x206], r9w
mov word [rbp + 0x208], si
lea esi, [rdx + 0xc]
mov word [rbp + 0x20a], si
mov word [rbp + 0x20c], r10w
lea r9d, [rdx + 0x1f]
mov word [rbp + 0x20e], r9w
mov r9d, dword [rbp + 0x500]
mov word [rbp + 0x210], r9w
lea r10d, [rdx + 0x3e]
mov word [rbp + 0x212], r10w
mov word [rbp + 0x214], r10w
mov word [rbp + 0x216], r9w
lea r10d, [rdx + 0x41]
mov word [rbp + 0x218], r10w
mov word [rbp + 0x21a], cx
mov word [rbp + 0x21c], r8w
lea r10d, [rdx - 0xe]
mov word [rbp + 0x21e], r10w
mov word [rbp + 0x220], r9w
mov word [rbp + 0x222], cx
mov word [rbp + 0x224], ax
lea eax, [rdx + 0x44]
mov word [rbp + 0x226], ax
mov word [rbp + 0x228], r14w
mov word [rbp + 0x22a], r15w
mov word [rbp + 0x22c], r14w
mov word [rbp + 0x22e], cx
mov eax, dword [rbp + 0x508]
mov word [rbp + 0x230], ax
mov word [rbp + 0x232], r8w
mov word [rbp + 0x234], dx
mov word [rbp + 0x236], di
movzx eax, word [rbp + 0x1f8]
mov rcx, rdi
lea edx, [rsi - 0x3a]
lea r10d, [r8 - 0x78]
movzx eax, word [rbp + rcx*2 + 0x1f8]
sub ax, dx
mov word [rbp + rcx*2 + 0x1f8], ax
add rcx, r10
cmp rcx, r11
jb 0x1800bd28f
lea rcx, [rbp + 0x1f8]
call fcn.18007aae4
nop
mov r8, rsi
xor edx, edx
lea rcx, [rbp + 0x1f8]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov esi, 0x66
lea r15d, [rsi + 8]
mov qword [rbp + 0x3d0], 0x18
lea edx, [rsi - 0x3a]
lea r9d, [rsi - 0x19]
lea r11d, [rsi + 0x16]
bt r12, 0x3d
jae 0x1800bdf29
mov dword [rbp - 0x58], 0x33221100
mov dword [rbp - 0x54], 0x77665544
mov dword [rbp - 0x50], 0xbbaa9988
mov dword [rbp - 0x4c], 0xffeeddcc
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x3a0], rdi
lea edx, [rsi - 0x56]
lea rcx, [rbp + 0x390]
call fcn.1800aea1c
mov rbx, qword [rbp + 0x390]
lea r8d, [rsi - 0x56]
lea rdx, [rbp - 0x58]
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_memmove]
lea rax, [rbx + 0x10]
mov qword [rbp + 0x398], rax
or qword [rbp - 0x48], 0xffffffffffffffff
or qword [rbp - 0x40], 0xffffffffffffffff
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x360], xmm0
mov qword [rbp + 0x370], rdi
lea edx, [rsi - 0x56]
lea rcx, [rbp + 0x360]
call fcn.1800aea1c
mov rbx, qword [rbp + 0x360]
lea r8d, [rsi - 0x56]
lea rdx, [rbp - 0x48]
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_memmove]
lea rax, [rbx + 0x10]
mov qword [rbp + 0x368], rax
mov dword [rbp], 0x3020100
mov dword [rbp + 4], 0x7060504
mov dword [rbp + 8], 0xb0a0908
mov word [rbp + 0xc], 0xd0c
mov rax, qword [rbp + 0xc0]
mov byte [rbp + 0xe], al
mov dword [rbp + 0xf], 0x1211100f
mov dword [rbp + 0x13], 0x16151413
mov dword [rbp + 0x17], 0x1a191817
mov dword [rbp + 0x1b], 0x1e1d1c1b
lea eax, [rsi - 0x47]
mov byte [rbp + 0x1f], al
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x378], xmm0
mov qword [rbp + 0x388], rdi
lea edx, [rsi - 0x46]
lea rcx, [rbp + 0x378]
call fcn.1800aea1c
mov rbx, qword [rbp + 0x378]
lea r8d, [rsi - 0x46]
lea rdx, [rbp]
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_memmove]
lea rax, [rbx + 0x20]
mov qword [rbp + 0x380], rax
mov ebx, 0x186a0
test r12d, r12d
je 0x1800bd43d
lea ebx, [r12 + r12*4]
shl ebx, 2
xorps xmm3, xmm3
mov r8d, 1
test rbx, rbx
js 0x1800bd5c1
cvtsi2sd xmm3, rbx
jmp 0x1800bd5d9
cmp byte [rbp + 0x4f8], dil
jne 0x1800bd5ba
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x4f0], eax
mov eax, 0x49
mov word [rbp + 0x188], ax
lea r10d, [rax + 0x21]
mov word [rbp + 0x18a], r10w
lea r13d, [rax + 0x28]
mov word [rbp + 0x18c], r13w
lea eax, [r10 - 4]
mov word [rbp + 0x18e], ax
lea ecx, [rax + 0x18]
mov word [rbp + 0x190], cx
lea edx, [rax - 0x41]
mov word [rbp + 0x192], dx
mov word [rbp + 0x194], ax
mov word [rbp + 0x196], r13w
mov word [rbp + 0x198], r13w
lea r9d, [r10 + 0xa]
mov word [rbp + 0x19a], r9w
lea ecx, [rax + 2]
mov word [rbp + 0x19c], cx
mov word [rbp + 0x19e], ax
lea ecx, [rax + 0x13]
mov word [rbp + 0x1a0], cx
lea r12d, [r10 + 4]
mov word [rbp + 0x1a2], r12w
mov word [rbp + 0x1a4], r9w
lea r9d, [r10 + 9]
mov word [rbp + 0x1a6], r9w
mov word [rbp + 0x1a8], dx
lea r14d, [r10 + 1]
mov word [rbp + 0x1aa], r14w
mov word [rbp + 0x1ac], ax
mov word [rbp + 0x1ae], r12w
mov word [rbp + 0x1b0], r13w
mov word [rbp + 0x1b2], r10w
lea eax, [rdx + 0x44]
mov word [rbp + 0x1b4], ax
lea eax, [rdx + 0x1a]
mov word [rbp + 0x1b6], ax
mov word [rbp + 0x1b8], dx
mov word [rbp + 0x1ba], di
movzx eax, word [rbp + 0x188]
lea ecx, [rdx - 0x20]
lea r11d, [r10 - 0x69]
lea r8d, [r10 - 0x51]
movzx eax, word [rbp + rdi*2 + 0x188]
sub ax, cx
mov word [rbp + rdi*2 + 0x188], ax
add rdi, r11
cmp rdi, r8
jb 0x1800bd579
mov edx, dword [rbp + 0x4f0]
lea rcx, [rbp + 0x188]
call fcn.180135b6c
nop
xor edx, edx
lea r8d, [rdx + 0x34]
lea rcx, [rbp + 0x188]
call qword [sym.imp.VCRUNTIME140.dll_memset]
xor eax, eax
jmp 0x1800bf066
mov rcx, rbx
shr rcx, 1
mov rax, rbx
and rax, r8
or rcx, rax
cvtsi2sd xmm3, rcx
addsd xmm3, xmm3
divsd xmm3, qword [0x180280db0]
mulsd xmm3, qword [0x180280da8]
cmp byte [rbp + 0x4f8], dil
jne 0x1800bdabb
mov eax, 0x6c
mov dword [rbp + 0xdc], eax
lea r10d, [rax - 0x20]
mov word [rbp + 0xe0], r10w
lea eax, [r10 - 0x2d]
mov word [rbp + 0xe2], ax
lea ecx, [rax - 0x16]
mov word [rbp + 0xe4], cx
lea ecx, [rax - 0x10]
mov word [rbp + 0xe6], cx
lea ecx, [rax - 0x1c]
mov word [rbp + 0xe8], cx
lea r11d, [r10 - 0x4a]
mov word [rbp + 0xea], r11w
lea ecx, [rax - 0x17]
mov word [rbp + 0xec], cx
mov word [rbp + 0xee], ax
lea eax, [rcx + 0x3a]
mov word [rbp + 0xf0], ax
mov word [rbp + 0xf2], ax
mov word [rbp + 0xf4], ax
xor eax, eax
mov word [rbp + 0xf6], ax
movzx eax, word [rbp + 0xe0]
mov rdx, rdi
lea r10d, [r11 + 9]
movzx eax, word [rbp + rdx*2 + 0xe0]
mov ecx, dword [rbp + 0xdc]
xor cx, ax
mov word [rbp + rdx*2 + 0xe0], cx
add rdx, r8
cmp rdx, r10
jb 0x1800bd682
mov word [rbp + 0xf6], di
mov eax, 0x67
mov dword [rbp + 0x1bc], eax
lea r9d, [rax - 0x20]
mov word [rbp + 0x1c0], r9w
lea r10d, [rax - 0x52]
mov word [rbp + 0x1c2], r10w
lea ecx, [rax - 0x5f]
mov word [rbp + 0x1c4], cx
lea eax, [rcx + 0xa]
mov word [rbp + 0x1c6], ax
lea eax, [rcx + 1]
mov word [rbp + 0x1c8], ax
lea eax, [rcx - 5]
mov word [rbp + 0x1ca], ax
lea eax, [rcx + 0xc]
mov word [rbp + 0x1cc], ax
lea eax, [rcx + 0x43]
mov word [rbp + 0x1ce], ax
mov word [rbp + 0x1d0], r9w
lea eax, [rcx + 2]
mov word [rbp + 0x1d2], ax
lea eax, [rcx - 2]
mov word [rbp + 0x1d4], ax
lea edx, [rcx + 0x16]
mov word [rbp + 0x1d6], dx
mov word [rbp + 0x1d8], r9w
lea edx, [rcx + 0xb]
mov word [rbp + 0x1da], dx
mov word [rbp + 0x1dc], ax
lea eax, [rcx + 4]
mov word [rbp + 0x1de], ax
mov word [rbp + 0x1e0], r11w
mov word [rbp + 0x1e2], r9w
mov word [rbp + 0x1e4], r10w
mov word [rbp + 0x1e6], cx
lea eax, [rcx + 0xa]
mov word [rbp + 0x1e8], ax
mov word [rbp + 0x1ea], di
lea eax, [rcx + 7]
mov word [rbp + 0x1ec], ax
lea eax, [rcx + 3]
mov word [rbp + 0x1ee], ax
lea eax, [rcx + 0x16]
mov word [rbp + 0x1f0], ax
mov word [rbp + 0x1f2], r9w
xor eax, eax
mov word [rbp + 0x1f4], ax
movzx eax, word [rbp + 0x1c0]
mov rdx, rdi
lea r10d, [r9 + 5]
lea r9d, [rcx + 0x12]
movzx eax, word [rbp + rdx*2 + 0x1c0]
mov ecx, dword [rbp + 0x1bc]
xor cx, ax
mov word [rbp + rdx*2 + 0x1c0], cx
add rdx, r8
cmp rdx, r9
jb 0x1800bd7c3
mov word [rbp + 0x1f4], di
mov eax, 0x22
mov dword [rbp + 0x2e0], eax
mov eax, 0x79
mov word [rbp + 0x2e4], ax
lea edx, [rax - 0x6d]
mov word [rbp + 0x2e6], dx
lea eax, [rdx + 0x73]
mov word [rbp + 0x2e8], ax
mov word [rbp + 0x2ea], r11w
mov word [rbp + 0x2ec], si
lea r9d, [rdx + 0x3b]
mov word [rbp + 0x2ee], r9w
lea ecx, [rdx + 0x42]
mov word [rbp + 0x2f0], cx
lea eax, [rdx + 0x37]
mov word [rbp + 0x2f2], ax
lea r8d, [rdx + 0x4f]
mov word [rbp + 0x2f4], r8w
lea eax, [rdx + 0xc]
mov word [rbp + 0x2f6], ax
mov word [rbp + 0x2f8], r11w
mov word [rbp + 0x2fa], r13w
mov word [rbp + 0x2fc], r9w
mov word [rbp + 0x2fe], r10w
lea eax, [rdx + 0x45]
mov word [rbp + 0x300], ax
mov word [rbp + 0x302], r9w
mov word [rbp + 0x304], cx
mov word [rbp + 0x306], r9w
mov word [rbp + 0x308], ax
mov word [rbp + 0x30a], ax
mov word [rbp + 0x30c], r11w
lea eax, [rdx + 0x57]
mov word [rbp + 0x30e], ax
lea eax, [rdx + 0x5b]
mov word [rbp + 0x310], ax
mov word [rbp + 0x312], r13w
lea eax, [rdx + 4]
mov word [rbp + 0x314], ax
lea eax, [rdx + 0xb]
mov word [rbp + 0x316], ax
lea eax, [rdx + 8]
mov word [rbp + 0x318], ax
mov word [rbp + 0x31a], r11w
mov word [rbp + 0x31c], r9w
mov word [rbp + 0x31e], r10w
lea eax, [rdx + 0x35]
mov word [rbp + 0x320], ax
lea ecx, [rdx + 0x44]
mov word [rbp + 0x322], cx
mov word [rbp + 0x324], r8w
lea ecx, [rdx + 0x46]
mov word [rbp + 0x326], cx
lea ecx, [rdx + 0x4a]
mov word [rbp + 0x328], cx
lea esi, [rdx + 0x3f]
mov word [rbp + 0x32a], si
lea r8d, [rdx + 0x41]
mov word [rbp + 0x32c], r8w
mov word [rbp + 0x32e], r10w
lea r8d, [rdx + 0x45]
mov word [rbp + 0x330], r8w
lea r8d, [rdx + 1]
mov word [rbp + 0x332], r8w
lea r8d, [rdx + 0x3a]
mov word [rbp + 0x334], r8w
mov word [rbp + 0x336], r9w
mov word [rbp + 0x338], ax
lea eax, [rdx + 0x44]
mov word [rbp + 0x33a], ax
lea eax, [rdx + 0x4f]
mov word [rbp + 0x33c], ax
lea r8d, [rdx + 0x46]
mov word [rbp + 0x33e], r8w
mov word [rbp + 0x340], cx
mov word [rbp + 0x342], si
lea eax, [rdx + 0x41]
mov word [rbp + 0x344], ax
mov word [rbp + 0x346], r10w
lea ecx, [rdx + 0x45]
mov word [rbp + 0x348], cx
mov word [rbp + 0x34a], dx
mov word [rbp + 0x34c], r11w
mov word [rbp + 0x34e], r15w
mov word [rbp + 0x350], ax
mov word [rbp + 0x352], ax
mov word [rbp + 0x354], r8w
mov word [rbp + 0x356], si
mov word [rbp + 0x358], r10w
lea eax, [rdx + 0x39]
mov word [rbp + 0x35a], ax
mov word [rbp + 0x35c], r11w
xor eax, eax
mov word [rbp + 0x35e], ax
movzx eax, word [rbp + 0x2e4]
mov rdx, rdi
lea r8d, [r9 - 0x46]
movzx eax, word [rbp + rdx*2 + 0x2e4]
mov ecx, dword [rbp + 0x2e0]
xor cx, ax
mov word [rbp + rdx*2 + 0x2e4], cx
add rdx, r8
cmp rdx, 0x3d
jb 0x1800bda34
mov word [rbp + 0x35e], di
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x1c0]
mov rdx, rbx
lea rcx, [rbp + 0x2e4]
call fcn.180135be8
nop
xor edx, edx
lea r8d, [rdx + 0x7c]
lea rcx, [rbp + 0x2e4]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x36]
lea rcx, [rbp + 0x1c0]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x18]
lea rcx, [rbp + 0xe0]
call qword [sym.imp.VCRUNTIME140.dll_memset]
call fcn.18018920c
mov qword [rbp + 0x180], rax
mov rsi, rdi
test rbx, rbx
je 0x1800bdc31
mov r8d, 1
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x3b0], xmm0
mov qword [rbp + 0x3c0], rdi
movabs rax, 0xaaaaaaaaaaaaaaab
mul rsi
shr rdx, 1
lea rax, [rdx + rdx*2]
mov rcx, rsi
sub rcx, rax
jne 0x1800bdb5b
lea rax, [rbp + 0x360]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], r8b
mov dword [rsp + 0x20], r8d
mov r9d, 0x6610
lea r8, [rbp + 0x3b0]
lea rdx, [rbp + 0x378]
lea rcx, [rbp + 0x390]
call fcn.180098764
lea rax, [rbp + 0x360]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], dil
mov r11d, 1
mov dword [rsp + 0x20], r11d
jmp 0x1800bdbb4
cmp rcx, r8
jne 0x1800bdbda
lea rax, [rbp + 0x360]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], r8b
mov eax, 2
mov dword [rsp + 0x20], eax
mov r9d, 0x6610
lea r8, [rbp + 0x3b0]
lea rdx, [rbp + 0x378]
lea rcx, [rbp + 0x390]
call fcn.180098764
lea rax, [rbp + 0x360]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], dil
mov eax, 2
mov dword [rsp + 0x20], eax
mov r9d, 0x6610
lea r8, [rbp + 0x390]
lea rdx, [rbp + 0x378]
lea rcx, [rbp + 0x3b0]
call fcn.180098764
mov r8d, 1
mov rcx, qword [rbp + 0x3b0]
test rcx, rcx
je 0x1800bdc25
mov rdx, qword [rbp + 0x3c0]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bdc1a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
mov r8d, 0x1f
cmp rax, r8
ja 0x1800bde51
call fcn.180269534
mov r8d, 1
add rsi, r8
cmp rsi, rbx
jb 0x1800bdad9
call fcn.18018920c
mov rdx, rax
mov bl, byte [rbp + 0x4f8]
test bl, bl
jne 0x1800bde0d
mov eax, 0x21
mov word [rbp + 0x114], ax
mov word [rbp + 0x116], r15w
mov eax, 0x6a
mov word [rbp + 0x118], ax
lea r9d, [rax + 3]
mov word [rbp + 0x11a], r9w
mov word [rbp + 0x11c], r9w
mov word [rbp + 0x11e], ax
lea ecx, [rax + 0xa]
mov word [rbp + 0x120], cx
lea eax, [rcx - 0xe]
mov word [rbp + 0x122], ax
lea eax, [rcx - 0x10]
mov word [rbp + 0x124], ax
lea r10d, [r9 + 3]
mov word [rbp + 0x126], r10w
mov eax, dword [rbp + 0x500]
mov word [rbp + 0x128], ax
lea eax, [rcx - 0xf]
mov word [rbp + 0x12a], ax
mov word [rbp + 0x12c], cx
lea eax, [rcx - 0x45]
mov word [rbp + 0x12e], ax
mov word [rbp + 0x130], di
movzx eax, word [rbp + 0x114]
mov rcx, rdi
lea r8d, [r9 - 0x6c]
mov r9, qword [rbp + 0xc0]
movzx eax, word [rbp + rcx*2 + 0x114]
sub ax, r8w
mov word [rbp + rcx*2 + 0x114], ax
add rcx, r8
cmp rcx, r9
jb 0x1800bdcf0
mov eax, 0x67
mov word [rbp + 0xf8], ax
mov eax, 0x4a
mov word [rbp + 0xfa], ax
lea ecx, [rax + 0x1f]
mov word [rbp + 0xfc], cx
lea ecx, [rax - 0x1e]
mov word [rbp + 0xfe], cx
lea eax, [rcx + 0x25]
mov word [rbp + 0x100], ax
lea eax, [rcx + 0x4c]
mov word [rbp + 0x102], ax
lea r9d, [rcx + 0x41]
mov word [rbp + 0x104], r9w
lea eax, [rcx + 0x50]
mov word [rbp + 0x106], ax
lea eax, [rcx + 0x53]
mov word [rbp + 0x108], ax
mov word [rbp + 0x10a], r13w
mov word [rbp + 0x10c], r10w
lea eax, [rcx + 0x1a]
mov word [rbp + 0x10e], ax
mov word [rbp + 0x110], cx
mov word [rbp + 0x112], di
movzx eax, word [rbp + 0xf8]
mov rcx, rdi
mov r9d, 0xc
lea r12d, [r9 + 1]
movzx eax, word [rbp + rcx*2 + 0xf8]
sub ax, r9w
mov word [rbp + rcx*2 + 0xf8], ax
add rcx, r8
cmp rcx, r12
jb 0x1800bdda8
sub rdx, qword [rbp + 0x180]
lea r8, [rbp + 0x114]
lea rcx, [rbp + 0xf8]
call fcn.180135dc8
nop
xor edx, edx
lea r8d, [rdx + 0x1c]
lea rcx, [rbp + 0xf8]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x1e]
lea rcx, [rbp + 0x114]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov r12, qword [rbp + 0x4f0]
mov rcx, qword [rbp + 0x378]
mov esi, 0x1000
test rcx, rcx
je 0x1800bde6f
mov rdx, qword [rbp + 0x388]
sub rdx, rcx
mov rax, rcx
cmp rdx, rsi
jb 0x1800bde58
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
mov r8d, 0x1f
cmp rax, r8
jbe 0x1800bde58
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.180269534
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x378], xmm0
mov qword [rbp + 0x388], rdi
mov rcx, qword [rbp + 0x360]
test rcx, rcx
je 0x1800bdec5
mov rdx, qword [rbp + 0x370]
sub rdx, rcx
mov rax, rcx
cmp rdx, rsi
jb 0x1800bdeae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
mov r8d, 0x1f
cmp rax, r8
jbe 0x1800bdeae
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180269534
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x360], xmm0
mov qword [rbp + 0x370], rdi
mov rcx, qword [rbp + 0x390]
test rcx, rcx
je 0x1800bdf1b
mov rdx, qword [rbp + 0x3a0]
sub rdx, rcx
mov rax, rcx
cmp rdx, rsi
jb 0x1800bdf04
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
mov r8d, 0x1f
cmp rax, r8
jbe 0x1800bdf04
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180269534
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x3a0], rdi
mov r9d, 0x4d
lea r11d, [r9 + 0x2f]
lea edx, [r9 - 0x21]
test r12d, r12d
je 0x1800bf05d
mov ecx, 0x3a
test bl, bl
jne 0x1800be1c7
mov word [rbp + 0xc8], dx
lea edx, [rcx + 0x45]
mov word [rbp + 0xca], dx
mov word [rbp + 0xcc], r13w
mov r10d, dword [rbp + 0x500]
mov word [rbp + 0xce], r10w
lea eax, [rcx + 0x41]
mov word [rbp + 0xd0], ax
mov eax, dword [rbp + 0x508]
mov word [rbp + 0xd2], ax
lea eax, [rcx + 0x36]
mov word [rbp + 0xd4], ax
mov word [rbp + 0xd6], dx
mov word [rbp + 0xd8], cx
mov word [rbp + 0xda], di
movzx eax, word [rbp + 0xc8]
mov rcx, rdi
lea esi, [rdx - 0x7e]
lea edx, [rsi + 0xb]
lea r8d, [rsi + 8]
movzx eax, word [rbp + rcx*2 + 0xc8]
sub ax, dx
mov word [rbp + rcx*2 + 0xc8], ax
add rcx, rsi
cmp rcx, r8
jb 0x1800bdfb1
mov eax, 0x65
mov word [rbp + 0x288], ax
mov eax, 0x38
mov word [rbp + 0x28a], ax
mov eax, 0x67
mov word [rbp + 0x28c], ax
lea r8d, [rax - 0x3d]
mov word [rbp + 0x28e], r8w
lea eax, [r8 + 0x24]
mov word [rbp + 0x290], ax
mov word [rbp + 0x292], r10w
lea ebx, [rax + 0x28]
mov word [rbp + 0x294], bx
mov word [rbp + 0x296], r14w
lea edx, [rax + 0x35]
mov word [rbp + 0x298], dx
lea eax, [rbx - 0x32]
mov word [rbp + 0x29a], ax
mov word [rbp + 0x29c], r8w
mov word [rbp + 0x29e], r9w
mov word [rbp + 0x2a0], bx
mov word [rbp + 0x2a2], r14w
lea eax, [rbx + 7]
mov word [rbp + 0x2a4], ax
mov word [rbp + 0x2a6], ax
lea r9d, [r8 + 0x49]
mov word [rbp + 0x2a8], r9w
lea ecx, [rbx - 9]
mov word [rbp + 0x2aa], cx
mov word [rbp + 0x2ac], r8w
mov word [rbp + 0x2ae], r15w
mov word [rbp + 0x2b0], r10w
mov word [rbp + 0x2b2], bx
mov word [rbp + 0x2b4], r14w
mov word [rbp + 0x2b6], dx
mov word [rbp + 0x2b8], r8w
mov word [rbp + 0x2ba], ax
lea ecx, [rbx + 8]
mov word [rbp + 0x2bc], cx
mov word [rbp + 0x2be], r11w
mov word [rbp + 0x2c0], r14w
mov word [rbp + 0x2c2], cx
mov word [rbp + 0x2c4], r10w
mov word [rbp + 0x2c6], r13w
mov word [rbp + 0x2c8], dx
lea eax, [rbx - 0x3e]
mov word [rbp + 0x2ca], ax
mov word [rbp + 0x2cc], r8w
lea eax, [rbx - 0x15]
mov word [rbp + 0x2ce], ax
mov word [rbp + 0x2d0], r14w
mov word [rbp + 0x2d2], r9w
mov word [rbp + 0x2d4], cx
mov word [rbp + 0x2d6], r9w
lea eax, [rbx + 2]
mov word [rbp + 0x2d8], ax
mov word [rbp + 0x2da], r13w
mov word [rbp + 0x2dc], r8w
mov word [rbp + 0x2de], di
movzx eax, word [rbp + 0x288]
mov rcx, rdi
lea edx, [rbx - 0x6c]
lea r12d, [r8 + 1]
movzx eax, word [rbp + rcx*2 + 0x288]
sub ax, dx
mov word [rbp + rcx*2 + 0x288], ax
add rcx, rsi
cmp rcx, r12
jb 0x1800be15d
mov eax, 0x10624dd3
mov r12, qword [rbp + 0x4f0]
mul r12d
shr edx, 6
lea r8, [rbp + 0xc8]
lea rcx, [rbp + 0x288]
call fcn.180135e44
nop
xor edx, edx
lea r8d, [rdx + 0x58]
lea rcx, [rbp + 0x288]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x14]
lea rcx, [rbp + 0xc8]
call qword [sym.imp.VCRUNTIME140.dll_memset]
jmp 0x1800be1cc
mov esi, 1
mov edx, dword [0x1802bccdc]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov ecx, dword [rcx + rax]
cmp dword [0x1802c2cac], ecx
jle 0x1800be489
lea rcx, [0x1802c2cac]
call fcn.1802696f0
or rbx, 0xffffffffffffffff
cmp dword [0x1802c2cac], ebx
jne 0x1800be489
lea rax, [rbp + 0x418]
mov qword [rbp + 0x180], rax
lea eax, [rbx + 0x3a]
mov dword [rsp + 0x70], eax
mov eax, dword [rbp + 0x508]
mov byte [rsp + 0x74], al
lea eax, [rbx + 0x4c]
mov byte [rsp + 0x75], al
mov byte [rsp + 0x76], 0x5c
mov byte [rsp + 0x77], 0x58
lea r8d, [rbx + 0x4e]
mov byte [rsp + 0x78], r8b
mov byte [rsp + 0x79], 0x5c
lea eax, [rbx + 0x7d]
mov byte [rsp + 0x7a], al
mov byte [rsp + 0x7b], 0x4f
mov byte [rsp + 0x7c], 0x5c
mov byte [rsp + 0x7d], 0x57
mov byte [rsp + 0x7e], r8b
mov byte [rsp + 0x7f], r15b
xor eax, eax
mov byte [rbp - 0x80], al
mov al, byte [rsp + 0x74]
mov rdx, rdi
lea r13d, [rbx + 0xd]
mov al, byte [rsp + rdx + 0x74]
mov ecx, dword [rsp + 0x70]
xor cl, al
mov byte [rsp + rdx + 0x74], cl
add rdx, rsi
cmp rdx, r13
jb 0x1800be27d
mov byte [rbp - 0x80], dil
xorps xmm0, xmm0
movups xmmword [rbp + 0x418], xmm0
mov qword [rbp + 0x428], rdi
mov qword [rbp + 0x430], rdi
lea rax, [rsp + 0x74]
mov r8, rbx
mov r13d, 0x71
inc r8
cmp byte [rax + r8], dil
jne 0x1800be2bd
lea rdx, [rsp + 0x74]
lea rcx, [rbp + 0x418]
call fcn.18007b70c
nop
mov eax, 0x2a
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x60]
xor al, r14b
mov byte [rsp + 0x64], al
mov eax, dword [rsp + 0x60]
add al, sil
mov edx, 0x65
xor al, dl
mov byte [rsp + 0x65], al
mov eax, dword [rsp + 0x60]
add al, 2
xor al, 0x72
mov byte [rsp + 0x66], al
mov eax, dword [rsp + 0x60]
add al, 3
xor al, r15b
mov byte [rsp + 0x67], al
mov eax, dword [rsp + 0x60]
add al, 4
xor al, dl
mov byte [rsp + 0x68], al
mov eax, dword [rsp + 0x60]
add al, 5
xor al, 0x6c
mov byte [rsp + 0x69], al
mov eax, dword [rsp + 0x60]
add al, 6
xor al, 0x33
mov byte [rsp + 0x6a], al
mov eax, dword [rsp + 0x60]
add al, 7
xor al, 0x32
mov byte [rsp + 0x6b], al
xor eax, eax
mov byte [rsp + 0x6c], al
mov al, byte [rsp + 0x64]
mov rdx, rdi
mov r12d, 8
mov al, byte [rsp + rdx + 0x64]
mov ecx, dword [rsp + 0x60]
add cl, dl
xor cl, al
mov byte [rsp + rdx + 0x64], cl
add rdx, rsi
cmp rdx, r12
jb 0x1800be35a
mov byte [rsp + 0x6c], dil
xorps xmm0, xmm0
movups xmmword [rbp + 0x3f8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x408], xmm1
lea rax, [rsp + 0x64]
mov r12, qword [rbp + 0x4f0]
inc rbx
cmp byte [rax + rbx], dil
jne 0x1800be398
mov r8, rbx
lea rdx, [rsp + 0x64]
lea rcx, [rbp + 0x3f8]
call fcn.18007b70c
nop
lea rdx, [rbp + 0x3f8]
lea rcx, [rbp + 0x480]
call fcn.180188b20
nop
mov qword [rsp + 0x20], rdi
mov r9b, sil
lea r8, [rbp + 0x418]
mov rdx, rax
lea rcx, [0x1802c31e0]
call fcn.1800879fc
nop
mov rdx, qword [rbp + 0x410]
mov eax, 0x10
cmp rdx, rax
jb 0x1800be436
inc rdx
mov rcx, qword [rbp + 0x3f8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800be431
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
mov r8d, 0x1f
cmp rax, r8
jbe 0x1800be431
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 + 0x408], xmm0
mov byte [rbp + 0x3f8], dil
xor edx, edx
lea r8d, [rdx + 9]
lea rcx, [rsp + 0x64]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0xd]
lea rcx, [rsp + 0x74]
call qword [sym.imp.VCRUNTIME140.dll_memset]
lea rcx, [0x18027d714]
call fcn.18026951c
nop
lea rcx, [0x1802c2cac]
call fcn.180269690
lea rbx, [0x1802c31f8]
mov rcx, rbx
mov eax, 0x10
cmp qword [0x1802c3210], rax
cmovae rcx, qword [0x1802c31f8]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
jne 0x1800be4e1
mov rcx, rbx
mov eax, 0x10
cmp qword [0x1802c3210], rax
cmovae rcx, qword [0x1802c31f8]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x1802c31f0], rax
mov r8, rax
mov rdx, rbx
call fcn.18008c99c
lea r9, [0x18027fbfc]
xor r8d, r8d
mov edx, esi
xor ecx, ecx
call qword [0x1802c31e8]
mov r14, rax
mov qword [rbp + 0x180], rax
test rax, rax
je 0x1800bef0e
call fcn.18018920c
mov rsi, rax
mov qword [rbp + 0x508], rax
xor r8d, r8d
mov edx, r12d
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_WaitForSingleObjectEx]
mov r15d, eax
mov dword [rbp + 0x4f0], eax
call fcn.18018920c
mov rbx, rax
cmp r15d, 0x102
jne 0x1800be56e
mov rdx, rax
sub rdx, rsi
lea ecx, [r12 - 0x1f4]
cmp rdx, rcx
jb 0x1800be56e
lea ecx, [r12 + 0x1f4]
cmp rdx, rcx
ja 0x1800be56e
test rsi, rsi
je 0x1800be56e
test rax, rax
jne 0x1800bec79
cmp byte [rbp + 0x4f8], dil
jne 0x1800bec79
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov eax, 5
mov dword [rbp + 0x158], eax
mov eax, 0x29
mov word [rbp + 0x15c], ax
lea edx, [rax - 4]
mov word [rbp + 0x15e], dx
lea r10d, [rax + 0x40]
mov word [rbp + 0x160], r10w
lea eax, [rdx + 0x3f]
mov word [rbp + 0x162], ax
lea eax, [rdx + 0x51]
mov word [rbp + 0x164], ax
mov word [rbp + 0x166], r13w
mov word [rbp + 0x168], dx
lea eax, [rdx + 0x3b]
mov word [rbp + 0x16a], ax
lea ecx, [rdx + 0x52]
mov word [rbp + 0x16c], cx
mov word [rbp + 0x16e], cx
lea eax, [rdx + 0x45]
mov word [rbp + 0x170], ax
mov word [rbp + 0x172], cx
lea eax, [rdx + 0x1a]
mov word [rbp + 0x174], ax
mov word [rbp + 0x176], dx
xor eax, eax
mov word [rbp + 0x178], ax
movzx eax, word [rbp + 0x15c]
mov r8, rdi
lea r11d, [rdx - 0x24]
mov r15, qword [rbp + 0xc0]
movzx eax, word [rbp + r8*2 + 0x15c]
mov ecx, dword [rbp + 0x158]
xor cx, ax
mov word [rbp + r8*2 + 0x15c], cx
add r8, r11
cmp r8, r15
jb 0x1800be62f
mov word [rbp + 0x178], di
mov r12d, 0x6e
mov dword [rbp - 0x38], r12d
mov eax, dword [rbp - 0x38]
lea r11d, [r12 - 0x4e]
xor ax, r11w
mov word [rbp - 0x34], ax
mov eax, dword [rbp - 0x38]
lea r14d, [r12 - 0x6d]
add ax, r14w
xor ax, 0x6d
mov word [rbp - 0x32], ax
mov eax, dword [rbp - 0x38]
add ax, 2
xor ax, r10w
mov word [rbp - 0x30], ax
mov eax, dword [rbp - 0x38]
add ax, 3
lea r8d, [r12 - 2]
xor ax, r8w
mov word [rbp - 0x2e], ax
mov eax, dword [rbp - 0x38]
add ax, 4
xor ax, r8w
mov word [rbp - 0x2c], ax
mov eax, dword [rbp - 0x38]
add ax, 5
xor ax, r10w
mov word [rbp - 0x2a], ax
mov eax, dword [rbp - 0x38]
add ax, 6
lea r13d, [r12 + 5]
xor ax, r13w
mov word [rbp - 0x28], ax
mov eax, dword [rbp - 0x38]
add ax, 7
lea r8d, [r12 - 9]
xor ax, r8w
mov word [rbp - 0x26], ax
mov eax, dword [rbp - 0x38]
add ax, 8
xor ax, 0x63
mov word [rbp - 0x24], ax
mov eax, dword [rbp - 0x38]
add ax, 9
xor ax, word [rbp + 0x500]
mov word [rbp - 0x22], ax
mov eax, dword [rbp - 0x38]
add ax, 0xa
xor ax, r12w
mov word [rbp - 0x20], ax
mov eax, dword [rbp - 0x38]
add ax, 0xb
xor ax, 0x64
mov word [rbp - 0x1e], ax
mov eax, dword [rbp - 0x38]
add ax, 0xc
xor ax, r13w
mov word [rbp - 0x1c], ax
mov eax, dword [rbp - 0x38]
add ax, 0xd
xor ax, 0x2e
mov word [rbp - 0x1a], ax
mov eax, dword [rbp - 0x38]
add ax, r15w
xor ax, r11w
mov word [rbp - 0x18], ax
mov eax, dword [rbp - 0x38]
add ax, 0xf
xor ax, 0x52
mov word [rbp - 0x16], ax
mov eax, dword [rbp - 0x38]
add ax, 0x10
xor ax, r8w
mov word [rbp - 0x14], ax
mov eax, dword [rbp - 0x38]
add ax, 0x11
xor ax, r13w
mov word [rbp - 0x12], ax
mov eax, dword [rbp - 0x38]
add ax, 0x12
xor ax, 0x75
mov word [rbp - 0x10], ax
mov eax, dword [rbp - 0x38]
add ax, 0x13
xor ax, 0x6c
mov word [rbp - 0xe], ax
mov eax, dword [rbp - 0x38]
add ax, 0x14
lea r11d, [r12 + 6]
xor ax, r11w
mov word [rbp - 0xc], ax
mov eax, dword [rbp - 0x38]
add ax, 0x15
xor ax, 0x3a
mov word [rbp - 0xa], ax
mov eax, dword [rbp - 0x38]
add ax, 0x16
xor ax, 0x20
mov word [rbp - 8], ax
xor eax, eax
mov word [rbp - 6], ax
movzx eax, word [rbp - 0x34]
mov r8, rdi
lea esi, [r12 - 0x57]
movzx eax, word [rbp + r8*2 - 0x34]
mov ecx, dword [rbp - 0x38]
add cx, r8w
xor cx, ax
mov word [rbp + r8*2 - 0x34], cx
add r8, r14
cmp r8, rsi
jb 0x1800be7eb
mov word [rbp - 6], di
mov eax, 0xa
mov dword [rbp + 0x44], eax
mov eax, dword [rbp + 0x44]
xor ax, 0x5b
mov word [rbp + 0x48], ax
mov eax, dword [rbp + 0x44]
add ax, r14w
mov r15d, 0x21
xor ax, r15w
mov word [rbp + 0x4a], ax
mov eax, dword [rbp + 0x44]
add ax, 2
xor ax, 0x5d
mov word [rbp + 0x4c], ax
mov eax, dword [rbp + 0x44]
add ax, 3
lea r8d, [r15 - 1]
xor ax, r8w
mov word [rbp + 0x4e], ax
mov eax, dword [rbp + 0x44]
add ax, 4
xor ax, 0x44
mov word [rbp + 0x50], ax
mov eax, dword [rbp + 0x44]
add ax, 5
lea r14d, [r15 + 0x44]
xor ax, r14w
mov word [rbp + 0x52], ax
mov eax, dword [rbp + 0x44]
add ax, 6
xor ax, 0x6c
mov word [rbp + 0x54], ax
mov eax, dword [rbp + 0x44]
add ax, 7
xor ax, 0x61
mov word [rbp + 0x56], ax
mov eax, dword [rbp + 0x44]
add ax, 8
xor ax, 0x79
mov word [rbp + 0x58], ax
mov eax, dword [rbp + 0x44]
add ax, 9
xor ax, r14w
mov word [rbp + 0x5a], ax
mov eax, dword [rbp + 0x44]
add ax, 0xa
xor ax, 0x64
mov word [rbp + 0x5c], ax
mov eax, dword [rbp + 0x44]
add ax, 0xb
xor ax, r8w
mov word [rbp + 0x5e], ax
mov eax, dword [rbp + 0x44]
add ax, 0xc
xor ax, r14w
mov word [rbp + 0x60], ax
mov eax, dword [rbp + 0x44]
add ax, 0xd
xor ax, 0x78
mov word [rbp + 0x62], ax
mov eax, dword [rbp + 0x44]
add ax, word [rbp + 0xc0]
xor ax, r14w
mov word [rbp + 0x64], ax
mov eax, dword [rbp + 0x44]
add ax, 0xf
xor ax, 0x63
mov word [rbp + 0x66], ax
mov eax, dword [rbp + 0x44]
add ax, 0x10
xor ax, 0x75
mov word [rbp + 0x68], ax
mov eax, dword [rbp + 0x44]
add ax, 0x11
xor ax, r11w
mov word [rbp + 0x6a], ax
mov eax, dword [rbp + 0x44]
add ax, 0x12
xor ax, r10w
mov word [rbp + 0x6c], ax
mov eax, dword [rbp + 0x44]
add ax, 0x13
mov r8d, dword [rbp + 0x500]
xor ax, r8w
mov word [rbp + 0x6e], ax
mov eax, dword [rbp + 0x44]
add ax, 0x14
xor ax, r12w
mov word [rbp + 0x70], ax
mov eax, dword [rbp + 0x44]
add ax, 0x15
lea ecx, [r15 - 1]
xor ax, cx
mov word [rbp + 0x72], ax
mov eax, dword [rbp + 0x44]
add ax, 0x16
xor ax, word [rbp + 0x3a8]
mov word [rbp + 0x74], ax
mov eax, dword [rbp + 0x44]
add ax, si
lea esi, [rcx + 0x41]
xor ax, si
mov word [rbp + 0x76], ax
mov eax, dword [rbp + 0x44]
add ax, word [rbp + 0x3d0]
xor ax, r13w
mov word [rbp + 0x78], ax
mov eax, dword [rbp + 0x44]
add ax, word [rbp + 0x3c8]
xor ax, cx
mov word [rbp + 0x7a], ax
mov eax, dword [rbp + 0x44]
add ax, 0x1a
xor ax, r13w
mov word [rbp + 0x7c], ax
mov eax, dword [rbp + 0x44]
add ax, 0x1b
xor ax, 0x68
mov word [rbp + 0x7e], ax
mov eax, dword [rbp + 0x44]
add ax, 0x1c
xor ax, r8w
mov word [rbp + 0x80], ax
mov eax, dword [rbp + 0x44]
add ax, 0x1d
xor ax, 0x72
mov word [rbp + 0x82], ax
mov eax, dword [rbp + 0x44]
add ax, 0x1e
xor ax, r11w
mov word [rbp + 0x84], ax
mov eax, dword [rbp + 0x44]
add ax, 0x1f
xor ax, r14w
mov word [rbp + 0x86], ax
mov eax, dword [rbp + 0x44]
add ax, cx
xor ax, r12w
mov word [rbp + 0x88], ax
mov eax, dword [rbp + 0x44]
add ax, r15w
xor ax, r14w
mov word [rbp + 0x8a], ax
mov eax, dword [rbp + 0x44]
add ax, 0x22
xor ax, 0x64
mov word [rbp + 0x8c], ax
mov eax, dword [rbp + 0x44]
add ax, 0x23
xor ax, cx
mov word [rbp + 0x8e], ax
mov eax, dword [rbp + 0x44]
add ax, 0x24
xor ax, r8w
mov word [rbp + 0x90], ax
mov eax, dword [rbp + 0x44]
add ax, dx
xor ax, 0x72
mov word [rbp + 0x92], ax
mov eax, dword [rbp + 0x44]
add ax, 0x26
xor ax, cx
mov word [rbp + 0x94], ax
mov eax, dword [rbp + 0x44]
add ax, 0x27
xor ax, 0x66
mov word [rbp + 0x96], ax
mov eax, dword [rbp + 0x44]
add ax, 0x28
xor ax, si
mov word [rbp + 0x98], ax
mov eax, dword [rbp + 0x44]
add ax, 0x29
xor ax, r10w
mov word [rbp + 0x9a], ax
mov eax, dword [rbp + 0x44]
add ax, 0x2a
lea edx, [rcx + 0x4c]
xor ax, dx
mov word [rbp + 0x9c], ax
mov eax, dword [rbp + 0x44]
add ax, 0x2b
xor ax, r14w
mov word [rbp + 0x9e], ax
mov eax, dword [rbp + 0x44]
add ax, 0x2c
lea r8d, [r15 + 0x43]
xor ax, r8w
mov word [rbp + 0xa0], ax
mov eax, dword [rbp + 0x44]
add ax, 0x2d
xor ax, 0x2e
mov word [rbp + 0xa2], ax
mov eax, dword [rbp + 0x44]
add ax, 0x2e
xor ax, cx
mov word [rbp + 0xa4], ax
mov eax, dword [rbp + 0x44]
add ax, 0x2f
xor ax, 0x45
mov word [rbp + 0xa6], ax
mov eax, dword [rbp + 0x44]
add ax, 0x30
xor ax, dx
mov word [rbp + 0xa8], ax
mov eax, dword [rbp + 0x44]
add ax, 0x31
xor ax, si
mov word [rbp + 0xaa], ax
mov eax, dword [rbp + 0x44]
add ax, 0x32
xor ax, 0x70
mov word [rbp + 0xac], ax
mov eax, dword [rbp + 0x44]
add ax, 0x33
xor ax, r13w
mov word [rbp + 0xae], ax
mov eax, dword [rbp + 0x44]
add ax, 0x34
xor ax, r14w
mov word [rbp + 0xb0], ax
mov eax, dword [rbp + 0x44]
add ax, 0x35
xor ax, r8w
mov word [rbp + 0xb2], ax
mov eax, dword [rbp + 0x44]
add ax, 0x36
xor ax, 0x3a
mov word [rbp + 0xb4], ax
mov eax, dword [rbp + 0x44]
add ax, 0x37
xor ax, cx
mov word [rbp + 0xb6], ax
xor eax, eax
mov word [rbp + 0xb8], ax
movzx eax, word [rbp + 0x48]
mov rdx, rdi
mov rsi, qword [rbp + 0x508]
mov r14, qword [rbp + 0x180]
lea r11d, [r15 - 0x20]
lea r15d, [rcx + 0x18]
movzx eax, word [rbp + rdx*2 + 0x48]
mov ecx, dword [rbp + 0x44]
add cx, dx
xor cx, ax
mov word [rbp + rdx*2 + 0x48], cx
add rdx, r11
cmp rdx, r15
jb 0x1800bebf4
mov word [rbp + 0xb8], di
mov rdx, rbx
sub rdx, rsi
mov dword [rsp + 0x28], r9d
lea rax, [rbp + 0x15c]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp + 0x4f0]
lea r8, [rbp - 0x34]
lea rcx, [rbp + 0x48]
call fcn.180135ec0
nop
xor edx, edx
lea r8d, [rdx + 0x72]
lea rcx, [rbp + 0x48]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x30]
lea rcx, [rbp - 0x34]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x1e]
lea rcx, [rbp + 0x15c]
call qword [sym.imp.VCRUNTIME140.dll_memset]
jmp 0x1800bec83
mov r13d, 0x73
lea r12d, [r13 - 5]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
sub rbx, rsi
mov qword [rbp + 0x4f0], rbx
mov esi, 1
cmp byte [rbp + 0x4f8], dil
jne 0x1800bef03
lea eax, [rsi + 0x37]
mov dword [rbp + 0x20], eax
mov eax, dword [rbp + 0x20]
xor ax, 0x20
mov word [rbp + 0x24], ax
mov eax, dword [rbp + 0x20]
add ax, si
xor ax, 0x6d
mov word [rbp + 0x26], ax
mov eax, dword [rbp + 0x20]
lea r8d, [rsi + 1]
add ax, r8w
lea ecx, [rsi + 0x68]
xor ax, cx
mov word [rbp + 0x28], ax
mov eax, dword [rbp + 0x20]
add ax, 3
lea r9d, [rsi + 0x6b]
xor ax, r9w
mov word [rbp + 0x2a], ax
mov eax, dword [rbp + 0x20]
add ax, 4
xor ax, r9w
mov word [rbp + 0x2c], ax
mov eax, dword [rbp + 0x20]
lea r10d, [rsi + 4]
add ax, r10w
xor ax, cx
mov word [rbp + 0x2e], ax
mov eax, dword [rbp + 0x20]
add ax, 6
xor ax, r13w
mov word [rbp + 0x30], ax
mov eax, dword [rbp + 0x20]
add ax, 7
lea r11d, [rsi + 0x64]
xor ax, r11w
mov word [rbp + 0x32], ax
mov eax, dword [rbp + 0x20]
add ax, 8
xor ax, 0x63
mov word [rbp + 0x34], ax
mov eax, dword [rbp + 0x20]
lea r15d, [rsi + 8]
add ax, r15w
xor ax, word [rbp + 0x500]
mov word [rbp + 0x36], ax
mov eax, dword [rbp + 0x20]
add ax, 0xa
xor ax, r12w
mov word [rbp + 0x38], ax
mov eax, dword [rbp + 0x20]
add ax, 0xb
lea r12d, [rsi + 0x63]
xor ax, r12w
mov word [rbp + 0x3a], ax
mov eax, dword [rbp + 0x20]
lea r9d, [rsi + 0xb]
add ax, r9w
xor ax, r13w
mov word [rbp + 0x3c], ax
mov eax, dword [rbp + 0x20]
add ax, 0xd
xor ax, 0x2e
mov word [rbp + 0x3e], ax
xor eax, eax
mov word [rbp + 0x40], ax
movzx eax, word [rbp + 0x24]
mov rdx, rdi
mov r14, qword [rbp + 0xc0]
movzx eax, word [rbp + rdx*2 + 0x24]
mov ecx, dword [rbp + 0x20]
add cx, dx
xor cx, ax
mov word [rbp + rdx*2 + 0x24], cx
add rdx, rsi
cmp rdx, r14
jb 0x1800bedaf
mov word [rbp + 0x40], di
mov eax, 0x2c
mov dword [rbp - 0x7c], eax
mov eax, dword [rbp - 0x7c]
xor ax, 0x5b
mov word [rbp - 0x78], ax
mov eax, dword [rbp - 0x7c]
add ax, si
xor ax, 0x3e
mov word [rbp - 0x76], ax
mov eax, dword [rbp - 0x7c]
add ax, r8w
xor ax, 0x5d
mov word [rbp - 0x74], ax
mov eax, dword [rbp - 0x7c]
add ax, 3
mov r14d, 0x20
xor ax, r14w
mov word [rbp - 0x72], ax
mov eax, dword [rbp - 0x7c]
add ax, 4
xor ax, 0x45
mov word [rbp - 0x70], ax
mov eax, dword [rbp - 0x7c]
add ax, r10w
xor ax, 0x6c
mov word [rbp - 0x6e], ax
mov eax, dword [rbp - 0x7c]
add ax, 6
xor ax, 0x61
mov word [rbp - 0x6c], ax
mov eax, dword [rbp - 0x7c]
add ax, 7
xor ax, 0x70
mov word [rbp - 0x6a], ax
mov eax, dword [rbp - 0x7c]
add ax, 8
xor ax, r13w
mov word [rbp - 0x68], ax
mov eax, dword [rbp - 0x7c]
add ax, r15w
xor ax, r11w
mov word [rbp - 0x66], ax
mov eax, dword [rbp - 0x7c]
add ax, 0xa
xor ax, r12w
mov word [rbp - 0x64], ax
mov eax, dword [rbp - 0x7c]
add ax, 0xb
xor ax, 0x3a
mov word [rbp - 0x62], ax
mov eax, dword [rbp - 0x7c]
add ax, r9w
xor ax, r14w
mov word [rbp - 0x60], ax
xor eax, eax
mov word [rbp - 0x5e], ax
movzx eax, word [rbp - 0x78]
mov rdx, rdi
lea ebx, [r14 - 0x13]
movzx eax, word [rbp + rdx*2 - 0x78]
mov ecx, dword [rbp - 0x7c]
add cx, dx
xor cx, ax
mov word [rbp + rdx*2 - 0x78], cx
add rdx, rsi
cmp rdx, rbx
jb 0x1800beeab
mov word [rbp - 0x5e], di
lea r8, [rbp + 0x24]
mov rbx, qword [rbp + 0x4f0]
mov rdx, rbx
lea rcx, [rbp - 0x78]
call fcn.180135dc8
nop
xor edx, edx
lea r8d, [rdx + 0x1c]
lea rcx, [rbp - 0x78]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x1e]
lea rcx, [rbp + 0x24]
call qword [sym.imp.VCRUNTIME140.dll_memset]
test rbx, rbx
jne 0x1800bf025
jmp 0x1800bef18
mov rbx, rdi
mov qword [rbp + 0x4f0], rbx
cmp byte [rbp + 0x4f8], dil
jne 0x1800bf022
mov eax, 0x67
mov word [rbp + 0x132], ax
lea r11d, [rax - 0x3a]
mov word [rbp + 0x134], r11w
lea eax, [r11 + 0x3c]
mov word [rbp + 0x136], ax
lea edx, [rax - 0x3d]
mov word [rbp + 0x138], dx
lea r10d, [r11 + 0x23]
mov word [rbp + 0x13a], r10w
lea r8d, [r11 + 0x24]
mov word [rbp + 0x13c], r8w
lea r9d, [r11 + 0x2b]
mov word [rbp + 0x13e], r9w
lea ecx, [rax - 0x1c]
mov word [rbp + 0x140], cx
lea eax, [rdx + 0x39]
mov word [rbp + 0x142], ax
mov word [rbp + 0x144], dx
lea eax, [rdx + 0x26]
mov word [rbp + 0x146], ax
mov word [rbp + 0x148], cx
lea eax, [rdx + 0x29]
mov word [rbp + 0x14a], ax
mov word [rbp + 0x14c], r9w
mov word [rbp + 0x14e], r8w
mov word [rbp + 0x150], r10w
mov word [rbp + 0x152], r11w
mov word [rbp + 0x154], di
movzx eax, word [rbp + 0x132]
lea ecx, [rdx - 0x20]
lea ebx, [rdx - 0x1b]
movzx eax, word [rbp + rdi*2 + 0x132]
sub ax, cx
mov word [rbp + rdi*2 + 0x132], ax
add rdi, rsi
cmp rdi, rbx
jb 0x1800befe0
lea rcx, [rbp + 0x132]
call fcn.18007aae4
nop
xor edx, edx
lea r8d, [rdx + 0x24]
lea rcx, [rbp + 0x132]
call qword [sym.imp.VCRUNTIME140.dll_memset]
mov rbx, qword [rbp + 0x4f0]
test rbx, rbx
xorps xmm0, xmm0
js 0x1800bf031
cvtsi2sd xmm0, rbx
jmp 0x1800bf046
mov rax, rbx
shr rax, 1
and rbx, rsi
or rax, rbx
cvtsi2sd xmm0, rax
addsd xmm0, xmm0
divsd xmm0, qword [0x180280db0]
mulsd xmm0, qword [0x180280db0]
cvttsd2si rax, xmm0
jmp 0x1800bf066
mov r10d, 1
mov eax, r10d
add rsp, 0x5a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret