Function at 0x140074780
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
xor ebx, ebx
mov r10, r9
mov r14, rcx
mov rcx, qword [rdx + 0x20]
mov r9, r8
mov r12, rdx
mov ebp, ebx
mov word [rsp + 0x80], bx
lea esi, [rbx + 1]
lea r11d, [rbx + 0x40]
cmp dword [rdx + 0x14], ebx
jle 0x1400747ed
mov r8d, dword [r10 + 0x44]
add rcx, 0x30
mov edx, dword [rdx + 0x14]
cmp dword [rcx - 0x14], r8d
jne 0x1400747e5
test qword [rcx], r9
jne 0x1400747e5
movzx eax, word [rcx - 0x1c]
test eax, 0xfffff7ff
je 0x1400747e5
add ebp, esi
add rcx, r11
sub rdx, rsi
jne 0x1400747cd
mov r13, qword [rsp + 0xa0]
mov edi, ebx
mov r15d, 2
test r13, r13
je 0x140074847
mov r8d, ebx
cmp dword [r13], ebx
jle 0x14007483e
movsxd r11, dword [r13]
lea rcx, [r13 + 0x20]
mov rdx, rbx
mov r9, qword [rcx - 0x18]
cmp byte [r9], 0xa2
jne 0x14007483e
mov eax, dword [r10 + 0x44]
cmp dword [r9 + 0x28], eax
jne 0x14007483e
test byte [rcx], r15b
jne 0x14007483e
add r8d, esi
add rdx, rsi
add rcx, 0x28
cmp rdx, r11
jl 0x140074816
cmp r8d, dword [r13]
cmove edi, dword [r13]
mov rcx, qword [r14]
movsxd rsi, ebp
movsxd r15, edi
lea rdx, [rsi + rsi*4]
shl rdx, 2
add rdx, 0x70
lea rdx, [rdx + r15*8]
call fcn.140016a64
mov qword [rsp + 0x88], rax
mov r10, rax
test rax, rax
jne 0x14007488b
lea rdx, str.out_of_memory
mov rcx, r14
call fcn.1400191b8
xor eax, eax
jmp 0x140074a3c
lea r8, [rax + 0x70]
mov qword [r10 + 0x68], r14
lea rax, [rsi + rsi*2]
mov dword [r10], ebp
lea rsi, [r8 + rax*4]
mov dword [r10 + 0x10], edi
mov qword [r10 + 8], r8
lea rax, [rsi + r15*8]
mov qword [r10 + 0x20], rax
mov r11d, ebx
mov qword [r10 + 0x18], rsi
mov r14d, 1
mov qword [r10 + 0x60], r12
mov r9, qword [r12 + 0x20]
mov qword [rsp + 0x20], rsi
cmp dword [r12 + 0x14], ebx
jle 0x1400749fe
mov r13d, dword [rsp + 0x80]
lea esi, [r14 + 0x3f]
mov rdi, qword [rsp + 0x98]
lea r10d, [r14 + 1]
mov rbp, qword [rsp + 0x90]
add r8, 4
mov edx, 0x180
mov eax, dword [rdi + 0x44]
cmp dword [r9 + 0x1c], eax
jne 0x1400749d0
test qword [r9 + 0x30], rbp
jne 0x1400749d0
movzx ecx, word [r9 + 0x14]
test ecx, 0xfffff7ff
je 0x1400749d0
test byte [rdi + 0x3c], 8
je 0x14007493d
mov rax, qword [r9]
test byte [rax + 4], r14b
jne 0x14007493d
test dx, cx
jne 0x1400749d0
mov eax, dword [r9 + 0x28]
mov dword [r8 - 4], eax
mov eax, 0x1fff
mov dword [r8 + 4], r11d
movzx edx, word [r9 + 0x14]
and dx, ax
cmp dx, r14w
jne 0x140074996
movzx edx, r10w
mov byte [r8], dl
test dl, 0x3c
je 0x1400749c7
mov rcx, qword [r9]
mov rcx, qword [rcx + 0x18]
call fcn.1400424f8
cmp eax, r14d
jle 0x1400749c7
mov ecx, 0x10
cmp r11d, ecx
jge 0x14007498b
movzx r13d, r13w
bts r13d, r11d
cmp dx, cx
jne 0x1400749bd
mov byte [r8], 8
jmp 0x1400749c7
cmp dx, si
jne 0x1400749a1
mov al, byte [r9 + 0x17]
jmp 0x1400749b8
mov eax, 0x180
test ax, dx
je 0x140074960
mov eax, 0x100
cmp dx, ax
setne al
add al, 0x47
mov byte [r8], al
jmp 0x1400749c7
cmp dx, 4
jne 0x1400749c7
mov byte [r8], 0x20
add r8, 0xc
mov edx, 0x180
add r11d, r14d
add r9, rsi
cmp r11d, dword [r12 + 0x14]
jl 0x1400748fd
mov r10, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x20]
mov dword [rsp + 0x80], r13d
mov r13, qword [rsp + 0xa0]
test r15, r15
jle 0x140074a27
lea rdx, [r13 + 0x20]
mov rax, qword [rdx - 0x18]
movsx ecx, word [rax + 0x2c]
mov dword [rsi + rbx*8], ecx
mov al, byte [rdx]
lea rdx, [rdx + 0x28]
and al, r14b
mov byte [rsi + rbx*8 + 4], al
add rbx, r14
cmp rbx, r15
jl 0x140074a07
mov rax, qword [rsp + 0xa8]
mov ecx, dword [rsp + 0x80]
mov word [rax], cx
mov rax, r10
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret