Function at 0x10001104
Capabilities:
Accept command line arguments
Allocate thread local storage
Query environment variable

Disassembly:
jmp 0x1007a18c
sub esp, 0x408
mov eax, dword [0x10184508]
xor eax, esp
mov dword [esp + 0x404], eax
cmp byte [0x1018734e], 0
jne 0x1007a5ea
cmp byte [0x1018734d], 0
jne 0x1007a5ea
mov byte [0x1018734d], 1
call sym.CoreFoundation.dll__NS_pthread_main_np
test eax, eax
jne 0x1007a1d6
call dword [sym.imp.KERNEL32.dll_DebugBreak]
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
push ebx
push ebp
push esi
push edi
call sym.CoreFoundation.dll__NS_pthread_self
mov dword [sym.CoreFoundation.dll__CFMainPThread], eax
call fcn.1000157d
call fcn.10002784
xor ebx, ebx
mov byte [0x10187384], 1
mov esi, ebx
mov eax, dword [esi + 0x10178f70]
test eax, eax
je 0x1007a20d
push eax
call dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
pop ecx
jmp 0x1007a20f
mov eax, ebx
mov dword [esi + 0x10178f74], eax
add esi, 8
cmp esi, 0xd0
jb 0x1007a1f9
call fcn.100031b6
push 0x10103100
push fcn.101030c2
call dword [sym.imp.objc.dll_objc_setForwardHandler]
push fcn.10001cfd
call dword [sym.imp.objc.dll_objc_setEnumerationMutationHandler]
mov esi, 0x1000
mov byte [sym.CoreFoundation.dll_kCFUseCollectableAllocator], bl
push esi
push ebx
push 0x10188388
call sub.VCRUNTIME140.dll_memset
push esi
push ebx
push 0x10187388
call sub.VCRUNTIME140.dll_memset
push str.__NSCFType
push ebx
call fcn.10001091
add esp, 0x2c
mov ecx, 0x1018738c
mov eax, dword [0x10187388]
mov dword [ecx], eax
add ecx, 4
cmp ecx, 0x10188388
jl 0x1007a276
push 0x1014918c
call sym.CoreFoundation.dll__CFRuntimeRegisterClass
mov dword [0x1018938c], eax
mov dword [esp], 0x101491b8
call sym.CoreFoundation.dll__CFRuntimeRegisterClass
mov dword [0x10189390], eax
call fcn.10002964
mov esi, dword [sym.imp.objc.dll_objc_lookUpClass]
mov edi, str.__NSCFConstantString
mov dword [esp], 0x10189a78
push sym.CoreFoundation.dll___CFConstantStringClassReference
push edi
push str.__NSCFConstantString0
call esi
pop ecx
push eax
call dword [sym.imp.objc.dll_objc_initializeClassPair]
push eax
call dword [sym.imp.objc.dll_objc_registerClassPair]
push edi
call esi
push str.__NSCFString
push 7
pop edi
push edi
mov dword [sym.CoreFoundation.dll___CFConstantStringClassReferencePtr], eax
call fcn.10001091
push str.NSNull
push 0x10
pop esi
push esi
call fcn.10001091
push str.__NSCFSet
push 0x11
call fcn.10001091
push str.__NSCFDictionary
push 0x12
call fcn.10001091
push str.__NSCFArray
push 0x13
call fcn.10001091
add esp, 0x40
push str.__NSCFData
push 0x14
call fcn.10001091
push str.__NSCFBoolean
push 0x15
call fcn.10001091
push str.__NSCFNumber
push 0x16
call fcn.10001091
call fcn.10002ab8
call sym.CoreFoundation.dll_CFBagGetTypeID
push 0x101491e4
push 0xa002
push dword [sym.CoreFoundation.dll_kCFAllocatorSystemDefault]
call fcn.100029a5
push 0x28
push eax
mov dword [0x1018939c], eax
call fcn.10002766
add esp, 0x2c
mov dword [0x10189398], ebx
mov dword [0x10189388], edi
call fcn.10002748
mov dword [0x10189388], esi
call fcn.10001942
call sym.CoreFoundation.dll_CFSetGetTypeID
call sym.CoreFoundation.dll_CFDictionaryGetTypeID
call fcn.10002dc4
call fcn.1000197e
call fcn.10002b99
call fcn.10002ed7
call fcn.100022ac
call fcn.10002257
call fcn.10002856
call fcn.10003102
call fcn.10002b44
call fcn.100024e1
call fcn.1000208b
call fcn.10002923
call fcn.10002004
call fcn.10001a32
call fcn.1000325b
call fcn.10003350
call fcn.10001406
call fcn.1000185c
call fcn.1000125d
call fcn.10001dfc
call fcn.1000232e
call fcn.100010f5
call fcn.100015c8
push str.NSURL
call sym.CoreFoundation.dll_CFURLGetTypeID
push eax
call fcn.10001091
pop ecx
pop ecx
push str.__NSCFTimer
call sym.CoreFoundation.dll_CFRunLoopTimerGetTypeID
push eax
call fcn.10001091
pop ecx
pop ecx
push str.__NSCFAttributedString
call sym.CoreFoundation.dll_CFAttributedStringGetTypeID
push eax
call fcn.10001091
pop ecx
pop ecx
push str.__NSCFLocale
call sym.CoreFoundation.dll_CFLocaleGetTypeID
push eax
call fcn.10001091
pop ecx
pop ecx
push str.__NSCFCalendar
call sym.CoreFoundation.dll_CFCalendarGetTypeID
push eax
call fcn.10001091
pop ecx
pop ecx
push str.__NSCFError
call sym.CoreFoundation.dll_CFErrorGetTypeID
push eax
call fcn.10001091
pop ecx
pop ecx
push str.__NSCFCharacterSet
call sym.CoreFoundation.dll_CFCharacterSetGetTypeID
push eax
call fcn.10001091
pop ecx
pop ecx
push str.__NSCFInputStream
call sym.CoreFoundation.dll_CFReadStreamGetTypeID
push eax
call fcn.10001091
pop ecx
pop ecx
push str.__NSCFOutputStream
call sym.CoreFoundation.dll_CFWriteStreamGetTypeID
push eax
call fcn.10001091
pop ecx
pop ecx
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea ecx, [esp + 0x10]
push ecx
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov ecx, dword [esp + 0x10]
mov ebp, eax
mov eax, 0x100
cmp ecx, eax
jg 0x1007a4db
lea esi, [esp + 0x14]
jmp 0x1007a4ee
mov eax, ecx
shl eax, 2
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
pop ecx
mov ecx, dword [esp + 0x10]
mov esi, eax
mov edi, ebx
test ecx, ecx
jle 0x1007a529
cmp dword [ebp + edi*4], 0
je 0x1007a524
push dword [ebp + edi*4]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcslen]
push eax
push dword [ebp + edi*4]
push dword [sym.CoreFoundation.dll_kCFAllocatorSystemDefault]
call sym.CoreFoundation.dll_CFStringCreateWithCharacters
add esp, 0x10
mov dword [esi + ebx*4], eax
mov ecx, dword [esp + 0x10]
test eax, eax
je 0x1007a524
inc ebx
inc edi
cmp edi, ecx
jl 0x1007a4f4
push sym.CoreFoundation.dll_kCFTypeArrayCallBacks
push ebx
push esi
push dword [sym.CoreFoundation.dll_kCFAllocatorSystemDefault]
call sym.CoreFoundation.dll_CFArrayCreate
mov dword [sym.CoreFoundation.dll___CFArgStuff], eax
add esp, 0x10
lea eax, [esp + 0x14]
cmp esi, eax
je 0x1007a553
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
pop ecx
push ebp
call dword [sym.imp.KERNEL32.dll_LocalFree]
call sym.CoreFoundation.dll__CFProcessPath
mov eax, dword [sym.imp.libdispatch.dll__dispatch_begin_NSAutoReleasePool]
mov dword [eax], sym.CoreFoundation.dll__CFAutoreleasePoolPush
mov eax, dword [sym.imp.libdispatch.dll__dispatch_end_NSAutoReleasePool]
mov dword [eax], sym.CoreFoundation.dll__CFAutoreleasePoolPop
call sym.CoreFoundation.dll___CFStringInitializeSystemEncoding
mov eax, dword [0x10189388]
mov ecx, 0x100
cmp eax, ecx
cmovl eax, ecx
mov dword [0x10189388], eax
call fcn.10001929
push str.NSZombieEnabled
call fcn.10002a13
pop ecx
pop edi
pop esi
pop ebp
pop ebx
test eax, eax
je 0x1007a5b5
mov al, byte [eax]
cmp al, 0x59
je 0x1007a5b0
cmp al, 0x79
jne 0x1007a5b5
call fcn.10001b95
push str.NSDeallocateZombies
call fcn.10002a13
pop ecx
test eax, eax
je 0x1007a5d5
mov al, byte [eax]
cmp al, 0x59
je 0x1007a5ce
cmp al, 0x79
jne 0x1007a5d5
mov byte [0x10187386], 0xff
mov byte [0x10187384], 0
mov byte [0x1018734d], 0
mov byte [0x1018734e], 1
mov ecx, dword [esp + 0x404]
xor ecx, esp
call fcn.1000234c
add esp, 0x408
ret