Function at 0x1400d94a0
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, 0xd8
mov r13, rdx
movzx eax, byte [rcx + 0x28]
cmp al, 0x82
jne 0x1400d94c3
jmp 0x1400d95f7
movzx r8d, byte [rcx + 0x40]
cmp r8b, 0x82
je 0x1400d9519
cmp r8b, 0x81
je 0x1400d9506
cmp r8b, 0x80
je 0x1400d94ef
movzx edx, byte [rcx + 0x43]
mov byte [rsp + 0x5a], dl
movzx edx, word [rcx + 0x41]
mov word [rsp + 0x58], dx
mov r9d, dword [rcx + 0x48]
mov r10d, dword [rcx + 0x44]
movzx edx, byte [rsp + 0x5a]
mov byte [rsp + 0x3a], dl
movzx edx, word [rsp + 0x58]
mov word [rsp + 0x38], dx
movzx edx, byte [rsp + 0x3a]
mov byte [rsp + 0x5a], dl
movzx edx, word [rsp + 0x38]
mov word [rsp + 0x58], dx
mov byte [rsp + 0x2f], r8b
movzx edx, byte [rsp + 0x5a]
mov byte [rsp + 0x32], dl
movzx edx, word [rsp + 0x58]
mov word [rsp + 0x30], dx
cmp al, 0x81
je 0x1400d9568
cmp al, 0x80
je 0x1400d954e
movzx edx, byte [rcx + 0x2b]
mov byte [rsp + 0x5a], dl
movzx edx, word [rcx + 0x29]
mov word [rsp + 0x58], dx
mov r8d, dword [rcx + 0x30]
mov edx, dword [rcx + 0x2c]
movzx r11d, byte [rsp + 0x5a]
mov byte [rsp + 0x36], r11b
movzx r11d, word [rsp + 0x58]
mov word [rsp + 0x34], r11w
movzx r11d, byte [rcx + 0x34]
mov byte [rsp + 0x2e], r11b
cmp r11b, 0x81
je 0x1400d95b2
cmp byte [rsp + 0x2e], 0x80
je 0x1400d9598
movzx r11d, byte [rcx + 0x37]
mov byte [rsp + 0x5a], r11b
movzx r11d, word [rcx + 0x35]
mov word [rsp + 0x58], r11w
mov r14d, dword [rcx + 0x3c]
mov edi, dword [rcx + 0x38]
movzx r11d, byte [rsp + 0x5a]
mov byte [rsp + 0x3a], r11b
movzx r11d, word [rsp + 0x58]
mov word [rsp + 0x38], r11w
movzx r11d, byte [rsp + 0x32]
mov byte [rsp + 0x4a], r11b
movzx r11d, word [rsp + 0x30]
mov word [rsp + 0x48], r11w
movzx r11d, word [rsp + 0x34]
mov word [rsp + 0x50], r11w
movzx r11d, byte [rsp + 0x36]
mov byte [rsp + 0x52], r11b
movzx r11d, word [rsp + 0x38]
mov word [rsp + 0x4c], r11w
movzx r11d, byte [rsp + 0x3a]
mov byte [rsp + 0x4e], r11b
movzx ebx, byte [rcx + 0x1c]
cmp bl, 0x82
mov dword [rsp + 0xbc], edi
mov qword [rsp + 0xd0], r14
jne 0x1400d9614
jmp 0x1400d96c9
movzx ebp, byte [rcx + 0x10]
cmp bpl, 0x81
je 0x1400d965f
cmp bpl, 0x80
je 0x1400d963c
movzx r11d, byte [rcx + 0x13]
mov byte [rsp + 0x5a], r11b
movzx r11d, word [rcx + 0x11]
mov word [rsp + 0x58], r11w
mov esi, dword [rcx + 0x18]
mov r11d, dword [rcx + 0x14]
mov dword [rsp + 0xb8], r11d
movzx r11d, byte [rsp + 0x5a]
mov byte [rsp + 0x36], r11b
movzx r11d, word [rsp + 0x58]
mov word [rsp + 0x34], r11w
mov r15, qword [rcx + 8]
cmp bl, 0x81
je 0x1400d96a0
cmp bl, 0x80
je 0x1400d9686
movzx r11d, byte [rcx + 0x1f]
mov byte [rsp + 0x5a], r11b
movzx r11d, word [rcx + 0x1d]
mov word [rsp + 0x58], r11w
mov r14d, dword [rcx + 0x24]
mov edi, dword [rcx + 0x20]
movzx r11d, byte [rsp + 0x5a]
mov byte [rsp + 0x3a], r11b
movzx r11d, word [rsp + 0x58]
mov word [rsp + 0x38], r11w
mov r12, qword [rcx]
movzx ecx, byte [rsp + 0x36]
mov byte [rsp + 0x32], cl
movzx ecx, word [rsp + 0x34]
mov word [rsp + 0x30], cx
movzx ecx, word [rsp + 0x38]
mov word [rsp + 0x54], cx
movzx ecx, byte [rsp + 0x3a]
mov byte [rsp + 0x56], cl
movzx ecx, byte [rsp + 0x52]
mov byte [rsp + 0x83], cl
movzx ecx, word [rsp + 0x50]
mov word [rsp + 0x81], cx
movzx ecx, word [rsp + 0x4c]
mov word [rsp + 0x8d], cx
movzx ecx, byte [rsp + 0x4e]
mov byte [rsp + 0x8f], cl
movzx ecx, word [rsp + 0x48]
mov word [rsp + 0x99], cx
movzx ecx, byte [rsp + 0x4a]
mov byte [rsp + 0x9b], cl
movzx ecx, word [rsp + 0x30]
mov word [rsp + 0x69], cx
movzx ecx, byte [rsp + 0x32]
mov byte [rsp + 0x6b], cl
movzx ecx, word [rsp + 0x54]
mov word [rsp + 0x75], cx
movzx ecx, byte [rsp + 0x56]
mov byte [rsp + 0x77], cl
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r15
mov byte [rsp + 0x68], bpl
mov ecx, dword [rsp + 0xb8]
mov dword [rsp + 0x6c], ecx
mov dword [rsp + 0x70], esi
mov byte [rsp + 0x74], bl
mov dword [rsp + 0x78], edi
mov dword [rsp + 0x7c], r14d
mov byte [rsp + 0x80], al
mov dword [rsp + 0x84], edx
mov dword [rsp + 0x88], r8d
movzx ecx, byte [rsp + 0x2e]
mov byte [rsp + 0x8c], cl
mov ecx, dword [rsp + 0xbc]
mov dword [rsp + 0x90], ecx
mov rcx, qword [rsp + 0xd0]
mov dword [rsp + 0x94], ecx
movzx ecx, byte [rsp + 0x2f]
mov byte [rsp + 0x98], cl
mov dword [rsp + 0x9c], r10d
mov dword [rsp + 0xa0], r9d
cmp al, 0x82
je 0x1400d9a84
mov byte [rsp + 0x43], bpl
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0xc0], r15
mov qword [rsp + 0xc8], r14
mov byte [rsp + 0x2d], bl
mov dword [rsp + 0x44], edi
cmp al, 0x81
jne 0x1400d98ce
movzx edx, byte [rsp + 0x2f]
cmp dl, 0x82
je 0x1400d9a31
mov byte [rsp + 0x98], 0x81
cmp dl, 0x81
je 0x1400d9a31
lea rax, [rsp + 0x81]
mov ecx, dword [rax + 0x1f]
mov dword [rax + 7], ecx
mov rcx, qword [rax + 0x18]
mov qword [rax], rcx
mov byte [rsp + 0x80], dl
cmp dl, 0x80
jne 0x1400d99cb
mov rax, qword [rsp + 0xa8]
mov r12, qword [rax + 0x20]
mov rdi, qword [rax + 0x28]
mov r13b, pe_nt_image_headers64
jmp 0x1400d9891
mov edx, dword [rsp + 0x84]
lea rax, [rsp + 0x80]
mov dword [rax + 8], 0
mov qword [rax], 0
xor r13d, r13d
mov rcx, r12
call qword [rdi + 0x20]
mov r14b, 1
test al, al
jne 0x1400da024
cmp r13b, 0x80
je 0x1400d9860
movzx r15d, byte [rsp + 0x8a]
cmp r15b, byte [rsp + 0x8b]
jae 0x1400d9a29
lea eax, [r15 + 1]
mov byte [rsp + 0x8a], al
cmp r15b, 0xa
jae 0x1400da07c
movzx edx, byte [rsp + r15 + 0x80]
jmp 0x1400d9880
mov r13d, r8d
shr r13d, 0x18
shr r8d, 0x10
cmp al, 0x80
jne 0x1400d996a
mov rax, qword [rsp + 0xa8]
mov r14, qword [rax + 0x20]
mov r12, qword [rax + 0x28]
mov dil, pe_nt_image_headers64
jmp 0x1400d9934
lea rax, [rsp + 0x80]
mov dword [rax + 8], 0
mov qword [rax], 0
xor ebx, ebx
xor r13d, r13d
xor ebp, ebp
xor edi, edi
mov rcx, r14
call qword [r12 + 0x20]
mov edx, ebx
mov r8d, ebp
test al, al
jne 0x1400da021
cmp dil, 0x80
je 0x1400d9900
cmp r8b, r13b
jae 0x1400d97fd
lea ebp, [r8 + 1]
mov byte [rsp + 0x8a], bpl
movzx r15d, r8b
cmp r8b, 0xa
jae 0x1400da07c
mov ebx, edx
movzx edx, byte [rsp + r15 + 0x80]
jmp 0x1400d991f
movzx r15d, r8b
mov edi, r13d
mov rax, qword [rsp + 0xa8]
mov r14, qword [rax + 0x20]
mov r12, qword [rax + 0x28]
mov ebp, r15d
inc bpl
nop word [rax + rax]
cmp r15, rdi
jae 0x1400d97fd
mov byte [rsp + 0x8a], bpl
cmp r15, 9
ja 0x1400da07c
movzx edx, byte [rsp + r15 + 0x80]
mov rcx, r14
call qword [r12 + 0x20]
inc bpl
inc r15
test al, al
je 0x1400d9990
jmp 0x1400da021
movzx edi, byte [rsp + 0x8b]
movzx r15d, byte [rsp + 0x8a]
mov rax, qword [rsp + 0xa8]
mov r12, qword [rax + 0x20]
mov r13, qword [rax + 0x28]
nop dword [rax]
cmp r15, rdi
jae 0x1400d9a29
lea eax, [r15 + 1]
mov byte [rsp + 0x8a], al
cmp r15, 9
ja 0x1400da07c
movzx edx, byte [rsp + r15 + 0x80]
mov rcx, r12
call qword [r13 + 0x20]
inc r15
mov r14b, 1
test al, al
je 0x1400d99f0
jmp 0x1400da024
mov byte [rsp + 0x98], 0x81
movzx eax, byte [rsp + 0x2e]
cmp al, 0x81
mov rcx, qword [rsp + 0xd0]
jne 0x1400d9eeb
mov byte [rsp + 0x8c], 0x81
mov byte [rsp + 0x80], 0x82
mov edi, dword [rsp + 0x44]
movzx ebx, byte [rsp + 0x2d]
mov r14, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xa8]
movzx ebp, byte [rsp + 0x43]
cmp bl, 0x82
jne 0x1400d9a91
xor r14d, r14d
jmp 0x1400da024
mov qword [rsp + 0xc0], r15
mov qword [rsp + 0xc8], r14
mov byte [rsp + 0x2d], bl
mov dword [rsp + 0x44], edi
mov rdi, qword [r13 + 0x20]
mov r15, qword [r13 + 0x28]
cmp bpl, 0x81
mov edx, dword [rsp + 0xb8]
jne 0x1400d9dce
test r12, r12
mov r8, qword [rsp + 0xc8]
je 0x1400d9e4e
cmp r12, qword [rsp + 0xc0]
je 0x1400d9e4e
movzx ebx, byte [r12]
test bl, bl
js 0x1400d9b26
inc r12
mov qword [rsp + 0xb0], r12
mov r13b, 2
mov ax, 0x5c
cmp ebx, 0x27
ja case.default.0x1400d9b15
mov ecx, ebx
lea r8, [0x14010bfe8]
movsxd rdx, dword [r8 + rcx*4]
add rdx, r8
jmp rdx
mov dx, 0x3000
xor r8d, r8d
mov r9, rcx
jmp 0x1400d9bf5
mov eax, ebx
and eax, 0x1f
movzx edx, byte [r12 + 1]
and edx, 0x3f
cmp bl, 0xdf
jbe 0x1400d9b7b
movzx ecx, byte [r12 + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp bl, 0xf0
jb 0x1400d9ce3
movzx ebx, byte [r12 + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and ebx, 0x3f
or ebx, ecx
or ebx, eax
cmp ebx, 0x110000
je 0x1400d9e4e
add r12, 4
jmp 0x1400d9aed
add r12, 2
mov qword [rsp + 0xb0], r12
shl eax, 6
or eax, edx
mov ebx, eax
mov r13b, 2
mov ax, 0x5c
cmp ebx, 0x27
jbe 0x1400d9b05
cmp ebx, 0x5c
jne case.0x1400d9b15.1
xor ecx, ecx
mov dx, 0x5c00
jmp 0x1400d9bed
mov ecx, ebx
call dbg.is_printable
test al, al
je 0x1400d9d0b
mov ax, pe_nt_image_headers64
xor edx, edx
xor ecx, ecx
xor r9d, r9d
jmp 0x1400d9bf5
xor ecx, ecx
mov dx, 0x7400
jmp 0x1400d9bed
xor ecx, ecx
mov dx, 0x6e00
jmp 0x1400d9bed
xor ecx, ecx
mov dx, 0x7200
jmp 0x1400d9bed
xor ecx, ecx
mov dx, 0x2200
jmp 0x1400d9bed
xor ecx, ecx
mov dx, 0x2700
xor ebx, ebx
xor r9d, r9d
xor r8d, r8d
or rcx, r9
movzx eax, ax
or edx, eax
mov r9d, ebx
shl r9, 0x10
or r9, rcx
mov word [rsp + 0x68], dx
mov qword [rsp + 0x6a], r9
mov byte [rsp + 0x73], r13b
cmp al, 0x80
jne 0x1400d9c83
mov sil, pe_nt_image_headers64
jmp 0x1400d9c54
lea rax, [rsp + 0x68]
mov dword [rax + 8], 0
mov qword [rax], 0
xor r12d, r12d
xor r13d, r13d
xor ebp, ebp
xor esi, esi
mov rcx, rdi
mov edx, ebx
call qword [r15 + 0x20]
mov ebx, r12d
mov r8d, ebp
test al, al
jne 0x1400da021
cmp sil, 0x80
je 0x1400d9c20
cmp r8b, r13b
jae 0x1400d9cc0
lea ebp, [r8 + 1]
mov byte [rsp + 0x72], bpl
movzx r14d, r8b
cmp r8b, 0xa
jae 0x1400da0a8
mov r12d, ebx
movzx eax, byte [rsp + r14 + 0x68]
mov ebx, eax
jmp 0x1400d9c3d
movzx r14d, r8b
movzx esi, r13b
nop dword [rax + rax]
cmp r14, rsi
jae 0x1400d9cc0
lea eax, [r14 + 1]
mov byte [rsp + 0x72], al
cmp r14, 9
ja 0x1400da0a8
movzx edx, byte [rsp + r14 + 0x68]
mov rcx, rdi
call qword [r15 + 0x20]
inc r14
test al, al
je 0x1400d9c90
jmp 0x1400da021
mov r12, qword [rsp + 0xb0]
cmp r12, qword [rsp + 0xc0]
mov r8, qword [rsp + 0xc8]
jne 0x1400d9ae1
jmp 0x1400d9e4e
add r12, 3
mov qword [rsp + 0xb0], r12
shl eax, 0xc
or ecx, eax
mov ebx, ecx
mov r13b, 2
mov ax, 0x5c
cmp ebx, 0x27
jbe 0x1400d9b05
jmp case.default.0x1400d9b15
mov byte [rsp + 0x3a], 0
mov word [rsp + 0x38], 0
mov byte [rsp + 0x41], 0x7d
mov eax, ebx
shr eax, 0x14
lea rcx, [0x1401102cd]
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x3b], al
mov eax, ebx
shr eax, 0x10
and eax, 0xf
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x3c], al
mov eax, ebx
shr eax, 0xc
and eax, 0xf
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x3d], al
mov eax, ebx
shr eax, 8
and eax, 0xf
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x3e], al
mov eax, ebx
shr eax, 4
and eax, 0xf
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x3f], al
mov eax, ebx
and eax, 0xf
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x40], al
or ebx, 1
bsr eax, ebx
xor eax, 0x1c
shr eax, 2
lea r8, [rax - 2]
mov byte [rsp + rax + 0x38], 0x7b
mov word [rsp + rax + 0x36], 0x755c
movzx ecx, word [rsp + 0x38]
movzx eax, cl
mov edx, ecx
and edx, 0xff00
mov rbx, qword [rsp + 0x3a]
mov rcx, rbx
movzx r9d, bx
shr rbx, 0x10
movabs r10, 0xffff000000000000
and rcx, r10
mov r13b, 0xa
jmp 0x1400d9bf5
mov r14d, esi
shr r14d, 0x18
shr esi, 0x10
cmp bpl, 0x80
jne 0x1400d9f86
mov r13b, pe_nt_image_headers64
jmp 0x1400d9e20
lea rax, [rsp + 0x68]
mov dword [rax + 8], 0
mov qword [rax], 0
xor esi, esi
xor r14d, r14d
xor ebp, ebp
xor r13d, r13d
mov rcx, rdi
call qword [r15 + 0x20]
mov edx, esi
mov esi, ebp
test al, al
jne 0x1400da021
cmp r13b, 0x80
je 0x1400d9df0
cmp sil, r14b
jae 0x1400d9ac2
lea ebp, [rsi + 1]
mov byte [rsp + 0x72], bpl
movzx ebx, sil
cmp sil, 0xa
jae 0x1400da092
mov esi, edx
movzx edx, byte [rsp + rbx + 0x68]
jmp 0x1400d9e0d
movzx eax, byte [rsp + 0x2d]
cmp al, 0x81
je 0x1400d9a89
mov esi, r8d
shr esi, 0x18
shr r8d, 0x10
cmp al, 0x80
jne 0x1400da03b
mov rcx, r8
mov bpl, pe_nt_image_headers64
jmp 0x1400d9ebb
lea rax, [rsp + 0x74]
mov dword [rax + 8], 0
mov qword [rax], 0
xor r12d, r12d
xor esi, esi
xor r13d, r13d
xor ebp, ebp
mov edx, dword [rsp + 0x44]
mov rcx, rdi
call qword [r15 + 0x20]
mov r14b, 1
mov dword [rsp + 0x44], r12d
mov ecx, r13d
test al, al
jne 0x1400da024
cmp bpl, 0x80
je 0x1400d9e80
cmp cl, sil
mov r12d, dword [rsp + 0x44]
jae 0x1400d9a89
lea r13d, [rcx + 1]
mov byte [rsp + 0x7e], r13b
movzx ebx, cl
cmp cl, 0xa
jae 0x1400da092
movzx edx, byte [rsp + rbx + 0x74]
jmp 0x1400d9ea1
mov r12d, ecx
shr r12d, 0x18
shr ecx, 0x10
cmp al, 0x80
jne 0x1400d9fd0
mov rax, qword [rsp + 0xa8]
mov r14, qword [rax + 0x20]
mov r13, qword [rax + 0x28]
mov dil, pe_nt_image_headers64
mov edx, dword [rsp + 0xbc]
jmp 0x1400d9f52
lea rax, [rsp + 0x8c]
mov dword [rax + 8], 0
mov qword [rax], 0
xor ebx, ebx
xor r12d, r12d
xor ebp, ebp
xor edi, edi
mov rcx, r14
call qword [r13 + 0x20]
mov edx, ebx
mov ecx, ebp
test al, al
jne 0x1400da021
cmp dil, 0x80
je 0x1400d9f20
cmp cl, r12b
jae 0x1400d9a46
lea ebp, [rcx + 1]
mov byte [rsp + 0x96], bpl
movzx r15d, cl
cmp cl, 0xa
jae 0x1400da07c
mov ebx, edx
movzx edx, byte [rsp + r15 + 0x8c]
jmp 0x1400d9f3f
movzx ebx, sil
mov esi, r14d
mov ebp, ebx
inc bpl
nop word cs:[rax + rax]
cmp rbx, rsi
jae 0x1400d9ac2
mov byte [rsp + 0x72], bpl
cmp rbx, 9
ja 0x1400da092
movzx edx, byte [rsp + rbx + 0x68]
mov rcx, rdi
call qword [r15 + 0x20]
inc bpl
inc rbx
test al, al
je 0x1400d9fa0
jmp 0x1400da021
movzx r15d, cl
mov ebx, r12d
mov rax, qword [rsp + 0xa8]
mov rdi, qword [rax + 0x20]
mov r14, qword [rax + 0x28]
mov ebp, r15d
inc bpl
nop dword [rax]
cmp r15, rbx
jae 0x1400d9a46
mov byte [rsp + 0x96], bpl
cmp r15, 9
ja 0x1400da07c
movzx edx, byte [rsp + r15 + 0x8c]
mov rcx, rdi
call qword [r14 + 0x20]
inc bpl
inc r15
test al, al
je 0x1400d9ff0
mov r14b, 1
mov eax, r14d
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movzx ebx, r8b
mov esi, esi
mov ebp, ebx
inc bpl
nop word cs:[rax + rax]
cmp rbx, rsi
setb r14b
jae 0x1400da024
mov byte [rsp + 0x7e], bpl
cmp rbx, 9
ja 0x1400da092
movzx edx, byte [rsp + rbx + 0x74]
mov rcx, rdi
call qword [r15 + 0x20]
inc bpl
inc rbx
test al, al
je 0x1400da050
jmp 0x1400da024
lea r8, [0x140110330]
mov edx, 0xa
mov rcx, r15
call dbg.panic_bounds_check
ud2
lea r8, [0x140110330]
mov edx, 0xa
mov rcx, rbx
call dbg.panic_bounds_check
ud2
lea r8, [0x140110330]
mov edx, 0xa
mov rcx, r14
call dbg.panic_bounds_check
ud2