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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xe0
mov rax, qword [0x1802993c0]
xor rax, rsp
mov qword [rsp + 0xd0], rax
mov ebp, r8d
mov r14, rdx
mov qword [rsp + 0x90], rcx
mov rcx, qword [0x18029e808]
test rcx, rcx
jne 0x18010104f
xor ebx, ebx
xor edi, edi
mov rsi, qword [r14 + 8]
test rsi, rsi
jne 0x180101071
xor al, al
jmp 0x180101991
mov rdx, qword [rcx]
movsxd rax, dword [0x18029a020]
mov r8, qword [rdx + rax*8]
call r8
mov rbx, rax
test rax, rax
je 0x18010103d
mov rdi, qword [rax + 0x760]
jmp 0x18010103f
mov rsi, qword [rsi]
mov rcx, rbx
call fcn.18012a4a0
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
xor edx, edx
mov rcx, rax
call r8
mov r13, rax
mov qword [rsp + 0x78], rax
mov rcx, rbx
call fcn.18012a4a0
mov rdx, qword [rax]
mov r8, qword [rdx + 0x38]
mov edx, 1
mov rcx, rax
call r8
mov r12, rax
mov rcx, rbx
call fcn.18012a4a0
mov rdx, qword [rax]
mov r8, qword [rdx + 0x38]
mov edx, 2
mov rcx, rax
call r8
mov r15, rax
mov qword [rsp + 0x88], rax
mov rcx, rbx
call fcn.18012a4a0
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
mov edx, 3
mov rcx, rax
call r8
mov qword [rsp + 0x50], rax
mov rdx, qword [r13 + 8]
mov rcx, qword [r12 + 8]
mov qword [rsp + 0x70], rcx
mov rcx, qword [r15 + 8]
mov qword [rsp + 0x68], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x58], rax
mov r8, 0xffffffffffffffff
mov dword [rsp + 0x60], r8d
mov dword [rsp + 0x38], r8d
mov dword [rsp + 0x3c], r8d
mov ecx, r8d
mov dword [rsp + 0x24], ecx
mov eax, r8d
mov dword [rsp + 0x20], eax
mov r13d, r8d
mov r15d, r8d
mov dword [rsp + 0x4c], r8d
test rdx, rdx
je 0x18010116c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 0x1a0]
mov ebx, eax
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.1800cd3c0
lea ecx, [rbx + rax]
mov dword [rsp + 0x24], ecx
mov eax, r15d
mov dword [rsp + 0x80], ecx
cmp qword [rsp + 0x70], 0
je 0x18010119e
mov rcx, qword [r12 + 8]
mov rcx, qword [rcx]
mov rdx, qword [rcx]
call qword [rdx + 0x1a0]
mov ebx, eax
xor edx, edx
mov rcx, r12
call fcn.1800cd3c0
add eax, ebx
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x84], eax
cmp qword [rsp + 0x68], 0
je 0x1801011d5
mov r13, qword [rsp + 0x88]
mov rcx, qword [r13 + 8]
mov rcx, qword [rcx]
mov rdx, qword [rcx]
call qword [rdx + 0x1a0]
mov ebx, eax
xor edx, edx
mov rcx, r13
call fcn.1800cd3c0
lea r13d, [rbx + rax]
mov dword [rsp + 0x88], r13d
cmp qword [rsp + 0x58], 0
je 0x18010120f
mov r15, qword [rsp + 0x50]
mov rcx, qword [r15 + 8]
mov rcx, qword [rcx]
mov rdx, qword [rcx]
call qword [rdx + 0x1a0]
mov ebx, eax
xor edx, edx
mov rcx, r15
call fcn.1800cd3c0
lea r15d, [rbx + rax]
mov dword [rsp + 0x4c], r15d
mov dword [rsp + 0x68], r15d
mov rax, 0xffffffffffffffff
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x48], eax
xor edx, edx
mov rcx, rdi
call fcn.1800cd4d0
mov dword [rsp + 0x30], eax
mov rcx, rdi
call fcn.1800fe240
mov ebx, eax
mov dword [rsp + 0x34], eax
mov rcx, rdi
call fcn.1800fe870
mov dword [rsp + 0x28], eax
mov rcx, rdi
call fcn.1800fee90
mov dword [rsp + 0x2c], eax
xor r15d, r15d
xor r12d, r12d
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
mov edx, dword [rsp + 0x30]
cmp edx, 0xffffffff
je 0x180101293
test rdi, rdi
je 0x180101288
mov rcx, qword [rdi + 0xc0]
jmp 0x18010128a
xor ecx, ecx
mov rax, qword [rcx]
call qword [rax + 0x38]
mov r15, rax
cmp ebx, 0xffffffff
je 0x1801012b3
test rdi, rdi
je 0x1801012a6
mov rcx, qword [rdi + 0xc0]
jmp 0x1801012a8
xor ecx, ecx
mov rax, qword [rcx]
mov edx, ebx
call qword [rax + 0x38]
mov r12, rax
mov edx, dword [rsp + 0x28]
cmp edx, 0xffffffff
je 0x1801012d7
test rdi, rdi
je 0x1801012ca
mov rcx, qword [rdi + 0xc0]
jmp 0x1801012cc
xor ecx, ecx
mov rax, qword [rcx]
call qword [rax + 0x38]
mov qword [rsp + 0x70], rax
mov edx, dword [rsp + 0x2c]
cmp edx, 0xffffffff
je 0x1801012fb
test rdi, rdi
je 0x1801012ee
mov rcx, qword [rdi + 0xc0]
jmp 0x1801012f0
xor ecx, ecx
mov rax, qword [rcx]
call qword [rax + 0x38]
mov qword [rsp + 0x78], rax
test r15, r15
je 0x180101327
cmp qword [r15 + 8], 0
je 0x180101327
mov rdx, r15
mov rcx, rdi
call fcn.1800ff4c0
mov ebx, eax
mov edx, 9
mov rcx, r15
call fcn.1800cd3c0
add eax, ebx
mov dword [rsp + 0x50], eax
test r12, r12
je 0x180101354
cmp qword [r12 + 8], 0
je 0x180101354
mov rdx, r12
mov rcx, rdi
call fcn.1800ff4c0
mov ebx, eax
mov edx, 0xf
mov rcx, r12
call fcn.1800cd3c0
add eax, ebx
mov dword [rsp + 0x58], eax
mov r15, qword [rsp + 0x70]
test r15, r15
je 0x18010138a
cmp qword [r15 + 8], 0
je 0x18010138a
mov rdx, r15
mov rcx, rdi
call fcn.1800ff4c0
mov r12d, eax
mov edx, 0xf
mov rcx, r15
call fcn.1800cd3c0
add r12d, eax
mov dword [rsp + 0x44], r12d
jmp 0x18010138f
mov r12d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x78]
test r15, r15
je 0x1801013c5
cmp qword [r15 + 8], 0
je 0x1801013c5
mov rdx, r15
mov rcx, rdi
call fcn.1800ff4c0
mov ebx, eax
mov edx, 0xf
mov rcx, r15
call fcn.1800cd3c0
lea r15d, [rbx + rax]
mov dword [rsp + 0x48], r15d
jmp 0x1801013ca
mov r15d, dword [rsp + 0x48]
lea rdx, [rsp + 0x98]
mov rcx, rdi
call fcn.1800cd440
nop
mov rdx, qword [rsi]
mov rcx, rsi
call qword [rdx + 0x1a0]
mov ebx, eax
mov rcx, rsi
call fcn.18012e720
test al, al
je 0x1801014c4
xor edx, edx
mov rcx, r14
call fcn.1800cd3c0
add ebx, eax
mov r12d, dword [rsp + 0x24]
cmp ebx, r12d
cmovg r12d, ebx
mov eax, ebp
cmp ebx, dword [rsp + 0x80]
mov rcx, 0xffffffffffffffff
cmovle eax, ecx
mov dword [rsp + 0x60], eax
mov r9d, dword [rsp + 0x38]
mov r10d, r9d
mov r11d, r9d
mov r15d, dword [rsp + 0x20]
mov edx, dword [rsp + 0x2c]
mov eax, dword [rsp + 0x34]
mov r8d, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x28]
cmp ebp, dword [rsp + 0x60]
je 0x18010194a
cmp ebp, r9d
je 0x18010194a
cmp ebp, r10d
je 0x18010194a
cmp ebp, r11d
je 0x18010194a
cmp ebp, r8d
je 0x18010194a
cmp ebp, eax
je 0x18010194a
cmp ebp, ecx
je 0x18010194a
cmp ebp, edx
je 0x18010194a
mov rbp, qword [rsp + 0x90]
cmp byte [rbp + 0x310], 0
je 0x1801016f8
mov rcx, rsi
call fcn.18012e720
test al, al
je 0x1801016af
cmp ebx, r12d
jg 0x1801016f8
mov bl, 1
jmp 0x18010194c
mov rcx, rsi
call fcn.18012e840
test al, al
je 0x18010150f
xor edx, edx
mov rcx, r14
call fcn.1800cd3c0
add ebx, eax
mov r15d, dword [rsp + 0x20]
cmp ebx, r15d
cmovg r15d, ebx
mov r9d, ebp
cmp ebx, dword [rsp + 0x84]
mov rcx, 0xffffffffffffffff
cmovle r9d, ecx
mov r12d, dword [rsp + 0x24]
mov r10d, dword [rsp + 0x3c]
mov r11d, r10d
jmp 0x180101438
mov rcx, rsi
call fcn.18012e970
test al, al
je 0x180101552
xor edx, edx
mov rcx, r14
call fcn.1800cd3c0
add ebx, eax
cmp ebx, r13d
cmovg r13d, ebx
mov r10d, ebp
cmp ebx, dword [rsp + 0x88]
mov rcx, 0xffffffffffffffff
cmovle r10d, ecx
mov r12d, dword [rsp + 0x24]
mov r9d, dword [rsp + 0x38]
jmp 0x180101430
mov rcx, rsi
call fcn.18012ea90
test al, al
je 0x18010159b
xor edx, edx
mov rcx, r14
call fcn.1800cd3c0
add ebx, eax
mov eax, dword [rsp + 0x4c]
cmp ebx, eax
cmovg eax, ebx
mov dword [rsp + 0x4c], eax
mov r11d, ebp
cmp ebx, dword [rsp + 0x68]
mov rcx, 0xffffffffffffffff
cmovle r11d, ecx
mov r12d, dword [rsp + 0x24]
mov r9d, dword [rsp + 0x38]
mov r10d, r9d
jmp 0x180101433
mov rcx, rsi
call fcn.18012e210
test al, al
je 0x1801015de
mov r15d, dword [rsp + 0x20]
mov r12d, dword [rsp + 0x24]
mov eax, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x28]
mov edx, dword [rsp + 0x2c]
mov r9d, dword [rsp + 0x38]
mov r10d, r9d
mov r11d, r9d
cmp ebx, dword [rsp + 0x50]
jle 0x1801016a5
mov r8d, ebp
mov dword [rsp + 0x50], ebx
jmp 0x180101449
mov rcx, rsi
call fcn.18012ebb0
test al, al
je 0x180101621
mov r15d, dword [rsp + 0x20]
mov r12d, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x28]
mov edx, dword [rsp + 0x2c]
mov r8d, dword [rsp + 0x30]
mov r9d, dword [rsp + 0x38]
mov r10d, r9d
mov r11d, r9d
cmp ebx, dword [rsp + 0x58]
jle 0x18010169c
mov eax, ebp
mov dword [rsp + 0x58], ebx
jmp 0x180101449
mov rcx, rsi
call fcn.18012ecd0
test al, al
je 0x180101663
mov r15d, dword [rsp + 0x20]
mov eax, dword [rsp + 0x34]
mov edx, dword [rsp + 0x2c]
mov r8d, dword [rsp + 0x30]
mov r9d, dword [rsp + 0x38]
mov r10d, r9d
mov r11d, r9d
cmp ebx, r12d
mov r12d, dword [rsp + 0x24]
jle 0x180101445
mov ecx, ebp
mov dword [rsp + 0x44], ebx
jmp 0x180101449
mov rcx, rsi
call fcn.18012ede0
mov r12d, dword [rsp + 0x24]
test al, al
je 0x180101428
cmp ebx, r15d
jle 0x180101428
mov edx, ebp
mov dword [rsp + 0x48], ebx
mov r15d, dword [rsp + 0x20]
mov r9d, dword [rsp + 0x38]
mov r10d, r9d
mov r11d, r9d
jmp 0x18010143c
mov eax, dword [rsp + 0x34]
jmp 0x180101449
mov r8d, dword [rsp + 0x30]
jmp 0x180101449
mov rcx, rsi
call fcn.18012e840
test al, al
je 0x1801016c7
cmp ebx, r15d
jg 0x1801016f8
mov bl, 1
jmp 0x18010194c
mov rcx, rsi
call fcn.18012e970
test al, al
je 0x1801016df
cmp ebx, r13d
jg 0x1801016f8
mov bl, 1
jmp 0x18010194c
mov rcx, rsi
call fcn.18012ea90
test al, al
je 0x1801016f8
cmp ebx, dword [rsp + 0x4c]
jg 0x1801016f8
mov bl, 1
jmp 0x18010194c
cmp byte [rbp + 0x288], 0
je 0x1801017e8
mov rdx, r14
mov rcx, rdi
call fcn.1800ff4c0
mov rcx, rsi
call fcn.18012e210
test al, al
je 0x180101749
mov rdx, r14
mov rcx, rdi
call fcn.1800ff4c0
mov ebx, eax
mov edx, 9
mov rcx, r14
call fcn.1800cd3c0
add eax, ebx
cmp eax, dword [rsp + 0x50]
jg 0x1801017e8
mov bl, 1
jmp 0x18010194c
mov rcx, rsi
call fcn.18012ebb0
test al, al
je 0x18010177e
mov rdx, r14
mov rcx, rdi
call fcn.1800ff4c0
mov ebx, eax
mov edx, 0xf
mov rcx, r14
call fcn.1800cd3c0
add eax, ebx
cmp eax, dword [rsp + 0x58]
jg 0x1801017e8
mov bl, 1
jmp 0x18010194c
mov rcx, rsi
call fcn.18012ecd0
test al, al
je 0x1801017b3
mov rdx, r14
mov rcx, rdi
call fcn.1800ff4c0
mov ebx, eax
mov edx, 0xf
mov rcx, r14
call fcn.1800cd3c0
add eax, ebx
cmp eax, dword [rsp + 0x44]
jg 0x1801017e8
mov bl, 1
jmp 0x18010194c
mov rcx, rsi
call fcn.18012ede0
test al, al
je 0x1801017e8
mov rdx, r14
mov rcx, rdi
call fcn.1800ff4c0
mov ebx, eax
mov edx, 0xf
mov rcx, r14
call fcn.1800cd3c0
add eax, ebx
cmp eax, dword [rsp + 0x48]
jg 0x1801017e8
mov bl, 1
jmp 0x18010194c
cmp byte [rbp + 0x398], 0
jne 0x180101859
mov rcx, rsi
call fcn.18012ef00
test al, al
je 0x18010184c
xor esi, esi
xor ebx, ebx
test rdi, rdi
je 0x18010180f
mov rcx, qword [rdi + 0xc0]
jmp 0x180101811
xor ecx, ecx
mov rax, qword [rcx]
mov edx, ebx
call qword [rax + 0x38]
test rax, rax
je 0x180101835
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x180101835
mov rcx, qword [rcx]
call fcn.18012ef00
test al, al
je 0x180101835
inc esi
inc ebx
cmp ebx, 0x24
jl 0x180101801
cmp esi, 1
jle 0x18010194a
mov bl, 1
jmp 0x18010194c
cmp byte [rbp + 0x398], 0
je 0x18010194a
mov rcx, rsi
call fcn.18012ef00
test al, al
jne 0x180101941
lea rdx, [rsi + 0xd0]
lea rcx, [rsp + 0xb0]
call fcn.18004d5a0
lea rdi, [rsp + 0xb0]
mov rsi, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xc8]
cmp r14, 0xf
cmova rdi, rsi
mov rax, qword [rsp + 0xc0]
cmp rax, 5
jb 0x1801018fd
lea rbp, [rax + rdi]
lea r8, [rbp - 4]
sub r8, rdi
mov edx, 0x61
mov rcx, rdi
call fcn.1801f2140
mov rbx, rax
test rax, rax
je 0x1801018fd
nop dword [rax + rax]
cmp dword [rbx], 0x6f727261
jne 0x1801018de
cmp byte [rbx + 4], 0x77
je 0x180101945
inc rbx
lea r8, [rbp - 4]
sub r8, rbx
mov edx, 0x61
mov rcx, rbx
call fcn.1801f2140
mov rbx, rax
test rax, rax
jne 0x1801018d0
mov rbx, 0xffffffffffffffff
cmp r14, 0xf
jbe 0x18010193b
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x180101933
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801019c8
mov rcx, rsi
call fcn.1801b2e80
cmp rbx, 0xffffffffffffffff
je 0x18010194a
mov bl, 1
jmp 0x18010194c
sub rbx, rdi
jmp 0x180101904
xor bl, bl
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x18010198e
mov rdx, qword [rsp + 0xa8]
sub rdx, rcx
and rdx, 0xfffffffffffffff8
mov rax, rcx
cmp rdx, 0x1000
jb 0x180101989
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801019c2
call fcn.1801b2e80
movzx eax, bl
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1801b2e60
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.1801c1464
nop
call fcn.1801c1464
nop
int3