Function at 0x46551d
Capabilities:
Print debug messages

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x5440
call fcn.004a98b0
mov eax, dword [0x4dd52c]
push ebx
xor ebx, ebx
mov dword [ebp - 4], eax
push esi
push edi
xor eax, eax
mov esi, dword [ebp + 8]
mov edx, 0x81
mov word [ebp - 0x414], bx
mov ecx, edx
lea edi, [ebp - 0x412]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
mov word [ebp - 0x20c], bx
mov ecx, edx
lea edi, [ebp - 0x20a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov word [ebp - 0x1414], bx
mov ecx, 0x3ff
xor eax, eax
lea edi, [ebp - 0x1412]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x5430], ebx
mov dword [ebp - 0x5428], ebx
mov dword [ebp - 0x5434], ebx
mov dword [ebp - 0x542c], ebx
mov dword [ebp - 0x5438], ebx
stosw word es:[edi], ax
mov ebx, 0x800
push dword [ebp - 0x5438]
lea eax, [ebp - 0x20c]
push 0x40db40
push 0x40db34
push eax
call dword [sym.imp.msvcrt.dll_swprintf]
add esp, 0x10
test esi, esi
je 0x4656f3
cmp dword [esi + 0x1dfa8], 1
jne 0x4656f3
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x4656f3
cmp eax, 2
jb 0x4656f3
and word [ebp - 0x3414], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x3412]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x20c]
push eax
push 0x40db1c
lea eax, [ebp - 0x3414]
push ebx
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
jne 0x4656f3
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x4656f3
cmp eax, 2
jb 0x4656f3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x5424]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1414]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x3414]
push eax
movzx eax, word [ebp - 0x5416]
push 0x40db04
push eax
movzx eax, word [ebp - 0x5418]
push eax
movzx eax, word [ebp - 0x541a]
push eax
movzx eax, word [ebp - 0x541c]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1414]
push ebx
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [esi + 0x1dfa0], 1
lea eax, [ebp - 0x1414]
push eax
jne 0x4656d5
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x4656f3
lea edi, [esi + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
lea eax, [ebp - 0x5430]
push eax
push 0x208
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x5428]
push eax
push 0x40dae4
lea eax, [ebp - 0x20c]
push eax
push dword [esi + 0x5010]
mov dword [ebp - 0x5428], 1
call sub.WINSPOOL.DRV_GetPrinterDataExW
push 4
pop edi
mov dword [ebp - 0x543c], eax
lea eax, [ebp - 0x5430]
push eax
push edi
lea eax, [ebp - 0x5434]
push eax
lea eax, [ebp - 0x5428]
push eax
push 0x40dac4
lea eax, [ebp - 0x20c]
push eax
push dword [esi + 0x5010]
mov dword [ebp - 0x5428], edi
call sub.WINSPOOL.DRV_GetPrinterDataExW
mov dword [ebp - 0x5440], eax
lea eax, [ebp - 0x5430]
push eax
push edi
lea eax, [ebp - 0x542c]
push eax
lea eax, [ebp - 0x5428]
push eax
push 0x40daac
lea eax, [ebp - 0x20c]
push eax
push dword [esi + 0x5010]
mov dword [ebp - 0x5428], edi
call sub.WINSPOOL.DRV_GetPrinterDataExW
cmp dword [ebp - 0x543c], 0
jne 0x465e97
cmp dword [ebp - 0x5440], 0
jne 0x465e97
test eax, eax
jne 0x465e97
mov edi, dword [sym.imp.USER32.dll_CharLowerW]
lea eax, [esi + 0x1d694]
push eax
call edi
lea eax, [ebp - 0x414]
push eax
call edi
cmp dword [esi + 0x1dfa8], 1
jne 0x465b4a
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465902
cmp eax, 2
jb 0x465902
and word [ebp - 0x4414], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x4412]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x414]
push eax
push 0x40da84
lea eax, [ebp - 0x4414]
push ebx
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
jne 0x465b4a
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465902
cmp eax, 2
jb 0x465902
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x5424]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1414]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x4414]
push eax
movzx eax, word [ebp - 0x5416]
push 0x40db04
push eax
movzx eax, word [ebp - 0x5418]
push eax
movzx eax, word [ebp - 0x541a]
push eax
movzx eax, word [ebp - 0x541c]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1414]
push ebx
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [esi + 0x1dfa0], 1
lea eax, [ebp - 0x1414]
push eax
jne 0x4658e4
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x465902
lea edi, [esi + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
jne 0x465b4a
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465a26
cmp eax, 2
jb 0x465a26
and word [ebp - 0x5414], 0
push dword [ebp - 0x5434]
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x5412]
rep stosd dword es:[edi], eax
push 0x40da5c
stosw word es:[edi], ax
lea eax, [ebp - 0x5414]
push ebx
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
jne 0x465b4a
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465a26
cmp eax, 2
jb 0x465a26
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x5424]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1414]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x5414]
push eax
movzx eax, word [ebp - 0x5416]
push 0x40db04
push eax
movzx eax, word [ebp - 0x5418]
push eax
movzx eax, word [ebp - 0x541a]
push eax
movzx eax, word [ebp - 0x541c]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1414]
push ebx
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [esi + 0x1dfa0], 1
lea eax, [ebp - 0x1414]
push eax
jne 0x465a08
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x465a26
lea edi, [esi + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
jne 0x465b4a
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465b4a
cmp eax, 2
jb 0x465b4a
and word [ebp - 0x2414], 0
push dword [ebp - 0x542c]
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x2412]
rep stosd dword es:[edi], eax
push 0x40da3c
stosw word es:[edi], ax
lea eax, [ebp - 0x2414]
push ebx
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
jne 0x465b4a
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465b4a
cmp eax, 2
jb 0x465b4a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x5424]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1414]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x2414]
push eax
movzx eax, word [ebp - 0x5416]
push 0x40db04
push eax
movzx eax, word [ebp - 0x5418]
push eax
movzx eax, word [ebp - 0x541a]
push eax
movzx eax, word [ebp - 0x541c]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1414]
push ebx
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [esi + 0x1dfa0], 1
lea eax, [ebp - 0x1414]
push eax
jne 0x465b2c
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x465b4a
lea edi, [esi + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
lea eax, [ebp - 0x414]
push eax
lea eax, [esi + 0x1d694]
push eax
call dword [sym.imp.msvcrt.dll_wcscmp]
test eax, eax
pop ecx
pop ecx
jne 0x465b73
movzx eax, byte [esi + 0x1f45]
cmp eax, dword [ebp - 0x5434]
je 0x465b7e
inc dword [ebp - 0x5438]
jmp 0x4655a6
cmp dword [esi + 0x1dfa8], 1
jne 0x465d6b
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465c48
cmp eax, 2
jb 0x465c48
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x5424]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
push 0x40d9e0
mov ecx, 0x400
lea edi, [ebp - 0x1414]
rep stosd dword es:[edi], eax
movzx eax, word [ebp - 0x5416]
push 0x40db04
push eax
movzx eax, word [ebp - 0x5418]
push eax
movzx eax, word [ebp - 0x541a]
push eax
movzx eax, word [ebp - 0x541c]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1414]
push ebx
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [esi + 0x1dfa0], 1
lea eax, [ebp - 0x1414]
push eax
jne 0x465c2a
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x465c48
lea edi, [esi + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
jne 0x465d6b
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465d6b
cmp eax, 2
jb 0x465d6b
and word [ebp - 0x2414], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x2412]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
movsx eax, word [esi + 0x5c]
push eax
push 0x40d970
lea eax, [ebp - 0x2414]
push ebx
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
jne 0x465d6b
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465d6b
cmp eax, 2
jb 0x465d6b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x5424]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1414]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x2414]
push eax
movzx eax, word [ebp - 0x5416]
push 0x40db04
push eax
movzx eax, word [ebp - 0x5418]
push eax
movzx eax, word [ebp - 0x541a]
push eax
movzx eax, word [ebp - 0x541c]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1414]
push ebx
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [esi + 0x1dfa0], 1
lea eax, [ebp - 0x1414]
push eax
jne 0x465d4d
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x465d6b
lea edi, [esi + 0x1dfa4]
push 0x4060a8
push dword [edi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [edi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
mov edx, dword [ebp - 0x542c]
mov word [esi + 0x5c], dx
jne 0x465e97
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465e97
cmp eax, 2
jb 0x465e97
and word [ebp - 0x2414], 0
xor eax, eax
mov ecx, 0x3ff
lea edi, [ebp - 0x2412]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
movsx eax, dx
push eax
push 0x40d900
lea eax, [ebp - 0x2414]
push ebx
push eax
call fcn.00431bde
add esp, 0x10
cmp dword [esi + 0x1dfa8], 1
jne 0x465e97
mov eax, dword [esi + 0x1dfac]
test eax, eax
je 0x465e97
cmp eax, 2
jb 0x465e97
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea eax, [ebp - 0x5424]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ecx, 0x400
lea edi, [ebp - 0x1414]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x2414]
push eax
movzx eax, word [ebp - 0x5416]
push 0x40db04
push eax
movzx eax, word [ebp - 0x5418]
push eax
movzx eax, word [ebp - 0x541a]
push eax
movzx eax, word [ebp - 0x541c]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x4065a0
lea eax, [ebp - 0x1414]
push ebx
push eax
call fcn.00431bde
add esp, 0x2c
cmp word [esi + 0x1dfa0], 1
lea eax, [ebp - 0x1414]
push eax
jne 0x465e79
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x465e97
add esi, 0x1dfa4
push 0x4060a8
push dword [esi]
call dword [sym.imp.msvcrt.dll_fwprintf]
push dword [esi]
call dword [sym.imp.msvcrt.dll_fflush]
add esp, 0x10
mov ecx, dword [ebp - 4]
pop edi
pop esi
pop ebx
call fcn.004a9585
leave
ret 4