Function at 0x18000a320
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, 0x10
movsxd r10, dword [rcx + 0x3c]
mov eax, dword [0x180028a7c]
lea r11d, [rax - 1]
imul r11d, eax
mov ebx, r11d
not ebx
mov eax, ebx
and eax, r11d
mov ebp, eax
not ebp
mov edi, r11d
and edi, 0x6fc15a4b
and ebx, 0x903ea5b4
or ebx, edi
or r11d, ebp
and ebp, 0x6fc15a4b
and eax, 0x903ea5b4
or eax, ebp
xor eax, ebx
not r11d
or r11d, eax
mov esi, r11d
not esi
mov ebp, r11d
or ebp, 0xf50a63f1
mov r8d, ebp
not r8d
mov edi, r11d
xor edi, 0xaf59c0e
and edi, r11d
mov ebx, edi
not ebx
mov r9d, ebp
and r9d, 0x87ca9032
and r8d, 0x8350c0c
or r8d, r9d
or ebp, ebx
and ebx, 0x87ca9032
and edi, 0x78356fcd
or edi, ebx
xor edi, r8d
not ebp
or ebp, edi
mov ebx, ebp
not ebx
and ebx, 0xf50a63f0
and ebp, 0xaf59c0f
or ebp, ebx
and r11d, 0x9ad1ef75
mov eax, esi
and eax, 0x652e108a
or eax, r11d
xor eax, 0x9ad1ef74
and esi, 1
or esi, eax
not esi
mov eax, ebp
and eax, esi
xor esi, ebp
or esi, eax
mov r14d, esi
not r14d
and esi, 0x49a1d975
and r14d, 0xb65e268a
or r14d, esi
xor r14d, 0x49a1d975
cmp dword [rcx + r10 + 0x8c], 0
mov esi, dword [0x180028a80]
mov ebp, 0xffffffff
je 0x18000a5e2
mov r8d, dword [rcx + r10 + 0x88]
test ebp, r14d
sete r11b
setne al
cmp esi, 0xa
setl r10b
xor al, r10b
xor al, 1
mov ebx, r10d
or bl, r11b
xor bl, 1
or bl, al
xor bl, 1
mov eax, r11d
xor al, r10b
and r11b, al
and al, r10b
mov r10d, r11d
xor r10b, 1
xor r11b, al
xor al, 1
or al, r10b
xor al, 1
or al, r11b
mov r10d, ebx
xor r10b, al
or al, bl
xor al, 1
or al, r10b
xor al, 1
mov ebx, r10d
and bl, al
test bl, 1
jne 0x18000a4b2
xor r10b, al
test r10b, 1
jne 0x18000a4b2
nop word cs:[rax + rax]
nop
jmp 0x18000a4b0
cmp dword [rcx + r8 + 0x14], 0
je 0x18000a5e2
mov eax, dword [rcx + r8 + 0x18]
mov dword [rsp + 4], eax
test eax, eax
je 0x18000a5e2
mov r9d, dword [rcx + r8 + 0x1c]
mov ebx, dword [0x180028a84]
mov r12d, dword [0x180028a88]
lea edi, [rbx - 1]
imul edi, ebx
mov ebx, edi
not ebx
mov ebp, ebx
and ebp, 0xfffffffe
mov eax, edi
and eax, 1
or eax, ebp
not eax
and ebx, 0x4146453f
and edi, 0xbeb9bac0
or edi, ebx
xor edi, 0xbeb9bac0
mov ebx, eax
and ebx, edi
xor edi, eax
or edi, ebx
mov eax, edi
not eax
and eax, 0x9f233ba9
and edi, 0x60dcc456
or edi, eax
xor edi, 0x60dcc456
sete dil
setne bpl
cmp r12d, 0xa
setl r15b
cmp r12d, 9
setg r12b
mov eax, r12d
xor al, r15b
and al, r12b
mov r13d, eax
xor r13b, 1
mov ebx, ebp
xor bl, dil
and bl, bpl
and al, r13b
xor al, 1
mov r11d, eax
xor r11b, r13b
or al, r13b
xor al, 1
or al, r11b
xor bl, 1
mov r11d, ebx
or r11b, al
xor bl, al
xor bl, 1
and bl, al
xor bl, 1
mov eax, r11d
xor al, bl
or bl, r11b
xor bl, 1
or bl, al
and r15b, bpl
and dil, r12b
or dil, r15b
mov eax, r12d
xor al, bpl
or r12b, bpl
xor r12b, 1
or r12b, al
mov eax, r12d
xor al, dil
xor dil, 1
xor al, 1
or dil, r12b
xor dil, 1
or dil, al
xor bl, 1
mov r11d, ebx
or r11b, dil
xor r11b, 1
xor bl, dil
mov eax, r11d
and al, bl
test al, 1
jne 0x18000a642
xor r11b, bl
test r11b, 1
jne 0x18000a642
jmp 0x18000a5e0
test ebp, r14d
sete al
setne r10b
cmp esi, 0xa
setl cl
mov edx, ecx
xor dl, r10b
xor dl, 1
mov ebx, ecx
or bl, al
xor bl, 1
or bl, dl
or r10b, cl
xor al, cl
and al, cl
xor al, 1
mov ecx, r10d
xor cl, al
or al, r10b
xor al, 1
or al, cl
xor al, 1
mov edx, ebx
or dl, al
xor dl, 1
xor al, bl
mov ebx, edx
and bl, al
xor ecx, ecx
test bl, 1
jne 0x18000a70b
xor dl, al
test dl, 1
jne 0x18000a70b
nop dword [rax]
jmp 0x18000a640
mov dword [rsp], esi
add r9, rcx
mov qword [rsp + 8], r9
mov r13d, dword [rcx + r8 + 0x20]
mov r15d, dword [rcx + r8 + 0x24]
add r15, rcx
add r13, rcx
mov r12b, 1
xor ebp, ebp
nop word cs:[rax + rax]
nop dword [rax]
mov edi, dword [r13]
add rdi, rcx
xor esi, esi
nop dword [rax]
movzx r8d, byte [rdx + rsi]
movzx r11d, byte [rdi + rsi]
cmp r8b, r11b
sete al
test r8b, r8b
setne r9b
sete r10b
xor r10b, al
or r9b, al
xor r9b, 1
xor r10b, 1
mov eax, r9d
and al, r10b
xor r10b, r9b
or r10b, al
mov ebx, r10d
xor bl, 1
mov eax, ebx
and al, r10b
xor bl, al
xor al, 1
or al, r10b
xor al, 1
or al, bl
add rsi, 1
test al, 1
je 0x18000a6da
je 0x18000a6da
test r12b, r12b
jne 0x18000a680
cmp r8b, r11b
je 0x18000a6f4
add r15, 2
add r13, 4
add ebp, 1
cmp ebp, dword [rsp + 4]
jne 0x18000a670
xor ecx, ecx
jmp 0x18000a703
movzx eax, word [r15]
mov rdx, qword [rsp + 8]
mov eax, dword [rdx + rax*4]
add rcx, rax
mov esi, dword [rsp]
mov ebp, 0xffffffff
test ebp, r14d
setne al
sete r8b
cmp esi, 9
setg bl
cmp esi, 0xa
setl dl
and al, dl
or dl, r8b
and bl, r8b
or bl, al
mov eax, ebx
xor al, 1
mov r8d, edx
xor r8b, al
or al, dl
xor al, 1
or al, r8b
xor al, bl
mov edx, eax
xor dl, 1
and al, bl
test al, dl
jne 0x18000a752
xor al, dl
test al, 1
jne 0x18000a752
nop
jmp 0x18000a750
mov rax, rcx
add rsp, 0x10
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret