Function at 0x6640b210
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x5c
mov edi, dword [ebp + 0xc]
movzx eax, word [edi + 0xbc]
mov dword [esp], eax
call fcn.6642fb10
mov ebx, dword [edi + 0xbc]
test eax, eax
je 0x6640b370
mov dword [ebp - 0x2c], 1
movzx ebx, bx
mov esi, dword [edi + 0xb8]
mov dword [esp], ebx
call fcn.6642fb10
test eax, eax
jne 0x6640b265
shl ebx, 0x10
mov dword [esp], ebx
call sym.krnl386.exe16_MapSL
sub esp, 4
add esi, eax
test esi, esi
je case.0x6640b3c4.4
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov edx, 0xffffffff
movzx ebx, byte [esi]
mov dword [ebp - 0x30], eax
xor eax, eax
cmp bl, 0x65
je 0x6640b2bf
lea esi, [esi]
ja 0x6640b2f0
cmp bl, 0x36
je 0x6640b350
jbe 0x6640b2d0
cmp bl, 0x3e
je 0x6640b340
cmp bl, 0x64
jne 0x6640bfa0
mov edx, dword [edi + 0x90]
lea esi, [esi]
movzx ebx, byte [esi + 1]
add esi, 1
add ecx, 1
cmp bl, 0x65
jne 0x6640b288
mov edx, dword [edi + 0x8c]
jmp 0x6640b2b0
cmp bl, 0x26
je 0x6640b360
cmp bl, 0x2e
jne 0x6640bccf
mov edx, dword [edi + 0xbc]
jmp 0x6640b2b0
cmp bl, 0xf0
je 0x6640b2b0
jbe 0x6640b310
cmp bl, 0xf2
je 0x6640b328
cmp bl, 0xf3
jne 0x6640bcbe
mov eax, 2
jmp 0x6640b2b0
cmp bl, 0x66
je 0x6640b330
cmp bl, 0x67
jne 0x6640b3ad
xor dword [ebp - 0x30], 1
jmp 0x6640b2b0
mov eax, 1
jmp 0x6640b2b0
xor dword [ebp - 0x2c], 1
jmp 0x6640b2b0
mov edx, dword [edi + 0x98]
jmp 0x6640b2b0
mov edx, dword [edi + 0xc8]
jmp 0x6640b2b0
mov edx, dword [edi + 0x94]
jmp 0x6640b2b0
mov edx, dword [0x664521e0]
mov eax, ebx
shr ax, 3
movzx eax, ax
movzx eax, byte [edx + eax + 0x10000]
shr al, 6
and eax, 1
mov dword [ebp - 0x2c], eax
jmp 0x6640b240
cmp bl, 7
je 0x6640b975
nop
mov eax, 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [ebp - 0x38], ecx
cmp bl, 0x6b
jbe 0x6640b960
lea ecx, [ebx - 0x6c]
cmp cl, 0x8f
ja case.0x6640b3c4.4
movzx ecx, cl
jmp dword [ecx*4 + str._f_f_f_f]
test eax, eax
je 0x6640bb3a
mov ecx, dword [edi + 0xac]
mov esi, dword [ebp - 0x30]
mov dword [ebp - 0x34], ecx
test esi, esi
jne 0x6640b3ea
movzx ecx, word [ebp - 0x34]
mov dword [ebp - 0x34], ecx
sub ecx, 1
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x40], 1
test bl, 1
je 0x6640b40b
cmp dword [ebp - 0x2c], 1
sbb ecx, ecx
and ecx, 0xfffffffe
add ecx, 4
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
neg ecx
test byte [edi + 0xc1], 4
mov esi, ecx
cmove esi, dword [ebp - 0x40]
mov dword [ebp - 0x40], esi
cmp bl, 0x6d
jbe 0x6640bb2f
cmp edx, 0xffffffff
jne 0x6640b434
mov edx, dword [edi + 0x98]
test eax, eax
je 0x6640b44d
mov esi, dword [ebp - 0x30]
test esi, esi
je 0x6640bb7c
mov dword [edi + 0xac], 0
mov esi, dword [ebp - 0x34]
movzx eax, dx
shl edx, 0x10
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], edx
test esi, esi
je case.0x6640b3c4.142
mov esi, dword [ebp - 0x3c]
jmp 0x6640b506
mov eax, dword [ebp - 0x44]
mov edx, dword [edi + 0xa0]
mov dword [esp], eax
mov dword [ebp - 0x3c], edx
call fcn.6642fb10
mov edx, dword [ebp - 0x3c]
test eax, eax
jne 0x6640b4af
mov ecx, dword [ebp - 0x30]
movzx eax, dx
test ecx, ecx
cmove edx, eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x3c], edx
mov dword [esp], eax
call sym.krnl386.exe16_MapSL
mov edx, dword [ebp - 0x3c]
sub esp, 4
add eax, edx
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x30]
mov eax, dword [edi + 0xa0]
test edx, edx
je 0x6640ba30
add eax, dword [ebp - 0x40]
mov dword [edi + 0xa0], eax
movzx eax, word [ebp - 0x34]
cmp bl, 0x6e
je 0x6640ba70
cmp bl, 0x6f
je 0x6640bab0
mov ecx, edi
cmp bl, 0x6d
je 0x6640ba90
mov edx, 1
call fcn.6640af50
mov ecx, dword [ebp - 0x3c]
mov byte [ecx], al
lea eax, [esi - 1]
test esi, esi
je case.0x6640b3c4.142
mov esi, eax
mov eax, dword [edi + 0xa8]
mov dword [ebp - 0x34], eax
cmp bl, 0x6d
ja 0x6640b470
mov eax, dword [ebp - 0x44]
mov edx, dword [edi + 0x9c]
mov dword [esp], eax
mov dword [ebp - 0x3c], edx
call fcn.6642fb10
mov edx, dword [ebp - 0x3c]
test eax, eax
jne 0x6640b557
mov ecx, dword [ebp - 0x30]
movzx eax, dx
test ecx, ecx
cmove edx, eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x3c], edx
mov dword [esp], eax
call sym.krnl386.exe16_MapSL
mov edx, dword [ebp - 0x3c]
sub esp, 4
add eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x30]
mov eax, dword [edi + 0x9c]
test ecx, ecx
je 0x6640ba50
add eax, dword [ebp - 0x40]
mov dword [edi + 0x9c], eax
jmp 0x6640b4c9
mov ecx, dword [ebp - 0x2c]
movzx eax, word [edi + 0xa8]
test ecx, ecx
je 0x6640bafb
mov ecx, edi
mov edx, 4
call fcn.6640af50
mov dword [edi + 0xb0], eax
mov eax, dword [edi + 0xb8]
mov ecx, dword [ebp - 0x38]
lea eax, [ecx + eax + 1]
mov dword [edi + 0xb8], eax
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
cmp al, 0xa9
je 0x6640bdb5
jbe 0x6640bd60
cmp al, 0xb2
je case.0x6640b3c4.88
add eax, 0x4c
cmp al, 1
ja case.0x6640b3c4.4
lea eax, [ebp - 0x24]
mov ecx, dword [ebp - 0x2c]
mov dword [esp + 4], edx
mov edx, esi
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x30]
mov dword [esp], eax
mov eax, edi
call fcn.6640ad10
test eax, eax
je case.0x6640b3c4.4
mov eax, dword [ebp - 0x38]
add eax, dword [ebp - 0x24]
add dword [edi + 0xb8], eax
xor eax, eax
jmp 0x6640b3a5
lea ecx, [ebp - 0x24]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, dword [ebp - 0x30]
lea eax, [esi + 1]
mov edx, eax
mov eax, edi
call fcn.6640a850
cmp byte [esi], 0x8b
mov ecx, 1
jne 0x6640b63b
cmp dword [ebp - 0x2c], 1
sbb ecx, ecx
and ecx, 0xfffffffe
add ecx, 4
sidt [ebp - 0x1e]
movzx edx, word [ebp - 0x1e]
sub eax, dword [ebp - 0x1c]
add edx, 1
sub edx, ecx
cmp edx, eax
jb case.0x6640b3c4.4
mov edx, 0x11e
mov ebx, 0x100
mov ecx, 0x500
mov word [0x66451548], bx
mov word [0x66451550], dx
mov word [0x66451558], cx
movzx edx, byte [esi]
cmp dl, 0x8a
je 0x6640bc1b
cmp dl, 0x8b
jne 0x6640b69f
lea ecx, [eax + 0x66451540]
mov eax, dword [ebp - 0x2c]
movzx edx, byte [esi + 1]
mov dword [esp], eax
mov eax, edi
call fcn.6640a730
mov eax, dword [edi + 0xb8]
mov edx, dword [ebp - 0x38]
add edx, dword [ebp - 0x24]
lea eax, [edx + eax + 1]
mov dword [edi + 0xb8], eax
xor eax, eax
jmp 0x6640b3a5
lea ecx, [ebp - 0x24]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, dword [ebp - 0x30]
lea eax, [esi + 1]
mov edx, eax
mov eax, edi
call fcn.6640a850
test eax, eax
je case.0x6640b3c4.4
cmp word [eax], 0x40
jne case.0x6640b3c4.4
call fcn.66404a00
movzx edx, byte [esi + 1]
movzx eax, word [0x66451006]
shr dl, 3
and edx, 7
cmp dl, 5
ja case.0x6640b3c4.4
movzx edx, dl
jmp dword [edx*4 + 0x66447814]
mov eax, dword [edi + 0xb8]
mov ebx, dword [ebp - 0x38]
lea eax, [ebx + eax + 2]
mov dword [edi + 0xb8], eax
movzx eax, byte [esi + 1]
mov dword [esp], edi
mov dword [esp + 4], eax
call fcn.6641d250
mov edx, eax
xor eax, eax
test edx, edx
jne 0x6640b3a5
mov eax, dword [edi + 0xb8]
sub eax, 2
sub eax, ebx
mov dword [edi + 0xb8], eax
mov eax, 1
jmp 0x6640b3a5
movzx ecx, byte [edi + 0xb0]
mov edx, 1
movzx eax, byte [esi + 1]
mov dword [esp], edi
call fcn.6640b090
mov eax, dword [edi + 0xb8]
mov ecx, dword [ebp - 0x38]
lea eax, [ecx + eax + 2]
mov dword [edi + 0xb8], eax
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
movzx eax, byte [esi + 1]
mov esi, dword [ebp - 0x2c]
test esi, esi
je 0x6640bb4d
mov ecx, edi
mov edx, 4
call fcn.6640af50
mov dword [edi + 0xb0], eax
jmp 0x6640b772
movzx eax, byte [esi + 1]
mov ecx, edi
mov edx, 1
mov ebx, dword [edi + 0xb0]
call fcn.6640af50
xor bl, bl
movzx eax, al
or eax, ebx
mov dword [edi + 0xb0], eax
jmp 0x6640b772
movzx eax, word [edi + 0xbc]
mov dword [esp], eax
call fcn.6642fb10
test eax, eax
jne case.0x6640b3c4.4
mov ecx, dword [ebp - 0x2c]
mov edx, dword [edi + 0xc4]
movzx eax, word [edi + 0xc8]
test ecx, ecx
mov dword [esp + 4], edx
mov dword [esp], eax
je 0x6640bb8b
call fcn.6642fb90
mov edx, dword [eax]
mov dword [edi + 0xb8], edx
mov edx, dword [eax + 4]
mov dword [edi + 0xbc], edx
mov eax, dword [eax + 8]
mov dword [edi + 0xc0], eax
movzx eax, word [edi + 0xc8]
mov dword [esp], eax
call fcn.6642fb10
test eax, eax
jne 0x6640bbff
movzx eax, word [edi + 0xc8]
mov edx, dword [0x664521e0]
shr ax, 3
movzx eax, ax
test byte [edx + eax + 0x10000], 0x40
jne 0x6640bbff
mov eax, dword [edi + 0xc4]
mov edx, eax
add eax, 0xc
xor dx, dx
movzx eax, ax
or eax, edx
mov dword [edi + 0xc4], eax
xor eax, eax
jmp 0x6640b3a5
movzx ecx, byte [edi + 0xb0]
mov edx, 1
movzx eax, word [edi + 0xa8]
mov dword [esp], edi
call fcn.6640b090
jmp case.0x6640b3c4.142
mov edx, dword [ebp - 0x2c]
mov ecx, dword [edi + 0xb0]
movzx eax, word [edi + 0xa8]
test edx, edx
je 0x6640bb1a
mov dword [esp], edi
mov edx, 4
call fcn.6640b090
jmp case.0x6640b3c4.142
movzx eax, word [edi + 0xa8]
mov ecx, edi
mov edx, 1
mov ebx, dword [edi + 0xb0]
call fcn.6640af50
xor bl, bl
movzx eax, al
or eax, ebx
mov dword [edi + 0xb0], eax
jmp case.0x6640b3c4.142
mov ebx, dword [ebp - 0x2c]
movzx eax, byte [esi + 1]
mov ecx, dword [edi + 0xb0]
test ebx, ebx
je 0x6640bb6c
mov dword [esp], edi
mov edx, 4
call fcn.6640b090
jmp 0x6640b772
mov dword [edi + 0x8c], eax
jmp 0x6640b69f
mov dword [edi + 0x90], eax
jmp 0x6640b69f
mov dword [edi + 0x98], eax
jmp 0x6640b69f
mov dword [edi + 0xc8], eax
jmp 0x6640b69f
mov dword [edi + 0x94], eax
jmp 0x6640b69f
cmp bl, 0xf
jbe 0x6640b395
and ebx, 0xfffffff7
cmp bl, 0x17
jne case.0x6640b3c4.4
mov eax, dword [edi + 0xc4]
mov dword [esp + 4], eax
movzx eax, word [edi + 0xc8]
mov dword [esp], eax
call fcn.6642fb90
cmp word [eax], 0x40
jne case.0x6640b3c4.4
call fcn.66404a00
movzx edx, byte [esi]
movzx eax, word [0x66451006]
cmp dl, 0x17
je 0x6640bca8
cmp dl, 0x1f
je 0x6640bc9d
cmp dl, 7
je 0x6640bc8b
movzx eax, word [edi + 0xc8]
cmp dword [ebp - 0x2c], 1
mov dword [esp], eax
sbb ebx, ebx
and ebx, 0xfffffffe
add ebx, 4
call fcn.6642fb10
test eax, eax
jne 0x6640bc80
movzx eax, word [edi + 0xc8]
mov edx, dword [0x664521e0]
shr ax, 3
movzx eax, ax
test byte [edx + eax + 0x10000], 0x40
jne 0x6640bc80
mov eax, dword [edi + 0xc4]
mov edx, eax
add eax, ebx
xor dx, dx
movzx eax, ax
or edx, eax
mov ebx, edx
mov dword [edi + 0xc4], ebx
jmp case.0x6640b3c4.142
mov edx, eax
add ax, word [ebp - 0x40]
xor dx, dx
movzx eax, ax
or edx, eax
mov dword [edi + 0xa0], edx
jmp 0x6640b4c9
mov edx, eax
add ax, word [ebp - 0x40]
xor dx, dx
movzx eax, ax
or edx, eax
mov dword [edi + 0x9c], edx
jmp 0x6640b4c9
mov ecx, dword [ebp - 0x3c]
mov edx, 1
movzx ecx, byte [ecx]
mov dword [esp], edi
call fcn.6640b090
jmp 0x6640b4f9
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x6640bace
mov edx, 4
call fcn.6640af50
mov ecx, dword [ebp - 0x3c]
mov dword [ecx], eax
jmp 0x6640b4f9
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x6640bae3
mov edx, dword [ebp - 0x3c]
mov dword [esp], edi
mov ecx, dword [edx]
mov edx, 4
call fcn.6640b090
jmp 0x6640b4f9
mov edx, 2
call fcn.6640af50
mov ecx, dword [ebp - 0x3c]
mov word [ecx], ax
jmp 0x6640b4f9
mov ecx, dword [ebp - 0x3c]
mov edx, 2
movzx ecx, word [ecx]
mov dword [esp], edi
call fcn.6640b090
jmp 0x6640b4f9
mov ebx, dword [edi + 0xb0]
mov ecx, edi
mov edx, 2
call fcn.6640af50
movzx eax, ax
xor bx, bx
or eax, ebx
jmp 0x6640b594
movzx ecx, cx
mov dword [esp], edi
mov edx, 2
call fcn.6640b090
jmp case.0x6640b3c4.142
mov edx, dword [edi + 0x94]
jmp 0x6640b434
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x34], 1
jmp 0x6640b3f0
mov ebx, dword [edi + 0xb0]
mov ecx, edi
mov edx, 2
call fcn.6640af50
movzx eax, ax
xor bx, bx
or eax, ebx
jmp 0x6640b7aa
movzx ecx, cx
mov dword [esp], edi
mov edx, 2
jmp 0x6640b76d
and dword [edi + 0xac], 0xffff0000
jmp 0x6640b44d
call fcn.6642fb90
movzx edx, word [eax]
mov dword [edi + 0xb8], edx
movzx edx, word [eax + 2]
mov dword [edi + 0xbc], edx
movzx eax, word [eax + 4]
mov word [edi + 0xc0], ax
movzx eax, word [edi + 0xc8]
mov dword [esp], eax
call fcn.6642fb10
test eax, eax
jne 0x6640bc0d
movzx eax, word [edi + 0xc8]
mov edx, dword [0x664521e0]
shr ax, 3
movzx eax, ax
test byte [edx + eax + 0x10000], 0x40
jne 0x6640bc0d
mov eax, dword [edi + 0xc4]
mov edx, eax
add eax, 6
xor dx, dx
movzx eax, ax
or eax, edx
mov dword [edi + 0xc4], eax
xor eax, eax
jmp 0x6640b3a5
add dword [edi + 0xc4], 0xc
xor eax, eax
jmp 0x6640b3a5
add dword [edi + 0xc4], 6
xor eax, eax
jmp 0x6640b3a5
movzx edx, byte [esi + 1]
movzx eax, byte [eax + 0x66451540]
shr dl, 3
and edx, 7
jmp dword [edx*4 + 0x6644782c]
mov byte [edi + 0xa5], al
jmp 0x6640b69f
mov byte [edi + 0xa9], al
jmp 0x6640b69f
mov byte [edi + 0xad], al
jmp 0x6640b69f
mov byte [edi + 0xb1], al
jmp 0x6640b69f
mov byte [edi + 0xa4], al
jmp 0x6640b69f
mov byte [edi + 0xa8], al
jmp 0x6640b69f
mov byte [edi + 0xac], al
jmp 0x6640b69f
add ebx, dword [edi + 0xc4]
jmp 0x6640ba1b
mov dword [edi + 0x94], eax
movzx eax, word [edi + 0xc8]
jmp 0x6640b9c9
mov dword [edi + 0x98], eax
jmp 0x6640b9c2
mov dword [edi + 0xc8], eax
jmp 0x6640b9c9
mov byte [edi + 0xb0], al
jmp 0x6640b69f
mov dword [ebp - 0x38], ecx
cmp bl, 0xfb
jbe 0x6640b3b9
jmp case.0x6640b3c4.4
mov dword [ebp - 0x38], ecx
cmp bl, 0xf
jne 0x6640b960
movzx eax, byte [esi + 1]
cmp al, 0x23
je 0x6640bdec
ja 0x6640b5b7
cmp al, 0x21
je 0x6640be2e
cmp al, 0x22
jne 0x6640bd2a
cmp byte [esi + 2], 0xc0
jne case.0x6640b3c4.4
test byte [0x66444790], 1
jne 0x6640befd
mov eax, dword [edi + 0xb8]
mov ecx, dword [ebp - 0x38]
lea eax, [ecx + eax + 3]
mov dword [edi + 0xb8], eax
xor eax, eax
jmp 0x6640b3a5
cmp al, 0x20
jne case.0x6640b3c4.4
movzx eax, byte [esi + 2]
cmp al, 0xc0
je 0x6640be85
cmp al, 0xe0
jne case.0x6640b3c4.4
test byte [0x66444790], 1
jne 0x6640bf3a
mov dword [edi + 0xb0], 0
jmp 0x6640bd10
cmp al, 0xa1
jne case.0x6640b3c4.4
mov eax, dword [edi + 0xc4]
mov dword [esp + 4], eax
movzx eax, word [edi + 0xc8]
mov dword [esp], eax
call fcn.6642fb90
cmp word [eax], 0x40
jne case.0x6640b3c4.4
call fcn.66404a00
movzx eax, word [0x66451006]
mov dword [edi + 0x90], eax
cmp dword [ebp - 0x2c], 1
mov eax, edi
sbb edx, edx
and edx, 0xfffffffe
add edx, 4
call fcn.6640ae50
jmp 0x6640b772
mov eax, dword [edi + 0xc4]
mov dword [esp + 4], eax
movzx eax, word [edi + 0xc8]
mov dword [esp], eax
call fcn.6642fb90
cmp word [eax], 0x40
jne case.0x6640b3c4.4
call fcn.66404a00
movzx eax, word [0x66451006]
mov dword [edi + 0x8c], eax
jmp 0x6640bd9d
movzx eax, byte [esi + 2]
cmp al, 0xc8
je 0x6640be4c
test byte [0x66444790], 1
je case.0x6640b3c4.4
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Unsupported_DR_register__eip2_is__02x_n
mov dword [esp + 8], str.__wine_emulate_instruction
mov dword [esp + 4], 0x66444790
mov dword [esp], 0
call fcn.6640aec0
jmp case.0x6640b3c4.4
movzx eax, byte [esi + 2]
movzx edx, byte [0x66444790]
cmp al, 0xc8
je 0x6640be6e
cmp al, 0xf8
je 0x6640be5a
and edx, 1
je case.0x6640b3c4.4
jmp 0x6640be01
mov eax, dword [edi + 0xb0]
mov dword [edi + 8], eax
jmp 0x6640bd10
and edx, 8
jne 0x6640be9d
mov dword [edi + 0xb0], 0x400
jmp 0x6640bd10
and edx, 8
jne 0x6640bf6d
mov eax, dword [edi + 8]
mov dword [edi + 0xb0], eax
jmp 0x6640bd10
test byte [0x66444790], 1
jne 0x6640becd
mov dword [edi + 0xb0], 0x10
jmp 0x6640bd10
mov eax, dword [edi + 0xb8]
mov dword [esp + 0xc], str.mov___dr7____eax_at_0x_08lx_n
mov dword [esp + 8], str.__wine_emulate_instruction
mov dword [esp + 4], 0x66444790
mov dword [esp], 3
mov dword [esp + 0x10], eax
call fcn.6640aec0
jmp 0x6640be5f
mov eax, dword [edi + 0xb8]
mov dword [esp + 0xc], str.mov___cr0____eax_at_0x_08lx_n
mov dword [esp + 8], str.__wine_emulate_instruction
mov dword [esp + 4], 0x66444790
mov dword [esp], 0
mov dword [esp + 0x10], eax
call fcn.6640aec0
jmp 0x6640be8e
mov eax, dword [edi + 0xb0]
mov dword [esp + 0x14], eax
mov eax, dword [edi + 0xb8]
mov dword [esp + 0xc], str.mov___eax____cr0_at_0x_08lx__EAX0x_08lx_n
mov dword [esp + 8], str.__wine_emulate_instruction
mov dword [esp + 4], 0x66444790
mov dword [esp + 0x10], eax
mov dword [esp], 0
call fcn.6640aec0
jmp 0x6640bd10
mov eax, dword [edi + 0xb8]
mov dword [esp + 0xc], str.mov___cr4____eax_at_0x_08lx_n
mov dword [esp + 8], str.__wine_emulate_instruction
mov dword [esp + 4], 0x66444790
mov dword [esp], 0
mov dword [esp + 0x10], eax
call fcn.6640aec0
jmp 0x6640bd53
mov eax, dword [edi + 0xb8]
mov dword [esp + 0xc], str.mov___dr1____eax_at_0x_08lx_n
mov dword [esp + 8], str.__wine_emulate_instruction
mov dword [esp + 4], 0x66444790
mov dword [esp], 3
mov dword [esp + 0x10], eax
call fcn.6640aec0
jmp 0x6640be77
mov dword [ebp - 0x38], ecx
jmp 0x6640b969