Function at 0x1400240d0
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, 0xe8
mov r14, rdx
movzx eax, byte [rcx + 0x28]
cmp al, 0x82
jne 0x1400241e2
movzx ebx, byte [rcx + 0x1c]
cmp bl, 0x82
je 0x140024326
movzx ebp, byte [rcx + 0x10]
mov qword [rsp + 0xa8], r11
cmp bpl, 0x81
je 0x14002415b
mov qword [rsp + 0xa8], r11
cmp bpl, 0x80
je 0x140024140
movzx r11d, byte [rcx + 0x13]
mov byte [rsp + 0x52], r11b
movzx r11d, word [rcx + 0x11]
mov word [rsp + 0x50], r11w
mov r11d, dword [rcx + 0x18]
mov qword [rsp + 0xa8], r11
mov r13d, dword [rcx + 0x14]
movzx r11d, byte [rsp + 0x52]
mov byte [rsp + 0x32], r11b
movzx r11d, word [rsp + 0x50]
mov word [rsp + 0x30], r11w
mov rdi, qword [rcx + 8]
mov qword [rsp + 0xb8], r11
cmp bl, 0x81
je 0x1400241b4
mov qword [rsp + 0xb8], r11
cmp bl, 0x80
je 0x14002419a
movzx r11d, byte [rcx + 0x1f]
mov byte [rsp + 0x52], r11b
movzx r11d, word [rcx + 0x1d]
mov word [rsp + 0x50], r11w
mov r11d, dword [rcx + 0x24]
mov qword [rsp + 0xb8], r11
mov esi, dword [rcx + 0x20]
movzx r11d, byte [rsp + 0x52]
mov byte [rsp + 0x36], r11b
movzx r11d, word [rsp + 0x50]
mov word [rsp + 0x34], r11w
mov r11, qword [rcx]
movzx ecx, byte [rsp + 0x32]
mov byte [rsp + 0x2e], cl
movzx ecx, word [rsp + 0x30]
mov word [rsp + 0x2c], cx
movzx ecx, word [rsp + 0x34]
mov word [rsp + 0x4c], cx
movzx ecx, byte [rsp + 0x36]
mov byte [rsp + 0x4e], cl
jmp 0x140024336
movzx r8d, byte [rcx + 0x40]
cmp r8b, 0x82
je 0x140024238
cmp r8b, 0x81
je 0x140024225
cmp r8b, 0x80
je 0x14002420e
movzx edx, byte [rcx + 0x43]
mov byte [rsp + 0x52], dl
movzx edx, word [rcx + 0x41]
mov word [rsp + 0x50], dx
mov r9d, dword [rcx + 0x48]
mov r10d, dword [rcx + 0x44]
movzx edx, byte [rsp + 0x52]
mov byte [rsp + 0x36], dl
movzx edx, word [rsp + 0x50]
mov word [rsp + 0x34], dx
movzx edx, byte [rsp + 0x36]
mov byte [rsp + 0x52], dl
movzx edx, word [rsp + 0x34]
mov word [rsp + 0x50], dx
mov byte [rsp + 0x2b], r8b
movzx edx, byte [rsp + 0x52]
mov byte [rsp + 0x2e], dl
movzx edx, word [rsp + 0x50]
mov word [rsp + 0x2c], dx
cmp al, 0x81
je 0x140024287
cmp al, 0x80
je 0x14002426d
movzx edx, byte [rcx + 0x2b]
mov byte [rsp + 0x52], dl
movzx edx, word [rcx + 0x29]
mov word [rsp + 0x50], dx
mov r8d, dword [rcx + 0x30]
mov edx, dword [rcx + 0x2c]
movzx r11d, byte [rsp + 0x52]
mov byte [rsp + 0x32], r11b
movzx r11d, word [rsp + 0x50]
mov word [rsp + 0x30], r11w
movzx r12d, byte [rcx + 0x34]
cmp r12b, 0x81
je 0x1400242d4
cmp r12b, 0x80
je 0x1400242b1
movzx r11d, byte [rcx + 0x37]
mov byte [rsp + 0x52], r11b
movzx r11d, word [rcx + 0x35]
mov word [rsp + 0x50], r11w
mov r15d, dword [rcx + 0x3c]
mov r11d, dword [rcx + 0x38]
mov dword [rsp + 0xc4], r11d
movzx r11d, byte [rsp + 0x52]
mov byte [rsp + 0x36], r11b
movzx r11d, word [rsp + 0x50]
mov word [rsp + 0x34], r11w
movzx r11d, byte [rsp + 0x2e]
mov byte [rsp + 0x42], r11b
movzx r11d, word [rsp + 0x2c]
mov word [rsp + 0x40], r11w
movzx r11d, word [rsp + 0x30]
mov word [rsp + 0x48], r11w
movzx r11d, byte [rsp + 0x32]
mov byte [rsp + 0x4a], r11b
movzx r11d, word [rsp + 0x34]
mov word [rsp + 0x44], r11w
movzx r11d, byte [rsp + 0x36]
mov byte [rsp + 0x46], r11b
movzx ebx, byte [rcx + 0x1c]
cmp bl, 0x82
jne 0x1400240ff
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0xa8], rcx
movzx ecx, byte [rsp + 0x4a]
mov byte [rsp + 0x7b], cl
movzx ecx, word [rsp + 0x48]
mov word [rsp + 0x79], cx
movzx ecx, word [rsp + 0x44]
mov word [rsp + 0x85], cx
movzx ecx, byte [rsp + 0x46]
mov byte [rsp + 0x87], cl
movzx ecx, word [rsp + 0x40]
mov word [rsp + 0x91], cx
movzx ecx, byte [rsp + 0x42]
mov byte [rsp + 0x93], cl
movzx ecx, word [rsp + 0x2c]
mov word [rsp + 0x61], cx
movzx ecx, byte [rsp + 0x2e]
mov byte [rsp + 0x63], cl
movzx ecx, word [rsp + 0x4c]
mov word [rsp + 0x6d], cx
movzx ecx, byte [rsp + 0x4e]
mov byte [rsp + 0x6f], cl
mov qword [rsp + 0x50], r11
mov qword [rsp + 0x58], rdi
mov byte [rsp + 0x60], bpl
mov dword [rsp + 0x64], r13d
mov rcx, qword [rsp + 0xa8]
mov dword [rsp + 0x68], ecx
mov byte [rsp + 0x6c], bl
mov dword [rsp + 0x70], esi
mov rcx, qword [rsp + 0xb8]
mov dword [rsp + 0x74], ecx
mov byte [rsp + 0x78], al
mov dword [rsp + 0x7c], edx
mov dword [rsp + 0x80], r8d
mov byte [rsp + 0x84], r12b
mov ecx, dword [rsp + 0xc4]
mov dword [rsp + 0x88], ecx
mov dword [rsp + 0x8c], r15d
movzx ecx, byte [rsp + 0x2b]
mov byte [rsp + 0x90], cl
mov dword [rsp + 0x94], r10d
mov dword [rsp + 0x98], r9d
cmp al, 0x82
je 0x14002471f
mov byte [rsp + 0x3f], r12b
mov qword [rsp + 0xe0], r15
mov byte [rsp + 0x3e], bpl
mov dword [rsp + 0xdc], r13d
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0xd0], r11
mov qword [rsp + 0xc8], rdi
mov byte [rsp + 0x2a], bl
mov dword [rsp + 0xb4], esi
cmp al, 0x81
jne 0x140024534
movzx edx, byte [rsp + 0x2b]
cmp dl, 0x82
mov ebx, dword [rsp + 0xc4]
je 0x1400246cc
mov byte [rsp + 0x90], 0x81
cmp dl, 0x81
je 0x1400246cc
lea rax, [rsp + 0x79]
mov ecx, dword [rax + 0x1f]
mov dword [rax + 7], ecx
mov rcx, qword [rax + 0x18]
mov qword [rax], rcx
mov byte [rsp + 0x78], dl
cmp dl, 0x80
jne 0x140024654
mov rax, qword [rsp + 0xa0]
mov r12, qword [rax + 0x20]
mov r13, qword [rax + 0x28]
mov bpl, 0x80
jmp 0x1400244fb
mov edx, dword [rsp + 0x7c]
lea rax, [rsp + 0x78]
mov dword [rax + 8], 0
mov qword [rax], 0
xor ebp, ebp
mov rcx, r12
call qword [r13 + 0x20]
mov r14b, 1
test al, al
jne 0x140024cf2
cmp bpl, 0x80
je 0x1400244d0
movzx eax, byte [rsp + 0x82]
cmp al, byte [rsp + 0x83]
jae 0x1400246c4
movzx r15d, al
lea ecx, [rax + 1]
mov byte [rsp + 0x82], cl
cmp al, 0xa
jae 0x140024d94
movzx edx, byte [rsp + r15 + 0x78]
jmp 0x1400244e9
mov r13d, r8d
shr r13d, 0x18
shr r8d, 0x10
cmp al, 0x80
jne 0x1400245c4
mov rax, qword [rsp + 0xa0]
mov r14, qword [rax + 0x20]
mov r12, qword [rax + 0x28]
mov bpl, 0x80
jmp 0x140024591
lea rax, [rsp + 0x78]
mov dword [rax + 8], 0
mov qword [rax], 0
xor edi, edi
xor r13d, r13d
xor esi, esi
xor ebp, ebp
mov rcx, r14
call qword [r12 + 0x20]
mov edx, edi
mov r8d, esi
test al, al
jne 0x140024cef
cmp bpl, 0x80
je 0x140024560
cmp r8b, r13b
jae 0x14002446c
lea esi, [r8 + 1]
mov byte [rsp + 0x82], sil
movzx r15d, r8b
cmp r8b, 0xa
jae 0x140024d94
mov edi, edx
movzx edx, byte [rsp + r15 + 0x78]
jmp 0x14002457c
movzx eax, r8b
movzx ecx, r13b
movzx edx, r8b
cmp cl, dl
cmovbe ecx, edx
cmp dl, 0xb
mov r8d, 0xa
cmovae r8d, edx
movzx r12d, cl
movzx r15d, r8b
mov rcx, qword [rsp + 0xa0]
mov r14, qword [rcx + 0x20]
mov r13, qword [rcx + 0x28]
lea rcx, [rsp + 0x50]
lea rbp, [rax + rcx]
add rbp, 0x28
mov rdi, r15
sub rdi, rax
lea ecx, [rdx + 1]
movzx esi, cl
sub r12, rax
xor ebx, ebx
nop dword [rax + rax]
cmp r12, rbx
je 0x14002446c
lea eax, [rsi + rbx]
mov byte [rsp + 0x82], al
cmp rdi, rbx
je 0x140024d94
movzx edx, byte [rbp + rbx]
mov rcx, r14
call qword [r13 + 0x20]
inc rbx
test al, al
je 0x140024620
jmp 0x140024cef
movzx eax, byte [rsp + 0x83]
movzx r13d, byte [rsp + 0x82]
cmp al, r13b
cmovbe eax, r13d
movzx edi, al
cmp r13b, 0xb
mov r15d, 0xa
cmovae r15d, r13d
mov rax, qword [rsp + 0xa0]
mov r12, qword [rax + 0x20]
mov rsi, qword [rax + 0x28]
nop dword [rax]
cmp rdi, r13
je 0x1400246c4
lea eax, [r13 + 1]
mov byte [rsp + 0x82], al
cmp r15, r13
je 0x140024d94
movzx edx, byte [rsp + r13 + 0x78]
mov rcx, r12
call qword [rsi + 0x20]
inc r13
mov r14b, 1
test al, al
je 0x140024690
jmp 0x140024cf2
mov byte [rsp + 0x90], 0x81
movzx eax, byte [rsp + 0x3f]
cmp al, 0x81
mov rdx, qword [rsp + 0xe0]
jne 0x140024b55
mov byte [rsp + 0x84], 0x81
mov byte [rsp + 0x78], 0x82
mov esi, dword [rsp + 0xb4]
movzx ebx, byte [rsp + 0x2a]
mov rdi, qword [rsp + 0xc8]
mov r11, qword [rsp + 0xd0]
mov r14, qword [rsp + 0xa0]
mov r13d, dword [rsp + 0xdc]
movzx ebp, byte [rsp + 0x3e]
cmp bl, 0x82
jne 0x14002472c
xor r14d, r14d
jmp 0x140024cf2
mov qword [rsp + 0xd0], r11
mov qword [rsp + 0xc8], rdi
mov byte [rsp + 0x2a], bl
mov dword [rsp + 0xb4], esi
mov rdi, qword [r14 + 0x20]
mov r15, qword [r14 + 0x28]
cmp bpl, 0x81
mov rdx, qword [rsp + 0xa8]
jne 0x140024a2f
mov r13, qword [rsp + 0xd0]
test r13, r13
je 0x140024ab2
cmp r13, qword [rsp + 0xc8]
je 0x140024ab2
movzx edx, byte [r13]
movzx ebx, dl
test bl, bl
js 0x140024791
inc r13
jmp 0x1400247f8
mov eax, ebx
and eax, 0x1f
movzx r8d, byte [r13 + 1]
and r8d, 0x3f
cmp bl, 0xdf
jbe 0x1400247df
movzx ecx, byte [r13 + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x1400247ed
movzx ebx, byte [r13 + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and ebx, 0x3f
or ebx, ecx
or ebx, eax
cmp ebx, 0x110000
je 0x140024ab2
add r13, 4
jmp 0x1400247f8
add r13, 2
shl eax, 6
or eax, r8d
mov ebx, eax
jmp 0x1400247f8
add r13, 3
shl eax, 0xc
or ecx, eax
mov ebx, ecx
mov r12d, ebx
mov bpl, 2
mov ax, 0x5c
cmp ebx, 0x27
ja case.default.0x14002481e
mov dx, 0x3000
xor ecx, ecx
lea r8, [0x140024df0]
movsxd r9, dword [r8 + r12*4]
add r9, r8
mov r8, r12
jmp r9
xor r12d, r12d
mov dx, 0x7400
jmp 0x140024877
cmp ebx, 0x5c
jne case.0x14002481e.1
xor r12d, r12d
mov dx, 0x5c00
jmp 0x140024877
mov ecx, ebx
call fcn.140022f00
test al, al
je 0x140024962
mov ax, 0x80
xor edx, edx
xor r12d, r12d
xor r8d, r8d
jmp case.0x14002481e.0
xor r12d, r12d
mov dx, 0x6e00
jmp 0x140024877
xor r12d, r12d
mov dx, 0x7200
jmp 0x140024877
xor r12d, r12d
mov dx, 0x2200
jmp 0x140024877
xor r12d, r12d
mov dx, 0x2700
xor ebx, ebx
xor r8d, r8d
xor ecx, ecx
or r12, r8
movzx eax, ax
or edx, eax
mov r8d, ebx
shl r8, 0x10
or r8, r12
mov word [rsp + 0x60], dx
mov qword [rsp + 0x62], r8
mov byte [rsp + 0x6b], bpl
cmp al, 0x80
jne 0x140024912
mov r12b, 0x80
jmp 0x1400248e3
lea rax, [rsp + 0x60]
mov dword [rax + 8], 0
mov qword [rax], 0
xor r14d, r14d
xor ebp, ebp
xor esi, esi
xor r12d, r12d
mov rcx, rdi
mov edx, ebx
call qword [r15 + 0x20]
mov ebx, r14d
mov ecx, esi
test al, al
jne 0x140024cef
cmp r12b, 0x80
je 0x1400248b0
cmp cl, bpl
jae 0x140024772
lea esi, [rcx + 1]
mov byte [rsp + 0x6a], sil
movzx eax, cl
cmp cl, 0xa
jae 0x140024dc5
mov r14d, ebx
movzx eax, byte [rsp + rax + 0x60]
mov ebx, eax
jmp 0x1400248cd
movzx ebx, cl
movzx eax, bpl
cmp bpl, bl
cmovbe eax, ebx
movzx esi, al
nop word cs:[rax + rax]
cmp rsi, rbx
je 0x140024772
lea eax, [rbx + 1]
mov byte [rsp + 0x6a], al
cmp rbx, 0xa
je 0x140024dc0
movzx edx, byte [rsp + rbx + 0x60]
mov rcx, rdi
call qword [r15 + 0x20]
inc rbx
test al, al
je 0x140024930
jmp 0x140024cef
mov byte [rsp + 0x36], 0
mov word [rsp + 0x34], 0
mov byte [rsp + 0x3d], 0x7d
mov rax, r12
shr rax, 0x14
lea rcx, str.0123456789abcdeflibrarycore_srcescape.rs
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x37], al
mov eax, ebx
shr eax, 0x10
and eax, 0xf
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x38], al
mov eax, ebx
shr eax, 0xc
and eax, 0xf
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x39], al
mov eax, ebx
shr eax, 8
and eax, 0xf
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x3a], al
mov eax, ebx
shr eax, 4
and eax, 0xf
movzx eax, byte [rax + rcx]
mov byte [rsp + 0x3b], al
and r12d, 0xf
movzx eax, byte [r12 + rcx]
mov byte [rsp + 0x3c], al
or ebx, 1
bsr ecx, ebx
xor ecx, 0x1c
shr ecx, 2
add rcx, 0xfffffffffffffffe
cmp rcx, 0xb
jae 0x140024ddb
mov byte [rsp + rcx + 0x36], 0x7b
mov word [rsp + rcx + 0x34], 0x755c
movzx edx, word [rsp + 0x34]
movzx eax, dl
and edx, 0xff00
mov rbx, qword [rsp + 0x36]
mov r12, rbx
movzx r8d, bx
shr rbx, 0x10
movabs r9, 0xffff000000000000
and r12, r9
mov bpl, 0xa
jmp case.0x14002481e.0
mov r12d, edx
shr r12d, 0x18
shr edx, 0x10
cmp bpl, 0x80
jne 0x140024be8
mov bpl, 0x80
jmp 0x140024a84
lea rax, [rsp + 0x60]
mov dword [rax + 8], 0
mov qword [rax], 0
xor r14d, r14d
xor r12d, r12d
xor esi, esi
xor ebp, ebp
mov rcx, rdi
mov edx, r13d
call qword [r15 + 0x20]
mov r13d, r14d
mov edx, esi
test al, al
jne 0x140024cef
cmp bpl, 0x80
je 0x140024a50
cmp dl, r12b
jae 0x140024761
lea esi, [rdx + 1]
mov byte [rsp + 0x6a], sil
movzx ebx, dl
cmp dl, 0xa
jae 0x140024daa
mov r14d, r13d
movzx r13d, byte [rsp + rbx + 0x60]
jmp 0x140024a6d
movzx eax, byte [rsp + 0x2a]
cmp al, 0x81
je 0x140024724
mov r8, qword [rsp + 0xb8]
mov esi, r8d
shr esi, 0x18
shr r8d, 0x10
cmp al, 0x80
jne 0x140024d09
mov bpl, 0x80
mov edx, dword [rsp + 0xb4]
jmp 0x140024b25
lea rax, [rsp + 0x6c]
mov dword [rax + 8], 0
mov qword [rax], 0
xor r12d, r12d
xor esi, esi
xor r13d, r13d
xor ebp, ebp
mov rcx, rdi
call qword [r15 + 0x20]
mov r14b, 1
mov edx, r12d
mov r8d, r13d
test al, al
jne 0x140024cf2
cmp bpl, 0x80
je 0x140024af0
cmp r8b, sil
jae 0x140024724
lea r13d, [r8 + 1]
mov byte [rsp + 0x76], r13b
movzx ebx, r8b
cmp r8b, 0xa
jae 0x140024daa
mov r12d, edx
movzx edx, byte [rsp + rbx + 0x6c]
jmp 0x140024b0d
mov r12d, edx
shr r12d, 0x18
shr edx, 0x10
cmp al, 0x80
jne 0x140024c62
mov rax, qword [rsp + 0xa0]
mov r14, qword [rax + 0x20]
mov r13, qword [rax + 0x28]
mov bpl, 0x80
jmp 0x140024bb4
lea rax, [rsp + 0x84]
mov dword [rax + 8], 0
mov qword [rax], 0
xor edi, edi
xor r12d, r12d
xor esi, esi
xor ebp, ebp
mov rcx, r14
mov edx, ebx
call qword [r13 + 0x20]
mov ebx, edi
mov edx, esi
test al, al
jne 0x140024cef
cmp bpl, 0x80
je 0x140024b80
cmp dl, r12b
jae 0x1400246e1
lea esi, [rdx + 1]
mov byte [rsp + 0x8e], sil
movzx r15d, dl
cmp dl, 0xa
jae 0x140024d94
mov edi, ebx
movzx ebx, byte [rsp + r15 + 0x84]
jmp 0x140024b9f
movzx eax, r12b
movzx ecx, dl
cmp al, cl
cmovbe eax, ecx
movzx edx, dl
movzx esi, al
cmp cl, 0xb
mov eax, 0xa
cmovae eax, ecx
movzx ebx, al
lea rax, [rsp + 0x50]
lea r12, [rdx + rax]
add r12, 0x10
mov r13, rbx
sub r13, rdx
lea eax, [rcx + 1]
movzx ebp, al
sub rsi, rdx
xor r14d, r14d
nop word [rax + rax]
cmp rsi, r14
je 0x140024761
lea eax, [r14 + rbp]
mov byte [rsp + 0x6a], al
cmp r13, r14
je 0x140024daa
movzx edx, byte [r12 + r14]
mov rcx, rdi
call qword [r15 + 0x20]
inc r14
test al, al
je 0x140024c30
jmp 0x140024cef
movzx eax, dl
movzx ecx, r12b
movzx edx, dl
cmp cl, dl
cmovbe ecx, edx
cmp dl, 0xb
mov r8d, 0xa
cmovae r8d, edx
movzx ebx, cl
movzx r15d, r8b
mov rcx, qword [rsp + 0xa0]
mov rdi, qword [rcx + 0x20]
mov r14, qword [rcx + 0x28]
lea rcx, [rsp + 0x50]
lea r12, [rax + rcx]
add r12, 0x34
mov r13, r15
sub r13, rax
lea ecx, [rdx + 1]
movzx esi, cl
sub rbx, rax
xor ebp, ebp
nop word cs:[rax + rax]
cmp rbx, rbp
je 0x1400246e1
lea eax, [rsi + rbp]
mov byte [rsp + 0x8e], al
cmp r13, rbp
je 0x140024d94
movzx edx, byte [r12 + rbp]
mov rcx, rdi
call qword [r14 + 0x20]
inc rbp
test al, al
je 0x140024cc0
mov r14b, 1
mov eax, r14d
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movzx eax, sil
movzx ecx, r8b
cmp al, cl
cmovbe eax, ecx
movzx edx, r8b
movzx r12d, al
cmp cl, 0xb
mov eax, 0xa
cmovae eax, ecx
movzx ebx, al
lea rax, [rsp + 0x50]
add rax, rdx
add rax, 0x1c
mov qword [rsp + 0xa8], rax
mov r13, rbx
sub r13, rdx
lea eax, [rcx + 1]
movzx ebp, al
sub r12, rdx
xor esi, esi
nop word cs:[rax + rax]
cmp r12, rsi
setne r14b
je 0x140024cf2
lea eax, [rsi + rbp]
mov byte [rsp + 0x76], al
cmp r13, rsi
je 0x140024daa
mov rax, qword [rsp + 0xa8]
movzx edx, byte [rax + rsi]
mov rcx, rdi
call qword [r15 + 0x20]
inc rsi
test al, al
je 0x140024d60
jmp 0x140024cf2
lea r8, [0x140146a98]
mov edx, 0xa
mov rcx, r15
call fcn.14002f080
ud2
lea r8, [0x140146a98]
mov edx, 0xa
mov rcx, rbx
call fcn.14002f080
ud2
mov eax, 0xa
lea r8, [0x140146a98]
mov edx, 0xa
mov rcx, rax
call fcn.14002f080
ud2
lea r8, [0x140146a80]
mov edx, 0xa
call fcn.14002f3b0
ud2