Function at 0x42b600
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45b420
mov eax, dword fs:[0]
push eax
sub esp, 0xa8
mov eax, dword [0x478584]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp dword [ebp + 0x10], 0x28
mov eax, dword [ebp + 0x18]
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x1c]
mov dword [ebp - 0x78], eax
jne 0x42b95a
push str.scriptError
lea ecx, [ebp - 0x80]
call fcn.00404fd0
xor edi, edi
mov dword [ebp - 4], edi
push str.SCRIPT_ERROR_n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
or edx, 0xffffffff
mov ecx, 0xb
mov word [esi], cx
mov word [esi + 8], dx
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0x7c], edi
cmp ebx, edi
je 0x42b708
push 0x4641bc
push ebx
call fcn.00405f80
add esp, 8
test eax, eax
je 0x42b708
mov eax, dword [ebp - 0x78]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
lea edx, [ebp - 0x90]
push edx
push 0x46416c
push eax
mov eax, dword [ecx]
call eax
mov eax, dword [ebp - 0x90]
cmp eax, edi
je 0x42b703
mov ecx, dword [eax]
lea edx, [ebp - 0x8c]
push edx
push eax
mov eax, dword [ecx + 0x1b0]
call eax
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x8c]
cmp eax, edi
je 0x42b703
mov ecx, dword [eax]
lea edx, [ebp - 0x7c]
push edx
push eax
mov eax, dword [ecx + 0xd4]
call eax
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp dword [ebp - 0x7c], edi
jne 0x42b735
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x80]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x42b72e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
xor eax, eax
jmp 0x42b95f
mov esi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push str.errorLine
call esi
push str.errorCharacter
mov dword [ebp - 0xa4], eax
call esi
push str.errorCode
mov dword [ebp - 0xa0], eax
call esi
push str.errorMessage
mov dword [ebp - 0x9c], eax
call esi
push 0x461e48
mov dword [ebp - 0x98], eax
call esi
mov dword [ebp - 0x94], eax
xor eax, eax
mov dword [ebp - 0xac], edi
mov dword [ebp - 0xa8], edi
lea esi, [ebp - 0x74]
mov dword [ebp - 0x78], eax
jmp 0x42b795
mov eax, dword [ebp - 0x78]
lea ebx, [ebp + eax - 0x24]
push ebx
push 0x800
push 1
lea edi, [ebp + eax - 0xa4]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x14]
push edi
push 0x4640bc
push eax
call edx
push esi
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
push 0
push 0
push esi
lea edx, [ebp - 0xb4]
push edx
mov edx, dword [ebx]
push 2
push 0x800
push 0x4640bc
push edx
push eax
mov eax, dword [ecx + 0x18]
call eax
push 8
push 0
push esi
push esi
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
cmp word [esi], 8
jne 0x42b8a2
mov ecx, dword [edi]
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push ecx
call ebx
push 0x460a0c
call ebx
mov edx, dword [esi + 8]
push edx
call ebx
push 0x45e860
call ebx
push 0x45eb84
lea ecx, [ebp - 0x88]
call fcn.00404fd0
mov byte [ebp - 4], 2
mov ecx, dword [esi + 8]
push ecx
push eax
lea edx, [ebp - 0x84]
push edx
call fcn.004022d0
add esp, 0xc
mov byte [ebp - 4], 3
mov eax, dword [eax]
mov ecx, dword [eax - 0xc]
push ecx
push eax
lea ecx, [ebp - 0x80]
call fcn.004018e0
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x42b87c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x88]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x42b8a2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push esi
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov ecx, dword [edi]
push ecx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x78]
add eax, 4
add esi, 0x10
mov dword [ebp - 0x78], eax
cmp eax, 0x14
jl 0x42b792
lea edx, [ebp - 0x84]
push edx
call fcn.00408640
mov ecx, eax
call fcn.0040cd20
mov bl, 6
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x80]
push ecx
push eax
lea edx, [ebp - 0x88]
push edx
call fcn.00402210
mov byte [ebp - 4], 7
mov eax, dword [eax]
push eax
call fcn.004236a0
add esp, 0x10
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x88]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x42b924
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x42b94a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x42b708
mov eax, 0x80040100
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043dfbe
mov esp, ebp
pop ebp
ret 0x18