Function at 0x14011f200
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov word [rsp + 0x20], r9w
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x148
mov rax, qword [rcx]
xor r8d, r8d
movzx ebx, word [rsp + 0x1b0]
mov r13, rdx
mov qword [rsp + 0x30], r8
mov rsi, rcx
mov r15d, r8d
mov ebp, r8d
mov rax, qword [rax]
mov qword [rsp + 0x70], rax
test bx, bx
je 0x14011f25e
test byte [rax + 0x50], 0x80
jne 0x14011fb8a
movzx r14d, word [rdx]
mov word [rsp + 0x4c], r14w
cmp r14d, 0x3f
ja 0x14011fb8a
movzx edi, r9w
mov byte [rsp + 0x20], 1
mov r9d, r8d
mov qword [rsp + 0x88], r8
mov ecx, r14d
mov qword [rsp + 0x80], r8
mov rdx, r8
mov dword [rsp + 0x48], r14d
mov r11d, 1
mov qword [rsp + 0x60], rdx
shl r11, cl
mov eax, 0x800
dec r11
mov ecx, r8d
and di, ax
mov qword [rsp + 0x78], r11
mov r10, r8
mov word [rsp + 0x38], di
mov r8d, dword [rsp + 0x20]
setne r9b
add r9w, 0x182
mov dword [rsp + 0x44], ecx
mov dword [rsp + 0x28], r9d
mov r12d, r14d
nop dword [rax]
cmp rbp, r11
jae 0x14011fb48
movzx eax, bx
cmp ecx, eax
jg 0x14011fb45
test ecx, ecx
jle 0x14011f301
or rdx, qword [r15 + 8]
mov qword [rsp + 0x60], rdx
cmp ecx, eax
jge 0x14011f325
mov rax, qword [rsp + 0x1a0]
mov rax, qword [rax + 0x18]
mov r15, qword [rax + r10*8]
mov qword [rsp + 0x58], r15
test di, di
jne 0x14011fb0d
jmp 0x14011f332
mov r15, qword [rsp + 0x1b8]
mov qword [rsp + 0x58], r15
mov edx, dword [r15 + 0x28]
bt edx, 0xa
jb 0x14011fb36
movzx eax, byte [r15 + 0x10]
xor r11d, r11d
imul rcx, rax, 0x78
mov rax, qword [rsi + 8]
mov r14d, r11d
mov r8d, dword [rcx + rax + 0x50]
mov dword [rsp + 0x2c], r8d
test r12d, r12d
je 0x14011f5c2
mov r12d, r11d
mov r15d, r11d
nop dword [rax]
mov eax, r14d
bt rbp, rax
jb 0x14011f5a4
mov rax, qword [r13 + 8]
mov rdi, qword [r15 + rax]
test rdi, rdi
je 0x14011f3b5
nop word [rax + rax]
mov eax, dword [rdi + 4]
bt eax, 0xc
jae 0x14011f3b5
bt eax, 0x12
jae 0x14011f3ac
mov rax, qword [rdi + 0x20]
mov rcx, qword [rax + 8]
mov rdi, qword [rcx]
jmp 0x14011f3b0
mov rdi, qword [rdi + 0x10]
test rdi, rdi
jne 0x14011f390
cmp byte [rdi], 0x98
jne 0x14011f5a4
cmp dword [rdi + 0x2c], r8d
jne 0x14011f5a4
movzx ecx, word [rdi + 0x30]
lea rax, [rsi + 0x60]
mov qword [rsp + 0xd0], rax
mov rsi, r11
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe8], r11
mov byte [rsp + 0xf0], 0
mov qword [rsp + 0xe0], r11
cmp cx, 0xfffe
je 0x14011f480
movzx eax, r9w
mov word [rsp + 0x128], cx
lea rcx, [rsp + 0xd0]
mov dword [rsp + 0xf4], eax
mov dword [rsp + 0xf8], r11d
mov dword [rsp + 0xfc], r8d
mov word [rsp + 0xf1], 0x101
call fcn.14011ad90
mov rbx, rax
test rax, rax
je 0x14011f480
mov rbp, qword [rsp + 0x60]
not rbp
nop dword [rax + rax]
mov rax, qword [rbx + 0x30]
test rbp, rax
jne 0x14011f46b
test rax, rax
jne 0x14011f464
test byte [rbx + 0x14], 0x82
jne 0x14011f483
test rsi, rsi
cmove rsi, rbx
lea rcx, [rsp + 0xd0]
call fcn.14011ad90
mov rbx, rax
test rax, rax
jne 0x14011f450
mov rbx, rsi
test rbx, rbx
je 0x14011f58a
movzx r10d, word [rbx + 0x14]
cmp r10w, 1
jne 0x14011f4d0
mov rax, qword [rsp + 0x58]
xor r11d, r11d
mov edx, r11d
mov ecx, r11d
movzx r9d, word [rax + 0x2c]
test r9d, r9d
je 0x14011f4c7
mov rax, qword [rax + 0x38]
cmp rbx, qword [rax]
je 0x14011f4c7
inc edx
inc rcx
add rax, 8
cmp rcx, r9
jl 0x14011f4b4
cmp edx, r9d
jge 0x14011f57b
mov rsi, qword [rsp + 0x190]
test r10b, 0x82
je 0x14011f56b
cmp word [rdi + 0x30], 0
jl 0x14011f56b
mov rdx, qword [r13 + 8]
mov rcx, qword [rsi]
mov rdx, qword [rdx + r15]
call fcn.1400ceaf0
mov rbp, qword [rsp + 0x70]
test rax, rax
jne 0x14011f50b
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbx]
mov rcx, qword [rsi]
mov rdi, qword [rax]
call fcn.1400ceaf0
test rax, rax
jne 0x14011f522
mov rax, qword [rbp + 0x10]
mov r9, qword [rax]
lea r10, [0x1401d90d0]
movzx edx, byte [rdi]
movzx eax, byte [r9]
movzx r8d, byte [rdx + r10]
movzx eax, byte [rax + r10]
sub r8d, eax
jne 0x14011f592
sub r9, rdi
test dl, dl
je 0x14011f566
movzx edx, byte [rdi + 1]
inc rdi
movzx eax, byte [rdi + r9]
movzx r8d, byte [rdx + r10]
movzx ecx, byte [rax + r10]
sub r8d, ecx
je 0x14011f545
jmp 0x14011f592
test r8d, r8d
jne 0x14011f592
mov rbp, qword [rsp + 0x30]
bts rbp, r12
mov qword [rsp + 0x30], rbp
jmp 0x14011f597
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x190]
jmp 0x14011f59a
mov rsi, qword [rsp + 0x190]
mov rbp, qword [rsp + 0x30]
xor r11d, r11d
mov r9d, dword [rsp + 0x28]
mov r8d, dword [rsp + 0x2c]
inc r14d
inc r12
add r15, 0x28
cmp r14d, dword [rsp + 0x48]
jl 0x14011f370
mov r15, qword [rsp + 0x58]
mov edx, dword [r15 + 0x28]
bt edx, 0xc
jb 0x14011f9c2
mov r12d, 0x100
test r12d, edx
je 0x14011f5eb
mov edx, dword [rsp + 0x20]
mov r13, r11
mov word [rsp + 0x3a], r11w
mov eax, 1
jmp 0x14011f61e
mov r13, qword [r15 + 0x20]
test r13, r13
je 0x14011fb8a
test byte [r13 + 0x64], 4
jne 0x14011fb8a
movzx eax, word [r13 + 0x5e]
cmp byte [r13 + 0x62], 0
mov word [rsp + 0x3a], ax
movzx eax, word [r13 + 0x60]
setne dl
mov dword [rsp + 0x20], edx
mov r14, qword [rsp + 0x198]
xor sil, sil
xor r8d, r8d
mov byte [rsp + 0x25], 0
mov byte [rsp + 0x24], 0
mov ebx, r11d
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x3c], ebx
mov qword [rsp + 0x68], r11
cmp r8w, ax
jae 0x14011f9ca
movzx ecx, ax
mov r10d, r8d
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x50], r8
movzx r9d, word [r15 + 0x18]
mov dil, 1
cmp ebx, r9d
jge 0x14011f6e0
movzx eax, word [r15 + 0x2e]
cmp ebx, eax
jl 0x14011f6e0
mov r8, qword [r15 + 0x38]
mov r10, qword [r8 + r11*8]
movzx eax, word [r10 + 0x14]
test word [rsp + 0x28], ax
je 0x14011f6ac
test r12w, ax
mov r8d, 0
movzx eax, dl
mov ecx, r8d
cmove ecx, eax
movzx edx, cl
mov dword [rsp + 0x20], edx
jmp 0x14011f962
test dil, al
je 0x14011f6d8
mov r10, qword [r10]
lea edx, [rbx + 1]
cmp edx, r9d
jge 0x14011f6d8
nop dword [rax]
movsxd rax, edx
mov rcx, qword [r8 + rax*8]
cmp qword [rcx], r10
je 0x14011f6d5
inc edx
cmp edx, r9d
jl 0x14011f6c0
jmp 0x14011f6d8
xor dil, dil
mov r10, qword [rsp + 0x50]
xor r8d, r8d
test r13, r13
je 0x14011f706
mov rax, qword [r13 + 8]
movsx r15d, word [rax + r11*2]
mov rax, qword [r13 + 0x38]
movzx r12d, byte [r11 + rax]
mov rax, qword [r13 + 0x18]
movsx ecx, word [rax + 0x44]
cmp r15d, ecx
jne 0x14011f70f
jmp 0x14011f709
xor r12b, r12b
mov r15d, 0xffffffff
mov edx, dword [rsp + 0x20]
test dl, dl
je 0x14011f740
test r15d, r15d
js 0x14011f740
cmp ebx, r9d
jl 0x14011f740
mov rax, qword [r13 + 0x18]
movzx edx, dl
mov rcx, qword [rax + 8]
movsxd rax, r15d
shl rax, 5
cmp byte [rax + rcx + 0x18], 0
cmove edx, r8d
mov dword [rsp + 0x20], edx
xor edx, edx
mov ebp, edx
test dil, dil
je 0x14011f99e
nop dword [rax]
cmp ebp, dword [rsp + 0x48]
jge 0x14011f98e
mov rcx, qword [rsp + 0x30]
mov eax, ebp
bt rcx, rax
jb 0x14011f8a9
mov r8, qword [rsp + 0x198]
movsxd r14, ebp
mov rcx, qword [r8 + 8]
lea rax, [r14 + r14*4]
lea rsi, [rax*8]
mov rcx, qword [rsi + rcx]
test rcx, rcx
je 0x14011f7b5
nop
mov eax, dword [rcx + 4]
bt eax, 0xc
jae 0x14011f7b5
bt eax, 0x12
jae 0x14011f7ac
mov rax, qword [rcx + 0x20]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx]
jmp 0x14011f7b0
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x14011f790
test byte [rsp + 0x1a8], 0xc0
movzx eax, dil
cmovne edx, eax
movzx edi, dl
movzx ebx, dl
cmp r15d, 0xffffffff
jl 0x14011f7f5
cmp byte [rcx], 0x98
jne 0x14011f8a7
mov eax, dword [rsp + 0x2c]
cmp dword [rcx + 0x2c], eax
jne 0x14011f8a7
movsx eax, word [rcx + 0x30]
cmp eax, r15d
jne 0x14011f8a7
jmp 0x14011f820
mov rax, qword [r13 + 0x50]
mov r8d, dword [rsp + 0x2c]
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + r10]
call fcn.1400d7b60
mov r11, qword [rsp + 0x68]
test eax, eax
jne 0x14011f8a7
mov r8, qword [rsp + 0x198]
test r15d, r15d
js 0x14011f8be
mov rdx, qword [r8 + 8]
mov rax, qword [rsp + 0x190]
mov rdx, qword [rsi + rdx]
mov rcx, qword [rax]
call fcn.1400ceaf0
test rax, rax
jne 0x14011f84f
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x10]
mov r8, qword [rax]
lea rdi, [0x1401d90d0]
mov rax, qword [r13 + 0x40]
mov r11, qword [rsp + 0x68]
movzx edx, byte [r8]
mov r10, qword [rax + r11*8]
movzx r9d, byte [rdx + rdi]
movzx eax, byte [r10]
movzx eax, byte [rax + rdi]
sub r9d, eax
jne 0x14011f89f
sub r10, r8
nop
test dl, dl
je 0x14011f89f
movzx edx, byte [r8 + 1]
inc r8
movzx eax, byte [r8 + r10]
movzx r9d, byte [rdx + rdi]
movzx ecx, byte [rax + rdi]
sub r9d, ecx
je 0x14011f880
movzx edi, bl
test r9d, r9d
je 0x14011f8be
xor edx, edx
inc ebp
test dil, dil
je 0x14011f98e
mov r10, qword [rsp + 0x50]
jmp 0x14011f750
test byte [rsp + 0x1a8], 0x40
jne 0x14011f91b
cmp byte [rsp + 0x25], 0
lea rcx, [r14 + r14*4]
mov r14, qword [rsp + 0x198]
mov rax, qword [r14 + 8]
movzx edx, byte [rax + rcx*8 + 0x18]
je 0x14011f8f4
xor r12b, byte [rsp + 0x24]
cmp r12b, dl
jne 0x14011f996
jmp 0x14011f923
xor dl, r12b
mov byte [rsp + 0x24], dl
je 0x14011f914
mov rdx, qword [rsp + 0x1c0]
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [rdx]
bts rcx, rax
mov qword [rdx], rcx
mov byte [rsp + 0x25], 1
jmp 0x14011f923
mov r14, qword [rsp + 0x198]
mov esi, dword [rsp + 0x40]
cmp r15d, 0xffffffff
mov ebx, dword [rsp + 0x3c]
mov eax, 1
mov r15, qword [rsp + 0x58]
mov r12d, 0x100
mov edx, dword [rsp + 0x20]
movzx esi, sil
cmove esi, eax
movsxd rax, ebp
mov rbp, qword [rsp + 0x30]
bts rbp, rax
mov dword [rsp + 0x40], esi
mov qword [rsp + 0x30], rbp
xor r8d, r8d
mov r10, qword [rsp + 0x50]
inc ebx
add r10, 0x28
mov dword [rsp + 0x3c], ebx
inc r11
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x68], r11
cmp r11, qword [rsp + 0x90]
jl 0x14011f663
jmp 0x14011f9b6
mov r14, qword [rsp + 0x198]
mov ebx, dword [rsp + 0x3c]
mov esi, dword [rsp + 0x40]
test r11, r11
je 0x14011f9ac
movzx eax, word [rsp + 0x3a]
cmp ebx, eax
jge 0x14011f9b1
mov byte [rsp + 0x20], 0
mov rbp, qword [rsp + 0x30]
test sil, sil
je 0x14011f9ca
mov byte [rsp + 0x20], 1
jmp 0x14011f9d5
mov r14, qword [rsp + 0x198]
cmp byte [rsp + 0x20], 0
je 0x14011fad6
mov r13, qword [rsp + 0x88]
xor ebx, ebx
mov r15, qword [rsp + 0x58]
mov r12d, dword [rsp + 0x48]
or r13, qword [r15 + 8]
mov qword [rsp + 0x88], r13
test r12d, r12d
je 0x14011fae0
mov r15, qword [rsp + 0x190]
nop word [rax + rax]
mov eax, ebx
bt rbp, rax
jb 0x14011fac9
mov rax, qword [r14 + 8]
movsxd rsi, ebx
lea rcx, [rsi + rsi*4]
mov rdi, qword [rax + rcx*8]
lea rcx, [r15 + 0x288]
mov rdx, rdi
call fcn.14011aac0
mov rbp, rax
test rax, rax
jne 0x14011faa9
lea rax, [0x1400d1390]
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov byte [rsp + 0xbc], 1
mov dword [rsp + 0xc0], ebp
movups xmmword [rsp + 0x98], xmm0
mov qword [rsp + 0xa0], rax
lea rax, [0x1400d1400]
movups xmmword [rsp + 0xa8], xmm0
mov qword [rsp + 0xa8], rax
test rdi, rdi
je 0x14011faa9
mov rdx, rdi
lea rcx, [rsp + 0x98]
call fcn.1400cbf00
cmp byte [rsp + 0xbc], bpl
je 0x14011fac4
mov rax, r13
not rax
test rbp, rax
mov rbp, qword [rsp + 0x30]
jne 0x14011fac9
bts rbp, rsi
mov qword [rsp + 0x30], rbp
jmp 0x14011fac9
mov rbp, qword [rsp + 0x30]
inc ebx
cmp ebx, r12d
jl 0x14011fa10
jmp 0x14011fadb
mov r12d, dword [rsp + 0x48]
mov r15, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x190]
mov r8d, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x44]
mov r9d, dword [rsp + 0x28]
mov rdx, qword [rsp + 0x60]
mov r11, qword [rsp + 0x78]
movzx ebx, word [rsp + 0x1b0]
movzx edi, word [rsp + 0x38]
inc qword [rsp + 0x80]
inc ecx
mov r13, qword [rsp + 0x198]
mov r10, qword [rsp + 0x80]
mov dword [rsp + 0x44], ecx
test r8b, r8b
jne 0x14011f2e0
jmp 0x14011fb45
cmp byte [r15 + 0x1d], 0
mov rcx, r11
cmove rcx, rbp
mov rbp, rcx
cmp rbp, r11
jne 0x14011fb51
movzx eax, byte [rsp + 0x4c]
jmp 0x14011fb8c
test r8b, r8b
jne 0x14011fba5
lea ecx, [r12 - 1]
test ecx, ecx
jle 0x14011fb8a
mov r14d, 1
nop word [rax + rax]
mov rdx, r14
shl rdx, cl
dec rdx
mov rax, rdx
and rax, rbp
cmp rax, rdx
je 0x14011fba0
dec ecx
test ecx, ecx
jg 0x14011fb70
xor al, al
add rsp, 0x148
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
movzx eax, cl
jmp 0x14011fb8c
mov al, 0xff
jmp 0x14011fb8c