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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
mov qword [rsp + 0xc0], rcx
lea rcx, [0x21f7a1b80]
mov qword [rsp + 0xc8], rdx
mov dword [rsp + 0x6c], 0
call sym.winstrConverterStringToPtrChar__OOZOOZOOZOOZOnimbleZpkgsZwinim4551O57O50ZwinimZwinstr_651
xor r9d, r9d
mov r8d, 1
mov edx, 0x80000000
mov rcx, rax
mov rax, qword [0x21f7a2af0]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], pe_nt_image_headers64
mov dword [rsp + 0x20], 3
call qword [rax]
xor edx, edx
mov rcx, rax
mov r12, rax
mov rax, qword [0x21f7a2b00]
call qword [rax]
mov ebx, eax
mov rax, qword [0x21f7a2b30]
call qword [rax]
xor edx, edx
movsxd r8, ebx
mov rcx, rax
mov rax, qword [0x21f7a2b20]
call qword [rax]
lea r9, [rsp + 0x6c]
mov r8d, ebx
mov rcx, r12
mov qword [rsp + 0x20], 0
mov rsi, rax
mov rdx, rax
mov rax, qword [0x21f7a2b10]
call qword [rax]
movsxd r13, dword [rsi + 0x3c]
add r13, rsi
jo 0x21f792a18
mov eax, dword [r13 + 0x88]
lea r12, [r13 + 0x18]
mov dword [rsp + 0x50], eax
movzx eax, word [r13 + 0x14]
add rax, r12
mov qword [rsp + 0x48], rax
jo 0x21f792a0e
xor edi, edi
cmp word [r13 + 6], 0
mov rbp, qword [rsp + 0x48]
lea r15, [0x21f7a1b60]
jne 0x21f792772
jmp 0x21f7927c0
mov rdx, qword [rax]
test rdx, rdx
jle 0x21f7927b8
mov rax, qword [rbx]
mov rdx, r15
mov rcx, r14
mov qword [r14 + 0x10], rax
call sym.contains__pureZstrutils_1688
test al, al
cmovne rbp, rbx
add edi, 1
cmp word [r13 + 6], di
jbe 0x21f7927c0
movzx ebx, word [r13 + 0x14]
add rbx, r12
jo 0x21f7929e6
lea eax, [rdi + rdi*4]
shl eax, 3
movzx eax, ax
add rbx, rax
jo 0x21f7929f0
mov ecx, 8
call sym.mnewString
mov r14, rax
test rax, rax
jne 0x21f792748
mov rdx, 0xffffffffffffffff
xor ecx, ecx
call sym.raiseIndexError2
jmp 0x21f792750
sub rdx, 1
jmp 0x21f7927ab
movsxd r14, dword [rsp + 0x50]
add r14, rsi
jo 0x21f7929fa
movsxd rax, dword [rbp + 0xc]
sub r14, rax
jo 0x21f792a5e
movsxd rax, dword [rbp + 0x14]
add r14, rax
mov qword [rsp + 0x50], r14
jo 0x21f792a54
mov rax, qword [rsp + 0x50]
movsxd rbx, dword [rax + 0x20]
add rbx, rsi
jo 0x21f792a4a
movsxd rax, dword [rbp + 0xc]
sub rbx, rax
jo 0x21f792a40
movsxd rax, dword [rbp + 0x14]
add rbx, rax
mov qword [rsp + 0x58], rbx
jo 0x21f792a36
mov rax, qword [rsp + 0x50]
movsxd rbx, dword [rax + 0x1c]
add rbx, rsi
jo 0x21f792a2c
movsxd rax, dword [rbp + 0xc]
sub rbx, rax
jo 0x21f792a22
movsxd rax, dword [rbp + 0x14]
add rbx, rax
mov r15, rbx
jo 0x21f792a04
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x18]
test eax, eax
jle 0x21f792929
xor edi, edi
xor ebx, ebx
nop dword [rax]
mov rcx, qword [rsp + 0x58]
mov rdx, rbx
call sym.X5BX5D___71et83yscall83tub_71
movsxd r12, dword [rax]
add r12, rsi
jo 0x21f7929aa
movsxd rax, dword [rbp + 0xc]
sub r12, rax
jo 0x21f7929dc
movsxd rax, dword [rbp + 0x14]
add r12, rax
jo 0x21f7929d2
mov eax, 0x80000001
lea r14, [rbx + rax]
add rax, 0x7fffffff
cmp r14, rax
je 0x21f792940
add edi, 1
mov rcx, r15
movsxd rbx, edi
mov rdx, rbx
call sym.X5BX5D___71et83yscall83tub_71
movsxd r13, dword [rax]
add r13, rsi
jo 0x21f7929c8
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
sub r13, rax
jo 0x21f7929be
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0x14]
add r13, rax
jo 0x21f7929b4
mov rax, qword [0x21f7a2b80]
mov rdx, qword [rsp + 0xc0]
mov rcx, r12
call qword [rax]
test eax, eax
je 0x21f792968
movabs rax, 0x100000000
cmp r14, rax
je 0x21f792950
mov rax, qword [rsp + 0x50]
cmp dword [rax + 0x18], edi
jg 0x21f792868
xor eax, eax
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call sym.raiseOverflow
jmp 0x21f7928b3
call sym.raiseOverflow
mov rax, qword [rsp + 0x50]
cmp edi, dword [rax + 0x18]
jl 0x21f792868
jmp 0x21f792929
mov rcx, qword [0x21f79f060]
test rcx, rcx
js 0x21f792990
mov r8, rcx
mov rcx, qword [rsp + 0xc8]
mov rdx, r13
call sym.memcpy
mov eax, 1
jmp 0x21f79292b
movabs r8, 0x7fffffffffffffff
xor edx, edx
call sym.raiseRangeErrorI
mov rcx, qword [0x21f79f060]
jmp 0x21f792974
call sym.raiseOverflow
jmp 0x21f792881
call sym.raiseOverflow
jmp 0x21f7928f4
call sym.raiseOverflow
jmp 0x21f7928e2
call sym.raiseOverflow
jmp 0x21f7928d0
call sym.raiseOverflow
jmp 0x21f79289b
call sym.raiseOverflow
jmp 0x21f79288e
call sym.raiseOverflow
jmp 0x21f792780
call sym.raiseOverflow
jmp 0x21f792792
call sym.raiseOverflow
jmp 0x21f7927ce
call sym.raiseOverflow
jmp 0x21f79284d
call sym.raiseOverflow
jmp 0x21f792726
call sym.raiseOverflow
jmp 0x21f792704
call sym.raiseOverflow
jmp 0x21f79283d
call sym.raiseOverflow
jmp 0x21f792830
call sym.raiseOverflow
jmp 0x21f79281e
call sym.raiseOverflow
jmp 0x21f79280c
call sym.raiseOverflow
jmp 0x21f7927ff
call sym.raiseOverflow
jmp 0x21f7927ed
call sym.raiseOverflow
jmp 0x21f7927db