Function at 0x10074275
Capabilities:
Check for debugger via api

Disassembly:
push 0x34
mov eax, 0x1010ade8
call fcn.10062c32
and dword [ebp - 0x40], 0
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1013d408]
mov ebx, dword [ebp + 8]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x1013dfdc]
cmp eax, dword [esi + 4]
jg 0x10074647
mov eax, dword [0x1013e168]
cmp eax, dword [esi + 4]
jg 0x100746d2
mov eax, dword [0x1013e164]
cmp eax, dword [esi + 4]
jg 0x1007476c
mov eax, dword [0x1013e064]
cmp eax, dword [esi + 4]
jg 0x10074806
mov eax, dword [0x1013e27c]
cmp eax, dword [esi + 4]
jg 0x100748a0
mov eax, dword [0x1013e1f0]
cmp eax, dword [esi + 4]
jg 0x1007493a
mov eax, dword [0x1013e1f4]
cmp eax, dword [esi + 4]
jg 0x100749d4
mov eax, dword [ebp + 0xc]
sub eax, 0
je 0x10074512
sub eax, 1
jne 0x1007463c
cmp dword [section..mrdata], eax
jne 0x10074343
call fcn.1007c531
mov dword [section..mrdata], eax
test eax, eax
jne 0x10074343
push 1
push eax
push eax
call dword [sym.imp.kernel32.dll_RaiseFailFastException]
push ebx
call dword [sym.imp.kernel32.dll_DisableThreadLibraryCalls]
mov eax, 0x1012f138
mov ecx, 0x1002ef48
push eax
push eax
call fcn.1007c0cb
mov eax, 0x1012f178
mov ecx, 0x1002ef28
push eax
push eax
call fcn.1007c0cb
mov esi, 0x1012f1b0
mov ecx, 0x1002f248
push esi
push esi
call fcn.1007c0cb
call fcn.10044f36
xor ebx, ebx
inc ebx
test byte [0x1013d700], bl
je 0x1007439f
lea eax, [ebp - 0x20]
mov edx, 0x1002ed78
push eax
push ebx
push ecx
mov ecx, esi
call fcn.1007c0cb
push 6
pop esi
mov dword [ebp - 4], esi
call fcn.10070748
test al, al
jne 0x100743c0
call fcn.10070c6b
test al, al
jne 0x100743c0
call fcn.10070cb4
test al, al
je 0x100743f1
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.1007c0cb
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x40], ebx
call fcn.1007f28e
test al, al
je 0x100743f3
xor bl, bl
mov dword [ebp - 4], esi
test byte [ebp - 0x40], 1
je 0x10074404
lea ecx, [ebp - 0x38]
call fcn.1006af06
test bl, bl
je 0x10074415
lea ecx, [ebp - 0x39]
call fcn.1007c0cb
jmp 0x1007463c
mov byte [0x1013d710], 1
xor ebx, ebx
call fcn.1007c0cb
mov esi, edx
mov byte [ebp - 0x40], bl
and esi, 0x80
mov ecx, ebx
or ecx, esi
jne 0x10074438
mov byte [ebp - 0x40], 1
push edx
push eax
push dword [ebp - 0x40]
call fcn.1007c0cb
test al, al
jne 0x1007441e
mov eax, ebx
or eax, esi
je 0x10074503
call fcn.1007c8fc
push ecx
push 0x10070500
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.1007be9f
test eax, eax
je 0x1007448b
mov bl, byte [ebp - 0x39]
test bl, bl
je 0x1007448d
call fcn.1006c5b6
push ecx
mov ecx, eax
call fcn.1008dff8
test bl, bl
sete bl
call fcn.1006c5b6
mov byte [eax + 0x32], bl
call fcn.1006c5b6
mov edi, 0x1013e280
mov ecx, eax
push edi
call fcn.1007c0cb
test al, al
je 0x100744d5
call fcn.1006c64f
push 0x1013e290
push edi
mov ecx, eax
call fcn.1008a2d4
xor eax, eax
and edx, 0x80
or eax, edx
je 0x100744fb
call fcn.1006c5b6
mov byte [eax + 0x33], 1
mov esi, dword [0x1013e124]
test esi, esi
je 0x100744ee
push 0x1000003
mov ecx, esi
call dword [0x1013f49c]
call esi
lea ecx, [ebp - 0x39]
call fcn.1006f64e
jmp 0x10074408
lea ecx, [ebp - 0x39]
call fcn.1006f64e
lea ecx, [ebp - 0x39]
call fcn.1007c0cb
xor eax, eax
jmp 0x1007463f
call fcn.1006c53a
cmp byte [eax + 0x14], 0
je 0x10074533
call fcn.1006c53a
mov esi, dword [eax + 0x18]
test esi, esi
je 0x10074533
mov ecx, esi
call dword [0x1013f49c]
call esi
call dword [sym.imp.kernel32.dll_IsDebuggerPresent]
mov dword [ebp - 0x40], eax
test eax, eax
jne 0x10074558
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, 0x1012f1b0
sete byte [0x1013d6c8]
test byte [0x1013d700], 1
je 0x10074583
lea eax, [ebp - 0x20]
mov edx, 0x1002f588
push eax
push 1
push ecx
mov ecx, esi
call fcn.1007c0cb
mov dword [ebp - 4], 9
cmp byte [0x1013d710], 0
je 0x100745f2
mov edi, 0x1013e280
mov ecx, edi
call fcn.100731d1
test al, al
je 0x100745b5
call fcn.1006c64f
push 0x1013e290
push edi
mov ecx, eax
call fcn.1008a368
call fcn.1006c64f
mov edi, eax
mov eax, dword [edi + 0x20]
mov ecx, dword [edi + 0x20]
cmp eax, dword [ecx]
je 0x100745e6
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 0x100745e2
call fcn.10070fb6
mov eax, dword [ebx]
jmp 0x100745bf
call fcn.1006c5b6
mov ecx, eax
call fcn.1008d53a
lea ecx, [ebp - 0x39]
call fcn.1007c0cb
mov eax, dword [0x1012f204]
xor edx, edx
mov ecx, dword [0x1012f200]
push eax
push ecx
mov dword [0x1012f1e8], edx
mov dword [0x1012f200], edx
mov dword [0x1012f204], edx
call dword [sym.imp.ADVAPI32.dll_EventUnregister]
mov ecx, esi
call fcn.10074b70
mov ecx, 0x1012f178
call fcn.10074b70
mov ecx, 0x1012f138
call fcn.10074b70
xor eax, eax
inc eax
call fcn.10062bca
ret 0xc
mov edi, 0x1013dfdc
push edi
call fcn.1007c0cb
cmp dword [0x1013dfdc], 0xffffffff
pop ecx
jne 0x100742a8
and dword [ebp - 4], 0
mov ecx, 0x1013dfe0
push ebx
call fcn.100894b7
push 0x1013e030
mov dword [0x1013dfe0], 0x10002bcc
mov byte [0x1013e02c], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013dfe8], 1
push 0x1011b270
mov dword [0x1013e048], eax
mov dword [0x1013e04c], eax
mov dword [0x1013e050], eax
mov dword [0x1013e054], eax
mov dword [0x1013e058], eax
mov dword [0x1013e05c], eax
mov dword [0x1013e060], eax
call fcn.1007c0cb
or dword [ebp - 4], 0xffffffff
pop ecx
push edi
call fcn.1007c0cb
pop ecx
jmp 0x100742a8
push 0x1013e168
call fcn.1007c0cb
cmp dword [0x1013e168], 0xffffffff
pop ecx
jne 0x100742b9
mov edi, 0x1013e16c
mov dword [ebp - 4], 1
push ebx
mov ecx, edi
call fcn.100894b7
push 0x1013e1bc
mov dword [0x1013e16c], 0x10002b9c
mov byte [0x1013e1b8], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013e174], 1
push 0x1011b2c0
mov dword [0x1013e1d4], eax
mov dword [0x1013e1d8], eax
mov dword [0x1013e1dc], eax
mov dword [0x1013e1e0], eax
mov dword [0x1013e1e4], eax
mov dword [0x1013e1e8], eax
mov dword [0x1013e1ec], eax
mov dword [0x1013ddb4], edi
call fcn.1007c0cb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013e168
call fcn.1007c0cb
pop ecx
jmp 0x100742b9
push 0x1013e164
call fcn.1007c0cb
cmp dword [0x1013e164], 0xffffffff
pop ecx
jne 0x100742ca
mov edi, 0x1013ded4
mov dword [ebp - 4], 2
push ebx
mov ecx, edi
call fcn.100894b7
push 0x1013df24
mov dword [0x1013ded4], 0x10002b04
mov byte [0x1013df20], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013dedc], 1
push 0x1011b2a0
mov dword [0x1013df3c], eax
mov dword [0x1013df40], eax
mov dword [0x1013df44], eax
mov dword [0x1013df48], eax
mov dword [0x1013df4c], eax
mov dword [0x1013df50], eax
mov dword [0x1013df54], eax
mov dword [0x1013dce0], edi
call fcn.1007c0cb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013e164
call fcn.1007c0cb
pop ecx
jmp 0x100742ca
push 0x1013e064
call fcn.1007c0cb
cmp dword [0x1013e064], 0xffffffff
pop ecx
jne 0x100742db
mov edi, 0x1013e1f8
mov dword [ebp - 4], 3
push ebx
mov ecx, edi
call fcn.100894b7
push 0x1013e248
mov dword [0x1013e1f8], 0x10002b7c
mov byte [0x1013e244], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013e200], 1
push 0x1011b280
mov dword [0x1013e260], eax
mov dword [0x1013e264], eax
mov dword [0x1013e268], eax
mov dword [0x1013e26c], eax
mov dword [0x1013e270], eax
mov dword [0x1013e274], eax
mov dword [0x1013e278], eax
mov dword [0x1013dc7c], edi
call fcn.1007c0cb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013e064
call fcn.1007c0cb
pop ecx
jmp 0x100742db
push 0x1013e27c
call fcn.1007c0cb
cmp dword [0x1013e27c], 0xffffffff
pop ecx
jne 0x100742ec
mov edi, 0x1013df58
mov dword [ebp - 4], 4
push ebx
mov ecx, edi
call fcn.100894b7
push 0x1013dfa8
mov dword [0x1013df58], 0x10002878
mov byte [0x1013dfa4], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013df60], 1
push 0x1011b2b0
mov dword [0x1013dfc0], eax
mov dword [0x1013dfc4], eax
mov dword [0x1013dfc8], eax
mov dword [0x1013dfcc], eax
mov dword [0x1013dfd0], eax
mov dword [0x1013dfd4], eax
mov dword [0x1013dfd8], eax
mov dword [0x1013dd24], edi
call fcn.1007c0cb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013e27c
call fcn.1007c0cb
pop ecx
jmp 0x100742ec
push 0x1013e1f0
call fcn.1007c0cb
cmp dword [0x1013e1f0], 0xffffffff
pop ecx
jne 0x100742fd
mov edi, 0x1013e068
mov dword [ebp - 4], 5
push ebx
mov ecx, edi
call fcn.100894b7
push 0x1013e0b8
mov dword [0x1013e068], 0x10002884
mov byte [0x1013e0b4], 0
call dword [sym.imp.kernel32.dll_InitializeCriticalSection]
xor eax, eax
mov byte [0x1013e070], 1
push 0x1011b290
mov dword [0x1013e0d0], eax
mov dword [0x1013e0d4], eax
mov dword [0x1013e0d8], eax
mov dword [0x1013e0dc], eax
mov dword [0x1013e0e0], eax
mov dword [0x1013e0e4], eax
mov dword [0x1013e0e8], eax
mov dword [0x1013dd8c], edi
call fcn.1007c0cb
or dword [ebp - 4], 0xffffffff
mov dword [esp], 0x1013e1f0
call fcn.1007c0cb
pop ecx
jmp 0x100742fd
push 0x1013e1f4
call fcn.1007c0cb
cmp dword [0x1013e1f4], 0xffffffff
pop ecx
jne 0x1007430e
mov eax, 0x1001ddfc
mov edi, 0x1013e280
mov esi, eax
push 0x1013e1f4
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, 0x1013e290
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.1007c0cb
pop ecx
jmp 0x1007430e