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

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x380
mov rax, qword [rsp + 0x3e0]
mov rbx, qword [rsp + 0x3e8]
mov rbp, qword [rsp + 0x408]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x3f0]
lea rcx, [rsp + 0x1a0]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x410]
mov r15, r9
mov qword [rsp + 0x50], r9
mov r13, r8
mov qword [rsp + 0x48], r8
mov qword [rsp + 0xb8], rax
mov r14, rdx
mov qword [rsp + 0xc0], rbx
call fcn.10002e260
mov rcx, qword [0x1000882a8]
mov rax, qword [0x100088340]
xor esi, esi
mov qword [rsp + 0x118], rax
lea rdx, [0x1000017d8]
mov byte [rbx], sil
mov rax, qword [r14 + 0x48]
mov r8, qword [r15 + 0xac0]
lea r11, [0x10000bc60]
mov qword [rsp + 0x140], rsi
mov dword [rsp + 0x148], esi
mov qword [rsp + 0x130], rdx
mov qword [rsp + 0x138], rcx
mov qword [rsp + 0x150], rsi
mov qword [rsp + 0x110], r11
mov dword [rsp + 0x158], esi
mov dword [rsp + 0x12c], esi
mov word [rsp + 0x160], si
mov byte [rsp + 0x163], sil
mov qword [rsp + 0x168], rsi
mov qword [rsp + 0x170], rsi
mov qword [rsp + 0x178], rsi
mov qword [rsp + 0x180], rsi
mov byte [rsp + 0x189], sil
mov qword [rsp + 0x90], rsi
mov dword [rsp + 0x98], esi
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0xa0], rsi
mov dword [rsp + 0xa8], esi
mov rcx, qword [rax + 0x10]
sub r8, rcx
movzx eax, word [rcx]
movzx edx, word [rcx + r8]
sub eax, edx
jne 0x100076479
add rcx, 2
test edx, edx
jne 0x100076465
mov ebx, 1
cmp eax, esi
jne 0x10007648d
cmp dword [r14 + 0x50], 0x30
mov byte [rsp + 0x41], bl
je 0x100076492
mov byte [rsp + 0x41], sil
mov rcx, r14
call fcn.10003b7dc
lea r8, [rsp + 0x43]
lea rdx, [rsp + 0x60]
mov r9b, bl
mov rcx, r14
call fcn.10003bad0
mov r12, rax
cmp rax, rsi
je 0x100076e5a
mov qword [rsp + 0xc8], rbx
movzx edi, word [r12 + 4]
mov eax, dword [r12]
mov r8, qword [rsp + 0xc8]
shl rdi, 0x20
lea rcx, [r15 + 0xd8]
or rdi, rax
mov rdx, rdi
call fcn.100042140
cmp al, sil
jne 0x100076e39
lea rcx, [r15 + 0x778]
mov r8, rbx
mov rdx, rdi
mov qword [rsp + 0x198], rbx
call fcn.100024228
lea r15, [r12 + 0x10]
mov byte [rsp + 0x42], al
cmp byte [rsp + 0x41], sil
je 0x1000765d8
movzx edx, word [r12 + 0xa]
cmp edx, 0x44
jb 0x100076546
lea r8, [rsp + 0x80]
mov rcx, r15
call fcn.100074338
cmp al, sil
jne 0x1000765d8
mov rcx, rbp
call fcn.100015f34
mov r11, qword [rbp]
mov r9d, 3
xor r8d, r8d
mov edx, 0x69d4
mov rcx, rbp
call qword [r11 + 0x18]
movzx eax, word [r12 + 0xa]
mov r9, qword [r14 + 0x48]
mov r8, qword [r13 + 0x30]
lea rdx, [0x10000cd90]
mov rcx, rbp
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], eax
call fcn.1000159b4
movzx r11d, word [r12 + 0xa]
mov edi, 0x100
cmp di, r11w
jb 0x1000765b2
cmp r11w, 0x44
ja 0x1000765ac
mov eax, 0x44
jmp 0x1000765bc
cmp di, r11w
jae 0x1000765b6
mov eax, edi
jmp 0x1000765ba
movzx eax, r11w
cdqe
mov r8d, eax
mov rdx, r15
mov rcx, rbp
call fcn.1000159dc
or eax, 0xffffffff
lock add dword [rbp + 0x48], eax
mov al, bl
jmp 0x10007679f
cmp qword [r13 + 0x30], rdi
je 0x100076700
mov r8, qword [rsp + 0xb0]
lea rcx, [rsp + 0x1a0]
mov rdx, rdi
call fcn.10002e444
cmp al, sil
je 0x100076eeb
lea rcx, [rsp + 0x1a0]
call fcn.100036668
cmp al, sil
jne 0x10007661c
mov al, bl
jmp 0x1000766ef
mov rax, qword [rsp + 0x1b0]
test byte [rax + 0x16], bl
jne 0x1000766ec
mov rcx, rbp
cmp byte [rsp + 0x41], sil
je 0x100076669
mov r9, qword [r13 + 0x30]
lea rax, [rsp + 0x80]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
mov rax, qword [r14 + 0x48]
lea r8, [0x10000cda0]
mov edx, 0x69d5
mov qword [rsp + 0x20], rax
call fcn.100015928
jmp 0x100076615
call fcn.100015f34
mov r11, qword [rbp]
mov r9d, 3
xor r8d, r8d
mov edx, 0x69d6
mov rcx, rbp
call qword [r11 + 0x18]
mov r9, qword [r14 + 0x48]
mov r8, qword [r13 + 0x30]
lea rdx, [0x10000cd80]
mov rcx, rbp
mov qword [rsp + 0x20], rdi
call fcn.1000159b4
movzx r11d, word [r12 + 8]
mov ecx, 0x100
cmp cx, r11w
jb 0x1000766c8
cmp r11w, 0x10
ja 0x1000766c2
mov eax, 0x10
jmp 0x1000766d2
cmp cx, r11w
jae 0x1000766cc
mov eax, ecx
jmp 0x1000766d0
movzx eax, r11w
cdqe
mov r8d, eax
mov rdx, r12
mov rcx, rbp
call fcn.1000159dc
or eax, 0xffffffff
lock add dword [rbp + 0x48], eax
jmp 0x100076615
mov al, sil
lea r13, [rsp + 0x1a0]
cmp al, sil
jne 0x100076797
mov r10b, byte [rsp + 0x41]
mov r9b, byte [rsp + 0x42]
cmp r10b, sil
je 0x1000767fe
cmp r9b, sil
jne 0x1000767fe
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x30]
mov r8d, dword [rax + 0x30]
mov rax, qword [rax + 0x10]
movzx edx, word [rax + 0x10]
shr rcx, 0x20
cmp word [r15 + 4], cx
jne 0x10007674c
cmp dword [r15], r8d
jne 0x10007674c
cmp word [r15 + 6], dx
je 0x1000767fe
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x74], r8d
mov word [rsp + 0x78], cx
mov word [rsp + 0x7a], dx
mov r9, qword [rsp + 0x74]
lea rax, [rsp + 0x80]
mov qword [rsp + 0x30], rax
mov rax, qword [r15]
lea r8, [0x10000cdb0]
mov qword [rsp + 0x28], rax
mov rax, qword [r14 + 0x48]
mov edx, 0x6a7c
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.100015928
mov r13, qword [rsp + 0x48]
mov al, sil
mov rcx, qword [rsp + 0xc0]
mov byte [rcx], bl
cmp byte [rsp + 0x41], sil
je 0x100076de1
cmp al, sil
jne 0x100076de1
mov edx, dword [rsp + 0x400]
mov ecx, 0x65d1
call fcn.100013c38
mov r9d, dword [r13 + 0x30]
lea r8, [0x10000cdf4]
mov edx, eax
lea rax, [rsp + 0x80]
mov rcx, rbp
mov qword [rsp + 0x28], rax
mov rax, qword [r14 + 0x48]
mov qword [rsp + 0x20], rax
call fcn.100015808
jmp 0x100076e10
mov rax, qword [r13 + 0x10]
cmp dword [rax + 0x20], esi
jne 0x100076d8b
cmp word [rax + 0x24], si
jne 0x100076d8b
cmp word [rax + 0x26], si
jne 0x100076d8b
mov rcx, qword [r13 + 0x30]
mov r8d, dword [r13 + 0x30]
movzx edx, word [rax + 0x10]
shr rcx, 0x20
cmp cx, word [r12 + 4]
jne 0x100076cac
cmp r8d, dword [r12]
jne 0x100076cac
cmp dx, word [r12 + 6]
jne 0x100076cac
cmp r10b, sil
je 0x1000768ac
cmp r9b, sil
jne 0x1000768ac
mov rax, qword [rsp + 0xb0]
cmp byte [rax + 0x38], sil
je 0x10007686f
mov rdx, qword [rax + 0x20]
jmp 0x100076872
mov rdx, rsi
mov rax, qword [rsp + 0xb8]
mov r9d, dword [rsp + 0x400]
mov r8, qword [rsp + 0x50]
mov byte [rsp + 0x38], sil
mov byte [rsp + 0x30], sil
mov qword [rsp + 0x28], rax
mov rcx, r13
mov qword [rsp + 0x20], rbp
call fcn.10002ee94
cmp al, sil
je 0x100076f26
mov rax, qword [r13 + 0x10]
mov cl, byte [rax + 0x16]
shr cl, 1
test bl, cl
je 0x1000768e1
cmp rdi, rsi
jl 0x1000768e1
mov rcx, qword [rsp + 0x50]
lea rax, [rdi + 1]
cmp rax, qword [rcx + 0x570]
jg 0x1000768e1
add rcx, 0x590
mov r8d, ebx
mov edx, edi
call fcn.100042bf8
mov al, byte [rsp + 0x42]
cmp al, sil
jne 0x100076a03
mov r9d, dword [r14 + 0x50]
mov eax, dword [r14 + 0x54]
movzx ecx, word [r12 + 0xa]
cmp r9d, 0x20
jne 0x100076908
mov byte [rsp + 0x43], bl
jmp 0x100076933
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
lea r8, [rsp + 0x43]
lea rdx, [rsp + 0x110]
mov rcx, r13
mov qword [rsp + 0x20], r15
call fcn.100030e44
cmp al, sil
jne 0x1000769ff
mov rcx, rbp
cmp byte [rsp + 0x41], sil
je 0x100076977
mov edx, 0x69d9
mov r13, qword [rsp + 0x48]
lea rax, [rsp + 0x80]
mov qword [rsp + 0x30], rdi
mov r9, qword [r13 + 0x30]
mov qword [rsp + 0x28], rax
mov rax, qword [r14 + 0x48]
lea r8, [0x10000cda0]
mov qword [rsp + 0x20], rax
call fcn.100015928
jmp 0x10007679c
call fcn.100015f34
mov r11, qword [rbp]
mov r9d, 3
xor r8d, r8d
mov edx, 0x69da
mov rcx, rbp
call qword [r11 + 0x18]
mov r13, qword [rsp + 0x48]
mov r9, qword [r14 + 0x48]
mov r8, qword [r13 + 0x30]
lea rdx, [0x10000cd80]
mov rcx, rbp
mov qword [rsp + 0x20], rdi
call fcn.1000159b4
movzx r11d, word [r12 + 0xa]
mov edi, 0x100
cmp di, r11w
jb 0x1000769db
cmp r11w, 0x44
ja 0x1000769d5
mov eax, 0x44
jmp 0x1000769e5
cmp di, r11w
jae 0x1000769df
mov eax, edi
jmp 0x1000769e3
movzx eax, r11w
cdqe
mov rdx, r15
mov r8d, eax
mov rcx, rbp
call fcn.1000159dc
or eax, 0xffffffff
lock add dword [rbp + 0x48], eax
jmp 0x10007679c
mov al, byte [rsp + 0x42]
mov dl, byte [rsp + 0x41]
cmp dl, sil
je 0x100076bfd
cmp al, sil
jne 0x100076bfd
lea rdx, [rsp + 0xd8]
mov rcx, r13
call fcn.100033d7c
cmp al, sil
je 0x100076ebf
mov r12, qword [rsp + 0x178]
lea rdx, [rsp + 0xd8]
lea rcx, [r15 + 8]
mov r8d, 0x38
call sub.ntdll.dll_memcmp
cmp eax, esi
jne 0x100076a64
mov al, byte [r15 + 0x41]
cmp byte [r12 + 0x41], al
je 0x100076b6e
cmp rdi, 0x10
jl 0x100076b19
mov rax, qword [rsp + 0xd8]
movzx ecx, bl
cmp qword [r15 + 8], rax
mov rax, qword [rsp + 0xe0]
cmovne ecx, esi
cmp qword [r15 + 0x10], rax
mov rax, qword [rsp + 0xe8]
movzx edx, cl
cmovne edx, esi
cmp qword [r15 + 0x18], rax
mov rax, qword [rsp + 0xf8]
movzx ecx, dl
cmovne ecx, esi
cmp qword [r15 + 0x28], rax
mov rax, qword [rsp + 0x100]
movzx edx, cl
cmovne edx, esi
cmp qword [r15 + 0x30], rax
mov eax, dword [rsp + 0x108]
movzx ecx, dl
mov rdx, qword [rsp + 0x50]
cmovne ecx, esi
cmp dword [r15 + 0x38], eax
movzx ecx, cl
cmovne ecx, esi
cmp byte [rdx], 2
jb 0x100076afb
bt eax, 0xa
jae 0x100076afb
mov eax, dword [rsp + 0x10c]
cmp dword [r15 + 0x3c], eax
je 0x100076b0e
mov cl, sil
jmp 0x100076b0e
movzx eax, word [rsp + 0x10c]
movzx ecx, cl
cmp word [r15 + 0x3c], ax
cmovne ecx, esi
mov al, byte [r12 + 0x41]
cmp byte [r15 + 0x41], al
je 0x100076b1c
mov cl, sil
cmp cl, sil
jne 0x100076b6e
cmp dword [rsp + 0x400], esi
je 0x100076b34
mov rax, qword [rsp + 0xc0]
mov byte [rax], bl
lea rcx, [r15 + 8]
lea rdx, [rsp + 0xd8]
mov r8d, 0x38
call sub.ntdll.dll_memcpy
mov r11b, byte [r12 + 0x41]
mov byte [r15 + 0x41], r11b
cmp dword [rsp + 0x400], esi
je 0x100076b6e
mov rcx, r14
call fcn.10003bf84
cmp al, sil
je 0x100076ea9
movzx eax, word [r15 + 4]
cmp word [r12 + 4], ax
jne 0x100076b91
mov eax, dword [r15]
cmp dword [r12], eax
jne 0x100076b91
movzx eax, word [r15 + 6]
cmp word [r12 + 6], ax
je 0x100076bf9
mov r13, qword [rsp + 0x48]
mov qword [rsp + 0x38], rdi
mov edx, 0x6a7c
mov eax, dword [r13 + 0x30]
mov dword [rsp + 0x6c], eax
mov rax, qword [r13 + 0x30]
shr rax, 0x20
mov word [rsp + 0x70], ax
mov rax, qword [r13 + 0x10]
movzx ecx, word [rax + 0x10]
mov rax, qword [r15]
mov word [rsp + 0x72], cx
mov r9, qword [rsp + 0x6c]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x80]
lea r8, [0x10000cdc8]
mov qword [rsp + 0x28], rax
mov rax, qword [r14 + 0x48]
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.100015928
jmp 0x10007679c
mov dl, byte [rsp + 0x41]
mov r15, qword [rsp + 0x50]
mov eax, dword [r15 + 0x38]
cmp rdi, rax
mov qword [rsp + 0x190], rax
jge 0x100076ea2
mov rax, qword [r15 + 0x50]
or r8d, 0xffffffff
mov ecx, edi
add word [rax + rcx*2], r8w
cmp dl, sil
je 0x100076ea2
mov rax, qword [r15 + 0x48]
mov r13, qword [rsp + 0x48]
mov edx, 0xffff
add word [rax + rcx*2], dx
cmp byte [rsp + 0x3f8], sil
jne 0x100076e39
mov edx, dword [r13 + 0x30]
mov rcx, qword [rsp + 0xd0]
mov r8d, edi
call fcn.100049420
cmp al, sil
jne 0x100076e39
lea rcx, [0x10000cbd8]
call fcn.100015f80
mov dword [rsp + 0x30], 0x120e
mov r9d, 3
mov qword [rsp + 0x28], rax
lea rax, [0x100001698]
mov r8d, ebx
mov edx, 0x43c
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.100015894
jmp 0x100076e5d
cmp r10b, sil
je 0x100076ce1
mov r13, qword [rsp + 0x48]
mov word [rsp + 0x6a], dx
mov dword [rsp + 0x64], r8d
mov r9, qword [r13 + 0x30]
mov word [rsp + 0x68], cx
mov rax, qword [rsp + 0x64]
mov qword [rsp + 0x38], rax
mov rax, qword [r12]
mov edx, 0x6a7d
jmp 0x100076bca
mov rcx, rbp
call fcn.100015f34
mov r11, qword [rbp]
mov r9d, 3
xor r8d, r8d
mov edx, 0x6a7e
mov rcx, rbp
call qword [r11 + 0x18]
mov rax, qword [r13 + 0x30]
mov r11d, dword [r13 + 0x30]
mov r9, qword [r14 + 0x48]
shr rax, 0x20
mov dword [rsp + 0x58], r11d
mov word [rsp + 0x5c], ax
mov rax, qword [r13 + 0x10]
mov r13, qword [rsp + 0x48]
movzx ecx, word [rax + 0x10]
mov r8, qword [r13 + 0x30]
lea rdx, [0x10000cde0]
mov word [rsp + 0x5e], cx
mov rax, qword [rsp + 0x58]
mov rcx, rbp
mov qword [rsp + 0x28], rax
mov rax, qword [r12]
mov qword [rsp + 0x20], rax
call fcn.1000159b4
movzx r11d, word [r12 + 8]
mov edi, 0x100
cmp di, r11w
jb 0x100076d79
cmp r11w, 0x10
ja 0x100076d73
mov eax, 0x10
jmp 0x100076d83
cmp di, r11w
jae 0x100076d7d
mov eax, edi
jmp 0x100076d81
movzx eax, r11w
cdqe
mov rdx, r12
jmp 0x1000769e8
mov rcx, rbp
cmp r10b, sil
je 0x100076d9d
mov edx, 0x69d7
jmp 0x100076942
call fcn.100015f34
mov r11, qword [rbp]
mov r9d, 3
xor r8d, r8d
mov edx, 0x69d8
mov rcx, rbp
call qword [r11 + 0x18]
mov r13, qword [rsp + 0x48]
mov r9, qword [r14 + 0x48]
mov r8, qword [r13 + 0x30]
lea rdx, [0x10000cd80]
mov rcx, rbp
mov qword [rsp + 0x20], rdi
call fcn.1000159b4
jmp 0x100076d54
mov edx, dword [rsp + 0x400]
mov ecx, 0x65e4
call fcn.100013c38
mov r9d, dword [r13 + 0x30]
lea r8, [0x10000c780]
mov edx, eax
mov rax, qword [r14 + 0x48]
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.100015808
mov rax, qword [rsp + 0xb8]
mov byte [rax], bl
cmp dword [rsp + 0x400], esi
je 0x100076e34
mov rcx, r14
call fcn.10003bef4
cmp al, sil
je 0x100076ed5
mov r15, qword [rsp + 0x50]
lea r8, [rsp + 0x43]
lea rdx, [rsp + 0x60]
mov r9b, bl
mov rcx, r14
call fcn.10003bad0
mov r12, rax
cmp rax, rsi
jne 0x1000764c3
mov sil, bl
lea rcx, [rsp + 0x80]
call fcn.1000131dc
lea rcx, [rsp + 0x110]
call fcn.100024af8
lea rcx, [rsp + 0x1a0]
call fcn.10002e39c
mov al, sil
mov rbx, qword [rsp + 0x3c0]
add rsp, 0x380
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r13, qword [rsp + 0x48]
jmp 0x100076e39
lea rcx, [0x10000cbd8]
call fcn.100015f80
mov dword [rsp + 0x30], 0x11d6
jmp 0x100076eff
lea rcx, [0x10000cbd8]
call fcn.100015f80
mov dword [rsp + 0x30], 0x1161
jmp 0x100076eff
lea rcx, [0x10000cbd8]
call fcn.100015f80
mov dword [rsp + 0x30], 0x1200
jmp 0x100076eff
lea rcx, [0x10000cbd8]
call fcn.100015f80
mov dword [rsp + 0x30], 0x10ba
mov qword [rsp + 0x28], rax
lea rax, [0x100001698]
mov r9d, 3
mov r8d, ebx
mov edx, 0x43c
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.100015894
lea rcx, [rsp + 0x80]
call fcn.1000131dc
lea rcx, [rsp + 0x110]
call fcn.100024af8
lea rcx, [rsp + 0x1a0]
call fcn.10002e39c
xor al, al
jmp 0x100076e87