Function at 0x6405dd
Capabilities:
Execute anti-debugging instructions

Disassembly:
add edx, 0x2e476f
jmp 0x6408a5
add edx, 0x88abc52d
jmp 0x640992
jmp 0x6402a4
push word [esp + 0xc]
mov eax, dword [esp + 0xd]
lea esp, [esp + 3]
mov ah, 0x4a
pushal
dec dh
push word [esp + 0x18]
jmp 0x6402fc
mov eax, dword [esp + 0xd]
lea esp, [esp + 3]
mov ah, 0x4a
jmp 0x6402f6
movzx ebx, byte [esi - 1]
sub esp, 0x19
je 0x640263
push word [esp + 0xc]
jmp 0x64028e
sahf
cmpsd dword [esi], dword es:[edi]
clc
mov bh, 0x66
mov ebx, ebp
not eax
mov dx, 0x441d
jmp 0x640261
call 0x6403e2
jbe 0x6402cc
cmp dword [esi - 0x32], reloc.KERNEL32.dll_WriteConsoleW
imul edi, ebx, 0xffffff9e
insd dword es:[edi], dx
in al, dx
push cs
cdq
clc
invalid
pushal
jmp 0x640273
jle 0x6402e0
jg 0x6402e0
add esp, 0x10
lea esp, [esp + 2]
sub bl, cl
bswap eax
mov dl, ah
mov edx, dword [esp]
jmp 0x64032a
mov dl, bl
rol ah, cl
jne 0x64035c
mov ax, bx
jmp 0x64035f
lea esp, [esp + 2]
jmp 0x640307
mov ax, bx
call fcn.00640346
cmc
jb 0x6403b9
clc
shl ah, 2
mov eax, ebp
sub esp, 7
lea esp, [esp + 3]
jmp 0x6403bf
mov eax, ebp
sub esp, 7
lea esp, [esp + 3]
jmp 0x6403bf
clc
shl ah, 2
jmp 0x6403a3
lea esp, [esp + 4]
not dl
sub al, bh
jp 0x64045f
jnp 0x640423
pop esp
fimul word [ebx + ebp - 0x1a]
adc byte [esi + 0x35c6a333], ch
xor dword [esp + esi - reloc.KERNEL32.dll_WriteConsoleW], 0xf2bb0fa1
jle 0x640300
add esp, 0x10
jmp 0x640340
rol eax, cl
jg 0x640444
mov al, bh
mov eax, dword [esp]
add eax, 0xc9133c75
jmp 0x64048e
btc eax, ecx
mov ah, byte [esp]
jmp 0x64046e
bsr ax, si
neg al
not ax
jmp 0x640409
add eax, 0xc9133c75
jmp 0x64048e
mov al, bh
mov eax, dword [esp]
jmp 0x64042e
bsr ax, si
neg al
not ax
btc eax, ecx
mov ah, byte [esp]
bts eax, edi
dec dl
jmp 0x6403f3
call fcn.006404a9
stosd dword es:[edi], eax
cmp ebx, dword [esi - 0x53]
sbb dword [esp + ecx*8 + 0x42], ecx
and eax, 0x38d965d4
sbb esi, dword [edx + 0x6d]
xor dl, 0x70
lea eax, [ebp*4]
lea eax, [eax + edx]
neg eax
jns 0x640478
pushfd
pop ax
jmp 0x6406e0
btr eax, esi
jmp 0x64058d
jnp 0x640587
dec eax
xchg ah, al
jmp 0x640541
dec eax
xchg ah, al
btr eax, esi
sub cl, dl
mov dh, 0x34
mov ax, 0xc64c
call fcn.0064055e
jbe 0x6405b0
mov dh, 0xfa
stc
jmp 0x6405fe
mov dh, 0xfa
stc
rdtsc
lea edx, reloc.KERNEL32.dll_WriteConsoleW
inc edx
mov dx, 0x306b
call 0x6405dd
lea esp, [esp + 4]
sub bl, 0xd6
btr ax, cx
jns 0x6405df
js 0x64061f
jg 0x25ed7ff9
mov byte [0xe6eb2cdd], al
lea edx, reloc.KERNEL32.dll_WriteConsoleW
neg eax
mov ax, word [esp]
bswap edx
lea edx, [eax + 0x6d]
jmp 0x64062d
rdtsc
lea edx, reloc.KERNEL32.dll_WriteConsoleW
inc edx
jmp 0x6405bc
bswap edx
lea edx, [eax + 0x6d]
jmp 0x64062d
lea edx, reloc.KERNEL32.dll_WriteConsoleW
neg eax
mov ax, word [esp]
jmp 0x640609
rol bl, 0
mov edx, 0x7dcfe988
bt edx, esi
jmp 0x6406a2
mov edx, edi
mov dl, byte [esp]
rdtsc
call 0x6406c1
xchg dword [ebx], edx
and esi, 0x15
xchg esp, eax
push ss
xchg esp, eax
or ch, byte [ebp - 0x64]
push 0xffffffffffffff81
inc eax
rol dl, 0
lea eax, [edx + edx]
mov ax, 0x6834
lea eax, [edx*4]
bts eax, ebx
jmp 0x640557
xor bl, 0x3c
rdtsc
dec eax
jnp 0x64068b
neg edx
bsr dx, bx
jmp 0x64073f
rdtsc
jmp 0x640671
jmp 0x6406ff
jl 0x64063e
mov edx, edi
mov dl, byte [esp]
jmp 0x640687
add esp, 0
lea esp, [esp + 2]
jmp 0x640658
neg edx
bsr dx, bx
mov dx, word [esp]
xchg dx, ax
call fcn.0064078d
cwde
sti
ror byte [ebp - 0x24], cl
das
lea ecx, [ecx + 0x27]
bswap edx
mov dh, 0x51
xchg dword [esp + 0x18], ecx
rdtsc
call fcn.006406ec
not bl
sub dx, 0xda00
jns 0x6407f3
js 0x64080b
and dword ss:[eax + 0x66], esp
mov edx, dword [esp]
mov dx, word [esp]
xchg dx, ax
jmp 0x640729
mov dx, 0xe84d
rcr dh, 1
ror eax, cl
rdtsc
xchg edx, eax
jmp 0x64082b
jmp 0x6407dd
rdtsc
xchg edx, eax
jmp 0x64082b
mov dx, 0xe84d
rcr dh, 1
ror eax, cl
jmp 0x6407f5
push si
mov eax, dword [esp]
mov word [esp], dx
bsf ax, si
jmp 0x64089d
rol bl, 0
xchg dx, ax
xchg al, dl
mov edx, ebx
jmp 0x640815
lea esp, [esp + 2]
shl edx, 2
bsf ax, ax
jmp 0x64086a
jb 0x640880
inc eax
sub esp, 6
jmp 0x6408bb
inc eax
sub esp, 6
lea esp, [esp + 2]
jmp 0x63f47a
jo 0x640837
lea esp, [esp + 2]
jmp 0x64083b
mov eax, ebx
or ax, bx
jle 0x6408c4
mov ax, di
mov eax, dword [esp]
jmp 0x6408d0
lea esp, [esp + 2]
jmp 0x63f47a
mov ax, di
jmp 0x6408cd
mov eax, dword [esp]
mov edx, dword [edx + reloc.KERNEL32.dll_WriteConsoleW]
rcr al, cl
jb 0x640bc2
cmp ax, si
sub esp, 0x1e
jmp 0x640aa3
bswap eax
bts eax, ecx
jmp 0x640953
bsf ax, sp
bswap eax
bts eax, ecx
mov esp, ebp
call 0x6408fb
jmp 0x640a56
cmc
jl 0x64094a
bsf ax, sp
jmp 0x640911
lea eax, reloc.KERNEL32.dll_WriteConsoleW
mov dx, 0x456f
clc
jmp 0x6409d7
add bl, 0x15
sub eax, 0xed459570
jl 0x640a17
jge 0x640a01
xor dh, byte [eax + 0x46b04126]
sub eax, 0x1960f3c
ror byte [edi], 0x31
rdtsc
sub bl, 0x7e
mov eax, dword [esp]
xchg edx, eax
call fcn.0064099e
jg 0x6409b1
jle 0x6409b1
add byte [edi], 0x97
add dword [ebp + reloc.KERNEL32.dll_WriteConsoleW], edi
mov eax, 0x37841509
push ds
imul ecx, dword [eax - reloc.KERNEL32.dll_WriteConsoleW], 0x968d2414
cmpsd dword [esi], dword es:[edi]
add byte [eax], 0
lea esp, [esp + 4]
not bl
jmp 0x6409a0
lea edx, [esp + edx]
stc
mov dx, word [esp]
jmp 0x640a1f
lea edx, [esp + edx]
stc
mov dx, word [esp]
jmp 0x640a35
sub bl, 0xfd
xchg edx, eax
mov eax, esi
mov eax, ebx
mov ax, word [esp]
inc eax
jmp 0x640a67
lea edx, [edi - 0xf1]
ror dx, 0xe
not edx
jmp 0x6409c9
jg 0x640a7d
mov eax, edx
bswap edx
jmp 0x640a8a
mov eax, edx
bswap edx
setp ah
jmp 0x640ad9
setp ah
jmp 0x640ad9
lea esp, [esp + 0xe]
jmp 0x63f4d8
sub edi, 4
xchg edx, eax
jmp 0x640ae2
and ebx, 0x3c
rdtsc
lea edx, [esi + edi]
mov eax, 0x6953b284
jmp 0x640aac
sub bl, 0xd9
rdtsc
xchg edx, eax
pushal
jmp 0x640ac2
mov eax, dword [ebx + ebp]
mov bx, word [esp]
rol ebx, 0xb
jmp 0x640b30
mov bl, bh
bswap edx
jmp 0x640b17
cmp ax, si
sub esp, 0x1e
lea esp, [esp + 0xe]
jmp 0x63f4d8
mov dword [edi], eax
neg ah
jo 0x640b5d
mov bl, 0xff
btc bx, cx
neg ebx
jmp fcn.00640b44
jnp 0x640af2
mov bl, bh
bswap edx
jmp 0x640b17
btc bx, cx
neg ebx
call fcn.00641c8e
jbe 0x640bab
invalid
mov eax, 0xf7668cef
mov word [esi - 9], fs
shr ebx, cl
aas
jnp 0x640b47
outsb dx, byte [esi]
or eax, edi
dec edx
push edi
aad 0x45
sub al, 0xdf
insb byte es:[edi], dx
les esi, [edi + 0x5e]
test eax, 0xd7ebffb3
mov bl, 0xff
jmp 0x640b38
mov eax, dword [esp]
lea eax, [ebp + 0x50]
jmp 0x640b6d
lea ebx, reloc.KERNEL32.dll_WriteConsoleW
call fcn.00640b96
jle 0x29fa869a
wait
and esi, dword [ebx - reloc.KERNEL32.dll_WriteConsoleW]
cli
popfd
insb byte es:[edi], dx
fcom dword [ecx]
nop
rcl dl, 5
jo 0x640b61
mov eax, dword [esp]
jmp 0x640b64
xchg esp, eax
and al, 0xc9
add byte [eax], al
add byte [ebx], bh
clc
mov dx, 0x6af7
jmp 0x640b08
sub cx, ax
jmp 0x65d21b
lea edx, [eax*4]
mov ah, dl
neg ax
jmp 0x65d2f0
neg ax
jmp 0x65d2f0
jbe 0x65d1d2
lea edx, [eax*4]
mov ah, dl
jmp 0x65d205
cmc
lea esp, [esp + 3]
jmp 0x65d282
mov edx, dword [esp]
push di
push sp
xchg dword [esp], edx
sub esp, 7
jmp 0x65d298
lea edx, [ecx + edi]
not dl
mov ax, bp
jmp 0x65d256
lea esp, [esp + 8]
sub bx, 0xc17e
btr edx, ebx
jmp 0x65d2c5
ja 0x65d240
cmc
lea esp, [esp + 3]
jmp 0x65d282
neg dx
shl dx, 0xc
setnp al
mov dl, 0xbe
neg edx
bsf edx, ecx
jmp 0x65d323
not al
jmp 0x65d278
jnp 0x65d2a1
neg dx
shl dx, 0xc
jmp 0x65d2d4
setnp al
mov dl, 0xbe
neg edx
jmp 0x65d2af
sub esi, 2
xor edx, 0x1c20a5c6
jb 0x65d2c1
not al
lea edx, [ecx + edi]
not dl
mov ax, bp
mov edx, dword [esp]
jmp 0x65d259
mov dl, byte [esp]
jmp 0x65d332
not bx
cmc
jns 0x65d30d
mov dl, byte [esp]
jmp 0x65e100
lea edx, [esi + edi]
not ax
mov edx, 0x7c63e533
mov edx, eax
neg dl
mov edx, 0xd3885f27
bts edx, edi
jnp 0x65d402
jp 0x65d402
xchg dh, al
mov dx, ax
mov edx, eax
clc
jp 0x65d3cc
jnp 0x65d394
add edx, 0x4253c8be
call fcn.0065de5d
jnp 0x65d358
invalid
add bx, 0xd615
call 0x65d355
lea eax, [ecx*4]
jmp 0x65d3db
rdtsc
mov dh, ch
mov edx, dword [esp + 2]
jmp 0x65d37e
jmp 0x65d7f1
rdtsc
mov eax, edi
mov al, byte [esp]
mov dl, 0x72
btc edx, eax
jo 0x65d39e
jno 0x65d7f1
aam 0x47
out dx, al
stc
rdtsc
mov dh, ch
mov edx, dword [esp + 2]
lea eax, [ecx*4]
lea esp, [esp + 4]
sub bx, 0x10fd
mov dx, bp
mov eax, 0x3ff46534
jmp 0x65d3b4
jmp 0x65d374
jmp 0x65d42d
cwde
neg dx
jl 0x65d407
pushfd
lea edx, [edx + esi]
jmp 0x65d474
pushfd
lea edx, [edx + esi]
xchg word [esp], dx
xchg ebx, eax
mov dl, 0x68
inc edx
jb 0x65d458
not dh
jmp 0x65d508
or dx, 0x11eb
js 0x65d41d
jns 0x65d41d
jmp 0x65d506
mov bx, dx
lea eax, [ebp*4]
jmp 0x65d4b8
xchg word [esp], dx
jmp 0x65d435
xchg word [esp + 0xd], ax
xor eax, 0x80d8d769
cmc
jmp 0x65d49b
xchg word [esp + 0xd], ax
xor eax, 0x80d8d769
cmc
jmp 0x65d4da
lea esp, [esp + 4]
jmp 0x65d4c4
rdtsc
lea ebx, [ebp + 0x50]
sub esp, 0x1c
jbe 0x65d490
ja 0x65d47a
ja 0x640261
seto ah
mov bl, byte [esp]
bswap eax
jmp 0x65d4e5
pushfd
cmp edi, ebx
jge 0x65d49d
lea esp, [esp + 4]
jmp 0x65d4a1
bts ax, bx
jb 0x65d526
jae 0x65d526
pop eax
not eax
jmp 0x65d510
not dh
mov dword [edi], ebx
jmp 0x65d45d
mov bl, byte [esp]
jmp 0x65d52d
mov edx, ebp
call 0x65d4ed
lea eax, [ebp + 0x40]
push ebx
lea ebx, [ebx*4]
push word [esp + 3]
jae 0x65d66d
lea esp, [esp + 2]
jmp 0x65d600
mov edx, ebx
xchg ebx, eax
setb dh
mov dh, byte [esp]
jmp 0x65d44f
lea ebx, [ecx + ecx]
mov bl, byte [esp]
cmc
jmp 0x65d5a1
lea ebx, [ecx + ecx]
mov bl, byte [esp]
cmc
sub eax, edx
push ecx
xchg bl, bh
pop ebx
setbe bh
jmp 0x65d5bc
sub eax, edx
push ecx
jmp 0x65d586
and bl, 0xfc
call fcn.0065d5da
and ebx, dword [edx - 0x4b]
movsb byte es:[edi], byte [esi]
sbb eax, edi
bound esp, qword [esp + ebp*4]
mov cl, 0x70
test eax, 0x5f8dd73a
lea ebx, [edi - 0x80]
clc
jp 0x65d5a6
pop edi
cmp al, 0x7a
in al, 0x7b
loop 0x65d5bd
jnp 0x65d5a6
clc
jbe 0x65d5df
ja 0x65d6e6
retf 0x5bc9
jmp 0x65d6e6
lea esp, [esp + 2]
inc ebx
jle 0x65d57c
jg 0x65d566
xchg dword [esp + 0x10], ebx
call fcn.0065d647
push dword [esp + 9]
lea esp, [esp + 9]
add esp, 0xa
lea esp, [esp + 3]
push dword [esp + 0x14]
ret 0x18
jmp 0x65d5fc
sub ebx, eax
call 0x65d5e4
mov eax, 0xfe7b0d35
jmp 0x65d558
sub bx, 0x74d9
bt dx, cx
jg 0x65d7a7
mov eax, 0xfe7b0d35
mov edx, ebx
jmp 0x65d55a
mov edx, eax
jmp 0x65d33f
lea edx, [esi + edi]
not ax
mov edx, 0x7c63e533
jmp 0x65d85d