Function at 0x403830
Capabilities:
Print debug messages

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x90
push ebx
push ebp
mov ebp, ecx
push esi
lea ecx, [eax + eax*4]
lea edx, [eax + ecx*2]
mov ecx, dword [0x40e438]
shl edx, 4
mov esi, dword [ecx + 0x68]
cmp byte [esi + edx + 0xac], 1
jne 0x403c90
mov edx, dword [ecx + 0x160]
mov esi, 1
cmp edx, esi
je 0x403885
push str.MMF_Not_Open__
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
pop esi
pop ebp
pop ebx
add esp, 0x90
ret 4
mov ecx, dword [ebp + 0x1448]
cmp ecx, 0x65
je 0x403c85
cmp ecx, 0x66
je 0x403c85
cmp ecx, 0x67
je 0x403c85
cmp ecx, 0x68
je 0x403c85
cmp ecx, 0x6c
je 0x403c85
push edi
push eax
mov eax, dword [ebp + 0x4208]
push 0x3b
push eax
mov ecx, ebp
call fcn.00404e20
mov ebx, dword [sym.imp.USER32.dll_wsprintfA]
push 0
lea ecx, [esp + 0x18]
push str._04d
push ecx
call ebx
mov edx, dword [ebp + 0x4208]
mov eax, dword [esp + 0x20]
add esp, 0xc
mov ecx, 2
mov dword [edx + 0x14], eax
mov eax, dword [0x40e438]
cmp dword [eax + 0x160], esi
jne 0x403bc7
mov edx, dword [eax + 0x7c]
mov esi, 0x18
cmp edx, ecx
mov edi, 0xa
mov dword [esp + 0x10], esi
jne 0x4039f5
mov ecx, dword [eax + 0x14c]
mov edx, dword [ebp + 0x4208]
mov al, byte [ecx + 0xe8]
mov byte [edx + 0x1e], al
mov ecx, dword [0x40e438]
mov eax, dword [ebp + 0x4208]
mov edx, dword [ecx + 0x14c]
mov cl, byte [edx + 0xf0]
mov byte [eax + 0x1f], cl
mov edx, dword [0x40e438]
mov ecx, dword [ebp + 0x4208]
mov eax, dword [edx + 0x14c]
mov dl, byte [eax + 0x2b5]
mov byte [ecx + 0x20], dl
mov eax, dword [ebp + 0x4208]
mov byte [eax + 0x21], 0
mov ecx, dword [ebp + 0x4208]
mov byte [ecx + 0x22], 0
mov edx, dword [ebp + 0x4208]
mov byte [edx + 0x23], 0
mov eax, dword [0x40e438]
mov edx, dword [ebp + 0x4208]
mov ecx, dword [eax + 0x14c]
mov al, byte [ecx + 0xe9]
mov byte [edx + 0x24], al
mov ecx, dword [0x40e438]
mov eax, dword [ebp + 0x4208]
mov edx, dword [ecx + 0x14c]
mov cl, byte [edx + 0xea]
mov byte [eax + 0x25], cl
mov edx, dword [0x40e438]
mov ecx, dword [ebp + 0x4208]
mov eax, dword [edx + 0x14c]
mov dl, byte [eax + 0xeb]
mov byte [ecx + 0x26], dl
mov eax, dword [0x40e438]
mov edx, dword [ebp + 0x4208]
mov ecx, dword [eax + 0x14c]
mov al, byte [ecx + 0xec]
mov byte [edx + 0x27], al
jmp 0x403bd2
mov edx, dword [eax + 0x14c]
mov eax, dword [ebp + 0x4208]
mov dl, byte [edx + 0xe8]
mov byte [eax + 0x1e], dl
mov eax, dword [0x40e438]
mov edx, dword [eax + 0x14c]
mov eax, dword [ebp + 0x4208]
mov dl, byte [edx + 0xf0]
mov byte [eax + 0x1f], dl
mov eax, dword [0x40e438]
mov edx, dword [eax + 0x14c]
mov eax, dword [ebp + 0x4208]
mov dl, byte [edx + 0x2b5]
mov byte [eax + 0x20], dl
mov eax, dword [0x40e438]
mov edx, dword [eax + 0x14c]
mov eax, dword [ebp + 0x4208]
mov dl, byte [edx + 0x8a2]
mov byte [eax + 0x21], dl
mov eax, dword [0x40e438]
mov edx, dword [eax + 0x14c]
mov al, byte [edx + 0x8a3]
cmp al, 1
jne 0x403a7c
mov eax, dword [ebp + 0x4208]
mov byte [eax + 0x22], 1
jmp 0x403b04
cmp al, cl
jne 0x403a8c
mov ecx, dword [ebp + 0x4208]
mov byte [ecx + 0x22], 4
jmp 0x403b04
cmp al, 4
jne 0x403a9c
mov edx, dword [ebp + 0x4208]
mov byte [edx + 0x22], 8
jmp 0x403b04
cmp al, 8
jne 0x403aab
mov eax, dword [ebp + 0x4208]
mov byte [eax + 0x22], cl
jmp 0x403b04
cmp al, 5
jne 0x403abb
mov ecx, dword [ebp + 0x4208]
mov byte [ecx + 0x22], 9
jmp 0x403b04
cmp al, 0xc
jne 0x403acb
mov edx, dword [ebp + 0x4208]
mov byte [edx + 0x22], 0xa
jmp 0x403b04
cmp al, 0xff
jne 0x403adb
mov eax, dword [ebp + 0x4208]
mov byte [eax + 0x22], 0xff
jmp 0x403b04
cmp al, 7
jne 0x403aeb
mov ecx, dword [ebp + 0x4208]
mov byte [ecx + 0x22], 1
jmp 0x403b04
cmp al, 3
jne 0x403afb
mov edx, dword [ebp + 0x4208]
mov byte [edx + 0x22], 1
jmp 0x403b04
mov ecx, dword [ebp + 0x4208]
mov byte [ecx + 0x22], al
mov edx, dword [ebp + 0x4208]
mov ecx, dword [0x40e438]
movsx eax, byte [edx + 0x22]
mov edx, dword [ecx + 0x14c]
push eax
xor eax, eax
lea ecx, [esp + 0x24]
mov al, byte [edx + 0x8a3]
push eax
push str._cSignalStatus____x______x_
push ecx
call ebx
add esp, 0x10
lea edx, [esp + 0x20]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x40e438]
mov edx, dword [ebp + 0x4208]
mov ecx, dword [eax + 0x14c]
mov al, byte [ecx + 0x8a8]
mov byte [edx + 0x23], al
mov ecx, dword [0x40e438]
cmp dword [ecx + 0xb0], 1
jne 0x403b7b
mov edx, dword [ebp + 0x4208]
mov byte [edx + 0x22], 0xc
mov eax, dword [ebp + 0x4208]
mov byte [eax + 0x23], 0
mov ecx, dword [0x40e438]
mov eax, dword [ebp + 0x4208]
mov edx, dword [ecx + 0x14c]
mov cl, byte [edx + 0xe9]
mov byte [eax + 0x24], cl
mov edx, dword [0x40e438]
mov ecx, dword [ebp + 0x4208]
mov eax, dword [edx + 0x14c]
mov dl, byte [eax + 0xea]
mov byte [ecx + 0x25], dl
mov eax, dword [ebp + 0x4208]
mov byte [eax + 0x26], 0
mov ecx, dword [ebp + 0x4208]
mov byte [ecx + 0x27], 0
jmp 0x403bd2
mov esi, 0xe
xor edi, edi
mov dword [esp + 0x10], esi
lea edx, [esp + 0x1c]
push edx
call dword [sym.imp.MSVCRT.dll_time]
mov ecx, dword [ebp + 0x4208]
mov eax, dword [esp + 0x20]
push eax
push 0xe
lea edx, [ecx + edi + 0x1e]
push edx
call fcn.00405b70
push esi
lea eax, [esp + 0x28]
push str._07d
push eax
call ebx
mov ecx, dword [ebp + 0x4208]
mov edx, dword [esp + 0x30]
add ecx, 0xd
add esp, 0x1c
mov dword [ecx], edx
mov ax, word [esp + 0x18]
mov word [ecx + 4], ax
mov dl, byte [esp + 0x1a]
mov byte [ecx + 6], dl
mov eax, dword [ebp + 0x20]
add eax, esi
mov esi, dword [ebp + 0x4208]
mov ecx, eax
lea edx, [ebp + 0xc0]
mov ebx, ecx
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0xa4]
push ecx
push eax
push edx
mov edx, dword [0x40e438]
lea ecx, [edx + 0x60]
call fcn.004099a0
mov eax, dword [esp + 0x10]
mov ecx, ebp
push eax
push 0x3b
push 2
mov dword [ebp + 0x1448], 0
call fcn.00405670
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x90
ret 4
push str.Violation_Image_Data_Sending......
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
pop esi
pop ebp
pop ebx
add esp, 0x90
ret 4