Function at 0x40ad10
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b226a
mov eax, dword fs:[0]
push eax
sub esp, 0x1c0
mov eax, dword [0x639210]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
xorps xmm0, xmm0
mov dword [0x649a3c], 0
movdqa xmmword [0x649a40], xmm0
movdqa xmmword [0x649a50], xmm0
mov dword [0x649a60], 0
mov dword [0x649a64], 0xa
cmp byte [ebx + 8], 6
je 0x40ad7f
xor eax, eax
jmp 0x40b093
mov ecx, ebx
call fcn.00438370
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
push str.CDebugLog_ParseFilterLevelArray
lea ecx, [ebp - 0x8c]
mov dword [ebp - 4], 0
call fcn.004022c0
xor esi, esi
mov byte [ebp - 4], 1
cmp dword [ebp - 0xf4], esi
jle 0x40b009
push esi
mov ecx, ebx
call fcn.00438730
cmp byte [eax + 8], 7
jne 0x40affc
push esi
mov ecx, ebx
call fcn.00438730
push 0x60428e
push str.enable
mov ecx, eax
call fcn.00438bc0
test eax, eax
je 0x40affc
push esi
mov ecx, ebx
call fcn.00438730
push 0x60428e
push str.enable
mov ecx, eax
call fcn.00438980
cmp byte [eax + 8], 5
jne 0x40affc
push esi
mov ecx, ebx
call fcn.00438730
push 0x60429c
push str.name
mov ecx, eax
call fcn.00438980
lea ecx, [ebp - 0x10c]
push ecx
mov ecx, eax
call fcn.00437a40
mov edi, eax
lea eax, [ebp - 0x2c]
cmp eax, edi
je 0x40ae79
cmp dword [ebp - 0x18], 0x10
jb 0x40ae5e
push dword [ebp - 0x2c]
call fcn.0043f3a3
add esp, 4
push edi
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.0041cab0
cmp dword [ebp - 0xf8], 0x10
jb 0x40ae90
push dword [ebp - 0x10c]
call fcn.0043f3a3
add esp, 4
push esi
mov ecx, ebx
call fcn.00438730
push 0x60428e
push str.enable
mov ecx, eax
call fcn.00438980
mov ecx, eax
call fcn.00438280
cmp dword [ebp - 0x18], 0x10
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0xed], al
cmovae ecx, dword [ebp - 0x2c]
push ecx
call fcn.00405e30
mov edi, eax
cmp edi, 0xffffffff
je 0x40affc
mov edx, dword [0x6499e8]
mov ecx, edi
shr ecx, 5
mov eax, 1
lea edx, [edx + ecx*4]
mov ecx, edi
and ecx, 0x1f
shl eax, cl
cmp byte [ebp - 0xed], 0
je 0x40aef9
or dword [edx], eax
jmp 0x40aefd
not eax
and dword [edx], eax
lea ecx, [ebp - 0xec]
call fcn.00402190
cmp byte [ebp - 0xed], 0
lea eax, [ebp - 0x16c]
mov byte [ebp - 4], 2
push edi
je 0x40af35
push str.debug_level:_d_1
push eax
push 0x6495d0
call fcn.00410a60
add esp, 0x10
mov byte [ebp - 4], 3
jmp 0x40af4c
push str.debug_level:_d_0
push eax
push 0x6495d0
call fcn.00410a60
add esp, 0x10
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0xec]
call fcn.00402530
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 2
call fcn.00402220
cmp dword [ebp - 0xd8], 8
lea eax, [ebp - 0xec]
cmovae eax, dword [ebp - 0xec]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push edi
call fcn.0040ac90
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
push ecx
cmovae eax, dword [ebp - 0x2c]
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.004104e0
mov byte [ebp - 4], 5
cmp dword [eax + 0x14], 8
jb 0x40afad
mov eax, dword [eax]
push eax
push 0x60476c
lea eax, [ebp - 0x16c]
push eax
push 0x6495d0
call fcn.00410a60
add esp, 0x10
push eax
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 6
call fcn.00402580
lea ecx, [ebp - 0x16c]
call fcn.00402220
lea ecx, [ebp - 0x1cc]
call fcn.00402220
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 1
call fcn.00402220
inc esi
cmp esi, dword [ebp - 0xf4]
jl 0x40adc7
xor eax, eax
cmp eax, 0x604774
je 0x40b048
push 1
push ecx
push 0x604774
lea ecx, [ebp - 0x8c]
call fcn.004138b0
cmp eax, 0xffffffff
je 0x40b048
mov ecx, dword [ebp - 0x7c]
sub ecx, eax
cmp ecx, 1
jne 0x40b048
push 0
push 0x6079a0
push ecx
push eax
lea ecx, [ebp - 0x8c]
call fcn.00413610
push 1
push 0x607840
lea ecx, [ebp - 0x8c]
call fcn.00411aa0
cmp dword [ebp - 0x78], 8
lea eax, [ebp - 0x8c]
cmovae eax, dword [ebp - 0x8c]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea ecx, [ebp - 0x8c]
call fcn.00402220
cmp dword [ebp - 0x18], 0x10
jb 0x40b08e
push dword [ebp - 0x2c]
call fcn.0043f3a3
add esp, 4
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00567455
mov esp, ebp
pop ebp
ret 4