Function at 0x140009245
Capabilities:
Allocate thread local storage
Get thread local storage value
Set thread local storage value

Disassembly:
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r9
push rbp
push r15
push r14
mov rax, 7
sub rsp, 8
mov qword [rsp], 0
dec rax
jne 0x140009265
sub rsp, 0x28
call fcn.1400505f0
mov rdx, qword [rsp + 0x98]
lea rcx, [rsp + 0x28]
sub rsp, 0x10
call fcn.140050660
add rsp, 0x10
mov r15, qword [0x140a755e0]
and r15, r15
je 0x1400092b4
mov r15, qword [0x140a755e0]
cmp r15, 0xffffffffffffffff
je 0x1400092b4
jmp 0x1400092bd
mov rax, 1
jmp 0x1400092c0
xor rax, rax
and rax, rax
je 0x1400092d1
call sub.KERNEL32.dll_TlsAlloc
mov qword [0x140a755e0], rax
mov r15, qword [0x140a755e0]
cmp r15, 0xffffffffffffffff
je 0x140009323
mov r15, qword [rsp + 0x88]
cmp r15, 0xffffffffffffffff
je 0x140009323
mov r15, qword [rsp + 0x88]
movabs rax, 0x80020009
cmp r15, rax
jne 0x140009319
mov r15, qword [rsp + 0x90]
and r15, r15
jne 0x140009319
mov rax, 1
jmp 0x14000931c
xor rax, rax
and rax, rax
jne 0x140009323
jmp 0x14000932c
mov rax, 1
jmp 0x14000932f
xor rax, rax
and rax, rax
je 0x140009339
jmp 0x140009d44
push qword [0x140a755e0]
pop rcx
call sub.KERNEL32.dll_TlsGetValue
mov qword [rsp + 0x30], rax
mov r15, qword [rsp + 0x30]
and r15, r15
jne 0x140009437
push 0x10
pop rcx
call fcn.14004eb30
mov qword [rsp + 0x30], rax
cmp qword [rsp + 0x30], 0
je 0x140009437
push qword [rsp + 0x30]
push qword [0x140a755e0]
pop rcx
pop rdx
call sub.KERNEL32.dll_TlsSetValue
and rax, rax
je 0x140009424
mov r15, qword [0x140a756c0]
inc r15
shl r15, 3
mov rax, r15
push rax
push qword [0x140a75510]
pop rcx
pop rdx
call fcn.14004efd0
mov qword [rsp + 0x38], rax
cmp qword [rsp + 0x38], 0
je 0x1400093fd
push qword [rsp + 0x38]
pop rax
mov qword [0x140a75510], rax
push qword [rsp + 0x30]
mov r15, qword [0x140a75510]
mov r14, qword [0x140a756c0]
shl r14, 3
add r15, r14
mov rax, r15
push rax
pop rcx
pop rdx
call fcn.14004f060
mov r15, qword [0x140a756c0]
inc r15
mov qword [0x140a756c0], r15
jmp 0x140009422
push 0
push qword [0x140a755e0]
pop rcx
pop rdx
call sub.KERNEL32.dll_TlsSetValue
push qword [rsp + 0x30]
pop rcx
call fcn.14004ed10
mov qword [rsp + 0x30], 0
jmp 0x140009437
push qword [rsp + 0x30]
pop rcx
call fcn.14004ed10
mov qword [rsp + 0x30], 0
cmp qword [rsp + 0x30], 0
je 0x140009d41
push qword [rsp + 0x88]
mov rbp, qword [rsp + 0x38]
pop rax
mov qword [rbp], rax
push qword [rsp + 0x88]
xor r15, r15
cmp r15, qword [rsp]
jne 0x140009489
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Okay.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
mov r15, 1
cmp r15, qword [rsp]
jne 0x140009542
mov rcx, qword [rsp + 0x30]
xor rdx, rdx
sub rsp, 0x28
call fcn.140050540
add rsp, 0x28
or rax, rax
jne 0x14000951d
push rcx
sub rsp, 0x20
call fcn.1400502c0
add rsp, 0x20
pop rcx
push rax
movabs rcx, str.The_operation_completed__but_was_only_partially_successful.__
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
mov rcx, qword [rsp + 0x38]
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
movabs rcx, 0x1400c641a
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
mov rbp, qword [rsp + 0x40]
lea rcx, [rbp + 8]
pop rdx
sub rsp, 0x28
call fcn.140050310
add rsp, 0x28
jmp 0x14000953d
mov rbp, qword [rsp + 0x38]
movabs rdx, str.The_operation_completed__but_was_only_partially_successful.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80004005
cmp r15, qword [rsp]
jne 0x140009577
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Unspecified_error.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80070057
cmp r15, qword [rsp]
jne 0x1400095ac
mov rbp, qword [rsp + 0x38]
movabs rdx, str.One_or_more_arguments_are_invalid._Possibly_a_numerical_overflow_or_too_many_nested_objects___if_so__try_splitting_your_method_call_into_two_or_more_subcalls.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80004002
cmp r15, qword [rsp]
jne 0x1400095e1
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Method_is_not_implemented.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x8007000e
cmp r15, qword [rsp]
jne 0x140009688
push rcx
sub rsp, 0x20
call fcn.1400502c0
add rsp, 0x20
pop rcx
push rax
movabs rcx, str.Problem_allocating_memory._r_n_r_n_Possibly_too_many_method_arguments._Each_method_property_is_limited_by_COMatePLUS_to_a_maximum_of
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
push 0x14
pop rcx
pop rdx
sub rsp, 0x20
call fcn.14004dd00
add rsp, 0x28
pop rax
movabs rcx, str._arguments._
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
mov rbp, qword [rsp + 0x40]
lea rcx, [rbp + 8]
pop rdx
sub rsp, 0x28
call fcn.140050310
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x8000ffff
cmp r15, qword [rsp]
jne 0x1400096bd
mov rbp, qword [rsp + 0x38]
movabs rdx, str.An_unexpected_error.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80004003
cmp r15, qword [rsp]
jne 0x1400096f2
mov rbp, qword [rsp + 0x38]
movabs rdx, str.An_invalid_pointer_was_supplied.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80004001
cmp r15, qword [rsp]
jne 0x140009727
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Not_implemented._In_the_case_of_attaching_an_event_handler_to_a_COM_object__this_could_signify_that_the_object_does_not_provide_any_type_information.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x800401f3
cmp r15, qword [rsp]
je 0x140009747
movabs r15, 0x80040154
cmp r15, qword [rsp]
jne 0x14000976c
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Invalid_progID_CLSID._Check_your_spelling_of_the_programmatic_identifier._Also_check_that_the_component___ActiveX_control_has_been_registered.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80080005
cmp r15, qword [rsp]
jne 0x1400097a1
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Server_execution_failed._Usually_caused_by_an_out_of_process_server_timing_out_when_asked_to_create_an_instance_of_a_class_factory.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80020005
cmp r15, qword [rsp]
jne 0x1400097d6
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Type_mismatch_in_the_method_parameters.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x8002802b
cmp r15, qword [rsp]
jne 0x14000980b
mov rbp, qword [rsp + 0x38]
movabs rdx, str.No_type_description_was_found_in_the_library_with_the_specified_GUID_whilst_trying_to_create_an_event_handler.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
mov r15, 0xffffffff80040201
cmp r15, qword [rsp]
jne 0x14000983d
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Unable_to_set_event_handler_because_the_connection_point_has_already_reached_its_limit_of_connections.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80040110
cmp r15, qword [rsp]
jne 0x140009872
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Class_does_not_support_aggregation__or_class_object_is_remote_.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x8002000a
cmp r15, qword [rsp]
jne 0x1400098a7
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Overflow_error_whilst_converting_between_types.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80020006
cmp r15, qword [rsp]
jne 0x1400098dc
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Method_property_not_supported_by_this_object.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x8002000e
cmp r15, qword [rsp]
jne 0x140009911
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Invalid_number_of_method_property_parameters.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80020008
cmp r15, qword [rsp]
jne 0x140009946
mov rbp, qword [rsp + 0x38]
movabs rdx, str.A_method_property_parameter_is_not_a_valid__variant__type.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80020003
cmp r15, qword [rsp]
jne 0x14000997b
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Member_not_found.__Check_that_you_have_not_omitted_any_optional_parameters_and_are_not_trying_to_set_a_read_only_property_etc._
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80020011
cmp r15, qword [rsp]
jne 0x1400099b0
mov rbp, qword [rsp + 0x38]
movabs rdx, str.Does_not_support_a_collection.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80070005
cmp r15, qword [rsp]
jne 0x1400099e5
mov rbp, qword [rsp + 0x38]
movabs rdx, str.A_general_access_denied_error.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x8001010e
cmp r15, qword [rsp]
jne 0x140009a1a
mov rbp, qword [rsp + 0x38]
movabs rdx, str.The_application_called_upon_an_interface_that_was_marshalled_for_a_different_thread.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
movabs r15, 0x80020009
cmp r15, qword [rsp]
jne 0x140009ab1
mov rcx, qword [rsp + 0x30]
push rcx
sub rsp, 0x20
call fcn.1400502c0
add rsp, 0x20
pop rcx
push rax
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
mov rbp, qword [rsp + 0x40]
lea rcx, [rbp + 8]
pop rdx
sub rsp, 0x28
call fcn.140050310
add rsp, 0x28
mov rbp, qword [rsp + 0x38]
push qword [rbp + 8]
movabs rcx, 0x1400c6042
pop rdx
sub rsp, 0x28
call fcn.140050540
add rsp, 0x28
or rax, rax
je 0x140009aac
mov rbp, qword [rsp + 0x38]
movabs rdx, str.An_exception_occurred_during_the_execution_of_this_method_property.
lea rcx, [rbp + 8]
sub rsp, 0x28
call fcn.1400501d0
add rsp, 0x28
jmp 0x140009d40
mov rbp, qword [rsp + 0x38]
mov r15, qword [rbp]
and r15, 0x7fff0000
cmp r15, 0x70000
jne 0x140009ca8
mov rbp, qword [rsp + 0x38]
mov r15, qword [rbp]
and r15, 0xffff
mov qword [rsp + 0x48], r15
push 0
push 0
lea rax, [rsp + 0x68]
mov rax, rax
push rax
push 0
push qword [rsp + 0x68]
push 0
push 0x1100
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.KERNEL32.dll_FormatMessageW
add rsp, 0x38
mov qword [rsp + 0x50], rax
cmp qword [rsp + 0x50], 0
je 0x140009c16
push rcx
sub rsp, 0x20
call fcn.1400502c0
add rsp, 0x20
pop rcx
push rax
movabs rcx, str._FACILITY_WIN32_error
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
push qword [rsp + 0x68]
pop rcx
pop rdx
sub rsp, 0x20
call fcn.14004dd00
add rsp, 0x28
pop rax
movabs rcx, 0x1400c85a4
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
push qword [rsp + 0x70]
push qword [rsp + 0x80]
pop rcx
pop rdx
pop r8
sub rsp, 0x20
call fcn.14004edc0
add rsp, 0x28
pop rax
mov rbp, qword [rsp + 0x40]
lea rcx, [rbp + 8]
pop rdx
sub rsp, 0x28
call fcn.140050310
add rsp, 0x28
sub rsp, 8
push qword [rsp + 0x60]
pop rcx
sub rsp, 0x20
call sub.KERNEL32.dll_LocalFree
add rsp, 0x28
jmp 0x140009ca3
push rcx
sub rsp, 0x20
call fcn.1400502c0
add rsp, 0x20
pop rcx
push rax
movabs rcx, str._FACILITY_WIN32_error
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
push qword [rsp + 0x68]
pop rcx
pop rdx
sub rsp, 0x20
call fcn.14004dd00
add rsp, 0x28
pop rax
movabs rcx, str.__Unable_to_retrieve_error_description_from_system_
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
mov rbp, qword [rsp + 0x40]
lea rcx, [rbp + 8]
pop rdx
sub rsp, 0x28
call fcn.140050310
add rsp, 0x28
jmp 0x140009d40
push rcx
sub rsp, 0x20
call fcn.1400502c0
add rsp, 0x20
pop rcx
push rax
movabs rcx, str.Unknown_error.__Code_:_Hex
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
push rcx
sub rsp, 0x28
call fcn.1400502c0
add rsp, 0x28
pop rcx
push rax
push 5
mov rbp, qword [rsp + 0x60]
push qword [rbp]
pop rcx
pop rdx
pop r8
sub rsp, 0x20
call fcn.14004daf0
add rsp, 0x28
pop rax
movabs rcx, str._._Please_report_this_error_code_to_the_author_at_enquiries_nxsoftware.com
sub rsp, 0x20
call fcn.1400503f0
add rsp, 0x20
mov rbp, qword [rsp + 0x40]
lea rcx, [rbp + 8]
pop rdx
sub rsp, 0x28
call fcn.140050310
add rsp, 0x28
pop rax
xor rax, rax
push rax
mov rcx, qword [rsp + 0x30]
sub rsp, 0x28
call fcn.140050700
add rsp, 0x28
pop rax
add rsp, 0x60
pop r14
pop r15
pop rbp
ret