Function at 0x107e940
Capabilities:
Check for debugger via api

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x238
push ebx
push esi
push edi
push 0x48
lea eax, [ebp - 0x60]
push 0
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0x1d8
push eax
lea ecx, [ebp - 0x238]
push ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 4], eax
call sub.msvcrt.dll_memset
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov eax, dword [ebx + 0xd8]
add esp, 0x18
push 0
push 8
lea edx, [esi + 0xb8]
push edx
push 0xf
push edi
call eax
mov edx, dword [ebx + 0xd8]
push 0
push 4
lea ecx, [esi + 0x20]
push ecx
push 0x18
push edi
call edx
mov ecx, dword [ebx + 0xd8]
push 0
push 0x20
lea eax, [esi + 0x48]
push eax
push 1
push edi
call ecx
mov eax, dword [ebx + 0xd8]
push 0
push 0x2c
lea edx, [esi + 0x68]
push edx
push 3
push edi
call eax
mov edx, dword [ebx + 0xd8]
push 0
push 0x20
lea ecx, [esi + 0x98]
push ecx
push 4
push edi
call edx
mov ecx, dword [ebx + 0xd8]
push 0
push 4
lea eax, [esi + 0x18]
push eax
push 0x14
push edi
call ecx
mov eax, dword [ebx + 0xd8]
push 0
push 4
lea edx, [esi + 0x28]
push edx
push 0xc
push edi
call eax
push 0
mov edx, dword [ebx + 0xd8]
push 4
lea ecx, [esi + 0x2c]
push ecx
push 0x13
push edi
call edx
mov ecx, dword [ebx + 0xd8]
push 0
push 4
lea eax, [esi + 0x30]
push eax
push 0x16
push edi
call ecx
mov eax, dword [ebx + 0xd8]
push 0
push 4
lea edx, [esi + 0x34]
push edx
push 7
push edi
call eax
push 0
push edi
call dword [sym.imp.USER32.dll_GetGuiResources]
push 2
push edi
mov dword [esi + 0x38], eax
call dword [sym.imp.USER32.dll_GetGuiResources]
push 1
push edi
mov dword [esi + 0x3c], eax
call dword [sym.imp.USER32.dll_GetGuiResources]
push 4
push edi
mov dword [esi + 0x40], eax
call dword [sym.imp.USER32.dll_GetGuiResources]
lea ecx, [esi + 0x1c]
push ecx
push edi
mov dword [esi + 0x44], eax
call dword [sym.imp.KERNEL32.DLL_CheckRemoteDebuggerPresent]
mov eax, dword [ebx + 0x1c4]
lea edx, [esi + 0x24]
push edx
push edi
call eax
mov edx, dword [ebx + 0xd8]
push 0
push 0x18
lea ecx, [ebp - 0x18]
push ecx
push 0
push edi
call edx
test eax, eax
jne 0x107ebc8
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
push 0
mov dword [esi + 8], eax
mov eax, dword [ebp - 4]
mov dword [esi], edx
push 0x1d8
mov dword [esi + 0x14], eax
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x238]
mov dword [esi + 0xc], ecx
mov ecx, dword [ebp - 8]
push edx
push eax
mov dword [esi + 4], eax
mov dword [esi + 0x10], ecx
mov eax, dword [ebx + 0x478]
push edi
call eax
test eax, eax
je 0x107ebc8
mov edx, dword [ebp - 0x228]
mov eax, dword [ebx + 0x478]
push 0
push 0x48
lea ecx, [ebp - 0x60]
push ecx
push edx
push edi
call eax
test eax, eax
je 0x107ebc8
mov ax, word [ebp - 0x20]
test ax, ax
je 0x107eb7a
movzx ecx, ax
add ecx, 2
push ecx
call fcn.0102a710
mov dword [esi + 0xc4], eax
test eax, eax
je 0x107eb7a
movzx edx, word [ebp - 0x20]
mov ecx, dword [ebx + 0x478]
push 0
push edx
push eax
mov eax, dword [ebp - 0x1c]
push eax
push edi
call ecx
test eax, eax
je 0x107eb64
movzx edx, word [ebp - 0x20]
mov eax, dword [esi + 0xc4]
shr edx, 1
push edx
push eax
call fcn.0102d950
jmp 0x107eb7a
mov ecx, dword [esi + 0xc4]
push ecx
call fcn.01083050
mov dword [esi + 0xc4], 0
mov ax, word [ebp - 0x28]
test ax, ax
je 0x107ebc8
movzx edx, ax
add edx, 2
push edx
call fcn.0102a710
mov dword [esi + 0xc8], eax
test eax, eax
je 0x107ebc8
movzx ecx, word [ebp - 0x28]
mov edx, dword [ebp - 0x24]
push 0
push ecx
push eax
mov eax, dword [ebx + 0x478]
push edx
push edi
call eax
test eax, eax
jne 0x107ebc8
mov ecx, dword [esi + 0xc8]
push ecx
call fcn.01083050
mov dword [esi + 0xc8], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc