Function at 0x9ad800
Capabilities:
Print debug messages

Disassembly:
lea esp, [esp + 4]
jae 0x9ad673
jbe 0x9ad686
pushf
jg 0x9ad679
xchg edi, edi
jle 0x9ad67d
xchg esp, esp
popf
jp 0x9ad683
ja 0x9ad686
ljmp 0x1d38:0x8108458b
mov eax, dword [ebp + 8]
cmp dword [eax], 0xc000001d
jne 0x9ad6fc
shl ecx, 0
jbe 0x9ad6a1
jno 0x9ad698
je 0x9ad69a
jg 0x9ad69c
jbe 0x9ad69e
ja 0x9ad6a1
call 0x83ab1c30
cmp byte [eax + 0x4000000], 0x8b
in al, 0xc1
retf
mov eax, dword [ebp + 0x10]
add dword [eax + 0xb8], 4
mov esp, esp
ror ebx, 0
or edi, edi
js 0x9ad6bb
jae 0x9ad6b6
jns 0x9ad6bb
jmp 0x61e8003
add dword [0x991098], 7
test dword [esp + 4], eax
inc edi
dec edi
cld
je 0x9ad6d1
mov edx, edx
jne 0x9ad6d1
call 0xe2b780a
cdq
add byte [ebx], dh
sar byte [ecx + 0x64], cl
mov eax, dword [0x990d90]
xor edx, edx
mov ecx, 0x64
div ecx
add dword [0x990e2c], edx
clc
jo 0x9ad6f5
lea esp, [esp]
jb 0x9ad6ed
xchg esi, edx
xchg esi, edx
jno 0x9ad6f5
add eax, 0xa02d8369
adc byte [ecx + 0x98d4300], bl
sub dword [0x9910a0], 0x43
lea ecx, [ecx]
ror esp, 0
add ebx, 0x6e65
sub ebx, 0x6e65
lea edi, [edi + 0x6714]
sub edi, 0x6714
jle 0x9ad731
pushf
cmp esp, 0x3a04
ror esp, 0
or eax, eax
popf
jae 0x9ad72c
xchg ecx, ecx
jg 0x9ad731
add eax, 0x8108558b
cmp al, byte [0xfc00000]
test dword [esi - 0x7b000000], ebx
sbb al, 0x24
mov edx, dword [ebp + 8]
cmp dword [edx], 0xc0000005
jne 0x9ad7de
test dword [esp], ebx
cmp esi, dword [esp]
jae 0x9ad761
pushf
lea eax, [eax + 0x6862]
lea eax, [eax - 0x6862]
popf
je 0x9ad75a
jno 0x9ad75c
xchg ebx, ebx
jb 0x9ad761
add eax, 0x8b10458b
mov al, 0xb8
add byte [eax], al
add byte [ebx - 0x4f76fb3a], al
mov eax, 0x8b000000
adc eax, 0x991098
mov eax, dword [ebp + 0x10]
mov esi, dword [eax + 0xb8]
add esi, 4
mov dword [eax + 0xb8], esi
mov edx, dword [0x991098]
dec edx
mov dword [0x991098], edx
ror edx, 0xa
ror edx, 0x16
jae 0x9ad79d
pushf
nop
shl ebx, 0
sub esp, 0
shl ebx, 0
popf
xchg edi, ecx
xchg edi, ecx
jb 0x9ad79d
mov ecx, 0x990e28a1
add byte [ebx], dh
sar byte [ecx + 0x3e8], cl
mov eax, dword [0x990e28]
xor edx, edx
mov ecx, 0x3e8
div ecx
sub dword [0x990e2c], edx
xchg esi, esi
add edi, 0
je 0x9ad7d7
jp 0x9ad7ba
lea edi, [edi + 0x16e]
lea edi, [edi - 0x16e]
lea ecx, [ecx + 0x6d54]
lea ecx, [ecx - 0x6d54]
jne 0x9ad7d7
mov ecx, 0x25c11c27
mov al, byte [0x4009910]
shl dword [0x9910a0], 4
inc eax
dec eax
xor esp, 0
or esp, 0
je 0x9ad7f0
jae 0x9ad7ea
je 0x9ad7ec
jne 0x9ad7f0
add eax, 0x335e5f33
rcr byte [ebx + 0x5d], 0xc3
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
push 0x99087c
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jge 0x9ad816
pop edi
pop esi
xor eax, eax
pop ebx
pop ebp
ret
jns 0x9ad818
jge 0x9ad825
xchg edi, edi
jg 0x9ad81e
nop
jle 0x9ad821
jl 0x9ad825
mov ebp, 0xc7d2331c
inc ebp
clc
adc eax, dword [eax]
add byte [eax], al
xor edx, edx
mov dword [ebp - 8], 0x13
mov dword [ebp - 4], edx
mov bl, 0x5d
jmp 0x9ad838
mov edx, dword [ebp - 4]
and edi, edi
jnp 0x9ad84c
pushf
nop
cmp eax, dword [esp + 0xc]
or ecx, ecx
popf
xchg ecx, ecx
jp 0x9ad84c
mov ebp, 0xf03fa83
xchg esp, eax
add dword [eax], eax
add bh, bh
jmp dword [edx*4 + 0x9adb30]
push 0xc
lea eax, [ebp - 0x14]
cmp edx, 3
ja case.default.0x9ad855
jmp dword [edx*4 + 0x9adb30]
push 0xc
lea eax, [ebp - 0x14]
push 0
push eax
call fcn.009a9480
add esp, 0xc
mov byte [ebp - 0x14], bl
mov byte [ebp - 0x13], bl
mov byte [ebp - 0x12], 0x2f
mov byte [ebp - 0x11], bl
mov byte [ebp - 0x10], 0x55
mov byte [ebp - 0xf], 0x53
mov byte [ebp - 0xe], 0x58
mov byte [ebp - 0xd], 0
mov esp, esp
jae 0x9ad8a3
pushf
jb 0x9ad891
shr edx, 0
jmp 0x9ad896
xchg edx, edx
popf
mov esp, esp
jbe 0x9ad89e
jns 0x9ad8a0
jb 0x9ad8a3
mov ecx, 0xc6a3deb
jmp 0x9ad8e2
push 0xc
lea ecx, [ebp - 0x14]
push 0
push ecx
call fcn.009a9480
add esp, 0xc
mov byte [ebp - 0x14], bl
mov byte [ebp - 0x13], bl
mov byte [ebp - 0x12], 0x2f
mov byte [ebp - 0x11], bl
mov byte [ebp - 0x10], 0x55
mov byte [ebp - 0xf], 0x58
mov byte [ebp - 0xe], 0x59
mov byte [ebp - 0xd], 0
test esi, edi
mov esi, esi
ja 0x9ad8d8
jge 0x9ad8e2
lea esp, [esp]
xchg edi, edi
jl 0x9ad8e2
mov eax, 0x8aec458a
push ebp
int1
mov al, byte [ebp - 0x14]
mov dl, byte [ebp - 0xf]
mov cl, byte [ebp - 0x13]
dec al
mov byte [ebp - 0x14], al
mov al, byte [ebp - 0xe]
dec dl
dec cl
mov byte [ebp - 0xf], dl
mov dl, byte [ebp - 0x12]
dec al
mov byte [ebp - 0x13], cl
mov cl, byte [ebp - 0x11]
mov byte [ebp - 0xe], al
mov al, byte [ebp - 0x10]
dec dl
dec cl
dec al
mov byte [ebp - 0x12], dl
mov byte [ebp - 0x11], cl
mov byte [ebp - 0x10], al
jmp case.default.0x9ad855
push 0xc
lea edx, [ebp - 0x14]
push 0
push edx
call fcn.009a9480
add esp, 0xc
mov byte [ebp - 0x14], bl
mov byte [ebp - 0x13], bl
mov byte [ebp - 0x12], 0x2f
mov byte [ebp - 0x11], bl
mov byte [ebp - 0x10], 0x55
mov byte [ebp - 0xf], 0x53
mov byte [ebp - 0xe], 0x58
mov byte [ebp - 0xd], 0x33
mov byte [ebp - 0xc], 0x31
mov byte [ebp - 0xb], 0x31
mov byte [ebp - 0xa], 0x31
mov byte [ebp - 9], 0
ror ecx, 0
jg 0x9ad961
xchg ecx, edx
xchg ecx, edx
jo 0x9ad978
jle 0x9ad969
lea eax, [eax + 0x7964]
lea eax, [eax - 0x7964]
jno 0x9ad978
mov edi, 0xc6a47eb
jmp 0x9ad9c1
push 0xc
lea eax, [ebp - 0x14]
push 0
push eax
call fcn.009a9480
add esp, 0xc
mov byte [ebp - 0x14], bl
mov byte [ebp - 0x13], bl
mov byte [ebp - 0x12], 0x2f
mov byte [ebp - 0x11], bl
mov byte [ebp - 0x10], 0x55
mov byte [ebp - 0xf], 0x58
mov byte [ebp - 0xe], 0x59
mov byte [ebp - 0xd], 0x33
mov byte [ebp - 0xc], 0x31
mov byte [ebp - 0xb], 0x31
mov byte [ebp - 0xa], 0x33
mov byte [ebp - 9], 0
js 0x9ad9b9
ja 0x9ad9c1
jns 0x9ad9bd
jbe 0x9ad9c1
mov esi, 0xec4d8a6f
mov cl, byte [ebp - 0x14]
mov al, byte [ebp - 0xf]
mov dl, byte [ebp - 0xa]
dec cl
dec al
mov byte [ebp - 0x14], cl
mov cl, byte [ebp - 0x13]
mov byte [ebp - 0xf], al
mov al, byte [ebp - 0xe]
dec dl
dec cl
mov byte [ebp - 0xa], dl
mov dl, byte [ebp - 0x12]
dec al
mov byte [ebp - 0x13], cl
mov cl, byte [ebp - 0xd]
mov byte [ebp - 0xe], al
mov al, byte [ebp - 0x11]
dec dl
dec cl
mov byte [ebp - 0x12], dl
mov dl, byte [ebp - 0xc]
dec al
mov byte [ebp - 0xd], cl
mov cl, byte [ebp - 0x10]
mov byte [ebp - 0x11], al
mov al, byte [ebp - 0xb]
dec dl
dec cl
dec al
mov byte [ebp - 0xc], dl
mov byte [ebp - 0x10], cl
mov byte [ebp - 0xb], al
lea edx, [edx + 0x3c21]
sub edx, 0x3c21
inc esi
dec esi
js 0x9ada29
add esi, 0
je 0x9ada43
pushf
call 0x9ada35
lea esp, [esp + 4]
ror eax, 0
popf
mov eax, eax
jne 0x9ada43
mov edx, 0x206a006a
push 0
push 0x20
push 3
push 0
push 1
lea ecx, [ebp - 0x14]
push 0x80000000
push ecx
call fcn.009aad60
mov edi, eax
jp 0x9ada5f
mov eax, eax
nop
jb 0x9ada7a
jle 0x9ada66
jg 0x9ada68
lea esi, [esi + 0x4b72]
lea esi, [esi - 0x4b72]
jp 0x9ada76
jae 0x9ada7a
add eax, 0x8d0c6a0b
push ebp
in al, dx
push 0xc
lea edx, [ebp - 0x14]
push 0
push edx
call fcn.009a9480
add esp, 0xc
jbe 0x9ada8c
js 0x9ada8e
xchg esi, eax
xchg esi, eax
jo 0x9ada99
je 0x9ada94
ja 0x9ada96
jno 0x9ada99
mov edx, 0x75ffff83
adc eax, 0x40fc458b
cmp edi, 0xffffffff
jne 0x9adab3
mov eax, dword [ebp - 4]
inc eax
cmp eax, 4
mov dword [ebp - 4], eax
jl 0x9ad835
mov esi, dword [ebp - 8]
jmp 0x9adaf6
nop
js 0x9adad6
pushf
xor ebx, dword [esp]
xor ebx, dword [esp]
mov esp, esp
xor eax, dword [esp + 0x10]
xor eax, dword [esp + 0x10]
or esi, 0
popf
jae 0x9adacf
xchg edx, ecx
xchg edx, ecx
jns 0x9adad6
mov edx, 0x2814e857
add byte [eax], al
push edi
call fcn.009b02f0
ror edx, 3
ror edx, 0x1d
jge 0x9adaf1
ja 0x9adae6
jne 0x9adae8
jne 0x9adaea
jne 0x9adaec
jl 0x9adaf1
lcall 0, 0x12be21d5
add byte [eax + 0x6c], ch
or byte [ecx + 0x1815ff00], bl
xor byte [ecx + 0xe800], bl
add byte [eax], al
mov esi, 0x12
push 0x99086c
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
call 0x9adb06
lea esp, [esp + 4]
je 0x9adb27
pushf
jp 0x9adb10
xor ecx, 0x3293
xor ecx, 0x3293
cld
popf
nop
jno 0x9adb22
jae 0x9adb24
jne 0x9adb27
ljmp 0x8b5b:0x5e5fc68b
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret