Function at 0x477810
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
push 0x46a6b8
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp esp, 0x6e52
jg 0x477835
xchg edi, esi
xchg edi, esi
lea ebx, [ebx]
jle 0x477835
mov ecx, 0x458d126a
call 0xe89778a8
invalid
push 0x12
lea eax, [ebp - 0x18]
push 0
push eax
call fcn.00474b40
mov cl, 0x68
mov dl, 0x74
mov byte [ebp - 0x12], cl
mov byte [ebp - 0x11], cl
mov al, 0x66
mov cl, 0x73
add esp, 0xc
mov byte [ebp - 0x18], 0x4a
mov byte [ebp - 0x17], dl
mov byte [ebp - 0x16], 0x45
mov byte [ebp - 0x15], al
mov byte [ebp - 0x14], 0x63
mov byte [ebp - 0x13], 0x76
mov byte [ebp - 0x10], al
mov byte [ebp - 0xf], cl
mov byte [ebp - 0xe], 0x51
mov byte [ebp - 0xd], cl
mov byte [ebp - 0xc], al
mov byte [ebp - 0xb], dl
mov byte [ebp - 0xa], al
mov byte [ebp - 9], 0x6f
mov byte [ebp - 8], 0x75
mov byte [ebp - 7], 0
lea esp, [esp]
stc
and edi, 0xffffffff
inc eax
dec eax
jno 0x47789c
jns 0x477898
jo 0x47789c
mov ebp, 0xe84d8a57
mov cl, byte [ebp - 0x18]
mov al, byte [ebp - 0x13]
mov bl, byte [ebp - 0xe]
mov dl, byte [ebp - 9]
dec cl
dec al
mov byte [ebp - 0x18], cl
mov cl, byte [ebp - 0x17]
dec bl
mov byte [ebp - 0x13], al
mov al, byte [ebp - 0x12]
mov byte [ebp - 0xe], bl
mov bl, byte [ebp - 0xd]
dec dl
dec cl
mov byte [ebp - 9], dl
mov dl, byte [ebp - 8]
dec al
mov byte [ebp - 0x17], cl
mov cl, byte [ebp - 0x16]
dec bl
mov byte [ebp - 0x12], al
mov al, byte [ebp - 0x11]
mov byte [ebp - 0xd], bl
mov bl, byte [ebp - 0xc]
dec dl
dec cl
mov byte [ebp - 8], dl
mov dl, byte [ebp - 0x15]
dec al
mov byte [ebp - 0x16], cl
mov cl, byte [ebp - 0x10]
dec bl
mov byte [ebp - 0x11], al
mov al, byte [ebp - 0xb]
mov byte [ebp - 0xc], bl
mov bl, byte [ebp - 0x14]
dec dl
dec cl
dec al
dec bl
mov byte [ebp - 0x15], dl
mov dl, byte [ebp - 0xf]
mov byte [ebp - 0x10], cl
mov byte [ebp - 0xb], al
mov byte [ebp - 0x14], bl
mov cl, byte [ebp - 0xa]
dec dl
dec cl
mov byte [ebp - 0xf], dl
mov byte [ebp - 0xa], cl
or edx, edx
xor edi, 0x30b1
xor edi, 0x30b1
call 0x477937
lea esp, [esp + 4]
cmp ecx, dword [esp + 4]
jno 0x47794b
xchg ebx, edi
xchg ebx, edi
xchg esp, esp
jo 0x47794b
mov ebp, 0x358bce
xchg edx, eax
inc esi
add byte [ebx], dh
or al, 0x24
mov esi, dword [0x469200]
xor ecx, dword [esp]
xor ecx, dword [esp]
jl 0x477959
ror edx, 0
ja 0x477964
jns 0x477960
jbe 0x477964
mov esp, 0x74f6859b
xor dword [edx], esi
test esi, esi
je 0x477999
jb 0x47796a
sub ebx, 0
add esp, 0
jge 0x47797a
jo 0x477974
mov eax, eax
jl 0x47797a
sub eax, 0xe84d8d00
lea ecx, [ebp - 0x18]
push ecx
push esi
call fcn.00481320
nop
lea esp, [esp]
xchg edi, ebx
xchg edi, ebx
jno 0x477996
jge 0x477990
jp 0x477992
add byte [eax + 2], dh
jo 0x477996
mov ecx, 0xfc458945
mov dword [ebp - 4], eax
call 0x47799e
add esp, 4
js 0x4779b5
pushf
jge 0x4779a7
clc
xchg ebx, ebx
popf
xchg esp, esp
lea ebx, [ebx]
xchg edx, edx
jns 0x4779b5
add eax, 0x558d126a
call 0xe8997a28
jle 0x477991
push 0x12
lea edx, [ebp - 0x18]
push 0
push edx
call fcn.00474b40
add esp, 0xc
rol ebx, 0xe
rol ebx, 0x12
jle 0x4779d9
invalid
xchg edx, eax
xchg edx, eax
xchg edx, edx
lea ebx, [ebx]
jo 0x4779d5
jg 0x4779d9
ljmp 0xc085:0xfc458b28
mov eax, dword [ebp - 4]
test eax, eax
je 0x477a39
xchg edi, eax
xchg edi, eax
js 0x4779f9
pushf
std
cld
and edi, 0xffffffff
lea ebx, [ebx]
stc
popf
jne 0x4779f2
lea esi, [esi]
jle 0x4779f6
jns 0x4779f9
mov edx, 0x85fc55ff
sal byte [ecx + edi - 0x73], 0xb6
shl byte [ecx], cl
add byte [eax], al
call dword [ebp - 4]
test eax, eax
je 0x477a39
lea esi, [esi + 0x21d2]
lea esi, [esi - 0x21d2]
rol edi, 0
or esi, 0
cmp ebx, edx
jne 0x477a22
js 0x477a18
jge 0x477a1a
xchg esp, esp
jbe 0x477a1e
je 0x477a22
mov edx, 0xa6a86897
inc esi
add bh, bh
adc eax, sym.imp.KERNEL32.dll_OutputDebugStringA
push 0x46a6a8
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xchg ebx, ebx
and esi, esi
jbe 0x477a3f
jle 0x477a4e
xchg ecx, eax
xchg ecx, eax
jp 0x477a45
xchg ebx, esi
xchg ebx, esi
jmp 0x477a4b
jg 0x477a4e
sub eax, 0x46a69868
add bh, bh
adc eax, sym.imp.KERNEL32.dll_OutputDebugStringA
push 0x46a698
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
pop edi
pop esi
mov eax, 0x24
pop ebx
mov esp, ebp
pop ebp
ret