Function at 0x1800012e0
Capabilities:
Access peb ldr_data
Resolve function by parsing pe exports

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x40
cmp dword [0x180004070], 0xa
jl 0x180001312
mov eax, dword [0x180004074]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001312
nop word cs:[rax + rax]
nop
jmp 0x180001310
mov dword [rsp + 0x34], 0xe903103e
mov dword [rsp + 0x3c], 0xd5f93d33
mov dword [rsp + 0x30], 0x50d1be0
mov dword [rsp + 0x2c], 0x950ea9c4
mov dword [rsp + 0x28], 0x78ac9f3a
mov dword [rsp + 0x24], 0xea0566c2
mov dword [rsp + 8], 0xe9030f23
mov dword [rsp + 0x38], 0x8349e935
mov dword [rsp + 0xc], 0
lea rax, [fcn.1800012e0]
mov qword [rsp + 0x10], rax
mov eax, dword [0x18000407c]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180004078], 0xa
setl al
or al, cl
cmp al, 1
jne 0x180001640
mov ecx, 0xe903556e
jmp 0x1800013a6
add qword [rsp + 0x10], 0xffffffffffffffff
xor dword [rsp + 8], 0xe903556e
mov rdx, qword [rsp + 0x10]
movzx edx, word [rdx]
mov ebp, dword [rsp + 8]
cmp ebp, edx
jne 0x1800013a0
mov rdx, qword [rsp + 0x10]
movsxd rdx, dword [rdx + 0x3c]
mov qword [rsp + 0x18], rdx
mov rdx, qword [rsp + 0x18]
cmp rdx, 0x40
jb 0x1800013a0
mov rdx, qword [rsp + 0x18]
cmp rdx, 0x3ff
ja 0x1800013a0
mov rdx, qword [rsp + 0x10]
add qword [rsp + 0x18], rdx
mov rdx, qword [rsp + 0x18]
mov edx, dword [rdx]
mov dword [rsp + 4], edx
mov edx, dword [rsp + 4]
mov ebp, dword [rsp + 0x34]
xor ebp, ecx
cmp edx, ebp
jne 0x1800013a0
test al, al
je 0x180001620
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov r9, qword [rax + 0x20]
test r9, r9
je 0x18000160b
mov eax, dword [0x18000406c]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x180004068], 0xa
setl r8b
or r8b, al
mov r11d, 0xe903556e
mov rcx, qword [r9 + 0x50]
movzx edx, word [r9 + 0x48]
xor eax, eax
nop dword [rax + rax]
movzx ebx, byte [rsp + 4]
rol eax, 0x13
movzx ebx, byte [rsp + 4]
movzx r10d, byte [rcx]
movzx ebx, byte [rsp + 4]
mov byte [rsp + 4], r10b
movzx ebx, byte [rsp + 4]
movzx esi, byte [rsp + 4]
lea rdi, [rsi + rax]
cmp r10b, 0x60
lea rax, [rsi + rax - 0x20]
cmovbe rax, rdi
movzx ebx, byte [rsp + 4]
add rcx, 1
add dx, 0xffff
jne 0x180001460
mov ecx, dword [rsp + 0x38]
xor ecx, r11d
cmp ecx, eax
jne 0x1800015f6
test r8b, r8b
je 0x180001630
mov rcx, qword [r9 + 0x20]
movsxd rax, dword [rcx + 0x3c]
mov r10d, dword [rcx + rax + 0x88]
mov eax, dword [r10 + rcx + 0x20]
mov edx, dword [r10 + rcx + 0x24]
add rdx, rcx
add rax, rcx
mov r14w, 4
nop word cs:[rax + rax]
nop dword [rax]
mov esi, dword [rax]
mov bl, byte [rcx + rsi]
add rsi, rcx
add rsi, 1
xor ebp, ebp
nop
mov edi, ebp
rol edi, 0x13
movsx ebp, bl
add ebp, edi
movzx ebx, byte [rsi]
add rsi, 1
test bl, bl
jne 0x180001500
mov esi, dword [rsp + 0x30]
xor esi, r11d
cmp ebp, esi
je 0x180001550
mov esi, dword [rsp + 0x2c]
xor esi, r11d
cmp ebp, esi
je 0x180001550
mov esi, dword [rsp + 0x28]
xor esi, r11d
cmp ebp, esi
je 0x180001550
mov esi, dword [rsp + 0x24]
xor esi, r11d
cmp ebp, esi
jne 0x1800015e4
nop word cs:[rax + rax]
nop
mov ebx, dword [r10 + rcx + 0x1c]
add rbx, rcx
movzx esi, word [rdx]
mov edi, dword [rsp + 0x30]
xor edi, r11d
cmp ebp, edi
jne 0x180001580
mov esi, dword [rbx + rsi*4]
add rsi, rcx
mov qword [0x180004020], rsi
or dword [rsp + 0xc], 1
jmp 0x1800015e0
mov edi, dword [rsp + 0x2c]
xor edi, r11d
cmp ebp, edi
jne 0x1800015a0
mov esi, dword [rbx + rsi*4]
add rsi, rcx
mov qword [0x180004028], rsi
or dword [rsp + 0xc], 2
jmp 0x1800015e0
mov edi, dword [rsp + 0x28]
xor edi, r11d
cmp ebp, edi
jne 0x1800015bf
mov esi, dword [rbx + rsi*4]
add rsi, rcx
mov qword [0x180004030], rsi
or dword [rsp + 0xc], 4
jmp 0x1800015e0
mov edi, dword [rsp + 0x24]
xor edi, r11d
cmp ebp, edi
jne 0x1800015e0
mov esi, dword [rbx + rsi*4]
add rsi, rcx
mov qword [0x180004038], rsi
or dword [rsp + 0xc], 8
nop dword [rax]
add r14d, 0xffffffff
add rax, 4
add rdx, 2
test r14w, r14w
jne 0x1800014f0
mov eax, dword [rsp + 0xc]
cmp eax, 0xf
je 0x18000160b
mov r9, qword [r9]
test r9, r9
jne 0x180001450
add rsp, 0x40
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
jmp 0x180001620
jmp 0x180001630
xor dword [rsp + 8], 0xe903556e
mov rcx, qword [rsp + 0x10]
movzx edx, word [rcx]
mov ebp, dword [rsp + 8]
mov rcx, qword [rsp + 0x10]
cmp ebp, edx
je 0x180001668
add rcx, 0xffffffffffffffff
mov qword [rsp + 0x10], rcx
jmp 0x180001640
movsxd rcx, dword [rcx + 0x3c]
mov qword [rsp + 0x18], rcx
mov rcx, qword [rsp + 0x18]
cmp rcx, 0x40
jb 0x1800016d0
mov rcx, qword [rsp + 0x18]
cmp rcx, 0x400
jae 0x1800016d0
mov rcx, qword [rsp + 0x10]
add qword [rsp + 0x18], rcx
mov rcx, qword [rsp + 0x18]
mov ecx, dword [rcx]
mov dword [rsp + 4], ecx
mov ecx, dword [rsp + 4]
mov edx, 0xe903556e
xor edx, dword [rsp + 0x34]
cmp ecx, edx
je 0x180001408
nop word cs:[rax + rax]
nop
jmp 0x1800016c0
jmp 0x1800016d0