Function at 0x945816
Capabilities:
Encrypt data using speck

Disassembly:
mov word [edi + ebx*2 + 0x1c8], cx
movzx ecx, bp
bswap cx
mov ecx, dword [ebp - 0x24]
jmp 0x97909a
ret
dec edx
test esi, 0x2f2c56cd
cmp dword [ebp - 8], edx
jmp 0x8c5d2a
add ecx, dword [ebp - 0x38]
mov word [edx], cx
test edi, edi
jmp 0x91bdb6
sar ecx, 1
test bp, cx
jmp 0x869c43
mov dword [ebp - 0x34], edx
cmc
mov edi, edi
lea edx, [edx + edx]
mov dword [ebp - 0x40], edx
cmp di, ax
test edi, eax
cmp eax, 0x1000000
jmp 0xc3013d
shl esi, 8
cmc
shl eax, 8
cmp bx, sp
or esi, edx
movsx edx, cx
not dl
inc ecx
xor edx, esp
mov dword [ebp - 8], ecx
sar cx, cl
xadd dh, dl
or edx, esi
movzx ecx, word [edi + ebx*2 + 0x1c8]
xor dx, bp
mov dword [ebp - 0x38], ecx
rol dh, cl
ror dl, cl
movzx edx, cx
btc ecx, ebx
sbb cx, 0x7676
mov ecx, eax
clc
cmp ecx, ebx
shr ecx, 0xb
test edi, 0x48290328
imul ecx, edx
jmp 0x80a6ed
jmp 0x96d66a
lea ecx, [ecx + edx*8 + 0x104]
cwd
mov edx, 3
jmp 0x79ca7e
mov edi, dword [ebp - 0x40]
jmp 0x947b27
lea ecx, [ecx - 4]
cmc
cmp eax, 0x1000000
jae 0x83d45e
mov edx, dword [ebp + 8]
jmp 0x78ab46
shl eax, 8
test di, 0x6bf7
cmp esp, edx
or esi, edi
movzx edi, bp
bswap di
inc edx
shld edi, edi, 0xa3
cmovp edi, edx
cmc
mov dword [ebp - 8], edx
movzx edx, word [ecx + 2]
btc edi, ecx
mov dword [ebp - 0x38], edx
bt di, 0xc7
btr edi, edi
bsr edi, ecx
movzx edi, dx
xor dx, 0x373b
mov edx, eax
shr edx, 0xb
cmp bl, 5
cmp edi, esi
imul edx, edi
cmp esi, edx
jmp 0x7d431b
mov word [ecx], dx
mov edx, dword [ebp - 0x1c]
cmp dl, 0xe2
clc
test esi, 0xaf114d3
add edx, edx
jmp 0x7c8647
dec edx
cmp ecx, edx
jmp 0x887b36
jae 0x969e4f
mov edx, dword [ebp + 8]
mov ecx, 0x3c985f38
movsx cx, dl
mov ecx, dword [ebp - 8]
dec edx
stc
cmp ecx, edx
jmp 0x969e28
jae 0x987e72
mov edi, dword [ebp + 8]
cwd
cmovle dx, bx
inc dl
mov edx, dword [ebp - 8]
dec edi
cmc
cmp edx, edi
jmp 0x8d5bf0
jb 0x7b9ea0
sub esi, eax
cmc
test di, 0x496d
or edi, 1
dec ecx
jmp 0x7ba3e6
jne 0x7a64a1
mov edx, dword [ebp - 0x20]
add edx, 0x644
sub ch, ch
test al, 0xf2
shl edi, 4
xchg ch, ch
or ch, 0xba
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x38], 4
mov ecx, 1
mov dword [ebp - 0xc], edx
bsf edi, esp
mov dword [ebp - 0x30], 1
mov di, 0xdf8
sub edi, ebp
sub edi, 0x5ca90424
mov dword [ebp - 0x34], ecx
xor edi, 0x1d3a652f
mov edi, dword [ebp - 8]
lea ecx, [ecx + ecx]
test bp, 0x2170
cmp eax, 0x1000000
jmp 0x8f97b4
dec ecx
cmp eax, ecx
jmp 0x8a2be6
dec edx
stc
cmp ecx, edx
jmp 0x80eacf
dec edi
jmp 0x7d82bf
sub eax, ecx
test ebx, 0x2a6f41c5
sub esi, ecx
sub ch, 0x6a
ror cl, cl
mov cx, di
test ecx, edx
clc
stc
shr cx, 5
cmc
jmp 0x8ca770
lea ecx, [ecx + edx*8 + 4]
mov edx, 3
jmp 0x96d66a
mov dword [ebp - 0x38], ecx
btr ecx, ecx
test ebp, 0x2a843cac
mov ecx, eax
test ah, 0xc3
stc
shr ecx, 0xb
clc
test edi, ebx
cmp al, 0x33
imul ecx, edx
test esi, 0x5c4a3771
mov dword [ebp - 0x40], edx
cmp esi, ecx
jae 0x89351c
mov edi, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x48]
movzx eax, di
and ebx, dword [ebp - 0x18]
sal ah, cl
xor dh, bl
btr eax, 0x4c
mov eax, ecx
cmc
bt dx, di
mov ecx, 0x800
sub ecx, dword [ebp - 0x40]
jmp 0x98dd98
cmp edx, 0x100
jmp 0x8ed66f
jae 0x90fccb
mov eax, edx
sbb edx, 0x5d00074a
mov edx, 0x800
test esp, 0x3af5533
sub edx, edi
sar edx, 5
add edx, dword [ebp - 0x38]
test bx, 0x691a
cmc
mov dword [ebp - 0x34], 8
cmp edi, esi
jmp 0x920a21
cmp dword [ebp - 8], edi
je 0x82009c
mov edi, dword [ebp - 8]
cmp bl, bh
cmc
movzx edi, byte [edi]
cmp al, 0xec
cmp edi, esp
shl esi, 8
jmp 0x984499
jl 0x8954c7
mov ecx, edx
mov edi, edx
cmc
jmp 0x793e57
or esi, edi
not edi
xchg edi, edi
inc dword [ebp - 8]
test ch, dh
neg di
movzx edx, word [edx + ecx]
mov ecx, eax
add edi, 0x60fa77da
xadd di, di
xor di, si
shr ecx, 0xb
ror edi, 0x4e
mov edi, edx
imul ecx, edi
clc
cmp esi, ecx
jmp 0x8030c5
jae 0x959c0d
mov eax, ecx
mov ecx, 0x800
stc
clc
sub ecx, edx
sar ecx, 5
cmc
stc
add ecx, dword [ebp - 0x38]
jmp 0xbe52c2
cmp esi, ecx
jmp 0x7ddc24
je 0x82009c
movzx edi, byte [edx]
shl esi, 8
jmp 0x7a74af
cmp ebx, 0xa
jmp 0x92b496
jae 0x8c2be7
mov eax, dword [ebp + 8]
movsx dx, bh
cmova dx, di
mov edx, dword [ebp - 8]
jmp 0xbdd018
mov dl, byte [edx + ecx]
jmp 0x940a61
jae 0x816e75
mov ebx, dword [ebp + 8]
jmp 0x96528c
sar ecx, 5
test edi, esi
cmc
add ecx, edi
cmp ecx, esp
bsf di, bx
neg edi
mov edi, dword [ebp - 0x38]
clc
test bp, 0x294
lea edx, [edx + edx]
test esp, 0x773a382a
jmp 0xc3f6ce
lea edx, [edx + edx + 1]
jmp 0x8f09bf
mov ebx, dword [ebp - 0x14]
inc edi
mov ecx, dword [ebp - 0x18]
movsx edi, bp
bswap edi
not di
mov edi, dword [ebp + 0x10]
mov byte [ecx + edi], dl
jmp 0x88f660
jae 0x80eaf4
mov edx, dword [ebp + 8]
cmovle ecx, eax
movsx cx, bl
mov ecx, dword [ebp - 8]
jmp 0x7bbe97
jmp 0x9548e7
cmp eax, 0x1000000
jmp 0x887b8b
jmp 0x85f4f0
jae 0x7a4dff
mov eax, ecx
mov ecx, 0x800
sub ecx, edi
sar ecx, 5
rcr edi, 0x3b
lea ecx, [ecx + edx]
or edi, 0x5ed970d7
or edi, edi
mov edx, dword [ebp - 0x40]
mov edi, ecx
shld ecx, ecx, 0xc4
bts cx, cx
mov ecx, dword [ebp - 0xc]
mov word [edx + ecx], di
sal dx, cl
mov edx, dword [ebp - 0x34]
cmp bx, 0x5143
test si, dx
add edx, edx
jmp 0x7fbeb7
cmp eax, 0x1000000
jae 0x917e27
mov edx, dword [ebp + 8]
mov ecx, dword [ebp - 8]
jmp 0x7ac136
je 0x82009c
mov ebx, dword [ebp - 8]
jmp 0x816e50
mov ecx, dword [ebp - 0x34]
cmc
cmp dl, 0xcb
test di, 0x6bdb
sub ecx, edx
ror dx, cl
mov edx, dword [ebp - 0x1c]
cmc
add edx, ecx
clc
stc
mov dword [ebp - 0x1c], edx
test edx, edx
cmp ecx, 0x51e761a8
cmp ebx, 4
jmp 0x906974
jge 0x7f58ee
mov edi, dword [ebp - 0x40]
cmovp cx, sp
setns cl
bswap cx
mov ecx, dword [ebp - 0xc]
jmp 0x9757ad
cmp esi, ecx
jmp 0x851adc
mov dword [ebp - 0x18], edi
je 0x85f4f3
cmp edi, 0xffffffff
jmp 0x952479
je 0x82009c
movzx edx, byte [ecx]
test dh, 0x71
cmp bp, 0x7f3f
stc
shl esi, 8
stc
cmc
shl eax, 8
or esi, edx
inc ecx
rcr dh, cl
or dx, dx
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 0xc]
movzx ecx, word [ecx]
bswap edx
setnp dl
ror dx, cl
movzx edx, cx
cmp bh, 0xf3
stc
jmp 0x7ca240
movzx ebx, byte [ebx]
cmp dh, 0xdd
shl esi, 8
test ebx, esi
shl eax, 8
or esi, ebx
movzx ebx, bx
dec bx
inc dword [ebp - 8]
rol bh, 0x2b
cmp ebp, 0x60d712fd
dec bx
movzx edi, word [edi + ecx]
not cl
adc bx, 0x15ad
mov ecx, eax
shr ecx, 0xb
jmp 0xbdb6ab
mov word [edx + ecx], di
jmp 0x90f628
or esi, edx
jmp 0x917e1d
mov word [ecx + edx], di
dec edi
not di
mov edi, dword [ebp - 0x30]
inc ecx
or dword [ebp - 0x10], edi
cmc
shl dword [ebp - 0x30], 1
jmp 0x97a334
jne 0x796804
lea edx, [edx - 0x40]
cmp edx, 4
jmp 0x7d887a
pop edi
movsx ebx, bp
pop esi
mov eax, 1
pop ebx
jmp 0x8ccb76
mov dword [ebp - 0x30], edx
test dh, dl
mov dword [ebp - 0x40], edx
sub edx, 0x1b800340
dec dh
test si, 0x36af
mov dword [ebp - 0x1c], 1
btr dx, sp
lea ecx, [ecx]
mov edx, dword [ebp - 0x1c]
cmp esp, 0x76e67fb
lea edx, [edx + edx]
cmp bp, dx
mov dword [ebp - 0x38], edx
cmp eax, 0x1000000
jmp 0x958dd2
je 0x82009c
shl ecx, 8
mov eax, ebp
movzx eax, bp
neg ah
mov eax, ecx
rcr cx, 0x15
dec cx
bsr cx, cx
movzx ecx, byte [edx]
test esp, ecx
shl esi, 8
or esi, ecx
jmp 0x8c2bdf
je 0x82009c
movzx edx, byte [ecx]
cmp edi, ebx
stc
jmp 0x79819e
jmp 0x81df4c
je 0x82009c
movzx ebx, byte [edi]
stc
shl esi, 8
shl eax, 8
test esp, 0x2337059c
or esi, ebx
dec ebx
inc edi
and ebx, edx
rol bl, cl
shrd bx, si, 0x8a
mov dword [ebp - 8], edi
adc ebx, 0x23a327b6
xchg di, bx
movzx edi, word [ecx + edx]
dec dl
mov edx, eax
setp bh
sub bl, bl
sar bl, 0x9b
shr edx, 0xb
mov ebx, edi
imul edx, ebx
cmp esi, 0x4ae00705
clc
cmp esi, edx
jmp 0x95f3d7
mov cx, di
clc
cmp cx, 0x4dc
shr cx, 5
sub di, cx
movzx ecx, cx
bts cx, bx
and cx, 0x564a
mov ecx, dword [ebp - 0xc]
stc
clc
sub eax, edx
cmc
sub esi, edx
mov edx, dword [ebp - 0x38]
jmp 0x81762a
inc edx
mov dword [ebp - 8], edx
stc
shr eax, 1
lea edi, [edi + edi]
cmp esi, eax
jmp 0x7b9e8f
mov ecx, eax
stc
test dh, 0x7f
shr ecx, 0xb
imul ecx, edx
jmp 0x7dfb83
mov dword [ebp - 0x40], edi
test edi, 0x68187fb0
and edi, 0x100
jmp 0x926fdd
jge 0x7a649d
shl edi, cl
cmc
mov dword [ebp - 0x10], edi
clc
cmp al, dh
sub edi, edx
mov dh, 0x39
movsx dx, al
mov edx, dword [ebp - 0x20]
lea edx, [edx + edi*2 + 0x55e]
jmp 0x7ba40b
sub eax, ecx
and dx, 0x486d
rcr dh, cl
btc dx, ax
sub esi, ecx
mov ecx, dword [ebp - 0x38]
sal dx, cl
seta dh
sub dx, 0x6f02
mov dx, cx
test sp, 0x7daa
stc
shr dx, 5
cmc
clc
jmp 0x967e98
jae 0x949eae
mov eax, ecx
adc ch, bl
test bp, 0x1089
mov ecx, 0x800
clc
sub ecx, edx
cmp sp, cx
test cx, ax
sar ecx, 5
test esi, 0x6365721c
jmp 0x8c5ddf
sub eax, edx
test ah, 0x20
sub esi, edx
mov dx, di
shr dx, 5
sub di, dx
mov dh, bh
movzx edx, si
bswap edx
mov edx, dword [ebp - 0xc]
jmp 0x81df3c
jae 0x7bf2ab
mov eax, ecx
cmp ah, bh
mov ecx, 0x800
sub ecx, ebx
test eax, ecx
jmp 0x7f2528
jge 0x7e2ac1
sub ebx, ebx
clc
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x18], 0xffffffff
jmp 0xbee529
jae 0x9486f6
mov eax, ecx
btr cx, bp
test esp, 0x45871fe4
movzx cx, dl
mov ecx, 0x800
test al, dl
clc
sub ecx, edx
movzx dx, cl
cmp bp, dx
xchg dx, dx
mov edx, dword [ebp - 0x24]
sar ecx, 5
add ecx, dword [ebp - 0x38]
test ecx, 0x714456f8
test cl, al
mov dword [ebp - 0x2c], edx
neg dx
xor dx, ax
mov edx, dword [ebp - 0x10]
mov word [edi + ebx*2 + 0x180], cx
or cx, si
sal ecx, 0x4f
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x24], ecx
sub ecx, ecx
cmp ebx, 7
setl cl
rcr bl, 0x2f
bt ebx, 0x9b
mov dword [ebp - 0x28], edx
add bh, 0x75
lea ebx, [ecx - 1]
and ebx, 3
mov dword [ebp - 0x14], ebx
mov cx, si
movzx cx, al
lea ecx, [edi + 0x664]
jmp 0x8e2a0d
dec edi
cmp ch, 0x96
clc
cmp ebx, edi
jmp 0x93c68e
and edi, 1
dec ecx
or edi, 2
cmp eax, 0x94d456c
cmc
test edx, 0x144971fa
mov dword [ebp - 0x38], ecx
cmp ebx, 0x31cc0e7b
test edi, ebp
stc
cmp edx, 0xe
jmp 0x84217f
jmp 0x958cb7
mov word [edi + ecx], dx
xchg dx, dx
lea edx, [edi + 1]
jmp 0x9548e7
mov byte [edi + edx], cl
jmp 0x902c54
shl esi, 8
test esi, ebp
stc
shl eax, 8
test dx, 0x2745
cmp ah, 0x2d
or esi, edi
not edi
inc dword [ebp - 8]
cmp esp, 0x5f8c4a60
movzx edi, word [edx + ecx]
cmc
add ecx, 0x246c5a79
mov edx, eax
shr edx, 0xb
rol cx, cl
and cx, ax
mov ecx, edi
cmp edi, 0x5c7f1e5a
cmc
imul edx, ecx
clc
cmp sp, 0x63c1
cmp esi, edx
jae 0x83bd70
mov eax, edx
adc edx, 0x2a763fff
mov edx, 0x800
cmp ah, ch
sub edx, ecx
mov ecx, dword [ebp - 0xc]
test bx, sp
stc
cmp bl, 0xf6
sar edx, 5
stc
clc
lea edx, [edx + edi]
and edi, 0x745a2cfb
mov edi, dword [ebp - 0x38]
shl dword [ebp - 0x1c], 1
jmp 0x9836c1
je 0x82009c
movzx edx, byte [ecx]
shl esi, 8
clc
shl eax, 8
stc
cmp bp, 0x5d11
jmp 0x818a22
jae 0x7a74cd
mov edi, dword [ebp + 8]
mov dl, dl
mov edx, dword [ebp - 8]
dec edi
test bl, ch
test esi, 0x9014fcd
clc
cmp edx, edi
jmp 0x7e1052
mov dword [ebp - 0x14], ecx
sbb ch, 0xa
clc
lea ecx, [edi + 0xa68]
cmp bp, bx
cmp eax, 0x1000000
jmp 0x7b12a4
cmp esi, ecx
jmp 0x95caeb
shr ecx, 0xb
cmp edi, 0x4c91033c
test edi, esi
imul ecx, edx
jmp 0x8dba2a
inc ecx
test esp, edi
cmp ecx, esi
mov byte [ebp - 1], dl
mov dword [ebp - 0x18], ecx
cmc
test dh, 8
cmp ebx, 4
jmp 0x85f4e7
sub eax, ecx
sub dx, bp
sub esi, ecx
shr ch, 0xc0
mov ecx, dword [ebp - 0x38]
mov dx, cx
shr dx, 5
cmp ax, 0x42bf
cmc
sub cx, dx
bts dx, si
sub dl, 0x6d
cmc
mov edx, dword [ebp - 0xc]
mov word [edx], cx
stc
cmp sp, dx
test ecx, 0x22375b67
cmp eax, 0x1000000
jmp 0x7b0f32
mov dword [ebp - 0x10], edx
jmp 0x91780e
shr dx, 5
cmp eax, ecx
cmp sp, 0x16b7
jmp 0x96dfd4
je 0x82009c
inc eax
bt dx, di
jmp 0x958439
je 0x8f09c5
cmp edx, 0x100
jge 0x7f58ee
mov ecx, dword [ebp - 0xc]
rcl edi, 0x13
bts di, dx
lea edi, [edx + edx]
cmc
mov dword [ebp - 0x38], edi
cmp di, 0x4863
test ecx, esi
clc
cmp eax, 0x1000000
jmp 0x7ee36e
inc edx
mov dword [ebp - 8], edx
rol dx, 0x67
mov edx, dword [ebp - 0xc]
shr ch, 0xf4
bsr cx, si
rcr cl, cl
movzx ecx, word [edx]
not dh
bsr edx, edi
adc edx, esp
mov dword [ebp - 0x38], ecx
movzx edx, cx
mov ecx, edi
and ch, dh
mov ecx, eax
jmp 0x88efc4
dec edx
cmp al, ah
cmp ecx, edx
jmp 0x8e5e71
je 0x82009c
mov edx, dword [ebp - 8]
and bh, 0xb
or bl, 0xfe
rol bh, 0x38
movzx ebx, byte [edx]
cmp ecx, 0x5a536824
test sp, 0x6e54
shl esi, 8
test edi, 0x269f227e
shl eax, 8
clc
test eax, 0x1da90d01
or esi, ebx
jmp 0x83d459
add ecx, dword [ebp - 0x38]
jmp 0x783435
shl ecx, 7
cmp bx, ax
cmp edx, 0x6946bed
lea ecx, [ecx + edx + 0x360]
mov edx, 1
cmp dl, bh
cmc
stc
mov dword [ebp - 0xc], ecx
cmp bx, 0xeb8
test esp, eax
mov dword [ebp - 0x38], 6
jmp 0x7967fe
sub eax, ecx
movzx dx, ch
and dx, ax
mov dx, 0xe8b
sub esi, ecx
rcr ch, cl
shr ch, 0xc2
sal dx, 0x34
mov ecx, dword [ebp - 0x38]
mov dx, cx
jmp 0x8a2688
sub di, cx
cmp dword [ebp - 0x34], 0
mov ecx, dword [ebp - 0x38]
mov word [ecx], di
jmp 0x7f4f02
mov esp, ebp
movzx ebp, si
not ebp
pop ebp
ret
mov edx, 1
clc
jmp 0x94581b
jmp 0xbe75db
je 0x82009c
movzx edi, byte [edx]
jmp 0x987e4f
mov eax, ecx
mov ecx, 0x800
clc
test edi, ebx
sub ecx, edx
sal dh, cl
mov edx, dword [ebp - 0xc]
test esi, edi
cmc
sar ecx, 5
jmp 0x78d1a4
cmp esi, ecx
jae 0x84804e
mov edi, dword [ebp - 0x18]
jmp 0x8d6f0c
sub ebx, 6
jmp 0x7fe9bb
mov dx, di
rcr bx, cl
adc ebx, 0x1f143793
cmp edi, edx
shr dx, 5
shl bl, cl
or bx, di
or bl, 0x73
sub di, dx
xor dh, cl
rcl dl, 0x6d
bsr dx, sp
mov edx, dword [ebp - 0x38]
sub eax, ecx
rol bx, cl
sub esi, ecx
mov ecx, dword [ebp - 0xc]
movzx ebx, bx
inc bx
mov word [edx + ecx], di
inc edx
cmc
mov ebx, dword [ebp - 0x14]
jmp 0x7d319f
jmp 0x887f9c
je 0x82009c
movzx edx, byte [ecx]
stc
cmp bp, bp
shl esi, 8
shl eax, 8
or esi, edx
sets dh
inc ecx
dec dl
mov dword [ebp - 8], ecx
movzx ecx, word [edi + ebx*2 + 0x198]
adc edx, esp
mov dword [ebp - 0x38], ecx
movzx edx, cx
and cx, bp
mov ecx, eax
clc
shr ecx, 0xb
test si, sp
imul ecx, edx
cmp esi, ecx
jmp 0x932d01
jl 0x8bd00a
jmp 0x7f58f2
je 0x8bcff4
cmp edx, 0x100
jmp 0x80a0cc
jae 0x7981bd
mov edx, dword [ebp + 8]
movsx ecx, dx
xchg ch, ch
mov ecx, 0x151e97
mov ecx, dword [ebp - 8]
jmp 0x95e409
jae 0x82c698
mov ebx, dword [ebp + 8]
jmp 0x91b875
inc edi
test ebx, 0x3a943905
cmp dword [ebp - 0x1c], 0
mov byte [ebp - 1], cl
jmp 0x80bca4
jge 0x917817
lea ebx, [ebx + 7]
shld cx, cx, 9
mov ecx, edi
mov dword [ebp - 0x14], ebx
mov ecx, edx
cmp dx, 0xf09
cmc
cmp eax, ebp
cmp edx, 4
jl 0x90699f
mov ecx, 3
mov edx, dword [ebp - 0x20]
jmp 0x8c7eeb
mov word [edi], cx
jmp 0x8bcfee
inc edx
mov dword [ebp - 0x1c], edx
jmp 0x958cb7
sub eax, edx
inc di
sub di, di
sub esi, edx
mov edx, dword [ebp - 0x38]
jmp 0x96d633
inc dword [ebp - 0x10]
je 0xbee52f
mov edx, dword [ebp - 0x10]
cmp bp, dx
mov edi, dword [ebp - 0x18]
jmp 0xbe75b1
inc ecx
cmp bh, ah
btc edx, 0x1b
mov dword [ebp - 8], ecx
movzx ecx, word [edi + ebx*2 + 0x1b0]
mov dword [ebp - 0x38], ecx
movzx edx, bx
movzx edx, cx
jmp 0x840733
dec ebx
cmp edi, ebx
jmp 0x82c669
je 0x82009c
sub ecx, ecx
movzx edx, ax
cmp ebx, 7
mov cl, 0x2b
not dl
setge cl
adc bh, ah
btr edx, esi
mov edx, edi
xadd bx, bx
mov bx, dx
sub edx, dword [ebp - 0x10]
inc edi
xchg bx, bx
mov dword [ebp - 0x18], edi
lea ebx, [ecx + ecx + 9]
movzx cx, cl
mov ecx, dword [ebp + 0x10]
jmp 0x7ed3a8
mov word [ecx + 2], dx
sbb dx, 0x6b60
sar dl, 0x2d
mov edx, dword [ebp - 0x1c]
cmc
add edx, edx
jmp 0x79ce7a
mov dword [ebp - 0x34], edi
clc
test di, dx
add edi, edx
lea ecx, [ecx + edi*2 + 0x200]
mov dword [ebp - 0x38], ecx
cmp eax, 0x1000000
jmp 0x98a987
mov ecx, dword [ebp - 0x44]
cwd
bswap edx
and ecx, dword [ebp - 0x18]
and dh, 0xd
mov edi, dword [ebp - 0x20]
mov edx, ebx
cmp di, 0x5dd7
clc
shl edx, 4
lea edx, [edx + ecx]
cmp edx, edi
clc
test eax, ebp
mov dword [ebp - 0x1c], ecx
btc ecx, 0xac
lea ecx, [edi + edx*2]
mov dword [ebp - 0xc], ecx
cmp eax, 0x1000000
jmp 0x7fa961
jge 0x8dfa63
sub ebx, 3
jmp 0x983635
jae 0x8c8dee
mov edi, 0x800
cmc
sub edi, edx
mov edx, dword [ebp - 0x20]
sbb eax, esp
rcr ah, cl
ror eax, cl
sar edi, 5
shl eax, 0xf1
lahf
add edi, dword [ebp - 0x38]
mov eax, ecx
test bx, 0x1900
cmc
mov word [edx + ebx*2 + 0x198], di
and di, dx
cdq
mov edi, dword [ebp - 0x20]
shrd edx, edi, 0x68
mov dx, cx
lea edx, [ebx + 0xf]
stc
shl edx, 4
add edx, dword [ebp - 0x1c]
lea edx, [edi + edx*2]
mov dword [ebp - 0xc], edx
cmc
cmp bl, 0xf
test di, bx
cmp ecx, 0x1000000
jmp 0x7ea763
mov byte [ebp - 1], dl
jmp 0x984181
je 0x82009c
movzx edi, byte [ebx]
cmp cx, di
shl esi, 8
cmc
shl eax, 8
test bl, bh
jmp 0x98d2fa
shr edx, 0xb
imul edx, edi
test di, cx
cmp esi, edx
jae 0xc34d5e
mov eax, edx
bts edx, esp
mov edx, 0x800
stc
jmp 0xc31ff5
mov byte [edi + ecx - 1], dl
jmp 0x934abb
call fcn.0082a793
shl edx, cl
jmp 0x808fc8
sub eax, ecx
test edi, 0x7aaa4da0
cmp sp, si
sub esi, ecx
mov cx, dx
clc
cmp dx, cx
cmp dh, 0x8b
shr cx, 5
sub dx, cx
mov ecx, edx
mov ecx, dword [ebp - 0xc]
jmp 0x86dcad
sub eax, ecx
xadd dx, dx
sar dh, 0x9f
sub esi, ecx
sal ch, cl
ror ch, 0xb7
mov ecx, dword [ebp - 0x38]
bt dx, 0x33
mov dx, cx
shr dx, 5
stc
sub cx, dx
test ebp, ecx
clc
mov word [edi + ebx*2 + 0x180], cx
cmp eax, 0x1000000
jae 0x8e5e8f
mov edx, dword [ebp + 8]
xchg cl, cl
mov ecx, dword [ebp - 8]
jmp 0x8c4e40
sub eax, ecx
sal dx, cl
sal dx, 0xb6
sub esi, ecx
mov ecx, dword [ebp - 0x38]
mov dl, 0x79
setne dh
dec dh
mov dx, cx
shr dx, 5
sub cx, dx
movsx edx, ax
setl dl
mov edx, dword [ebp - 0x24]
test di, 0x28e7
cmp di, 0xdb0
mov word [edi + ebx*2 + 0x1c8], cx
btr ecx, edi
bt ecx, edx
test bh, 0x52
mov ecx, dword [ebp - 0x2c]
test ecx, edi
mov dword [ebp - 0x2c], edx
mov edx, dword [ebp - 0x28]
cmp edi, esi
stc
mov dword [ebp - 0x24], edx
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x28], edx
cmc
cmp cl, 0xf6
mov dword [ebp - 0x10], ecx
cmp sp, ax
xor ecx, ecx
test ebp, esp
rcl cl, 0x4c
cmp ebx, 7
mov bh, 0
movsx ebx, cx
setge cl
inc bx
movsx ebx, cx
dec ecx
neg ebx
and ecx, 0xfffffffd
lea ecx, [ecx + 0xb]
bt bx, 0xa7
xadd bh, bh
mov ebx, ecx
test esp, 0x293c6f32
jmp 0x887f8c
jae 0xbee52f
mov ecx, dword [ebp - 0x40]
jmp 0x8d313b
dec dword [ebp - 0x38]
mov dword [ebp - 0x34], edx
jmp 0x81f0c3
dec dword [ebp - 0x1c]
jmp 0x87361f
sub eax, dword [ebp + 8]
cmp ax, cx
mov ecx, dword [ebp + 0xc]
bts di, cx
rcr dl, cl
mov edx, dword [ebp - 0x18]
bsr ebx, eax
bswap edi
mov dword [ecx], eax
shl esi, 0x33
xor esi, ebp
bswap edi
mov eax, dword [ebp + 0x14]
rol bl, 0xa1
shl bx, cl
pop edi
neg ebx
pop esi
or bx, 0x2686
dec bl
ror bx, 0xa4
mov dword [eax], edx
adc bh, 0xc8
bt bx, 0xb4
ror ebx, cl
sub eax, eax
mov bh, 0x44
movzx bx, al
movsx ebx, dx
pop ebx
mov esp, ebp
mov bp, dx
pop ebp
jmp 0x784e23
dec dword [ebp - 0x40]
jne 0x824c88
mov ecx, dword [ebp - 0x30]
jmp 0x8cec01
jae 0x881726
mov edi, dword [ebp + 8]
dec edi
cmp dword [ebp - 8], edi
jmp 0x96e8fe
sub eax, ecx
sub esi, ecx
mov ecx, dword [ebp - 0x38]
sal dx, cl
mov dx, cx
test ax, dx
test di, 0x29ef
shr dx, 5
stc
cmp ecx, esp
sub cx, dx
test bp, sp
mov word [edi + ebx*2 + 0x1b0], cx
cmp dl, 0x1a
test ebp, esp
clc
cmp eax, 0x1000000
jmp 0x8f8fb7
mov word [edx], cx
jmp 0x98d953
jae 0x8e1053
mov eax, ecx
not cl
mov ecx, 0x800
cmc
sub ecx, ebx
btc bx, 0x45
sar ecx, 5
add ecx, edi
shrd bx, sp, 0xd7
mov edi, dword [ebp - 0x38]
mov ebx, ecx
ror cl, cl
mov ecx, dword [ebp - 0xc]
clc
mov word [edi + ecx], bx
test bx, 0x67b6
stc
add edx, edx
jmp 0x8e1092
dec edx
test cx, bp
cmp ecx, 0xeab797c
cmp ecx, edx
jmp 0x829205
jae 0x85580c
mov eax, edx
ror dh, 0x95
rcr edx, cl
clc
mov edx, 0x800
test bp, 0x4779
sub edx, ebx
clc
sar edx, 5
add edx, edi
and di, 0x5b3
adc di, bx
mov edi, edx
mov edx, dword [ebp - 0xc]
mov word [ecx + edx], di
sar ch, 0x69
neg ecx
mov ecx, dword [ebp - 0x34]
jmp 0x97d5dc
dec ebx
test edx, ebp
cmc
cmp dword [ebp - 8], ebx
jmp 0x8088fb
sub cx, dx
movzx edx, ax
mov edx, dword [ebp - 0xc]
jmp 0x95bb15
je 0x82009c
movzx edx, byte [ecx]
cmp eax, edi
shl esi, 8
cmp bh, cl
stc
test cl, bl
shl eax, 8
or esi, edx
inc ecx
add dx, bp
mov dword [ebp - 8], ecx
sar ecx, 0x72
or dx, bp
xor cl, bl
movzx ecx, word [edi + ebx*2 + 0x180]
xor dl, 0x60
bts edx, edi
mov dword [ebp - 0x38], ecx
and dx, dx
movzx edx, cx
mov ecx, eax
cmc
test di, 0x701a
shr ecx, 0xb
imul ecx, edx
clc
cmp edx, 0x205601c6
cmp esi, ecx
jmp 0x862bc4
mov di, dx
cmc
shr di, 5
sub dx, di
test si, 0x6d15
mov word [ecx + 2], dx
setbe dh
add ecx, 0x204
mov dword [ebp - 0x34], 0x10
sar edx, 0x2b
sal dl, 0x36
cmovo dx, di
mov edx, 8
test ax, si
cmc
mov dword [ebp - 0xc], ecx
jmp 0x824c65
sub cx, dx
mov word [edi + ebx*2 + 0x198], cx
cmc
cmp di, 0x32a4
jmp 0x805286
je 0x82009c
mov edi, dword [ebp - 8]
movzx edi, byte [edi]
jmp 0x881708
lea ecx, [edi + ecx + 0xe6c]
mov dword [ebp - 0xc], ecx
jl 0x8bd00a
mov edi, dword [ebp - 0x18]
movzx bx, dh
sub edi, dword [ebp - 0x10]
mov ebx, dword [ebp + 0x10]
movzx edi, byte [edi + ebx]
rcl bx, 0xa2
mov ebx, dword [ebp - 8]
cmc
stc
lea edi, [edi + edi]
stc
jmp 0x842050
jmp 0x949ef9
dec dword [ebp - 0x38]
mov dword [ebp - 0x34], ecx
jmp 0xc3239e
jmp 0x91780e
add ecx, ecx
jmp 0x82a320
jmp 0x85f4f0
mov word [edi + ecx], dx
jmp 0x86ac05
jmp 0x85f4f0
shl eax, 8
jmp 0x7daf25
jmp 0x949f02
shl esi, 8
cmp ebx, 0x5ad91cd4
cmc
shl eax, 8
cmp di, 0x231e
or esi, edi
bswap di
dec edi
mov di, bx
inc edx
mov dword [ebp - 8], edx
bts dx, di
movzx edx, word [ecx]
and di, cx
rcl edi, 0xed
mov dword [ebp - 0x38], edx
sbb edi, esi
movzx edi, dx
cdq
mov edx, eax
jmp 0x93ef79
jae 0x98d31d
mov edi, dword [ebp + 8]
jmp 0x86499f
or esi, edi
movsx edi, cx
movzx edi, bx
bswap di
inc ebx
cmp edi, 0x35456c2
rcl di, 0x27
sbb edi, esi
mov dword [ebp - 8], ebx
shl edi, 0x8f
test bp, 0x2b1e
movzx edi, word [ecx]
and cx, si
mov bx, cx
btc bx, bp
mov ecx, eax
bswap bx
xchg bh, bh
shr ecx, 0xb
mov ebx, edi
test esi, edx
imul ecx, ebx
clc
cmp esi, ecx
jmp 0x85a1bc
jmp 0x949f12
mov edx, 1
cmc
test bx, bx
cmp ebp, 0x268a2e22
sar ecx, 5
add ecx, dword [ebp - 0x38]
cmc
test bp, 0x48d
mov word [edi], cx
sal edi, 0x97
movzx edi, byte [ebp - 1]
bt cx, 0x23
sub cl, dl
mov ecx, 8
sub cl, byte [ebp - 0x3c]
cmp ebx, edi
test dh, 0xfe
shr edi, cl
add ch, 0x4b
mov ecx, dword [ebp - 0x3c]
shl ebx, cl
rcr ecx, 2
rcl cl, 3
mov ecx, dword [ebp - 0x20]
cmp edi, 0x7f3e2ce5
add edi, ebx
imul edi, edi, 0x600
test esi, 0x7d460edf
cmp dword [ebp - 0x14], 7
jmp 0x975788
mov ebx, edi
imul ecx, ebx
jmp 0x88c4bb
dec eax
cmp edx, eax
jmp 0x8280c5
mov word [edi + ebx*2 + 0x1b0], cx
setp ch
bswap ecx
movzx ecx, cx
mov ecx, dword [ebp - 0x28]
jmp 0x98678c
add dword [ebp - 0x1c], 2
cmp esi, edx
cmc
cmp edx, edi
ja 0x82009c
mov ecx, dword [ebp + 0x10]
test esp, 0x5bc761d0
sub ecx, edx
movsx edx, cx
bswap dx
mov dword [ebp - 0x40], ecx
mov edi, edi
movsx edx, ax
dec dl
mov cl, byte [ecx + edi]
mov edx, dword [ebp + 0x10]
jmp 0x95497e
jb 0x928122
cmp eax, 0x1000000
lahf
mov eax, dword [ebp - 8]
jae 0x958439
mov ecx, dword [ebp + 8]
jmp 0x7bb45e
jae 0x7daf33
mov edi, dword [ebp + 8]
jmp 0x7bc176
sub edx, edi
clc
sar edx, 5
cmc
test edi, ebp
add edx, dword [ebp - 0x38]
cmp dl, 0xbf
mov dword [ebp - 0x34], 0
clc
stc
jmp 0x7a84e6
jne 0x7ba432
mov ebx, dword [ebp - 0x14]
jmp 0x97c542
sub eax, edx
sub esi, edx
or di, 0x7893
sal dl, 0x1a
btr di, bp
mov edx, dword [ebp - 0x38]
sbb di, cx
test ebp, 0x763f07b9
bt di, 8
mov di, dx
test si, cx
test dx, 0x3ef
shr di, 5
stc
clc
test edi, 0x661b761e
sub dx, di
test cx, 0x821
mov word [ecx], dx
jmp 0x7fd30b
cmp dword [ebp - 0x34], 0
jmp 0x90cc2a