Function at 0x420570
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x208
mov eax, dword [0x4b1240]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
xor ebx, ebx
push esi
push edi
cmp byte [0x4b5526], bl
je 0x42103d
mov edi, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea esi, [ebx + 0xf]
cmp byte [0x4b5519], bl
je 0x420685
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 7
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_in
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420607
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 7
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_in
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x420685
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b5519], bl
push 7
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_in
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
cmp byte [0x4b5518], bl
jne 0x420668
push 1
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push str.bong_idle
mov byte [0x4b5518], 1
call fcn.004154c0
mov ecx, dword [0x4b290c]
call fcn.004018e0
lea eax, [ebp - 0x204]
push str.bong_in_end_n
push eax
call fcn.00409550
add esp, 8
lea ecx, [ebp - 0x204]
push ecx
call edi
cmp byte [0x4b5518], bl
je 0x420784
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_idle
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x4206f3
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_idle
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x420784
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b5518], bl
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_idle
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
cmp byte [0x4b5515], bl
jne 0x420767
push 1
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push str.bong_attack
mov byte [0x4b5515], 1
call fcn.004154c0
mov ecx, dword [0x4b290c]
call fcn.004018e0
push ebx
push 1
push 0xd
call fcn.00409510
add esp, 0xc
mov byte [0x4b5557], bl
lea edx, [ebp - 0x204]
push str.bong_idle_end_n
push edx
call fcn.00409550
add esp, 8
lea eax, [ebp - 0x204]
push eax
call edi
cmp byte [0x4b5515], bl
je 0x4208b1
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xb
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_attack
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401b90
cmp eax, 0x5a
jle 0x4207c4
call fcn.00420420
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xb
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_attack
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420826
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xb
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_attack
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x4208b1
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b5515], bl
push 0xb
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_attack
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
cmp byte [0x4b551b], bl
jne 0x420894
push 1
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push str.bong_out
mov byte [0x4b551b], 1
call fcn.004154c0
mov ecx, dword [0x4b290c]
call fcn.004018e0
push ebx
push 1
push 0x12
call fcn.00409510
add esp, 0xc
lea ecx, [ebp - 0x204]
push str.bong_attack_end_n
push ecx
call fcn.00409550
add esp, 8
lea edx, [ebp - 0x204]
push edx
call edi
cmp byte [0x4b5520], bl
je 0x42099c
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xa
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_eff_1
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401b90
cmp eax, 5
jle 0x4208f1
call fcn.00409f80
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xa
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_eff_1
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x42094f
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xa
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_eff_1
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x42099c
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b5520], bl
push 0xa
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_eff_1
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
lea eax, [ebp - 0x204]
push str.bong_eff_1_end_n
push eax
call fcn.00409550
add esp, 8
lea ecx, [ebp - 0x204]
push ecx
call edi
cmp byte [0x4b5521], bl
je 0x420a87
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xa
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_eff_2
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401b90
cmp eax, 5
jle 0x4209dc
call fcn.00409f80
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xa
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_eff_2
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420a3a
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xa
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_eff_2
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x420a87
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b5521], bl
push 0xa
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_eff_2
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
lea edx, [ebp - 0x204]
push str.bong_eff_2_end_n
push edx
call fcn.00409550
add esp, 8
lea eax, [ebp - 0x204]
push eax
call edi
cmp byte [0x4b551a], bl
je 0x420ba3
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xe
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_in_attact
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401b90
cmp eax, 0x75
jle 0x420ac7
call fcn.00420420
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xe
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_in_attact
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420b25
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 0xe
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_in_attact
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x420ba3
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b551a], bl
push 0xe
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_in_attact
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
cmp byte [0x4b5518], bl
jne 0x420b86
push 1
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push str.bong_idle
mov byte [0x4b5518], 1
call fcn.004154c0
mov ecx, dword [0x4b290c]
call fcn.004018e0
lea ecx, [ebp - 0x204]
push str.bong_in_attact_end_n
push ecx
call fcn.00409550
add esp, 8
lea edx, [ebp - 0x204]
push edx
call edi
cmp byte [0x4b5516], bl
je 0x420c91
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push esi
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_attack_all
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401b90
cmp eax, 0x113
jle 0x420be4
call fcn.00420420
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push esi
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_attack_all
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420c40
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push esi
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_attack_all
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x420c91
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b5516], bl
push esi
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_attack_all
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
call fcn.004202f0
lea eax, [ebp - 0x204]
push str.bong_attack_all_end_n
push eax
call fcn.00409550
add esp, 8
lea ecx, [ebp - 0x204]
push ecx
call edi
cmp byte [0x4b551b], bl
je 0x420d4d
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 8
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_out
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420cfb
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 8
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_out
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x420d4d
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b551b], bl
push 8
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_out
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
call fcn.004202f0
lea edx, [ebp - 0x204]
push str.bong_out_end_n
push edx
call fcn.00409550
add esp, 8
lea eax, [ebp - 0x204]
push eax
call edi
cmp byte [0x4b551c], bl
je 0x420e09
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run1
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420db7
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run1
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x420e09
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b551c], bl
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run1
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
call fcn.0041ff40
lea ecx, [ebp - 0x204]
push str.bong_run1_end_n
push ecx
call fcn.00409550
add esp, 8
lea edx, [ebp - 0x204]
push edx
call edi
cmp byte [0x4b551d], bl
je 0x420ec5
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run2
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420e73
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run2
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x420ec5
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b551d], bl
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run2
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
call fcn.0041ff40
lea eax, [ebp - 0x204]
push str.bong_run2_end_n
push eax
call fcn.00409550
add esp, 8
lea ecx, [ebp - 0x204]
push ecx
call edi
cmp byte [0x4b551e], bl
je 0x420f81
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run3
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420f2f
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run3
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x420f81
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b551e], bl
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run3
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
call fcn.0041ff40
lea edx, [ebp - 0x204]
push str.bong_run3_end_n
push edx
call fcn.00409550
add esp, 8
lea eax, [ebp - 0x204]
push eax
call edi
cmp byte [0x4b551f], bl
je 0x42103d
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run4
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x420feb
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run4
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x42103d
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b551f], bl
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bong_run4
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
call fcn.0041ff40
lea ecx, [ebp - 0x204]
push str.bong_run4_end_n
push ecx
call fcn.00409550
add esp, 8
lea edx, [ebp - 0x204]
push edx
call edi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00463931
mov esp, ebp
pop ebp
ret