Function at 0x10073ed5
Capabilities:
Check for debugger via api

Disassembly:
push 0x34
mov eax, 0x1010a448
call fcn.10062882
and dword [ebp - 0x40], 0
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1013c408]
mov ebx, dword [ebp + 8]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x1013cfdc]
cmp eax, dword [esi + 4]
jg 0x100742a7
mov eax, dword [0x1013d168]
cmp eax, dword [esi + 4]
jg 0x10074332
mov eax, dword [0x1013d164]
cmp eax, dword [esi + 4]
jg 0x100743cc
mov eax, dword [0x1013d064]
cmp eax, dword [esi + 4]
jg 0x10074466
mov eax, dword [0x1013d27c]
cmp eax, dword [esi + 4]
jg 0x10074500
mov eax, dword [0x1013d1f0]
cmp eax, dword [esi + 4]
jg 0x1007459a
mov eax, dword [0x1013d1f4]
cmp eax, dword [esi + 4]
jg 0x10074634
mov eax, dword [ebp + 0xc]
sub eax, 0
je 0x10074172
sub eax, 1
jne 0x1007429c
cmp dword [section..mrdata], eax
jne 0x10073fa3
call fcn.1007c191
mov dword [section..mrdata], eax
test eax, eax
jne 0x10073fa3
push 1
push eax
push eax
call dword [sym.imp.kernel32.dll_RaiseFailFastException]
push ebx
call dword [sym.imp.kernel32.dll_DisableThreadLibraryCalls]
mov eax, 0x1012e138
mov ecx, 0x1002ef48
push eax
push eax
call fcn.10051bfb
mov eax, 0x1012e178
mov ecx, 0x1002ef28
push eax
push eax
call fcn.10051bfb
mov esi, 0x1012e1b0
mov ecx, 0x1002f248
push esi
push esi
call fcn.10051bfb
call fcn.10044b70
xor ebx, ebx
inc ebx
test byte [0x1013c700], bl
je 0x10073fff
lea eax, [ebp - 0x20]
mov edx, 0x1002ed78
push eax
push ebx
push ecx
mov ecx, esi
call fcn.10051bfb
push 6
pop esi
mov dword [ebp - 4], esi
call fcn.100703a8
test al, al
jne 0x10074020
call fcn.100708cb
test al, al
jne 0x10074020
call fcn.10070914
test al, al
je 0x10074051
and dword [ebp - 0x28], 0
lea ecx, [ebp - 0x38]
xor eax, eax
mov dword [ebp - 0x24], 7
push 0x1002e2b0
mov word [ebp - 0x38], ax
call fcn.10051bfb
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x40], ebx
call fcn.1007eeee
test al, al
je 0x10074053
xor bl, bl
mov dword [ebp - 4], esi
test byte [ebp - 0x40], 1
je 0x10074064
lea ecx, [ebp - 0x38]
call fcn.1006ab66
test bl, bl
je 0x10074075
lea ecx, [ebp - 0x39]
call fcn.10051bfb
jmp 0x1007429c
mov byte [0x1013c710], 1
xor ebx, ebx
call fcn.10051bfb
mov esi, edx
mov byte [ebp - 0x40], bl
and esi, 0x80
mov ecx, ebx
or ecx, esi
jne 0x10074098
mov byte [ebp - 0x40], 1
push edx
push eax
push dword [ebp - 0x40]
call fcn.10051bfb
test al, al
jne 0x1007407e
mov eax, ebx
or eax, esi
je 0x10074163
call fcn.1007c55c
push ecx
push 0x10070160
mov byte [ebp - 4], 8
push ebx
mov byte [ebp - 0x39], bl
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
lea edx, [ebp - 0x39]
mov ecx, eax
call fcn.1007baff
test eax, eax
je 0x100740eb
mov bl, byte [ebp - 0x39]
test bl, bl
je 0x100740ed
call fcn.1006c216
push ecx
mov ecx, eax
call fcn.1008dc58
test bl, bl
sete bl
call fcn.1006c216
mov byte [eax + 0x32], bl
call fcn.1006c216
mov edi, 0x1013d280
mov ecx, eax
push edi
call fcn.10051bfb
test al, al
je 0x10074135
call fcn.1006c2af
push 0x1013d290
push edi
mov ecx, eax
call fcn.10089f34
xor eax, eax
and edx, 0x80
or eax, edx
je 0x1007415b
call fcn.1006c216
mov byte [eax + 0x33], 1
mov esi, dword [0x1013d124]
test esi, esi
je 0x1007414e
push 0x1000003
mov ecx, esi
call dword [0x1013e49c]
call esi
lea ecx, [ebp - 0x39]
call fcn.1006f2ae
jmp 0x10074068
lea ecx, [ebp - 0x39]
call fcn.1006f2ae
lea ecx, [ebp - 0x39]
call fcn.10051bfb
xor eax, eax
jmp 0x1007429f
call fcn.1006c19a
cmp byte [eax + 0x14], 0
je 0x10074193
call fcn.1006c19a
mov esi, dword [eax + 0x18]
test esi, esi
je 0x10074193
mov ecx, esi
call dword [0x1013e49c]
call esi
call dword [sym.imp.kernel32.dll_IsDebuggerPresent]
mov dword [ebp - 0x40], eax
test eax, eax
jne 0x100741b8
lea eax, [ebp - 0x40]
push eax
call dword [sym.imp.kernel32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.kernel32.dll_CheckRemoteDebuggerPresent]
neg eax
sbb eax, eax
and eax, dword [ebp - 0x40]
cmp eax, 1
mov esi, 0x1012e1b0
sete byte [0x1013c6c8]
test byte [0x1013c700], 1
je 0x100741e3
lea eax, [ebp - 0x20]
mov edx, 0x1002f588
push eax
push 1
push ecx
mov ecx, esi
call fcn.10051bfb
mov dword [ebp - 4], 9
cmp byte [0x1013c710], 0
je 0x10074252
mov edi, 0x1013d280
mov ecx, edi
call fcn.10072e31
test al, al
je 0x10074215
call fcn.1006c2af
push 0x1013d290
push edi
mov ecx, eax
call fcn.10089fc8
call fcn.1006c2af
mov edi, eax
mov eax, dword [edi + 0x20]
mov ecx, dword [edi + 0x20]
cmp eax, dword [ecx]
je 0x10074246
lea ebx, [eax + 4]
mov eax, dword [ebx]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x48]
and dword [eax + 0x44], 0
and dword [eax + 0x48], 0
test ecx, ecx
je 0x10074242
call fcn.10070c16
mov eax, dword [ebx]
jmp 0x1007421f
call fcn.1006c216
mov ecx, eax
call fcn.1008d19a
lea ecx, [ebp - 0x39]
call fcn.10051bfb
mov eax, dword [0x1012e204]
xor edx, edx
mov ecx, dword [0x1012e200]
push eax
push ecx
mov dword [0x1012e1e8], edx
mov dword [0x1012e200], edx
mov dword [0x1012e204], edx
call dword [sym.imp.ADVAPI32.dll_EventUnregister]
mov ecx, esi
call fcn.100747d0
mov ecx, 0x1012e178
call fcn.100747d0
mov ecx, 0x1012e138
call fcn.100747d0
xor eax, eax
inc eax
call fcn.1006281a
ret 0xc
mov edi, 0x1013cfdc
push edi
call fcn.10051bfb
cmp dword [0x1013cfdc], 0xffffffff
pop ecx
jne 0x10073f08
and dword [ebp - 4], 0
mov ecx, 0x1013cfe0
push ebx
call fcn.10089117
push 0x1013d030
mov dword [0x1013cfe0], 0x10002bcc
mov byte [0x1013d02c], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013cfe8], 1
push 0x1011a860
mov dword [0x1013d048], eax
mov dword [0x1013d04c], eax
mov dword [0x1013d050], eax
mov dword [0x1013d054], eax
mov dword [0x1013d058], eax
mov dword [0x1013d05c], eax
mov dword [0x1013d060], eax
call fcn.10051bfb
or dword [ebp - 4], 0xffffffff
pop ecx
push edi
call fcn.10051bfb
pop ecx
jmp 0x10073f08
push 0x1013d168
call fcn.10051bfb
cmp dword [0x1013d168], 0xffffffff
pop ecx
jne 0x10073f19
mov edi, 0x1013d16c
mov dword [ebp - 4], 1
push ebx
mov ecx, edi
call fcn.10089117
push 0x1013d1bc
mov dword [0x1013d16c], 0x10002b9c
mov byte [0x1013d1b8], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013d174], 1
push 0x1011a8b0
mov dword [0x1013d1d4], eax
mov dword [0x1013d1d8], eax
mov dword [0x1013d1dc], eax
mov dword [0x1013d1e0], eax
mov dword [0x1013d1e4], eax
mov dword [0x1013d1e8], eax
mov dword [0x1013d1ec], eax
mov dword [0x1013cdb4], edi
call fcn.10051bfb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013d168
call fcn.10051bfb
pop ecx
jmp 0x10073f19
push 0x1013d164
call fcn.10051bfb
cmp dword [0x1013d164], 0xffffffff
pop ecx
jne 0x10073f2a
mov edi, 0x1013ced4
mov dword [ebp - 4], 2
push ebx
mov ecx, edi
call fcn.10089117
push 0x1013cf24
mov dword [0x1013ced4], 0x10002b04
mov byte [0x1013cf20], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013cedc], 1
push 0x1011a890
mov dword [0x1013cf3c], eax
mov dword [0x1013cf40], eax
mov dword [0x1013cf44], eax
mov dword [0x1013cf48], eax
mov dword [0x1013cf4c], eax
mov dword [0x1013cf50], eax
mov dword [0x1013cf54], eax
mov dword [0x1013cce0], edi
call fcn.10051bfb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013d164
call fcn.10051bfb
pop ecx
jmp 0x10073f2a
push 0x1013d064
call fcn.10051bfb
cmp dword [0x1013d064], 0xffffffff
pop ecx
jne 0x10073f3b
mov edi, 0x1013d1f8
mov dword [ebp - 4], 3
push ebx
mov ecx, edi
call fcn.10089117
push 0x1013d248
mov dword [0x1013d1f8], 0x10002b7c
mov byte [0x1013d244], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013d200], 1
push 0x1011a870
mov dword [0x1013d260], eax
mov dword [0x1013d264], eax
mov dword [0x1013d268], eax
mov dword [0x1013d26c], eax
mov dword [0x1013d270], eax
mov dword [0x1013d274], eax
mov dword [0x1013d278], eax
mov dword [0x1013cc7c], edi
call fcn.10051bfb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013d064
call fcn.10051bfb
pop ecx
jmp 0x10073f3b
push 0x1013d27c
call fcn.10051bfb
cmp dword [0x1013d27c], 0xffffffff
pop ecx
jne 0x10073f4c
mov edi, 0x1013cf58
mov dword [ebp - 4], 4
push ebx
mov ecx, edi
call fcn.10089117
push 0x1013cfa8
mov dword [0x1013cf58], 0x10002878
mov byte [0x1013cfa4], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013cf60], 1
push 0x1011a8a0
mov dword [0x1013cfc0], eax
mov dword [0x1013cfc4], eax
mov dword [0x1013cfc8], eax
mov dword [0x1013cfcc], eax
mov dword [0x1013cfd0], eax
mov dword [0x1013cfd4], eax
mov dword [0x1013cfd8], eax
mov dword [0x1013cd24], edi
call fcn.10051bfb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013d27c
call fcn.10051bfb
pop ecx
jmp 0x10073f4c
push 0x1013d1f0
call fcn.10051bfb
cmp dword [0x1013d1f0], 0xffffffff
pop ecx
jne 0x10073f5d
mov edi, 0x1013d068
mov dword [ebp - 4], 5
push ebx
mov ecx, edi
call fcn.10089117
push 0x1013d0b8
mov dword [0x1013d068], 0x10002884
mov byte [0x1013d0b4], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013d070], 1
push 0x1011a880
mov dword [0x1013d0d0], eax
mov dword [0x1013d0d4], eax
mov dword [0x1013d0d8], eax
mov dword [0x1013d0dc], eax
mov dword [0x1013d0e0], eax
mov dword [0x1013d0e4], eax
mov dword [0x1013d0e8], eax
mov dword [0x1013cd8c], edi
call fcn.10051bfb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013d1f0
call fcn.10051bfb
pop ecx
jmp 0x10073f5d
push 0x1013d1f4
call fcn.10051bfb
cmp dword [0x1013d1f4], 0xffffffff
pop ecx
jne 0x10073f6e
mov eax, 0x1001ddfc
mov edi, 0x1013d280
mov esi, eax
push 0x1013d1f4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, eax
mov edi, 0x1013d290
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.10051bfb
pop ecx
jmp 0x10073f6e