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

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x68
cmp qword [rsp + 0x70], 0
je 0x14000b5f5
cmp dword [rsp + 0x80], 0
jbe 0x14000b5f5
cmp qword [rsp + 0x90], 0
jne 0x14000b610
mov r8d, 0x958
lea rdx, [0x140080a80]
lea rcx, str.chn___num_items___0___request_handler
call fcn.140047fbc
xor eax, eax
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x158]
test eax, eax
je 0x14000b63b
mov r8d, 0x959
lea rdx, [0x140080b40]
lea rcx, str._chn__valid
call fcn.140047fbc
xor eax, eax
mov byte [rsp + 0x20], 1
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x90]
mov qword [rax + 0x150], rcx
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
mov qword [rax], rcx
movzx eax, byte [rsp + 0x20]
mov dword [rsp + 0x40], eax
mov rcx, qword [rsp + 0x70]
add rcx, 8
mov edx, dword [rsp + 0x88]
call fcn.140009640
movzx eax, al
mov ecx, dword [rsp + 0x40]
and ecx, eax
mov eax, ecx
test eax, eax
jne 0x14000b698
mov dword [rsp + 0x28], 0
jmp 0x14000b6a0
mov dword [rsp + 0x28], 1
movzx eax, byte [rsp + 0x28]
mov byte [rsp + 0x20], al
mov dword [rsp + 0x24], 0
jmp 0x14000b6bd
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x88]
cmp dword [rsp + 0x24], eax
jae 0x14000b6e1
mov rax, qword [rsp + 0x70]
add rax, 8
mov edx, dword [rsp + 0x24]
mov rcx, rax
call fcn.140009900
jmp 0x14000b6b3
movzx eax, byte [rsp + 0x20]
mov dword [rsp + 0x44], eax
mov rcx, qword [rsp + 0x70]
add rcx, 0x20
mov edx, dword [rsp + 0x80]
call fcn.140009640
movzx eax, al
mov ecx, dword [rsp + 0x44]
and ecx, eax
mov eax, ecx
test eax, eax
jne 0x14000b718
mov dword [rsp + 0x2c], 0
jmp 0x14000b720
mov dword [rsp + 0x2c], 1
movzx eax, byte [rsp + 0x2c]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x20]
mov dword [rsp + 0x48], eax
mov rcx, qword [rsp + 0x70]
add rcx, 0x38
mov edx, dword [rsp + 0x88]
call fcn.140009640
movzx eax, al
mov ecx, dword [rsp + 0x48]
and ecx, eax
mov eax, ecx
test eax, eax
jne 0x14000b760
mov dword [rsp + 0x30], 0
jmp 0x14000b768
mov dword [rsp + 0x30], 1
movzx eax, byte [rsp + 0x30]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x20]
mov dword [rsp + 0x4c], eax
mov rcx, qword [rsp + 0x70]
add rcx, 0x50
mov edx, dword [rsp + 0x88]
call fcn.140009640
movzx eax, al
mov ecx, dword [rsp + 0x4c]
and ecx, eax
mov eax, ecx
test eax, eax
jne 0x14000b7a8
mov dword [rsp + 0x34], 0
jmp 0x14000b7b0
mov dword [rsp + 0x34], 1
movzx eax, byte [rsp + 0x34]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x20]
mov dword [rsp + 0x50], eax
mov rcx, qword [rsp + 0x70]
add rcx, 0x68
mov edx, dword [rsp + 0x88]
call fcn.140009640
movzx eax, al
mov ecx, dword [rsp + 0x50]
and ecx, eax
mov eax, ecx
test eax, eax
jne 0x14000b7f0
mov dword [rsp + 0x38], 0
jmp 0x14000b7f8
mov dword [rsp + 0x38], 1
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x20]
mov dword [rsp + 0x54], eax
mov rcx, qword [rsp + 0x70]
add rcx, 0x80
mov edx, dword [rsp + 0x88]
call fcn.140009640
movzx eax, al
mov ecx, dword [rsp + 0x54]
and ecx, eax
mov eax, ecx
test eax, eax
jne 0x14000b83b
mov dword [rsp + 0x3c], 0
jmp 0x14000b843
mov dword [rsp + 0x3c], 1
movzx eax, byte [rsp + 0x3c]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x20]
test eax, eax
je 0x14000b886
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x158], 1
mov rax, qword [rsp + 0x70]
add rax, 0x98
mov r8, qword [rsp + 0x70]
lea rdx, [0x14000b3a0]
mov rcx, rax
call fcn.14000a7c0
mov al, 1
jmp 0x14000b892
mov rcx, qword [rsp + 0x70]
call fcn.14000b4e0
xor al, al
add rsp, 0x68
ret