Function at 0x1800881d0
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov ebx, dword [rsp + 0x80]
mov r14, r9
imul eax, ecx, 0x75
mov rsi, r8
mov r12d, ecx
mov r15d, ecx
mov dword [rsp + 0x38], eax
cmp ecx, eax
ja 0x180088582
mov r13d, dword [rsp + 0x80]
lea rcx, str.LP_IDbkCompUnits::LP_IDbkCompUnits
mov rbp, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x38]
nop dword [rax]
nop dword [rax + rax]
cmp r15d, 0x55a
ja 0x1800884d0
je 0x18008849a
cmp r15d, 0xf8
ja 0x180088319
je 0x1800882c9
mov eax, r15d
sub eax, 0x4e
je 0x1800882c0
sub eax, 0x18
je 0x1800885dd
cmp eax, 0x23
jne 0x1800885c8
xor r9d, r9d
mov dword [rsp + 0x20], 0x69
xor r8d, r8d
mov rdx, r14
xor ecx, ecx
xor r13d, r13d
call fcn.180083420
test eax, eax
jne 0x180088603
cmp dword [r14 + 0x158], r13d
je 0x18008829e
cmp dword [r14 + 0x2c], r13d
jne 0x1800882b5
cmp dword [r14 + 0x2c], r13d
je 0x1800885b9
cmp dword [r14 + 0x15c], r13d
jne 0x1800885b9
mov r13d, 1
jmp 0x1800885b9
mov rbp, qword [rsi + 0x10]
jmp 0x1800885c8
mov eax, dword [rsi + 0xc]
test al, 4
jne 0x180088603
test al, 0x20
jne 0x1800885c8
cmp dword [0x180357744], 0
je 0x18008830f
mov edx, dword [0x180357778]
lea r8, [0x180341909]
mov eax, dword [rsi + 4]
lea rcx, str.Invalid_record:_metadata_strings_with_no_strings
mov r9d, dword [rsi]
mov dword [rsp + 0x20], eax
lea edx, [rdx*4]
call fcn.1800befd0
mov eax, 0xffffffff
jmp 0x180088584
cmp r15d, 0x121
je 0x180088441
cmp r15d, 0x30c
jne 0x1800885c8
mov rax, qword [r14]
cmp qword [rax + 0x10], 0
je 0x18008834b
mov r8, qword [rax + 0x18]
mov rcx, qword [rax + 0x28]
sub r8, 0x18
jmp 0x180088352
mov r8, qword [rax + 0x28]
mov rcx, r8
test rcx, rcx
jne 0x180088378
mov qword [rsi + 8], rcx
mov qword [rsi], rcx
lea rcx, str.LP_IDbkCompUnits::LP_IDbkCompUnits
mov rax, qword [r14]
mov qword [rax + 0x28], rsi
mov rax, qword [r14]
mov qword [rax + 0x30], rsi
jmp 0x1800885c8
cmp rbp, qword [rax + 8]
jae 0x1800883d2
mov rax, qword [r8 + 8]
mov rdi, r8
test rax, rax
je 0x1800883a2
nop word [rax + rax]
cmp qword [rax + 0x10], rbp
jbe 0x1800883a2
mov rdi, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x180088390
mov rax, qword [rdi + 8]
test rax, rax
je 0x1800883b0
mov qword [rax], rsi
jmp 0x1800883b7
mov rax, qword [r14]
mov qword [rax + 0x28], rsi
mov rax, qword [rdi + 8]
lea rcx, str.LP_IDbkCompUnits::LP_IDbkCompUnits
mov qword [rsi + 8], rax
mov qword [rsi], rdi
mov qword [rdi + 8], rsi
jmp 0x1800885c8
mov edx, 0x11e
mov eax, edx
sub eax, 0x11d
je 0x18008842f
cmp eax, 1
jne 0x180088432
mov rax, qword [r8]
mov rdi, r8
test rax, rax
je 0x180088404
cmp qword [rax + 0x10], rbp
jae 0x180088404
mov rcx, qword [rax]
mov rdi, rax
mov rax, rcx
test rcx, rcx
jne 0x1800883f0
mov rax, qword [rdi]
test rax, rax
je 0x18008841c
mov qword [rax + 8], rsi
mov rax, qword [rdi]
mov qword [rsi], rax
mov qword [rsi + 8], rdi
jmp 0x180088432
mov rax, qword [r14]
mov qword [rax + 0x30], rsi
mov rax, qword [rdi]
mov qword [rsi], rax
mov qword [rsi + 8], rdi
jmp 0x180088432
mov qword [rdi], rsi
dec edx
cmp edx, 0x11c
ja 0x1800883d7
jmp 0x1800885b9
cmp dword [r14 + 0x5c], 0
jle 0x1800885c8
nop dword [rax]
movsxd rcx, dword [r14 + 0x5c]
mov r8, qword [r14 + 0x10]
lea eax, [rcx - 1]
lea rdx, [rcx + rcx*2]
mov dword [r14 + 0x5c], eax
mov rcx, qword [r14 + 0x68]
mov rcx, qword [rcx + rdx*8 - 0x18]
call qword [r8 + 0x88]
movsxd rax, dword [r14 + 0x5c]
mov rdx, qword [r14 + 0x68]
lea rcx, [rax + rax*2]
mov rdx, qword [rdx + rcx*8 + 8]
mov ecx, 0x22
call fcn.1800b73a0
cmp dword [r14 + 0x5c], 0
jg 0x180088450
jmp 0x1800885b9
mov eax, dword [rdx]
lea r8, [rsp + 0x80]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x30], eax
mov r9, rsi
mov dword [rsp + 0x80], r13d
mov rcx, r14
mov dword [rsp + 0x20], 0x13b
call fcn.18008aa80
mov rbx, rax
jmp 0x1800885b9
cmp r15d, 0xa2b
ja 0x180088570
je 0x180088582
cmp r15d, 0x5ca
je 0x180088567
cmp r15d, 0x888
je 0x180088548
cmp r15d, 0x9b0
jne 0x1800885c8
test byte [rsi + 0xc], 0x80
jne 0x180088603
mov eax, dword [rsi + 0x14]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x30], eax
mov r9, r14
mov eax, dword [rsi + 0x10]
mov r8, rsi
mov qword [rsp + 0x28], rcx
mov ecx, 0xf6
mov dword [rsp + 0x80], eax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x20], rax
call fcn.1800a5680
mov ebx, eax
jmp 0x1800885b9
mov rax, qword [r14]
lea rcx, [rsi + 0x18]
mov qword [rax + 0x10], 2
mov rax, qword [r14]
mov qword [rax + 0x18], rcx
lea rcx, str.LP_IDbkCompUnits::LP_IDbkCompUnits
jmp 0x1800885c8
mov rax, qword [r14]
mov qword [rax + 8], rbp
jmp 0x1800885c8
cmp r15d, 0xb4a
je 0x18008859c
cmp r15d, 0x1268
jne 0x1800885c8
mov eax, ebx
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [r14 + 0x80]
test rdx, rdx
je 0x1800885c0
mov rax, qword [r14 + 0x10]
mov rcx, qword [r14 + 0xc0]
call qword [rax + 0x118]
lea rcx, str.LP_IDbkCompUnits::LP_IDbkCompUnits
mov rdx, qword [rsp + 0x88]
lea eax, [r15 + r12]
lea r15d, [rax + r12*8]
cmp r15d, dword [rsp + 0x38]
jbe 0x180088230
jmp 0x180088582
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rdx, str.error__n
call fcn.1800bee00
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor eax, eax
jmp 0x180088584