Function at 0x18000dd20
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, 0x20
movsxd r9, dword [rcx + 0x3c]
mov eax, dword [0x18002ca84]
lea edi, [rax - 1]
imul edi, eax
mov eax, edi
mov ebp, edi
xor ebp, 0x708aa27e
and ebp, edi
not edi
and edi, 0x600a224e
and eax, 0x10808030
or eax, edi
mov edi, eax
xor edi, 0x800020
xor eax, 0xef7f7fcf
mov esi, ebp
not esi
mov ebx, eax
and ebx, 0x756f9a96
and edi, 0x802068
or edi, ebx
or eax, esi
and esi, 0x756f9a96
and ebp, 0x8a906569
or ebp, esi
xor ebp, edi
not eax
or eax, ebp
mov ebp, eax
not ebp
and ebp, 0xa3a4ddfd
and eax, 0x5c5b2202
or eax, ebp
mov r13d, eax
xor r13d, 0x2cd1807c
xor eax, 0xd32e7f82
mov ebp, r13d
and ebp, 0xfffffffe
and eax, 0xfffffffe
and r13d, 1
or r13d, eax
mov eax, ebp
and eax, r13d
xor r13d, ebp
or r13d, eax
mov ebp, r13d
not ebp
mov eax, ebp
and eax, r13d
mov ebx, eax
not ebx
mov edi, r13d
and edi, 0x6bf66672
and ebp, 0x9409998d
or ebp, edi
or r13d, ebx
and ebx, 0x6bf66672
and eax, 0x9409998d
or eax, ebx
xor eax, ebp
not r13d
or r13d, eax
mov ebp, r13d
not ebp
mov eax, ebp
and eax, 0x655dbb73
and r13d, 0x9aa2448c
or r13d, eax
xor r13d, 0x655dbb73
xor ebp, r13d
cmp dword [rcx + r9 + 0x8c], 0
mov r14d, dword [0x18002ca88]
je 0x18000e122
mov r8d, dword [rcx + r9 + 0x88]
test ebp, r13d
sete dil
setne r9b
cmp r14d, 0xa
setl sil
cmp r14d, 9
setg r10b
mov r11d, r10d
or dil, r10b
and r10b, r9b
xor r11b, r9b
or r11b, r10b
mov r10d, r11d
xor r10b, 1
or sil, r9b
mov eax, esi
xor al, dil
or dil, sil
xor dil, 1
or dil, al
mov ebx, r10d
and bl, r11b
xor bl, 1
mov r9d, ebx
xor r9b, r11b
or bl, r11b
xor bl, 1
or bl, r9b
xor bl, dil
mov r9d, r10d
xor r9b, dil
or dil, r10b
xor dil, 1
or dil, r9b
xor dil, 1
mov eax, ebx
and al, dil
test al, 1
jne 0x18000ded2
xor bl, dil
test bl, 1
jne 0x18000ded2
nop word cs:[rax + rax]
nop
jmp 0x18000ded0
cmp dword [rcx + r8 + 0x14], 0
je 0x18000e122
mov eax, dword [rcx + r8 + 0x18]
mov dword [rsp + 0xc], eax
test eax, eax
je 0x18000e122
mov dword [rsp + 4], r14d
mov dword [rsp + 8], ebp
mov eax, dword [rcx + r8 + 0x1c]
mov r12d, dword [rcx + r8 + 0x20]
add rax, rcx
mov qword [rsp + 0x18], rax
mov r15d, dword [rcx + r8 + 0x24]
add r15, rcx
add r12, rcx
mov ebp, dword [0x18002ca8c]
mov r9d, dword [0x18002ca90]
lea eax, [rbp - 1]
imul eax, ebp
mov ebp, eax
not ebp
and ebp, 0xc6cb22fc
and eax, 0x3934dd03
or eax, ebp
mov edi, eax
xor edi, 0x8208103
xor eax, 0xc0c900e8
and eax, 0xf1dd5ce8
and edi, 0xe22a317
or edi, eax
mov eax, edi
xor eax, 0xe22a317
mov ebp, eax
or ebp, 1
mov esi, ebp
not esi
and eax, 0xfffffffe
and edi, 1
or edi, eax
mov eax, edi
not eax
mov ebx, ebp
and ebx, 0xb81428e9
and esi, 0x47ebd716
or esi, ebx
or ebp, eax
and eax, 0xb81428e9
and edi, 0x47ebd716
or edi, eax
xor edi, esi
not ebp
or ebp, edi
mov eax, ebp
xor eax, 0x705e9de9
and eax, ebp
not ebp
and ebp, 0x705e9de9
mov ebx, ebp
and ebx, eax
xor eax, ebp
or eax, ebx
mov ebp, eax
not ebp
and ebp, 0xde297c36
and eax, 0x21d683c9
or eax, ebp
mov ebp, eax
xor ebp, 0x10800220
xor eax, 0x8e31e11b
and eax, 0xcf39fd1b
and ebp, 0x30c602e4
or ebp, eax
mov eax, ebp
xor eax, 0x10c40084
xor ebp, 0x4b19b408
and ebp, 0x6b1bb668
and eax, 0x94e44997
or eax, ebp
mov ebp, eax
xor ebp, 0x481a0440
xor eax, 0x94644010
and eax, 0xb765f238
and ebp, 0x489a0dc7
or ebp, eax
xor ebp, 0x489a0dc7
sete r10b
setne r11b
cmp r9d, 0xa
setl sil
cmp r9d, 9
setg r8b
and r11b, r8b
mov eax, esi
and al, r10b
or al, r11b
xor r8b, al
and r8b, al
xor sil, r10b
mov ebx, esi
xor bl, 1
mov eax, r8d
xor al, 1
and sil, al
or al, bl
and bl, r8b
or bl, sil
xor bl, 1
mov r8d, eax
xor r8b, bl
or bl, al
xor bl, 1
or bl, r8b
mov byte [rsp + 3], bl
xor esi, esi
xor ebp, ebp
mov qword [rsp + 0x10], rcx
nop word cs:[rax + rax]
nop dword [rax + rax]
mov edi, dword [r12]
add rdi, rcx
xor r11d, r11d
nop word [rax + rax]
movzx ebx, byte [rdx + r11]
movzx r14d, byte [rdi + r11]
cmp bl, r14b
sete r9b
test bl, bl
setne r10b
test sil, sil
jne 0x18000e0e2
mov r8d, r10d
or r8b, r9b
xor r8b, 1
xor r10b, r9b
mov eax, r8d
and al, r10b
xor r10b, r8b
or r10b, al
mov eax, r10d
xor al, 1
and r10b, al
mov ecx, eax
and cl, r10b
xor r10b, al
or r10b, cl
add r11, 1
test r10b, 1
jne 0x18000e090
test byte [rsp + 3], 1
je 0x18000e120
cmp bl, r14b
je 0x18000e1b2
add ebp, 1
add r12, 4
add r15, 2
cmp ebp, dword [rsp + 0xc]
mov rcx, qword [rsp + 0x10]
jne 0x18000e080
xor edi, edi
jmp 0x18000e1c6
jmp 0x18000e120
test ebp, r13d
sete r9b
setne r10b
cmp r14d, 9
setg dl
cmp r14d, 0xa
setl cl
mov ebx, r10d
or bl, cl
xor bl, 1
mov eax, r10d
xor al, cl
not al
and al, cl
mov r11d, ebx
and r11b, al
xor al, bl
or al, r11b
and r9b, dl
and cl, r10b
or cl, r9b
mov ebx, edx
xor bl, r10b
or dl, r10b
xor dl, 1
or dl, bl
xor dl, 1
mov ebx, ecx
and bl, dl
xor dl, cl
or dl, bl
mov ecx, edx
xor cl, 1
mov ebx, eax
xor bl, dl
and bl, al
and dl, al
xor al, 1
and al, cl
or dl, al
mov eax, edx
and al, 1
xor edi, edi
cmp bl, al
jne 0x18000e1cf
xor bl, 1
xor dl, 1
or dl, bl
xor dl, 1
test dl, 1
jne 0x18000e1cf
nop word cs:[rax + rax]
nop
jmp 0x18000e1b0
movzx eax, word [r15]
mov rcx, qword [rsp + 0x18]
mov eax, dword [rcx + rax*4]
mov rdi, qword [rsp + 0x10]
add rdi, rax
mov ebp, dword [rsp + 8]
mov r14d, dword [rsp + 4]
test ebp, r13d
sete r8b
setne dl
cmp r14d, 9
setg al
cmp r14d, 0xa
setl bl
mov r9d, eax
or al, dl
and dl, bl
and r9b, r8b
or r9b, dl
xor bl, r8b
xor al, 1
or al, bl
mov ecx, r9d
xor cl, 1
or cl, al
xor al, r9b
xor al, 1
xor cl, 1
or cl, al
mov edx, ecx
xor dl, 1
and dl, cl
xor dl, 1
mov eax, ecx
xor al, dl
or dl, cl
xor dl, 1
or dl, al
xor dl, r9b
mov ebx, edx
not bl
and bl, r9b
test bl, dl
jne 0x18000e242
xor bl, dl
test bl, 1
jne 0x18000e242
nop word [rax + rax]
jmp 0x18000e240
mov rax, rdi
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret