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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x148
mov r14, r9
mov r12, r8
mov rbx, rdx
mov qword [rsp + 0x70], rcx
mov rdi, qword [rsp + 0x1b0]
lea rsi, [rsp + 0x80]
mov rcx, rsi
mov rdx, r8
mov r8, r9
call fcn.140122ff9
mov r15d, dword [rsi]
mov rbp, qword [rsi + 8]
mov r13, qword [rsi + 0x10]
movabs rsi, 0x8000000000000000
cmp r15d, 0x2f
je 0x140121676
cmp r15d, 0x5c
je 0x140121676
cmp r15d, 0x110000
jne 0x140121821
test rdi, rdi
je 0x140121853
cmp dword [rdi + 0x20], 0
je 0x140121bcd
mov r8d, dword [rdi + 0x24]
mov rcx, qword [rdi + 8]
mov rsi, rdi
mov rdx, qword [rdi + 0x10]
lea r9, [0x140297910]
call fcn.14012238f
mov r8, rdx
jmp 0x140121bd8
cmp r15d, 0x5c
jne 0x14012168e
mov rcx, qword [rbx + 0x30]
test rcx, rcx
je 0x14012168e
mov rax, qword [rbx + 0x38]
xor edx, edx
call qword [rax + 0x28]
lea rdi, [rsp + 0x80]
mov rcx, rdi
mov rdx, rbp
mov r8, r13
call fcn.140122ff9
mov eax, dword [rdi]
mov rcx, qword [rdi + 8]
mov qword [rsp + 0x78], rcx
mov rcx, qword [rdi + 0x10]
mov qword [rsp + 0xe8], rcx
cmp eax, 0x2f
je 0x1401216c9
cmp eax, 0x5c
jne 0x1401218d8
cmp eax, 0x5c
jne 0x1401216e0
mov rcx, qword [rbx + 0x30]
test rcx, rcx
je 0x1401216e0
mov rax, qword [rbx + 0x38]
xor edx, edx
call qword [rax + 0x28]
lea rdx, [0x1402978d2]
mov r8d, 7
mov rcx, rbx
call fcn.14011abdc
mov rcx, qword [rsp + 0xe8]
mov rdi, rcx
mov rax, qword [rsp + 0x78]
sub rdi, rax
lea r12, [rsp + 0x80]
mov qword [r12], rax
mov qword [r12 + 8], rcx
xor r14d, r14d
mov r13d, 0x2600
movabs rbp, 0x8000800800000000
xor r15d, r15d
xor esi, esi
mov rcx, r12
call fcn.140041a39
mov ecx, 1
cmp eax, 0x3f
ja 0x140121759
mov edx, eax
bt r13, rdx
jae 0x140121753
mov sil, 1
add r14, rcx
jmp 0x140121731
bt rbp, rdx
jb 0x14012178b
cmp eax, 0x110000
je 0x14012178b
cmp eax, 0x5c
je 0x14012178b
inc r15
cmp eax, 0x80
jb 0x14012174e
mov ecx, 2
cmp eax, 0x800
jb 0x14012174e
cmp eax, 0x10000
mov ecx, 4
sbb rcx, 0
jmp 0x14012174e
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xd8], rax
test sil, 1
jne 0x1401219c4
lea rax, [rsp + 0xd0]
lea r12, [rsp + 0x80]
mov qword [r12], rax
mov qword [r12 + 8], r15
mov rcx, r12
call fcn.14012377c
cmp eax, 0x110000
jne 0x1401217cb
lea r9, [0x140297a08]
mov rcx, r14
mov rdx, qword [rsp + 0x78]
mov r8, rdi
call fcn.14006490c
mov rdi, rax
mov r14, rdx
mov rcx, rax
call fcn.1401234de
test al, al
je 0x140121a6c
lea rcx, [rsp + 0x80]
mov edx, 1
xor r8d, r8d
call fcn.14011be0c
jmp 0x140121a9c
test rdi, rdi
je 0x140121853
cmp r15d, 0x23
je 0x140121c29
cmp r15d, 0x3f
jne 0x140121c59
cmp dword [rdi + 0x18], 0
je 0x1401220fa
mov rdx, rdi
mov rdi, rsi
lea rax, [rdx + 0x1c]
jmp 0x14012210e
lea rdx, str.file:___Hx__
mov r8d, 8
mov rcx, rbx
call fcn.14011abdc
lea r8, [rsp + 0x80]
mov byte [r8], 0
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r12
mov r9d, 7
mov rcx, rbx
xor edx, edx
call fcn.14012091b
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rbx
xor r8d, r8d
mov r9d, 4
call fcn.140123026
mov eax, dword [rsp + 0x80]
cmp eax, 2
jne 0x140121a19
mov al, byte [rsp + 0x84]
mov rcx, qword [rsp + 0x70]
mov byte [rcx + 8], al
mov qword [rcx], rsi
jmp 0x140122060
lea rdx, [0x1402978d2]
mov eax, 7
mov qword [rsp + 0x78], rax
mov r8d, 7
mov rcx, rbx
call fcn.14011abdc
mov rcx, rbp
mov rdx, r13
call fcn.14012365f
xor esi, esi
mov rcx, qword [rsp + 0x1b0]
test rcx, rcx
je 0x140121d8a
test al, al
jne 0x140121d8a
call fcn.14011efa1
mov rcx, rax
mov r8d, 0x2f
call fcn.14011b933
test rax, rax
je 0x1401222d3
mov r8, rdx
lea rsi, [rsp + 0x80]
mov rcx, rsi
mov rdx, rax
mov r9d, 0x2f
call fcn.14011eae6
cmp dword [rsi + 0x34], 0x110000
je 0x1401222de
lea rax, [rsp + 0xf0]
lea rsi, [rsp + 0x80]
mov ecx, 9
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
mov rcx, rax
call fcn.14011b0e7
mov rdi, rax
test rax, rax
je 0x1401222e7
mov rsi, rdx
mov rcx, rdi
call fcn.140123459
test al, al
je 0x140121d45
mov rcx, rbx
mov edx, 0x2f
call fcn.14011b367
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
call fcn.14011abdc
jmp 0x140121d88
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0xd0]
mov r8, r15
call fcn.14011bd0e
mov r14, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0x100]
mov rcx, r14
mov rdx, rdi
call fcn.1401234de
test al, al
je 0x140121ad9
lea rcx, [rsp + 0x80]
mov edx, 1
xor r8d, r8d
call fcn.14011be0c
jmp 0x140121b09
mov rcx, qword [rsp + 0x84]
mov edx, dword [rsp + 0x8c]
mov r8, qword [rbx + 0x10]
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rbx]
movups xmmword [r9], xmm0
mov dword [r9 + 0x18], eax
mov qword [r9 + 0x1c], rcx
mov dword [r9 + 0x24], edx
and word [r9 + 0x28], 0
movaps xmm0, xmmword [0x1402283a0]
movups xmmword [r9 + 0x2c], xmm0
mov dword [r9 + 0x3c], 7
mov byte [r9 + 0x40], 0
jmp 0x14012206c
lea rcx, [rsp + 0x80]
mov rdx, rdi
mov r8, r14
call fcn.14011be0c
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xe8], rax
mov rdi, qword [rsp + 0x80]
mov bpl, byte [rsp + 0x88]
movzx eax, byte [rsp + 0x8f]
shl eax, 0x10
movzx ecx, word [rsp + 0x8d]
or ecx, eax
shl rcx, 0x20
mov esi, dword [rsp + 0x89]
or rsi, rcx
mov r15, qword [rsp + 0x90]
jmp 0x140121b54
lea rcx, [rsp + 0x80]
mov rdx, r14
mov r8, rdi
call fcn.14011be0c
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xe8], rax
mov rdi, qword [rsp + 0x80]
mov bpl, byte [rsp + 0x88]
movzx eax, byte [rsp + 0x8f]
shl eax, 0x10
movzx ecx, word [rsp + 0x8d]
or ecx, eax
shl rcx, 0x20
mov esi, dword [rsp + 0x89]
or rsi, rcx
mov r15, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xf0]
mov rdx, r14
call fcn.1400cc39a
movabs rax, 0x8000000000000000
cmp rdi, rax
je 0x140121bbf
shl rsi, 8
movzx r14d, bpl
or r14, rsi
mov sil, 1
test r15, r15
je 0x140121d3e
lea rcx, [rsp + 0x80]
mov rdx, r14
mov r8, r15
call fcn.14011be72
mov r15, qword [rsp + 0x80]
movabs r8, 0x8000000000000000
lea rax, [r8 + 2]
mov bpl, byte [rsp + 0x88]
cmp r15, rax
jne 0x140121ccf
mov rcx, rdi
mov rdx, r14
call fcn.1400cc39a
mov rax, qword [rsp + 0x70]
mov byte [rax + 8], bpl
jmp 0x140121f9e
mov rax, qword [rdi + 8]
mov rsi, rdi
mov r8, qword [rdi + 0x10]
mov rcx, rbx
mov rdx, rax
call fcn.14011abdc
mov rax, qword [rbx + 0x10]
mov rdx, qword [rsp + 0x70]
mov qword [rdx + 0x10], rax
movups xmm0, xmmword [rbx]
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rsi + 0x2c]
movups xmm1, xmmword [rsi + 0x40]
movups xmmword [rdx + 0x40], xmm1
mov al, byte [rsi + 0x50]
mov byte [rdx + 0x50], al
mov eax, dword [rsi + 0x28]
mov rcx, qword [rsi + 0x18]
mov qword [rdx + 0x18], rcx
and dword [rdx + 0x20], 0
mov ecx, dword [rsi + 0x3c]
mov dword [rdx + 0x28], eax
movups xmmword [rdx + 0x2c], xmm0
mov dword [rdx + 0x3c], ecx
jmp 0x14012206c
lea rdx, [rsp + 0x80]
mov ecx, 9
mov r8, rdi
mov rdi, rdx
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
mov qword [rsp + 0x20], r14
mov rcx, qword [rsp + 0x70]
mov r9, r12
call fcn.140122ac8
jmp 0x14012206c
mov rcx, r12
mov rdx, r14
call fcn.14012365f
test al, al
je 0x1401220e7
lea rdx, str.file:___Hx__
mov r8d, 8
mov rcx, rbx
call fcn.14011abdc
lea r8, [rsp + 0x80]
mov byte [r8], 0
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r12
mov r9d, 7
mov rcx, rbx
xor edx, edx
call fcn.14012091b
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rbx
xor r8d, r8d
mov r9d, 4
call fcn.140123026
jmp 0x1401218b1
movzx eax, bpl
movzx ecx, byte [rsp + 0x8f]
shl ecx, 0x10
movzx edx, word [rsp + 0x8d]
or edx, ecx
mov r12d, dword [rsp + 0x89]
shl rdx, 0x28
shl r12, 8
or r12, rdx
or r12, rax
mov r13, qword [rsp + 0x90]
lea rax, [r8 + 1]
cmp r15, rax
jle 0x140121e70
lea r8, [0x1402979e0]
mov r9d, 9
mov rcx, r12
mov rdx, r13
call fcn.1401089f6
test al, al
je 0x140121e70
mov rcx, r15
mov rdx, r12
call fcn.14011bdf8
xor ebp, ebp
jmp 0x140121f05
mov rcx, qword [rsp + 0x1b0]
call fcn.1401236fc
test rax, rax
je 0x140121d88
mov r8, rdx
mov rcx, rbx
mov rdx, rax
call fcn.14011abdc
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x1b0]
mov sil, byte [rax + 0x40]
movups xmm0, xmmword [rax + 0x41]
movaps xmmword [rsp + 0xd0], xmm0
jmp 0x140121d8a
xor esi, esi
add r15d, 0xffffffd1
cmp r15d, 0x2d
ja 0x140121da4
movabs rax, 0x200000010001
bt rax, r15
jb 0x140121daa
mov r12, rbp
mov r14, r13
lea r8, [rsp + 0x80]
mov byte [r8], 0
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r12
mov rcx, rbx
xor edx, edx
mov r9, qword [rsp + 0x78]
call fcn.14012091b
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rbx
xor r8d, r8d
mov r9d, 4
call fcn.140123026
mov eax, dword [rsp + 0x80]
cmp eax, 2
je 0x140122044
mov rcx, qword [rsp + 0x84]
mov edx, dword [rsp + 0x8c]
mov r8, qword [rbx + 0x10]
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rbx]
movups xmmword [r9], xmm0
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [r9 + 0x41], xmm0
mov dword [r9 + 0x18], eax
mov qword [r9 + 0x1c], rcx
mov dword [r9 + 0x24], edx
and word [r9 + 0x28], 0
movabs rax, 0x700000004
mov qword [r9 + 0x2c], rax
mov dword [r9 + 0x34], 7
mov rax, qword [rsp + 0x78]
mov dword [r9 + 0x38], eax
mov dword [r9 + 0x3c], eax
mov byte [r9 + 0x40], sil
jmp 0x14012206c
lea rax, [rsp + 0xf0]
mov qword [rax], r15
mov qword [rax + 8], r12
mov qword [rax + 0x10], r13
lea rcx, [rsp + 0x138]
mov qword [rcx], rax
lea rax, [0x140297750]
lea rdx, [rsp + 0x80]
mov qword [rdx], rax
mov eax, 1
mov qword [rdx + 8], rax
and qword [rdx + 0x20], 0
lea r8, [0x14011b589]
mov qword [rcx + 8], r8
mov qword [rdx + 0x10], rcx
mov qword [rdx + 0x18], rax
mov rcx, rbx
call fcn.14011b88e
test al, al
jne 0x1401222f5
mov rax, qword [rsp + 0x100]
lea rdx, [rsp + 0x80]
mov qword [rdx + 0x10], rax
movups xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rdx], xmm0
lea r15, [rsp + 0xd0]
mov rcx, r15
call fcn.14011bd9d
xor esi, esi
mov bpl, byte [r15]
movups xmm0, xmmword [rsp + 0xd1]
movaps xmmword [rsp + 0xf0], xmm0
mov rcx, rdi
mov rdx, r14
call fcn.1400cc39a
mov r14, qword [rbx + 0x10]
mov rax, r14
shr rax, 0x20
mov rcx, r14
shl rcx, 0x20
or rcx, 0x900
test rax, rax
mov edi, 0x901
cmove rdi, rcx
test dil, dil
jne 0x140121f95
test bpl, bpl
setne byte [rsp + 0xd0]
test sil, sil
je 0x140121fb0
mov rcx, rbx
mov edx, 0x2f
call fcn.14011b367
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0xd0]
mov rcx, rbx
xor edx, edx
mov r9, r14
call fcn.14012091b
jmp 0x140121fd4
mov rax, qword [rsp + 0x70]
mov byte [rax + 8], 9
movabs rcx, 0x8000000000000000
mov qword [rax], rcx
jmp 0x140122060
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0xd0]
mov rcx, rbx
xor edx, edx
mov r9, qword [rsp + 0x78]
call fcn.14012353c
mov rsi, rax
mov r14, rdx
shr rdi, 0x20
cmp byte [rsp + 0xd0], 0
jne 0x140122015
lea rcx, [rsp + 0x80]
mov r8d, 7
mov rdx, rbx
mov r9, rdi
call fcn.14011bb69
lea rcx, [rsp + 0x80]
call fcn.140031fb0
mov edi, 7
xor ebp, ebp
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rsi
lea rcx, [rsp + 0x80]
mov rdx, rbx
xor r8d, r8d
mov r9d, 4
call fcn.140123026
mov eax, dword [rsp + 0x80]
cmp eax, 2
jne 0x140122081
mov al, byte [rsp + 0x84]
mov rcx, qword [rsp + 0x70]
mov byte [rcx + 8], al
movabs rax, 0x8000000000000000
mov qword [rcx], rax
mov rcx, qword [rbx]
mov rdx, qword [rbx + 8]
call fcn.1400cc39a
nop
add rsp, 0x148
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0x84]
mov edx, dword [rsp + 0x8c]
mov r8, qword [rbx + 0x10]
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rbx]
movups xmmword [r9], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
movups xmmword [r9 + 0x41], xmm0
mov dword [r9 + 0x18], eax
mov qword [r9 + 0x1c], rcx
mov dword [r9 + 0x24], edx
and word [r9 + 0x28], 0
movabs rax, 0x700000004
mov qword [r9 + 0x2c], rax
mov dword [r9 + 0x34], 7
mov dword [r9 + 0x38], edi
mov dword [r9 + 0x3c], edi
mov byte [r9 + 0x40], bpl
jmp 0x14012206c
cmp dword [rdi + 0x18], 0
je 0x1401221db
lea rax, [rdi + 0x1c]
jmp 0x1401221e9
cmp dword [rdi + 0x20], 0
mov rdx, rdi
mov rdi, rsi
je 0x1401222b3
lea rax, [rdx + 0x24]
mov r8d, dword [rax]
mov rcx, qword [rdx + 8]
mov r15, rdx
mov rdx, qword [rdx + 0x10]
call fcn.140122ce3
mov r8, rdx
mov rcx, rbx
mov rdx, rax
call fcn.14011abdc
mov esi, dword [r15 + 0x2c]
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x80]
mov rdx, rbx
xor r8d, r8d
mov r9d, esi
call fcn.140123026
mov eax, dword [rsp + 0x80]
cmp eax, 2
jne 0x140122176
mov al, byte [rsp + 0x84]
mov rcx, qword [rsp + 0x70]
mov byte [rcx + 8], al
mov qword [rcx], rdi
jmp 0x140122060
mov ecx, dword [rsp + 0x84]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rbx + 0x10]
mov rdi, qword [rsp + 0x70]
mov qword [rdi + 0x10], r8
movups xmm0, xmmword [rbx]
movups xmmword [rdi], xmm0
mov r8, qword [r15 + 0x30]
mov r9d, dword [r15 + 0x38]
movups xmm0, xmmword [r15 + 0x40]
movups xmmword [rdi + 0x40], xmm0
mov r10b, byte [r15 + 0x50]
mov byte [rdi + 0x50], r10b
mov r10d, dword [r15 + 0x28]
mov r11d, dword [r15 + 0x3c]
mov dword [rdi + 0x18], eax
mov dword [rdi + 0x1c], ecx
mov qword [rdi + 0x20], rdx
mov dword [rdi + 0x28], r10d
mov dword [rdi + 0x2c], esi
mov qword [rdi + 0x30], r8
mov dword [rdi + 0x38], r9d
mov dword [rdi + 0x3c], r11d
jmp 0x14012206c
cmp dword [rdi + 0x20], 0
je 0x1401222c3
lea rax, [rdi + 0x24]
mov r8d, dword [rax]
mov rcx, qword [rdi + 8]
mov r15, rdi
mov rdx, qword [rdi + 0x10]
call fcn.140122ce3
mov r8, rdx
mov rcx, rbx
mov rdx, rax
call fcn.14011abdc
mov r13d, dword [r15 + 0x3c]
mov rcx, rbx
xor edx, edx
mov r8, r13
call fcn.140123727
lea r8, [rsp + 0x80]
mov byte [r8], 1
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r12
mov rcx, rbx
xor edx, edx
mov r9, r13
call fcn.14012091b
lea r8, [rsp + 0x80]
mov ecx, 9
mov rdi, r8
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
mov r9d, dword [r15 + 0x2c]
mov ecx, dword [r15 + 0x30]
mov r10d, dword [r15 + 0x34]
mov r11d, dword [r15 + 0x38]
lea rsi, [r15 + 0x40]
movzx edi, word [r15 + 0x28]
movzx ebx, word [r15 + 0x2a]
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x50], r13d
mov word [rsp + 0x48], bx
mov word [rsp + 0x40], di
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], ecx
mov rcx, qword [rsp + 0x70]
mov rdx, r8
xor r8d, r8d
call fcn.140120f99
jmp 0x14012206c
mov rax, qword [rdx + 8]
mov r15, rdx
mov r8, qword [rdx + 0x10]
jmp 0x140122124
mov rax, qword [rdi + 8]
mov r15, rdi
mov r8, qword [rdi + 0x10]
jmp 0x1401221ff
mov dword [rsp + 0xb4], 0x110000
lea rcx, [0x1402978e0]
jmp 0x1401222ee
lea rcx, [0x1402978f8]
call fcn.140038d00
jmp 0x140122321
lea rax, [0x1402979f0]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140297368]
lea r8, [rsp + 0x80]
mov edx, 0x2b
call fcn.140037bd0
ud2