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

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
mov rdi, qword [rsp + 0xe0]
xor esi, esi
mov r12, qword [rsp + 0xd8]
mov r11, r8
mov r14, qword [rcx + 0x10]
mov rbx, rcx
mov dword [rsp + 0x30], esi
movzx r10d, byte [rdi]
mov eax, dword [rdi + 4]
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x34], eax
test r12, r12
je 0x1400763e1
movzx eax, byte [r12 + 1]
jmp 0x1400763e3
mov eax, esi
mov r13, qword [rsp + 0xd0]
mov dword [rsp + 0x3c], eax
test r13, r13
je 0x140076405
cmp qword [r13], rsi
jne 0x140076431
mov r13, rsi
mov qword [rsp + 0xd0], rsi
test eax, eax
jne 0x140076431
mov r8d, dword [rsp + 0xe8]
mov rcx, r14
mov edx, dword [rdx + 0x10]
call fcn.140076210
mov r9d, dword [rsp + 0xc8]
mov r10d, dword [rsp + 0x38]
mov r11, qword [rsp + 0xc0]
movsxd r15, dword [r11]
lea rdx, [rbx + 0x54]
mov eax, dword [rdi + 8]
mov dword [rsp + 0x48], r15d
test eax, eax
jne 0x140076470
test r13, r13
je 0x140076464
mov rax, qword [r13]
test byte [r13 + 0x1c], 1
mov ecx, dword [rax]
lea r8d, [rcx + 1]
cmovne r8d, ecx
add dword [rdx], r8d
mov dword [rsp + 0x30], r8d
mov eax, dword [rdx]
inc eax
mov dword [rdi + 8], eax
add dword [rdx], r15d
jmp 0x14007647f
mov ecx, dword [rdx]
add eax, r15d
cmp eax, ecx
jle 0x14007647f
lea eax, [rcx + r15]
mov dword [rdx], eax
mov ebp, dword [rdi + 8]
mov dword [rsp + 0x44], ebp
mov dword [rdi + 0xc], r15d
test r9d, r9d
js 0x1400764ff
mov edi, esi
test r15d, r15d
jle 0x140076521
nop word [rax + rax]
mov rax, qword [r14 + 0x30]
movsxd r12, dword [r14 + 0x3c]
cmp dword [rax + 0x60], r12d
jg 0x1400764c2
mov rcx, r14
call fcn.14002fb00
mov r9d, dword [rsp + 0xc8]
test eax, eax
jne 0x1400764ee
mov rax, qword [r14 + 8]
lea rcx, [r12 + r12*2]
inc dword [r14 + 0x3c]
mov word [rax + rcx*8], 0x2f
mov byte [rax + rcx*8 + 3], sil
lea rdx, [rax + rcx*8]
lea eax, [rdi + rbp]
mov dword [rdx + 4], r9d
mov dword [rdx + 0xc], eax
mov dword [rdx + 8], edi
mov qword [rdx + 0x10], rsi
inc edi
cmp edi, r15d
jl 0x1400764a0
mov r12, qword [rsp + 0xd8]
jmp 0x14007651d
cmp r10b, 3
je 0x140076521
lea eax, [r10 - 9]
mov r8d, ebp
test al, 0xfb
mov rdx, r11
mov rcx, rbx
sete r9b
call fcn.14004b600
lea rdx, [rbx + 0x54]
cmp dword [rsp + 0x3c], esi
je 0x1400767ee
movzx ecx, byte [r12 + 1]
sub ecx, 1
je 0x140076739
cmp ecx, 1
je 0x140076560
mov r8d, dword [rsp + 0xe8]
mov r9d, r15d
mov edx, dword [r12 + 4]
mov rcx, rbx
mov dword [rsp + 0x20], ebp
call fcn.140076290
jmp 0x14007677f
mov eax, dword [rdx]
lea r8d, [rax + 1]
add eax, r15d
mov dword [rdx], eax
movsxd rax, dword [r12 + 8]
mov ecx, dword [r14 + 0x3c]
mov dword [rsp + 0xc8], r8d
mov dword [rsp + 0xd8], eax
cmp eax, ecx
jge 0x1400765d1
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 8]
movsx edx, byte [rax + rcx*8 + 1]
lea rdi, [rax + rcx*8]
mov r8, qword [rdi + 0x10]
mov rcx, qword [r14]
call fcn.14002ffb0
mov r8d, dword [rsp + 0xc8]
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rax
mov byte [rdi], 0x9a
mov ecx, dword [r14 + 0x3c]
lea eax, [rcx - 1]
cmp dword [rsp + 0xd8], eax
jne 0x1400765d1
mov dword [r14 + 0x3c], eax
mov ecx, eax
mov rax, qword [r14]
mov edx, dword [r12 + 8]
cmp byte [rax + 0x50], sil
je 0x1400765e8
lea rax, [0x1400e7220]
jmp 0x1400765fe
lea eax, [rcx - 1]
test edx, edx
cmovns eax, edx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 8]
lea rax, [rax + rcx*8]
mov byte [rax], 0x1c
mov r12d, esi
mov dword [rax + 4], 1
mov dword [rax + 8], r8d
mov eax, dword [r14 + 0x3c]
add eax, r15d
mov dword [rsp + 0x3c], eax
test r15d, r15d
jle 0x1400766e7
lea eax, [r15 - 1]
mov r13, rsi
mov dword [rsp + 0xd8], eax
mov eax, ebp
mov ebp, dword [rsp + 0xc8]
sub eax, r8d
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xc0]
mov rcx, rbx
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + r13]
call fcn.140044940
cmp r12d, dword [rsp + 0xd8]
lea ecx, [r12 + rbp]
mov r9d, dword [rsp + 0xe8]
mov edx, esi
cmovl r9d, dword [rsp + 0x3c]
mov rdi, rax
mov r8d, dword [rsp + 0x40]
add r8d, ecx
mov dword [rsp + 0x20], ecx
cmp r12d, dword [rsp + 0xd8]
mov rcx, r14
setge dl
add edx, 0x4e
call fcn.14002fbb0
mov r9d, 0xfffffffc
mov r8, rdi
mov rcx, r14
lea edx, [r9 + 3]
call fcn.1400301e0
mov rdx, qword [r14 + 8]
test rdx, rdx
je 0x1400766c5
movsxd rax, dword [r14 + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 0x80
inc r12d
add r13, 0x28
sub r15, 1
jne 0x140076641
mov ebp, dword [rsp + 0x44]
mov r15d, dword [rsp + 0x48]
mov r13, qword [rsp + 0xd0]
mov rax, qword [r14 + 0x30]
movsxd rdi, dword [r14 + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x140076704
mov rcx, r14
call fcn.14002fb00
test eax, eax
jne 0x14007677f
mov rax, qword [r14 + 8]
lea rcx, [rdi + rdi*2]
inc dword [r14 + 0x3c]
mov word [rax + rcx*8], 0x21
mov byte [rax + rcx*8 + 3], sil
lea rdx, [rax + rcx*8]
mov eax, dword [rsp + 0xc8]
mov dword [rdx + 4], ebp
mov dword [rdx + 8], eax
lea eax, [r15 - 1]
mov dword [rdx + 0xc], eax
mov qword [rdx + 0x10], rsi
jmp 0x14007677f
movsxd r12, dword [r12 + 8]
cmp r12d, dword [r14 + 0x3c]
jge 0x14007677f
mov rax, qword [r14 + 8]
lea rcx, [r12 + r12*2]
movsx edx, byte [rax + rcx*8 + 1]
lea rdi, [rax + rcx*8]
mov r8, qword [rdi + 0x10]
mov rcx, qword [r14]
call fcn.14002ffb0
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rax
mov byte [rdi], 0x9a
mov eax, dword [r14 + 0x3c]
dec eax
cmp r12d, eax
jne 0x14007677f
mov dword [r14 + 0x3c], eax
mov r12, qword [rsp + 0xb8]
test r13, r13
jne 0x1400767f6
mov r8d, dword [r12 + 0x10]
test r8d, r8d
jle 0x1400767f6
xor r9d, r9d
mov dword [rsp + 0x20], 0xffffffff
mov edx, 0x8a
mov rcx, r14
call fcn.14002fbb0
mov r9d, dword [rsp + 0xe8]
lea edx, [r13 + 0x10]
xor r8d, r8d
mov edi, eax
mov rcx, r14
mov dword [rsp + 0x20], esi
call fcn.14002fbb0
mov edx, dword [r14 + 0x3c]
cmp edx, edi
jbe 0x1400767df
mov rax, qword [r14 + 8]
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [r14 + 0x3c]
mov rax, qword [r14 + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
jmp 0x1400767f6
mov r12, qword [rsp + 0xb8]
mov r9d, dword [rsp + 0x38]
lea eax, [r9 - 1]
cmp eax, 0xd
ja case.0x14007681b.4
lea rdx, [0x140000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x76eb0]
add rcx, rdx
jmp rcx
movzx eax, byte [rbx + 0x1f]
test al, al
jne 0x14007682d
inc dword [rbx + 0x54]
mov edi, dword [rbx + 0x54]
jmp 0x140076839
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov edi, dword [rbx + rax*4 + 0x24]
mov r9d, r15d
mov dword [rsp + 0x20], edi
mov r8d, ebp
mov edx, 0x31
mov rcx, r14
call fcn.14002fbb0
mov r8d, dword [rsp + 0x34]
mov r9d, edi
mov edx, 0x6e
mov dword [rsp + 0x20], esi
mov rcx, r14
call fcn.14002fbb0
test edi, edi
je case.0x14007681b.4
cmp byte [rbx + 0x1f], 8
jae case.0x14007681b.4
lea rax, [rbx + 0x88]
cmp dword [rax + 0xc], edi
je 0x1400768a2
inc esi
add rax, 0x14
cmp esi, 0xa
jl 0x140076882
movzx eax, byte [rbx + 0x1f]
mov dword [rbx + rax*4 + 0x24], edi
inc byte [rbx + 0x1f]
jmp case.0x14007681b.4
mov byte [rax + 6], 1
jmp case.0x14007681b.4
mov r8d, dword [rsp + 0x34]
mov r9d, ebp
mov edx, 0x6f
mov dword [rsp + 0x20], r15d
mov rcx, r14
call fcn.14002fbb0
jmp case.0x14007681b.4
mov r8d, dword [rsp + 0x30]
mov edx, dword [rbx + 0x44]
mov r12d, dword [rbx + 0x48]
lea ecx, [r8 + 1]
cmp ecx, edx
jg 0x1400768ec
lea eax, [r12 + rcx]
sub edx, ecx
mov dword [rbx + 0x48], eax
mov dword [rbx + 0x44], edx
jmp 0x1400768f8
mov eax, dword [rbx + 0x54]
lea r12d, [rax + 1]
add eax, ecx
mov dword [rbx + 0x54], eax
lea eax, [r12 + r8]
mov r9d, r15d
mov r8d, ebp
mov dword [rsp + 0x20], eax
mov edx, 0x31
mov rcx, r14
call fcn.14002fbb0
cmp byte [rsp + 0x38], 6
mov ebp, dword [rsp + 0x34]
jne 0x140076967
mov r9d, dword [r14 + 0x3c]
lea r8d, [rbp + 1]
add r9d, 4
mov dword [rsp + 0x20], r12d
mov edx, 0x45
mov rcx, r14
call fcn.14002fbb0
mov r9d, 0xfffffff2
xor r8d, r8d
mov edx, eax
mov rcx, r14
call fcn.1400301e0
mov r9d, r12d
mov dword [rsp + 0x20], esi
lea r8d, [rbp + 1]
mov edx, 0x6e
mov rcx, r14
call fcn.14002fbb0
test r13, r13
je 0x14007699b
mov edi, dword [rsp + 0x30]
mov rdx, r13
mov rbp, qword [rsp + 0xb8]
mov rcx, rbx
mov dword [rsp + 0x28], edi
mov r8, rbp
mov dword [rsp + 0x20], 1
lea r9d, [r12 + rdi]
call fcn.140075df0
jmp 0x140076a3d
movzx eax, byte [rbx + 0x1f]
test al, al
jne 0x1400769ab
inc dword [rbx + 0x54]
mov edi, dword [rbx + 0x54]
jmp 0x1400769b7
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov edi, dword [rbx + rax*4 + 0x24]
mov r9d, edi
mov dword [rsp + 0x20], esi
mov r8d, ebp
mov edx, 0x4a
mov rcx, r14
call fcn.14002fbb0
mov r9d, r12d
mov dword [rsp + 0x20], edi
mov r8d, ebp
mov edx, 0x4b
mov rcx, r14
call fcn.14002fbb0
mov rdx, qword [r14 + 8]
test rdx, rdx
je 0x1400769fb
movsxd rax, dword [r14 + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 8
test edi, edi
je 0x140076a31
cmp byte [rbx + 0x1f], 8
jae 0x140076a31
lea rax, [rbx + 0x88]
nop dword [rax]
cmp dword [rax + 0xc], edi
je 0x140076a2d
inc esi
add rax, 0x14
cmp esi, 0xa
jl 0x140076a10
movzx eax, byte [rbx + 0x1f]
mov dword [rbx + rax*4 + 0x24], edi
inc byte [rbx + 0x1f]
jmp 0x140076a31
mov byte [rax + 6], 1
mov rbp, qword [rsp + 0xb8]
mov edi, dword [rsp + 0x30]
lea r11d, [rdi + 1]
mov edx, r12d
mov r8d, r11d
mov rcx, rbx
call fcn.140049900
cmp r11d, dword [rbx + 0x44]
jle 0x140076e9a
mov dword [rbx + 0x44], r11d
mov dword [rbx + 0x48], r12d
jmp 0x140076e9a
mov rax, qword [rsp + 0xc0]
mov r15, qword [rsp + 0xe0]
mov rcx, qword [rax + 8]
movzx edx, byte [r15 + 1]
mov rcx, qword [rcx]
call fcn.140044ad0
mov byte [r15 + 1], al
test r13, r13
jne 0x140076b9b
movzx eax, byte [rbx + 0x1f]
test al, al
jne 0x140076aa4
inc dword [rbx + 0x54]
mov edi, dword [rbx + 0x54]
jmp 0x140076ab0
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov edi, dword [rbx + rax*4 + 0x24]
mov r9d, 1
mov dword [rsp + 0x20], edi
mov r8d, ebp
mov rcx, r14
lea edx, [r9 + 0x30]
call fcn.14002fbb0
mov r9d, 1
lea r8, [r15 + 1]
mov edx, eax
mov rcx, r14
call fcn.1400301e0
mov r8d, 1
mov edx, ebp
mov rcx, rbx
call fcn.140049900
mov r8d, dword [rsp + 0x34]
mov r9d, edi
mov edx, 0x6e
mov dword [rsp + 0x20], esi
mov rcx, r14
call fcn.14002fbb0
test edi, edi
je 0x140076b32
cmp byte [rbx + 0x1f], 8
jae 0x140076b32
lea rax, [rbx + 0x88]
cmp dword [rax + 0xc], edi
je 0x140076b71
inc esi
add rax, 0x14
cmp esi, 0xa
jl 0x140076b17
movzx eax, byte [rbx + 0x1f]
mov dword [rbx + rax*4 + 0x24], edi
inc byte [rbx + 0x1f]
mov rbp, qword [rsp + 0xb8]
mov r8d, dword [rbp + 0xc]
test r8d, r8d
je 0x140076b60
mov r9d, dword [rsp + 0xf0]
mov edx, 0x8b
mov rcx, r14
mov dword [rsp + 0x20], 0xffffffff
call fcn.14002fbb0
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov byte [rax + 6], 1
jmp 0x140076b32
mov r9d, dword [rsp + 0x34]
mov edx, 0x19
mov rcx, r14
mov dword [rsp + 0x20], esi
lea r8d, [rdx - 0x18]
call fcn.14002fbb0
jmp case.0x14007681b.4
test r13, r13
je 0x140076b32
mov edi, dword [rsp + 0x30]
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], 1
mov r9d, ebp
mov r8, r12
mov rdx, r13
mov rcx, rbx
call fcn.140075df0
jmp 0x140076b60
test r13, r13
je 0x140076bd2
mov edi, dword [rsp + 0x30]
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r15d
jmp 0x140076bab
mov dword [rsp + 0x20], esi
mov rcx, r14
cmp r9b, 0xd
jne 0x140076bfc
mov rax, qword [rsp + 0xe0]
xor r9d, r9d
mov r8d, dword [rax + 4]
lea edx, [r9 + 0x16]
call fcn.14002fbb0
jmp 0x140076b32
mov r9d, r15d
mov r8d, ebp
mov edx, 0x23
call fcn.14002fbb0
mov r8d, r15d
mov edx, ebp
mov rcx, rbx
call fcn.140049900
jmp 0x140076b32
mov rax, qword [rsp + 0xe0]
mov dword [rsp + 0xc0], esi
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x50], rax
mov ecx, dword [rax]
movzx eax, byte [rbx + 0x1f]
mov dword [rsp + 0xd8], ecx
test al, al
jne 0x140076c54
mov r12d, dword [rbx + 0x54]
inc r12d
mov dword [rbx + 0x54], r12d
jmp 0x140076c61
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov r12d, dword [rbx + rax*4 + 0x24]
mov r8d, dword [rbx + 0x44]
lea edx, [rcx + 2]
mov edi, dword [rbx + 0x48]
mov dword [rsp + 0xc8], edi
cmp edx, r8d
jg 0x140076c86
lea eax, [rdi + rdx]
sub r8d, edx
mov dword [rbx + 0x48], eax
mov dword [rbx + 0x44], r8d
jmp 0x140076c98
mov eax, dword [rbx + 0x54]
lea edi, [rax + 1]
add eax, edx
mov dword [rbx + 0x54], eax
mov dword [rsp + 0xc8], edi
lea eax, [rcx + 1]
mov rcx, r14
add eax, edi
mov dword [rsp + 0xe0], eax
cmp r9b, 8
jne 0x140076d45
mov r8d, dword [rsp + 0x34]
xor r9d, r9d
inc r8d
mov dword [rsp + 0x20], ebp
lea edx, [r9 + 0x45]
call fcn.14002fbb0
movsxd r8, r15d
mov r9d, 0xfffffff2
mov edx, eax
mov dword [rsp + 0xc0], eax
mov rcx, r14
mov r13d, eax
call fcn.1400301e0
mov eax, dword [rsp + 0xe0]
mov r9d, r15d
mov r8d, ebp
mov dword [rsp + 0x20], eax
mov edx, 0x31
mov rcx, r14
call fcn.14002fbb0
mov r8d, dword [rsp + 0x34]
mov edx, 0x6e
mov r9d, dword [rsp + 0xe0]
inc r8d
mov rcx, r14
mov dword [rsp + 0x20], esi
call fcn.14002fbb0
mov rdx, qword [r14 + 8]
test rdx, rdx
je 0x140076d59
movsxd rax, dword [r14 + 0x3c]
mov dword [rsp + 0xc0], r13d
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 0x10
jmp 0x140076d59
mov r9d, r15d
mov dword [rsp + 0x20], eax
mov r8d, ebp
mov edx, 0x31
call fcn.14002fbb0
movsxd r13, dword [rsp + 0xd8]
test r13, r13
jle 0x140076dc0
mov r15d, dword [rsp + 0xc8]
mov rdi, rsi
mov rbx, qword [rsp + 0x50]
nop word [rax + rax]
mov rax, qword [rbx + 8]
mov r9d, r15d
mov edx, 0x22
mov dword [rsp + 0x20], esi
mov rcx, r14
movzx r8d, word [rdi + rax + 0x20]
dec r8d
add r8d, ebp
call fcn.14002fbb0
inc r15d
lea rdi, [rdi + 0x28]
sub r13, 1
jne 0x140076d80
mov rbx, qword [rsp + 0xb0]
mov edi, dword [rsp + 0xc8]
mov ebp, dword [rsp + 0xd8]
mov edx, 0x49
mov r8d, dword [rsp + 0x34]
mov rcx, r14
mov dword [rsp + 0x20], esi
lea r9d, [rdi + rbp]
call fcn.14002fbb0
lea r9d, [rbp + 2]
mov dword [rsp + 0x20], r12d
mov r8d, edi
mov edx, 0x31
mov rcx, r14
call fcn.14002fbb0
mov r8d, dword [rsp + 0x34]
mov r9d, r12d
mov edx, 0x6e
mov dword [rsp + 0x20], esi
mov rcx, r14
call fcn.14002fbb0
mov eax, dword [rsp + 0xc0]
test eax, eax
je 0x140076e3f
mov edx, dword [r14 + 0x3c]
cmp edx, eax
jbe 0x140076e32
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [r14 + 0x3c]
mov rax, qword [r14 + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
test r12d, r12d
je 0x140076e74
cmp byte [rbx + 0x1f], 8
jae 0x140076e74
lea rax, [rbx + 0x88]
cmp dword [rax + 0xc], r12d
je 0x140076e70
inc esi
add rax, 0x14
cmp esi, 0xa
jl 0x140076e51
movzx eax, byte [rbx + 0x1f]
mov dword [rbx + rax*4 + 0x24], r12d
inc byte [rbx + 0x1f]
jmp 0x140076e74
mov byte [rax + 6], 1
lea r11d, [rbp + 2]
mov edx, edi
mov r8d, r11d
mov rcx, rbx
call fcn.140049900
cmp r11d, dword [rbx + 0x44]
jle case.0x14007681b.4
mov dword [rbx + 0x44], r11d
mov dword [rbx + 0x48], edi
mov rbp, qword [rsp + 0xb8]
cmp qword [rsp + 0xd0], 0
jne 0x140076b60
jmp 0x140076b3a