Function at 0x18006a740
Capabilities:
Encode data using xor
Hash data with crc32
Link many functions at runtime

Disassembly:
mov dword [rsp + 8], ecx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x88]
sub rsp, 0x188
mov ebx, ecx
mov dword [rbp + 0xd8], 0
lea rcx, [rbp + 0x38]
call fcn.18007fb80
mov rdx, qword [rax]
mov rcx, qword [rdx + 8]
cmp byte [rcx + 0x19], 0
jne 0x18006a798
cmp dword [rcx + 0x20], ebx
jae 0x18006a78c
mov rcx, qword [rcx + 0x10]
jmp 0x18006a792
mov rdx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x18006a781
cmp byte [rdx + 0x19], 0
jne 0x18006a7c1
cmp ebx, dword [rdx + 0x20]
jb 0x18006a7c1
mov rdx, rax
mov rcx, rax
call fcn.180081ad0
lea rdx, [rbp + 0xd0]
call fcn.18007fa80
mov eax, dword [rax]
jmp 0x18006b410
mov rdx, rax
mov rcx, rax
call fcn.180081ad0
lea rdx, str.il2cpp_domain_get
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov rbx, rax
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x20], 0
lea rdx, str.il2cpp_domain_get_assemblies
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x20]
mov rcx, rbx
call rax
mov rdi, rax
mov qword [rbp + 0x38], rax
xor esi, esi
mov dword [rbp + 0xe8], esi
mov qword [rsp + 0x50], rsi
lea rdx, str.il2cpp_domain_get_assemblies
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rsp + 0x50]
mov rcx, rbx
call rax
cmp qword [rsp + 0x50], rsi
jbe 0x18006b40e
xor ebx, ebx
mov qword [rbp - 0x18], rbx
movabs r13, 0x7fffffffffffffff
nop dword [rax + rax]
mov rax, qword [rdi + rbx*8]
mov r12, qword [rax]
mov qword [rbp + 0x28], r12
xor edi, edi
mov dword [rbp + 0xe0], edi
lea rdx, str.il2cpp_image_get_class_count
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
call rax
test rax, rax
je 0x18006b2ca
xor ebx, ebx
nop word [rax + rax]
mov rdx, qword [r12]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], 0xf
mov byte [rsp + 0x30], 0
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x18006a8c3
lea rcx, [rsp + 0x30]
call fcn.180056af0
nop
lea rbx, [rsp + 0x30]
mov r14, qword [rsp + 0x30]
mov r15, qword [rsp + 0x48]
cmp r15, 0x10
cmovae rbx, r14
mov rsi, qword [rsp + 0x40]
cmp rsi, 4
jb 0x18006a97a
lea rdi, [rsi + rbx]
lea r8, [rdi - 3]
sub r8, rbx
mov edx, 0x2e
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
je 0x18006a974
nop
xor edx, edx
lea rax, str..dll
nop dword [rax]
movzx ecx, byte [r9 + rdx]
inc rdx
cmp cl, byte [rax + rdx - 1]
jne 0x18006a948
cmp rdx, 4
jne 0x18006a930
xor eax, eax
jmp 0x18006a94d
sbb eax, eax
or eax, 1
test eax, eax
je 0x18006aad1
inc r9
lea r8, [rdi - 3]
sub r8, r9
mov edx, 0x2e
mov rcx, r9
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
jne 0x18006a920
mov edi, dword [rbp + 0xe0]
mov r9, 0xffffffffffffffff
cmp rsi, r9
jb 0x18006b424
mov rax, rsi
sub rax, r9
mov edx, 4
cmp rax, rdx
cmovb rdx, rax
lea rcx, [rsp + 0x30]
cmp r15, 0x10
cmovae rcx, r14
add rcx, r9
sub rsi, rdx
mov qword [rsp + 0x40], rsi
sub rsi, r9
lea r8, [rsi + 1]
add rdx, rcx
call sub.VCRUNTIME140.dll_memmove
lea rdx, str.il2cpp_image_get_class
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
movsxd rdx, edi
mov rcx, r12
call rax
mov qword [rbp - 0x20], rax
mov r12, qword [rax + 0x10]
mov rsi, qword [rax + 0x18]
xor edi, edi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x70], 0xf
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rsi + r8], dil
jne 0x18006aa07
mov rdx, rsi
lea rcx, [rsp + 0x58]
call fcn.180056af0
cmp qword [rsp + 0x68], rdi
sete bl
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x18006aa62
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006aa5d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b3b9
call fcn.18008976c
mov rax, r13
test bl, bl
je 0x18006ac58
mov rsi, qword [rsp + 0x40]
sub rax, rsi
cmp rax, 2
jb 0x18006b430
lea r15, [rsp + 0x30]
cmp qword [rsp + 0x48], 0x10
cmovae r15, qword [rsp + 0x30]
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x70], rdi
lea r14, [rsi + 2]
mov ebx, 0xf
lea rdi, [rsp + 0x58]
cmp r14, rbx
jbe 0x18006ab3b
mov rbx, r14
or rbx, 0xf
cmp rbx, r13
jbe 0x18006aadf
mov rbx, r13
movabs rax, 0x8000000000000027
jmp 0x18006ab06
sub r9, rbx
mov edi, dword [rbp + 0xe0]
jmp 0x18006a981
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18006ab25
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18006b42a
mov rcx, rax
call fcn.18008939c
test rax, rax
je 0x18006b31f
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18006ab36
test rcx, rcx
je 0x18006ab34
call fcn.18008939c
mov rdi, rax
jmp 0x18006ab36
xor edi, edi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov r8, rsi
mov rdx, r15
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov eax, 0x3a3a
mov word [rdi + rsi], ax
mov byte [rdi + r14], 0
mov r14d, dword [rbp + 0xd8]
or r14d, 1
mov r8, 0xffffffffffffffff
inc r8
cmp byte [r12 + r8], 0
jne 0x18006ab73
mov rdx, r12
lea rcx, [rsp + 0x58]
call fcn.180056c50
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x10], xmm1
xor ebx, ebx
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
or r14d, 2
mov dword [rbp + 0xd8], r14d
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18006abf9
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006abec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b318
call fcn.18008976c
movups xmm0, xmmword [rbp + 0x48]
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm1
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x18006ac40
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006ac3b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b31f
call fcn.18008976c
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], 0xf
mov byte [rsp + 0x58], 0
jmp 0x18006af94
mov r14, qword [rsp + 0x40]
sub rax, r14
cmp rax, 2
jb 0x18006b448
lea r13, [rsp + 0x30]
cmp qword [rsp + 0x48], 0x10
cmovae r13, qword [rsp + 0x30]
mov qword [rbp - 0x68], rdi
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x50], rdi
lea r15, [r14 + 2]
mov ebx, 0xf
lea rdi, [rbp - 0x68]
cmp r15, rbx
jbe 0x18006ad1d
mov rbx, r15
or rbx, 0xf
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
jbe 0x18006acc2
mov rbx, rax
movabs rax, 0x8000000000000027
jmp 0x18006ace9
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18006ad08
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18006b436
mov rcx, rax
call fcn.18008939c
test rax, rax
je 0x18006b33b
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18006ad19
test rcx, rcx
je 0x18006ad17
call fcn.18008939c
mov rdi, rax
jmp 0x18006ad19
xor edi, edi
mov qword [rbp - 0x68], rdi
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], rbx
mov r8, r14
mov rdx, r13
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov r13d, 0x3a3a
mov word [rdi + r14], r13w
mov byte [rdi + r15], 0
mov r14d, dword [rbp + 0xd8]
or r14d, 4
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rsi + r8], 0
jne 0x18006ad55
mov rdx, rsi
lea rcx, [rbp - 0x68]
call fcn.180056c50
xor ebx, ebx
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x78], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
mov rcx, qword [rbp - 0x78]
mov rdx, qword [rbp - 0x70]
mov rax, rdx
sub rax, rcx
cmp rax, 2
jb 0x18006add3
lea rax, [rcx + 2]
mov qword [rbp - 0x78], rax
lea rax, [rsp + 0x78]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x78]
mov word [rax + rcx], r13w
mov byte [rax + rcx + 2], bl
lea rax, [rsp + 0x78]
jmp 0x18006adf2
mov qword [rsp + 0x20], 2
lea r9, [0x1800a1944]
mov edx, 2
lea rcx, [rsp + 0x78]
call fcn.180058fc0
mov qword [rbp - 0x10], rbx
mov qword [rbp], rbx
mov qword [rbp + 8], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8, 0xffffffffffffffff
inc r8
cmp byte [r12 + r8], 0
jne 0x18006ae23
mov rdx, r12
lea rcx, [rbp - 0x10]
call fcn.180056c50
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x48], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or r14d, 0x38
mov dword [rbp + 0xd8], r14d
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18006aea7
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006ae9a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b326
call fcn.18008976c
movups xmm0, xmmword [rbp + 0x10]
movups xmm1, xmmword [rbp + 0x48]
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm1
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x18006aeec
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006aee7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b32d
call fcn.18008976c
mov qword [rbp], rbx
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], 0
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x18006af38
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006af33
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b334
call fcn.18008976c
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], 0xf
mov byte [rsp + 0x78], 0
mov rdx, qword [rbp - 0x50]
cmp rdx, 0x10
jb 0x18006af84
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006af7f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b33b
call fcn.18008976c
mov qword [rbp - 0x58], rbx
mov qword [rbp - 0x50], 0xf
mov byte [rbp - 0x68], 0
mov qword [rbp - 0x28], rbx
lea rdx, str.il2cpp_class_get_fields
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp - 0x28]
mov rcx, qword [rbp - 0x20]
call rax
mov r13, rax
test rax, rax
je 0x18006b22f
lea rdx, str.il2cpp_field_get_name
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r13
call rax
mov rsi, rax
mov r15, qword [rsp + 0x40]
movabs rax, 0x7fffffffffffffff
mov rcx, rax
sub rcx, r15
cmp rcx, 2
jb 0x18006b442
lea r12, [rsp + 0x30]
cmp qword [rsp + 0x48], 0x10
cmovae r12, qword [rsp + 0x30]
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x30], rbx
lea r14, [r15 + 2]
mov ebx, 0xf
lea rdi, [rbp - 0x48]
cmp r14, rbx
jbe 0x18006b0a2
mov rbx, r14
or rbx, 0xf
cmp rbx, rax
jbe 0x18006b047
mov rbx, rax
movabs rax, 0x8000000000000027
jmp 0x18006b06e
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18006b08d
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18006b43c
mov rcx, rax
call fcn.18008939c
test rax, rax
je 0x18006b342
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18006b09e
test rcx, rcx
je 0x18006b09c
call fcn.18008939c
mov rdi, rax
jmp 0x18006b09e
xor edi, edi
mov qword [rbp - 0x48], rdi
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], rbx
mov r8, r15
mov rdx, r12
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov eax, 0x3a3a
mov word [rdi + r15], ax
mov byte [rdi + r14], 0
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rsi + r8], 0
jne 0x18006b0d0
mov rdx, rsi
lea rcx, [rbp - 0x48]
call fcn.180056c50
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x68], xmm1
xor ebx, ebx
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
or dword [rbp + 0xd8], 0xc0
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x18006b14a
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006b145
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b349
call fcn.18008976c
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x30], 0xf
mov byte [rbp - 0x48], 0
lea rax, [rbp + 0x58]
mov rdi, qword [rbp + 0x58]
mov rsi, qword [rbp + 0x70]
cmp rsi, 0x10
cmovae rax, rdi
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x18006b175
lea r8, [rbp + 0x58]
cmp rsi, 0x10
cmovae r8, rdi
mov eax, 0xffffffff
test ecx, ecx
je 0x18006b1c0
mov r9d, ecx
lea rsi, [0x180096f80]
nop dword [rax]
movsx edx, byte [r8]
mov ecx, eax
xor rdx, rcx
movzx ecx, dl
shr eax, 8
xor eax, dword [rsi + rcx*4]
lea r8, [r8 + 1]
sub r9, 1
jne 0x18006b1a0
mov rsi, qword [rbp + 0x70]
not eax
cmp eax, dword [rbp + 0xd0]
je 0x18006b350
cmp rsi, 0x10
jb 0x18006b205
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18006b1fd
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b3b9
mov rcx, rdi
call fcn.18008976c
lea rdx, str.il2cpp_class_get_fields
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp - 0x28]
mov rcx, qword [rbp - 0x20]
call rax
mov r13, rax
test rax, rax
jne 0x18006afc2
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18006b26c
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006b267
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006b407
call fcn.18008976c
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], 0xf
mov byte [rsp + 0x30], 0
mov edi, dword [rbp + 0xe0]
inc edi
mov dword [rbp + 0xe0], edi
lea rdx, str.il2cpp_image_get_class_count
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r12, qword [rbp + 0x28]
mov rcx, r12
call rax
movsxd rcx, edi
cmp rcx, rax
movabs r13, 0x7fffffffffffffff
jb 0x18006a8a0
mov rbx, qword [rbp - 0x18]
mov esi, dword [rbp + 0xe8]
inc esi
mov dword [rbp + 0xe8], esi
inc rbx
mov qword [rbp - 0x18], rbx
mov qword [rsp + 0x50], 0
lea rdx, str.il2cpp_domain_get_assemblies
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rsp + 0x50]
mov rcx, qword [rbp + 0x30]
call rax
movsxd rax, esi
cmp rax, qword [rsp + 0x50]
jae 0x18006b40e
mov rdi, qword [rbp + 0x38]
jmp 0x18006a860
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 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 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]
int3
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]
int3
lea rdx, str.il2cpp_field_get_offset
mov rcx, qword [0x1800f8a28]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r13
call rax
mov ebx, eax
mov ecx, dword [rbp + 0xd0]
mov dword [rbp + 0xd8], ecx
mov dword [rbp + 0xdc], ebx
lea r8, [rbp + 0xd8]
lea rdx, [rbp + 0x10]
call fcn.180081140
nop
cmp rsi, 0x10
jb 0x18006b3c9
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18006b3c0
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18006b3c0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.18008976c
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18006b402
inc rdx
mov rcx, qword [rsp + 0x30]
mov r8, rcx
cmp rdx, 0x1000
jb 0x18006b3fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x18006b407
call fcn.18008976c
mov rax, rbx
jmp 0x18006b410
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
xor eax, eax
add rsp, 0x188
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1800592d0
nop
call fcn.180011b40
int3
call fcn.180044ef0
int3
call fcn.180011b40
int3
call fcn.180011b40
int3
call fcn.180044ef0
int3
call fcn.180044ef0
int3