Function at 0x10049d63
Capabilities:
Allocate thread local storage

Disassembly:
push ebx
push esi
push 0x101f71b0
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
push str.MONO_COM
call fcn.10113e14
xor ebx, ebx
pop ecx
cmp eax, ebx
je 0x1002270c
push edi
push 3
mov esi, eax
pop ecx
mov edi, 0x10137074
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
pop edi
jne 0x1002270c
mov dword [0x101f71c8], 1
push ebx
push str.ptr_ptr
push str.cominterop_get_method_interface
push fcn.1001f348
call fcn.1001f6fb
push ebx
push str.ptr_ptr_int32
push str.cominterop_get_function_pointer
push 0x1001f296
call fcn.1001f6fb
push ebx
mov esi, str.int32_object
push esi
push str.cominterop_object_is_rcw
push fcn.1001f2a6
call fcn.1001f6fb
push ebx
push str.ptr_object_ptr
push str.cominterop_get_ccw
push fcn.10021929
call fcn.1001f6fb
add esp, 0x40
push ebx
push str.object_ptr_int32
push str.cominterop_get_ccw_object
push fcn.1001fcb3
call fcn.1001f6fb
push ebx
push esi
push str.cominterop_get_hresult_for_exception
push sym.mono.dll_mono_gc_get_generation
call fcn.1001f6fb
push ebx
push str.ptr_object_ptr_int32
push str.cominterop_get_interface
push fcn.10020731
call fcn.1001f6fb
push ebx
push str.ptr_obj
push str.mono_string_to_bstr
push 0x1002033e
call fcn.1001f6fb
add esp, 0x40
push ebx
push str.obj_ptr
push str.mono_string_from_bstr
push 0x10020359
call fcn.1001f6fb
push ebx
mov esi, str.void_ptr
push esi
push str.mono_free_bstr
push 0x10020383
call fcn.1001f6fb
push ebx
push str.object_ptr
push str.cominterop_type_from_handle
push 0x1001f6d3
call fcn.1001f6fb
push ebx
push str.int32_ptr_ptr_ptr_ptr_ptr_int32
push str.mono_marshal_safearray_begin
push 0x100203cd
call fcn.1001f6fb
add esp, 0x40
push ebx
push str.ptr_ptr_ptr
push str.mono_marshal_safearray_get_value
push 0x10020511
call fcn.1001f6fb
push ebx
push str.int32_ptr_ptr
push str.mono_marshal_safearray_next
push 0x10020535
call fcn.1001f6fb
push ebx
push str.void_ptr_ptr
push str.mono_marshal_safearray_end
push 0x100205b2
call fcn.1001f6fb
push ebx
push str.int32_object_ptr_ptr_ptr
push str.mono_marshal_safearray_create
push 0x100205c9
call fcn.1001f6fb
add esp, 0x40
push ebx
push str.void_ptr_ptr_ptr
push str.mono_marshal_safearray_set_value
push 0x1002067c
call fcn.1001f6fb
push ebx
push esi
push str.mono_marshal_safearray_free_indices
push sym.mono.dll_mono_unity_g_free
call fcn.1001f6fb
add esp, 0x20
pop esi
pop ebx
ret
push esi
xor esi, esi
cmp dword [0x101f7494], esi
jne 0x1004a19b
push ebx
push edi
xor ebx, ebx
inc ebx
push 0x101f742c
mov dword [0x101f7494], ebx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov edi, dword [sym.imp.KERNEL32.dll_TlsAlloc]
mov dword [0x101f7454], ebx
call edi
mov dword [0x101f7428], eax
call edi
push ebx
push str.void
push str.ves_icall_System_Threading_Thread_ResetAbort
push 0x1007e999
mov dword [0x101f7400], eax
call fcn.1001f6fb
push esi
mov edi, str.ptr_obj
push edi
push 0x1019d850
push sym.mono.dll_mono_marshal_string_to_utf16
call fcn.1001f6fb
push esi
push edi
push str.mono_marshal_string_to_utf16_copy
push 0x100432bd
call fcn.1001f6fb
push esi
push edi
push 0x1019d814
push sym.mono.dll_mono_string_to_utf16
call fcn.1001f6fb
add esp, 0x40
push esi
mov ebx, str.obj_ptr
push ebx
push 0x1019d7fc
push sym.mono.dll_mono_string_from_utf16
call fcn.1001f6fb
push esi
push ebx
push 0x1019d7e4
push sym.mono.dll_mono_string_new_wrapper
call fcn.1001f6fb
push esi
push edi
push 0x1019d7d0
push sym.mono.dll_mono_string_to_utf8
call fcn.1001f6fb
push esi
push edi
push str.mono_string_to_lpstr
push fcn.1003c919
call fcn.1001f6fb
add esp, 0x40
push esi
mov edi, str.ptr_object
push edi
push str.mono_string_to_ansibstr
push 0x1003c9ac
call fcn.1001f6fb
push esi
push edi
push str.mono_string_builder_to_utf8
push 0x10043eaa
call fcn.1001f6fb
push esi
push edi
push str.mono_string_builder_to_utf16
push 0x1003c879
call fcn.1001f6fb
push esi
push edi
push str.mono_array_to_savearray
push 0x1003c1f0
call fcn.1001f6fb
add esp, 0x40
push esi
push edi
push str.mono_array_to_lparray
push 0x1003c218
call fcn.1001f6fb
push esi
push str.void_object_ptr
push str.mono_free_lparray
push 0x1003c2e7
call fcn.1001f6fb
push esi
push str.void_object_ptr_ptr_int32
push str.mono_byvalarray_to_array
push 0x1003c32c
call fcn.1001f6fb
push esi
push str.void_ptr_object_ptr_int32
push str.mono_array_to_byvalarray
push 0x1003c3db
call fcn.1001f6fb
add esp, 0x40
push esi
push edi
push str.mono_delegate_to_ftnptr
push 0x10043da8
call fcn.1001f6fb
push esi
push str.object_ptr_ptr
push str.mono_ftnptr_to_delegate
push fcn.10048d83
call fcn.1001f6fb
push esi
push str.ptr_object_int32_int32
push str.mono_marshal_asany
push 0x10045d10
call fcn.1001f6fb
push esi
push str.void_object_ptr_int32_int32
push str.mono_marshal_free_asany
push 0x10049c88
call fcn.1001f6fb
add esp, 0x40
push esi
push str.ptr_int32
push str.mono_marshal_alloc
push fcn.10043273
call fcn.1001f6fb
push esi
push str.void_ptr
push str.mono_marshal_free
push fcn.100436dd
call fcn.1001f6fb
push esi
push str.void
push str.mono_marshal_set_last_error
push 0x100432fe
call fcn.1001f6fb
push esi
push str.void_int32
push str.mono_marshal_set_last_error_windows
push 0x10043312
call fcn.1001f6fb
add esp, 0x40
push esi
mov edi, str.void_ptr_ptr
push edi
push str.mono_string_utf8_to_builder
push fcn.1003c4c3
call fcn.1001f6fb
push esi
mov ebx, str.object_ptr
push ebx
push str.mono_string_utf8_to_builder2
push 0x1003c594
call fcn.1001f6fb
push esi
push edi
push str.mono_string_utf16_to_builder
push 0x1003c6ce
call fcn.1001f6fb
push esi
push ebx
push str.mono_string_utf16_to_builder2
push 0x1003c721
call fcn.1001f6fb
add esp, 0x40
push esi
push str.void_ptr_int32
push str.mono_marshal_free_array
push 0x10043281
call fcn.1001f6fb
push esi
mov edi, str.void_ptr_ptr_int32
push edi
push str.mono_string_to_byvalstr
push 0x1003c9c0
call fcn.1001f6fb
push esi
push edi
push str.mono_string_to_byvalwstr
push 0x1003ca6b
call fcn.1001f6fb
push esi
push str.void_ptr
push 0x1019d480
push sym.mono.dll_g_free
call fcn.1001f6fb
add esp, 0x40
push esi
mov edi, str.object_object_ptr
push edi
push 0x1019d458
push sym.mono.dll_mono_object_isinst
call fcn.1001f6fb
push esi
push str.void_ptr_ptr
push str.mono_struct_delete_old
push fcn.10045be8
call fcn.1001f6fb
push esi
push str.object_ptr_ptr
push str.mono_remoting_wrapper
push 0x1003d884
call fcn.1001f6fb
push esi
push edi
push str.mono_delegate_begin_invoke
push 0x1004475d
call fcn.1001f6fb
add esp, 0x40
push esi
push edi
push str.mono_delegate_end_invoke
push 0x1003d3fd
call fcn.1001f6fb
push esi
push str.object_object
push str.mono_marshal_xdomain_copy_value
push fcn.1003dbdd
call fcn.1001f6fb
push esi
push str.void_object_object
push str.mono_marshal_xdomain_copy_out_value
push 0x1003dd1c
call fcn.1001f6fb
push esi
push str.int32_int32_int32
push str.mono_marshal_set_domain_by_id
push 0x1003de7f
call fcn.1001f6fb
add esp, 0x40
push esi
push str.int32_int32_ptr
push str.mono_marshal_check_domain_image
push 0x1003df03
call fcn.1001f6fb
push esi
push str.ptr_ptr
push 0x1019d310
push sym.mono.dll_mono_compile_method
call fcn.1001f6fb
push esi
push str.object
push 0x1019d2fc
push sym.mono.dll_mono_context_get
call fcn.1001f6fb
push esi
mov edi, str.void_object
push edi
push 0x1019d2dc
push sym.mono.dll_mono_context_set
call fcn.1001f6fb
add esp, 0x40
push esi
push str.void_object_object
push 0x1019d2b8
push sym.mono.dll_mono_upgrade_remote_class_wrapper
call fcn.1001f6fb
push esi
push ebx
push str.type_from_handle
push 0x1001f6d3
call fcn.1001f6fb
push esi
push str.void_ptr
push str.wb_generic
push sym.mono.dll_mono_gc_wbarrier_arrayref_copy
call fcn.1001f6fb
push esi
push edi
push str.runtime_invoke_reset_abort
push 0x1003f83a
call fcn.1001f6fb
add esp, 0x40
push 1
push str.object_int32
push 0x1019d250
push sym.mono.dll_mono_gchandle_get_target
call fcn.1001f6fb
add esp, 0x10
pop edi
pop ebx
pop esi
jmp 0x100226d2
pop esi
ret