Function at 0x140200ef0
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 0x140200f13
jmp 0x140201047
movzx r8d, byte [rcx + 0x40]
cmp r8b, 0x82
je 0x140200f69
cmp r8b, 0x81
je 0x140200f56
cmp r8b, 0x80
je 0x140200f3f
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 0x140200fb8
cmp al, 0x80
je 0x140200f9e
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 0x140201002
cmp byte [rsp + 0x2e], 0x80
je 0x140200fe8
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 0x140201064
jmp 0x140201119
movzx ebp, byte [rcx + 0x10]
cmp bpl, 0x81
je 0x1402010af
cmp bpl, 0x80
je 0x14020108c
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 0x1402010f0
cmp bl, 0x80
je 0x1402010d6
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 0x1402014d4
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 0x14020131e
movzx edx, byte [rsp + 0x2f]
cmp dl, 0x82
je 0x140201481
mov byte [rsp + 0x98], 0x81
cmp dl, 0x81
je 0x140201481
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 0x14020141b
mov rax, qword [rsp + 0xa8]
mov r12, qword [rax + 0x20]
mov rdi, qword [rax + 0x28]
mov r13b, pe_nt_image_headers64
jmp 0x1402012e1
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 0x140201a74
cmp r13b, 0x80
je 0x1402012b0
movzx r15d, byte [rsp + 0x8a]
cmp r15b, byte [rsp + 0x8b]
jae 0x140201479
lea eax, [r15 + 1]
mov byte [rsp + 0x8a], al
cmp r15b, 0xa
jae 0x140201acc
movzx edx, byte [rsp + r15 + 0x80]
jmp 0x1402012d0
mov r13d, r8d
shr r13d, 0x18
shr r8d, 0x10
cmp al, 0x80
jne 0x1402013ba
mov rax, qword [rsp + 0xa8]
mov r14, qword [rax + 0x20]
mov r12, qword [rax + 0x28]
mov dil, pe_nt_image_headers64
jmp 0x140201384
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 0x140201a71
cmp dil, 0x80
je 0x140201350
cmp r8b, r13b
jae 0x14020124d
lea ebp, [r8 + 1]
mov byte [rsp + 0x8a], bpl
movzx r15d, r8b
cmp r8b, 0xa
jae 0x140201acc
mov ebx, edx
movzx edx, byte [rsp + r15 + 0x80]
jmp 0x14020136f
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 0x14020124d
mov byte [rsp + 0x8a], bpl
cmp r15, 9
ja 0x140201acc
movzx edx, byte [rsp + r15 + 0x80]
mov rcx, r14
call qword [r12 + 0x20]
inc bpl
inc r15
test al, al
je 0x1402013e0
jmp 0x140201a71
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 0x140201479
lea eax, [r15 + 1]
mov byte [rsp + 0x8a], al
cmp r15, 9
ja 0x140201acc
movzx edx, byte [rsp + r15 + 0x80]
mov rcx, r12
call qword [r13 + 0x20]
inc r15
mov r14b, 1
test al, al
je 0x140201440
jmp 0x140201a74
mov byte [rsp + 0x98], 0x81
movzx eax, byte [rsp + 0x2e]
cmp al, 0x81
mov rcx, qword [rsp + 0xd0]
jne 0x14020193b
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 0x1402014e1
xor r14d, r14d
jmp 0x140201a74
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 0x14020181e
test r12, r12
mov r8, qword [rsp + 0xc8]
je 0x14020189e
cmp r12, qword [rsp + 0xc0]
je 0x14020189e
movzx ebx, byte [r12]
test bl, bl
js 0x140201576
inc r12
mov qword [rsp + 0xb0], r12
mov r13b, 2
mov ax, 0x5c
cmp ebx, 0x27
ja case.default.0x140201565
mov ecx, ebx
lea r8, [0x140276008]
movsxd rdx, dword [r8 + rcx*4]
add rdx, r8
jmp rdx
mov dx, 0x3000
xor r8d, r8d
mov r9, rcx
jmp 0x140201645
mov eax, ebx
and eax, 0x1f
movzx edx, byte [r12 + 1]
and edx, 0x3f
cmp bl, 0xdf
jbe 0x1402015cb
movzx ecx, byte [r12 + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp bl, 0xf0
jb 0x140201733
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 0x14020189e
add r12, 4
jmp 0x14020153d
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 0x140201555
cmp ebx, 0x5c
jne case.0x140201565.1
xor ecx, ecx
mov dx, 0x5c00
jmp 0x14020163d
mov ecx, ebx
call dbg.is_printable
test al, al
je 0x14020175b
mov ax, pe_nt_image_headers64
xor edx, edx
xor ecx, ecx
xor r9d, r9d
jmp 0x140201645
xor ecx, ecx
mov dx, 0x7400
jmp 0x14020163d
xor ecx, ecx
mov dx, 0x6e00
jmp 0x14020163d
xor ecx, ecx
mov dx, 0x7200
jmp 0x14020163d
xor ecx, ecx
mov dx, 0x2200
jmp 0x14020163d
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 0x1402016d3
mov sil, pe_nt_image_headers64
jmp 0x1402016a4
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 0x140201a71
cmp sil, 0x80
je 0x140201670
cmp r8b, r13b
jae 0x140201710
lea ebp, [r8 + 1]
mov byte [rsp + 0x72], bpl
movzx r14d, r8b
cmp r8b, 0xa
jae 0x140201af8
mov r12d, ebx
movzx eax, byte [rsp + r14 + 0x68]
mov ebx, eax
jmp 0x14020168d
movzx r14d, r8b
movzx esi, r13b
nop dword [rax + rax]
cmp r14, rsi
jae 0x140201710
lea eax, [r14 + 1]
mov byte [rsp + 0x72], al
cmp r14, 9
ja 0x140201af8
movzx edx, byte [rsp + r14 + 0x68]
mov rcx, rdi
call qword [r15 + 0x20]
inc r14
test al, al
je 0x1402016e0
jmp 0x140201a71
mov r12, qword [rsp + 0xb0]
cmp r12, qword [rsp + 0xc0]
mov r8, qword [rsp + 0xc8]
jne 0x140201531
jmp 0x14020189e
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 0x140201555
jmp case.default.0x140201565
mov byte [rsp + 0x3a], 0
mov word [rsp + 0x38], 0
mov byte [rsp + 0x41], 0x7d
mov eax, ebx
shr eax, 0x14
lea rcx, [0x14027a2ed]
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 0x140201645
mov r14d, esi
shr r14d, 0x18
shr esi, 0x10
cmp bpl, 0x80
jne 0x1402019d6
mov r13b, pe_nt_image_headers64
jmp 0x140201870
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 0x140201a71
cmp r13b, 0x80
je 0x140201840
cmp sil, r14b
jae 0x140201512
lea ebp, [rsi + 1]
mov byte [rsp + 0x72], bpl
movzx ebx, sil
cmp sil, 0xa
jae 0x140201ae2
mov esi, edx
movzx edx, byte [rsp + rbx + 0x68]
jmp 0x14020185d
movzx eax, byte [rsp + 0x2d]
cmp al, 0x81
je 0x1402014d9
mov esi, r8d
shr esi, 0x18
shr r8d, 0x10
cmp al, 0x80
jne 0x140201a8b
mov rcx, r8
mov bpl, pe_nt_image_headers64
jmp 0x14020190b
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 0x140201a74
cmp bpl, 0x80
je 0x1402018d0
cmp cl, sil
mov r12d, dword [rsp + 0x44]
jae 0x1402014d9
lea r13d, [rcx + 1]
mov byte [rsp + 0x7e], r13b
movzx ebx, cl
cmp cl, 0xa
jae 0x140201ae2
movzx edx, byte [rsp + rbx + 0x74]
jmp 0x1402018f1
mov r12d, ecx
shr r12d, 0x18
shr ecx, 0x10
cmp al, 0x80
jne 0x140201a20
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 0x1402019a2
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 0x140201a71
cmp dil, 0x80
je 0x140201970
cmp cl, r12b
jae 0x140201496
lea ebp, [rcx + 1]
mov byte [rsp + 0x96], bpl
movzx r15d, cl
cmp cl, 0xa
jae 0x140201acc
mov ebx, edx
movzx edx, byte [rsp + r15 + 0x8c]
jmp 0x14020198f
movzx ebx, sil
mov esi, r14d
mov ebp, ebx
inc bpl
nop word cs:[rax + rax]
cmp rbx, rsi
jae 0x140201512
mov byte [rsp + 0x72], bpl
cmp rbx, 9
ja 0x140201ae2
movzx edx, byte [rsp + rbx + 0x68]
mov rcx, rdi
call qword [r15 + 0x20]
inc bpl
inc rbx
test al, al
je 0x1402019f0
jmp 0x140201a71
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 0x140201496
mov byte [rsp + 0x96], bpl
cmp r15, 9
ja 0x140201acc
movzx edx, byte [rsp + r15 + 0x8c]
mov rcx, rdi
call qword [r14 + 0x20]
inc bpl
inc r15
test al, al
je 0x140201a40
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 0x140201a74
mov byte [rsp + 0x7e], bpl
cmp rbx, 9
ja 0x140201ae2
movzx edx, byte [rsp + rbx + 0x74]
mov rcx, rdi
call qword [r15 + 0x20]
inc bpl
inc rbx
test al, al
je 0x140201aa0
jmp 0x140201a74
lea r8, [0x14027a350]
mov edx, 0xa
mov rcx, r15
call dbg.panic_bounds_check
ud2
lea r8, [0x14027a350]
mov edx, 0xa
mov rcx, rbx
call dbg.panic_bounds_check
ud2
lea r8, [0x14027a350]
mov edx, 0xa
mov rcx, r14
call dbg.panic_bounds_check
ud2