Function at 0x10005ac0
Capabilities:
Encode data using xor
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x983d8
call fcn.100790d0
mov eax, dword [0x10091014]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x980e4]
push esi
push edi
push 0x980e0
push 0
push eax
mov edi, edx
mov dword [ebp - 0x983c0], ebx
mov esi, ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x983b8], esi
lea ecx, [ebp - 0x980e4]
call dword [0x100946d8]
mov esi, eax
mov dword [ebp - 0x983b0], 0
lea ecx, [ebp - 0x983b0]
mov dword [ebp - 0x983d0], esi
push ecx
mov ecx, dword [ebp - 0x983b8]
mov eax, dword [esi]
add ecx, edi
push ecx
lea ecx, [ebp - 0x983b8]
push ecx
mov eax, dword [eax + 4]
mov ecx, esi
call eax
mov ecx, dword [esi + 0x980dc]
mov dword [ebp - 0x983b4], ecx
test al, al
je 0x1000cb8b
push 0x41fbe
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
movzx eax, word [esi + 6]
lea edx, [ebp - 0x980e8]
add esp, 0xc
mov dword [ebp - 0x980e8], eax
mov al, byte [edx]
not al
ror al, 2
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
sar eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
ror al, 1
ror al, 2
mov byte [edx], al
inc edx
lea eax, [ebp - 0x980e6]
cmp edx, eax
jne 0x10005b75
mov ax, word [ebp - 0x980e8]
mov word [ebx], ax
mov dl, byte [esi + 9]
mov cl, dl
movzx eax, dl
xor cl, 4
shr eax, 1
add cl, cl
xor dl, 0x84
xor ecx, eax
add dl, dl
xor ecx, 0xffffffea
movzx eax, dl
and ecx, 0x55
xor ecx, eax
mov dl, byte [ecx + 0x1008b738]
rol dl, 4
mov cl, dl
mov al, dl
xor cl, 0x25
shr al, 1
add cl, cl
xor dl, 0xa5
xor cl, al
add dl, dl
xor cl, 0xfa
and cl, 0x55
xor cl, dl
sub cl, 0x66
mov byte [ebx + 2], cl
mov dl, byte [esi + 9]
mov cl, dl
movzx eax, dl
xor cl, 4
shr eax, 1
add cl, cl
xor dl, 0x84
xor ecx, eax
add dl, dl
xor ecx, 0xffffffea
movzx eax, dl
and ecx, 0x55
xor edx, edx
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
rol cl, 4
xor cl, 0xa5
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
sub al, 0x66
movzx eax, al
mov dword [ebp - 0x983bc], eax
cmp cl, 0x66
je 0x10005ca6
lea edi, [esi + 0xb]
mov esi, eax
mov cl, byte [edi]
lea edi, [edi + 2]
ror cl, 1
mov al, 0x3f
ror cl, 3
rol cl, 3
not cl
rol cl, 4
sub al, cl
mov byte [ebx + edx + 3], al
inc edx
cmp edx, esi
jl 0x10005c81
mov esi, dword [ebp - 0x983d0]
mov eax, dword [esi + 0x50]
lea ecx, [ebp - 0x980f8]
mov dword [ebp - 0x980f8], eax
lea eax, [ebp - 0x980f4]
mov dword [ebp - 0x980e8], eax
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
sub al, 0x64
ror al, 1
add al, 0x5b
rol al, 2
mov byte [ecx], al
inc ecx
cmp ecx, dword [ebp - 0x980e8]
jne 0x10005cc1
mov eax, dword [ebp - 0x980f8]
lea edx, [ebp - 0x980fc]
mov dword [ebx + 0x23], eax
mov eax, dword [esi + 0x58]
mov dword [ebp - 0x980fc], eax
nop dword [eax + eax]
mov cl, byte [edx]
mov al, 0x55
ror cl, 3
sub al, cl
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x980f8]
cmp edx, eax
jne 0x10005d10
mov eax, dword [ebp - 0x980fc]
lea edi, [ebp - 0x98100]
mov dword [ebx + 0x27], eax
movzx eax, word [esi + 0x5e]
mov dword [ebp - 0x98100], eax
movzx eax, byte [edi]
mov al, byte [eax + 0x1008b738]
rol al, 2
mov dl, al
add al, 0xb
add al, al
sub dl, 0x75
mov cl, al
movzx eax, dl
shr eax, 1
add dl, dl
xor ecx, eax
movzx eax, dl
and ecx, 0x55
xor ecx, eax
movzx eax, byte [ecx + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
ror al, 1
mov byte [edi], al
inc edi
lea eax, [ebp - 0x980fe]
cmp edi, eax
jne 0x10005d64
mov ax, word [ebp - 0x98100]
lea edx, [ebp - 0x98104]
mov word [ebx + 0x2b], ax
mov eax, dword [esi + 0x64]
mov dword [ebp - 0x98104], eax
nop dword [eax]
movzx eax, byte [edx]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x6c
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 2
rol al, 4
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98100]
cmp edx, eax
jne 0x10005dd0
mov eax, dword [ebp - 0x98104]
lea edx, [ebp - 0x98108]
mov dword [ebx + 0x2d], eax
mov eax, dword [esi + 0x6c]
mov dword [ebp - 0x98108], eax
mov al, byte [edx]
movzx ecx, byte [edx]
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
ror cl, 1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
add cl, 0x69
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x98104]
add cl, 0x18
ror cl, 3
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10005e47
mov eax, dword [ebp - 0x98108]
lea edi, [ebx + 0x35]
push 0x121
push 0
push edi
mov dword [ebx + 0x31], eax
call sub.VCRUNTIME140.dll_memset
lea eax, [esi + 0x75]
add esp, 0xc
xor ebx, ebx
lea esi, [eax + 2]
mov cl, byte [eax]
mov al, cl
mov dl, cl
add dl, 0x66
sub al, 0x1a
shr dl, 1
add al, al
xor dl, al
add cl, cl
and dl, 0x55
sub cl, 0x34
xor dl, cl
rol dl, 2
sub dl, 0x64
ror dl, 2
movzx eax, dl
mov al, byte [eax + 0x1008b738]
add al, 0x5b
mov byte [ebx + edi], al
inc ebx
mov eax, esi
add esi, 2
cmp ebx, 0x11
jl 0x10005eb6
mov esi, dword [ebp - 0x983d0]
mov dl, byte [esi + 0x97]
mov cl, dl
movzx eax, dl
shr eax, 1
xor cl, 0x10
add cl, cl
xor dl, 0x90
xor ecx, eax
add dl, dl
xor ecx, 0xffffffea
movzx eax, dl
and ecx, 0x55
lea edx, [ebp - 0x9810c]
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
sub al, 0x54
rol al, 1
movzx eax, al
mov al, byte [eax + 0x1008b738]
rol al, 1
mov byte [edi + 0x11], al
mov al, byte [esi + 0x99]
rol al, 1
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
mov cl, 0x4b
shr eax, 0x10
rol al, 1
sub cl, al
rol cl, 4
movzx eax, cl
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edi + 0x12], al
mov eax, dword [esi + 0xa0]
mov dword [ebp - 0x9810c], eax
mov al, byte [edx]
add al, 0x49
movzx eax, al
xor eax, 0x9a
mov al, byte [eax + 0x1008b738]
xor al, 0xcf
rol al, 4
xor al, 0x84
rol al, 4
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98108]
cmp edx, eax
jne 0x10005fa5
mov eax, dword [ebp - 0x9810c]
lea edx, [ebp - 0x98110]
mov dword [edi + 0x13], eax
mov eax, dword [esi + 0xa8]
mov dword [ebp - 0x98110], eax
nop dword [eax]
movzx eax, byte [edx]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
rol al, 4
rol al, 2
add al, 0x17
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x80
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9810c]
cmp edx, eax
jne 0x10005ff0
mov eax, dword [ebp - 0x98110]
lea edx, [ebp - 0x98114]
mov dword [edi + 0x17], eax
mov eax, dword [esi + 0xb0]
mov dword [ebp - 0x98114], eax
nop
mov al, byte [edx]
add al, 0x50
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x7c
ror al, 3
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98110]
cmp edx, eax
jne 0x10006070
mov eax, dword [ebp - 0x98114]
lea edx, [ebp - 0x98118]
mov dword [edi + 0x1b], eax
mov eax, dword [esi + 0xb8]
mov dword [ebp - 0x98118], eax
mov al, 0xb4
sub al, byte [edx]
ror al, 3
rol al, 2
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98114]
cmp edx, eax
jne 0x100060c8
mov eax, dword [ebp - 0x98118]
lea ebx, [ebp - 0x9811c]
mov dword [edi + 0x1f], eax
mov eax, dword [esi + 0xc0]
mov dword [ebp - 0x9811c], eax
nop
mov cl, byte [ebx]
mov al, cl
mov dl, cl
add al, al
shr dl, 1
xor dl, al
xor cl, 0xfd
add cl, cl
and dl, 0x55
xor dl, cl
rol dl, 3
mov cl, dl
movzx eax, dl
xor eax, 2
xor cl, 0xd2
shr eax, 1
add cl, cl
xor ecx, eax
xor dl, 0x99
add dl, dl
and ecx, 0x55
movzx eax, dl
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
add al, 2
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98118]
cmp ebx, eax
jne 0x10006120
mov eax, dword [ebp - 0x9811c]
lea edx, [ebp - 0x98120]
mov dword [edi + 0x23], eax
mov eax, dword [esi + 0xc8]
mov dword [ebp - 0x98120], eax
mov cl, byte [edx]
mov al, 0x23
ror cl, 1
rol cl, 4
rol cl, 3
sub al, cl
rol al, 4
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9811c]
cmp edx, eax
jne 0x10006187
mov eax, dword [ebp - 0x98120]
lea edx, [ebp - 0x98124]
mov dword [edi + 0x27], eax
mov eax, dword [esi + 0xd0]
mov dword [ebp - 0x98124], eax
nop word [eax + eax]
movzx eax, byte [edx]
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
ror al, 2
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98120]
cmp edx, eax
jne 0x100061f0
mov eax, dword [ebp - 0x98124]
lea edx, [ebp - 0x98128]
mov dword [edi + 0x2b], eax
mov eax, dword [esi + 0xd8]
mov dword [ebp - 0x98128], eax
nop word [eax + eax]
movzx eax, byte [edx]
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x76
rol al, 4
ror al, 2
rol al, 3
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98124]
cmp edx, eax
jne 0x10006270
mov eax, dword [ebp - 0x98128]
lea edx, [ebp - 0x9812c]
mov dword [edi + 0x2f], eax
mov eax, dword [esi + 0xe0]
mov dword [ebp - 0x9812c], eax
nop dword [eax]
mov al, byte [edx]
mov cl, 0x58
rol al, 2
sub cl, al
lea eax, [ebp - 0x98128]
rol cl, 3
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x100062f0
mov eax, dword [ebp - 0x9812c]
lea edx, [ebp - 0x98130]
mov dword [edi + 0x33], eax
mov eax, dword [esi + 0xe8]
mov dword [ebp - 0x98130], eax
mov al, byte [edx]
add al, 0x56
ror al, 2
movzx eax, al
mov al, byte [eax + 0x1008b738]
ror al, 1
ror al, 3
movzx eax, al
mov cl, byte [eax + 0x1008b738]
add cl, 0x74
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x9812c]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10006324
mov eax, dword [ebp - 0x98130]
lea ebx, [ebp - 0x98134]
mov dword [edi + 0x37], eax
mov eax, dword [esi + 0xf0]
mov dword [ebp - 0x98134], eax
nop word [eax + eax]
mov al, byte [ebx]
sub al, 4
movzx eax, al
mov cl, byte [eax + 0x1008b738]
rol cl, 2
mov al, cl
mov dl, cl
shr dl, 1
add al, al
xor dl, al
xor cl, 0x2c
and dl, 0x55
lea eax, [ebp - 0x98130]
add cl, cl
xor dl, cl
ror dl, 1
xor dl, 0xf9
ror dl, 3
mov byte [ebx], dl
inc ebx
cmp ebx, eax
jne 0x10006380
mov eax, dword [ebp - 0x98134]
lea ecx, [ebp - 0x98138]
mov dword [edi + 0x3b], eax
mov eax, dword [esi + 0xf8]
mov dword [ebp - 0x98138], eax
mov al, byte [ecx]
xor al, 8
rol al, 4
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
sub al, 0x3d
movzx eax, al
mov al, byte [eax + 0x1008b738]
add al, 0x67
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x98134]
cmp ecx, eax
jne 0x100063d4
mov eax, dword [ebp - 0x98138]
lea ecx, [ebp - 0x9813c]
mov dword [edi + 0x3f], eax
mov eax, dword [esi + 0x100]
mov dword [ebp - 0x9813c], eax
mov al, byte [ecx]
sub al, 0x18
rol al, 3
sub al, 0x32
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x98138]
cmp ecx, eax
jne 0x10006420
mov eax, dword [ebp - 0x9813c]
lea edx, [ebp - 0x98140]
mov dword [edi + 0x43], eax
mov eax, dword [esi + 0x108]
mov dword [ebp - 0x98140], eax
mov cl, byte [edx]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 1
movzx eax, cl
mov al, byte [eax + 0x1008b738]
rol al, 3
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
xor eax, 0x20
mov al, byte [eax + 0x1008b738]
rol al, 2
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9813c]
cmp edx, eax
jne 0x10006451
mov eax, dword [ebp - 0x98140]
lea edx, [ebp - 0x980ec]
mov dword [edi + 0x47], eax
mov eax, dword [esi + 0x110]
mov dword [ebp - 0x980ec], eax
nop dword [eax]
mov al, byte [edx]
movzx ecx, byte [edx]
xor al, 0x39
xor ecx, 0x28
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
rol cl, 1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x980e8]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x100064b0
mov eax, dword [ebp - 0x980ec]
mov dword [edi + 0x4b], eax
mov eax, dword [esi + 0x118]
lea esi, [ebp - 0x98148]
mov dword [ebp - 0x98148], eax
nop
mov dh, byte [esi]
mov dl, dh
mov ch, dh
mov cl, dh
shr ch, 1
mov bl, dh
xor dl, 0xc9
xor dh, 0xc9
add dl, dl
add dh, dh
xor dl, ch
xor dh, ch
mov ah, dl
and ah, 0xd5
xor dh, 0xee
and dh, 0x55
xor cl, 0xfe
add cl, cl
xor bl, 0xfe
xor ah, cl
add bl, bl
xor ah, 0xc4
xor dh, bl
add ah, ah
xor dl, 0xee
add dh, dh
mov al, bl
shr al, 1
and dl, 0x55
xor ah, al
shr dh, 1
and ah, 0x55
xor dl, cl
add dl, dl
xor ah, dl
add ah, ah
xor dh, ah
and dh, 0x55
xor dh, ah
sub dh, 0x14
xor dh, 0x40
mov al, dh
shr dh, 1
add al, al
xor dh, al
and dh, 0x55
xor dh, al
lea eax, [ebp - 0x98144]
mov byte [esi], dh
inc esi
cmp esi, eax
jne 0x10006520
mov esi, dword [ebp - 0x983d0]
mov eax, dword [ebp - 0x98148]
mov dword [edi + 0x4f], eax
mov eax, dword [esi + 0x120]
lea esi, [ebp - 0x9814c]
mov dword [ebp - 0x9814c], eax
nop dword [eax + eax]
mov cl, byte [esi]
ror cl, 2
rol cl, 4
mov al, cl
mov bl, cl
shr bl, 1
add al, al
xor bl, al
xor cl, 0xcb
add cl, cl
and bl, 0x55
xor bl, cl
rol bl, 4
mov al, bl
mov dl, bl
shr dl, 1
add al, al
xor dl, al
xor bl, 0x1e
mov cl, dl
add bl, bl
and cl, 0xd5
mov al, bl
xor cl, bl
shr al, 1
add cl, cl
and dl, 0x55
xor cl, al
xor dl, bl
and cl, 0x55
lea eax, [ebp - 0x98148]
add dl, dl
xor cl, dl
mov byte [esi], cl
inc esi
cmp esi, eax
jne 0x100065c0
mov esi, dword [ebp - 0x983d0]
lea ebx, [ebp - 0x98150]
mov eax, dword [ebp - 0x9814c]
mov dword [edi + 0x53], eax
mov eax, dword [esi + 0x128]
mov dword [ebp - 0x98150], eax
mov dl, byte [ebx]
mov al, dl
xor al, 0x10
add al, al
mov cl, al
movzx eax, dl
shr eax, 1
xor dl, 0x90
xor ecx, eax
add dl, dl
xor ecx, 0xffffffea
movzx eax, dl
and ecx, 0x55
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
sub al, 0x54
rol al, 1
movzx eax, al
mov al, byte [eax + 0x1008b738]
rol al, 1
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x9814c]
cmp ebx, eax
jne 0x10006637
mov eax, dword [ebp - 0x98150]
lea edx, [ebp - 0x98154]
mov dword [edi + 0x57], eax
mov eax, dword [esi + 0x130]
mov dword [ebp - 0x98154], eax
mov al, byte [edx]
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x16
rol al, 4
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98150]
cmp edx, eax
jne 0x10006695
mov eax, dword [ebp - 0x98154]
lea ebx, [ebp - 0x98158]
mov dword [edi + 0x5b], eax
mov eax, dword [esi + 0x138]
mov dword [ebp - 0x98158], eax
mov dl, byte [ebx]
mov cl, dl
xor dl, 0x1d
xor cl, 0x9d
add dl, 0x18
sub cl, 0x68
add dl, dl
mov al, cl
add cl, cl
shr al, 1
xor dl, al
and dl, 0x55
xor dl, cl
rol dl, 2
movzx eax, dl
mov cl, byte [eax + 0x1008b738]
sub cl, 0x26
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x98154]
mov byte [ebx], cl
inc ebx
cmp ebx, eax
jne 0x10006710
mov eax, dword [ebp - 0x98158]
lea edx, [ebp - 0x9815c]
mov dword [edi + 0x5f], eax
mov eax, dword [esi + 0x140]
mov dword [ebp - 0x9815c], eax
mov al, byte [edx]
sub al, 0x5b
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
mov al, 0xf0
imul ecx, ecx, 0x10101
shr ecx, 0x10
not cl
ror cl, 1
sub al, cl
ror al, 1
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98158]
cmp edx, eax
jne 0x10006773
mov eax, dword [ebp - 0x9815c]
lea ecx, [ebp - 0x98160]
mov dword [edi + 0x63], eax
mov eax, dword [esi + 0x148]
mov dword [ebp - 0x98160], eax
mov al, byte [ecx]
ror al, 2
ror al, 2
xor al, 0x45
ror al, 1
movzx eax, al
mov al, byte [eax + 0x1008b738]
add al, 0x62
xor al, 0xe
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x9815c]
cmp ecx, eax
jne 0x100067f3
mov eax, dword [ebp - 0x98160]
lea edx, [ebp - 0x98164]
mov dword [edi + 0x67], eax
mov eax, dword [esi + 0x150]
mov dword [ebp - 0x98164], eax
movzx eax, byte [edx]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 3
rol cl, 3
mov al, cl
movzx ecx, cl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
xor al, 0x4d
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98160]
cmp edx, eax
jne 0x10006834
mov eax, dword [ebp - 0x98164]
lea edx, [esi + 0x155]
xor ecx, ecx
mov dword [edi + 0x6b], eax
nop dword [eax]
mov al, byte [edx]
lea edx, [edx + 2]
sub al, 0x70
movzx eax, al
mov al, byte [eax + 0x1008b738]
xor al, 0x18
sub al, 0x4b
xor al, 0x92
sub al, 0x65
rol al, 4
xor al, 0xb0
mov byte [ecx + edi + 0x6f], al
inc ecx
cmp ecx, 0x40
jl 0x10006890
mov eax, dword [esi + 0x1d8]
lea ebx, [ebp - 0x98168]
mov dword [ebp - 0x98168], eax
nop dword [eax]
mov dl, byte [ebx]
rol dl, 1
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
rol dl, 2
mov cl, dl
add dl, dl
sub cl, 0x41
sub dl, 2
mov al, cl
add cl, cl
shr al, 1
xor dl, al
lea eax, [ebp - 0x98164]
and dl, 0x55
xor dl, cl
sub dl, 0x4e
ror dl, 3
mov byte [ebx], dl
inc ebx
cmp ebx, eax
jne 0x100068d0
mov eax, dword [ebp - 0x98168]
lea edx, [ebp - 0x9816c]
mov dword [edi + 0xaf], eax
mov eax, dword [esi + 0x1e0]
mov dword [ebp - 0x9816c], eax
nop dword [eax]
mov al, byte [edx]
rol al, 1
add al, 0x3a
rol al, 1
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98168]
cmp edx, eax
jne 0x10006940
mov eax, dword [ebp - 0x9816c]
lea edx, [ebp - 0x98170]
mov dword [edi + 0xb3], eax
movzx eax, word [esi + 0x1e6]
mov dword [ebp - 0x98170], eax
nop
movzx eax, byte [edx]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
ror al, 1
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
ror al, 1
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9816e]
cmp edx, eax
jne 0x100069c0
mov ax, word [ebp - 0x98170]
lea edx, [ebp - 0x98174]
mov word [edi + 0xb7], ax
movzx eax, byte [esi + 0x1e9]
xor eax, 0x3a
mov al, byte [eax + 0x1008b738]
rol al, 4
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
sub cl, 0x57
xor cl, 0xb1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov byte [edi + 0xb9], cl
mov eax, dword [esi + 0x1f0]
mov dword [ebp - 0x98174], eax
mov al, byte [edx]
movzx ecx, byte [edx]
add al, al
movzx eax, al
shr ecx, 1
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
ror al, 3
ror al, 2
xor al, 0xea
ror al, 3
sub al, 0x22
movzx eax, al
mov al, byte [eax + 0x1008b738]
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98170]
cmp edx, eax
jne 0x10006aa2
mov eax, dword [ebp - 0x98174]
lea ecx, [ebp - 0x98178]
mov dword [edi + 0xba], eax
mov eax, dword [esi + 0x1f8]
mov dword [ebp - 0x98178], eax
nop dword [eax]
movzx eax, byte [ecx]
mov al, byte [eax + 0x1008b738]
add al, 0x50
xor al, 0x90
ror al, 2
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x98174]
cmp ecx, eax
jne 0x10006b00
mov eax, dword [ebp - 0x98178]
lea edx, [ebp - 0x9817c]
mov dword [edi + 0xbe], eax
movzx eax, word [esi + 0x1fe]
mov dword [ebp - 0x9817c], eax
nop dword [eax]
mov al, byte [edx]
xor al, 0x69
rol al, 3
sub al, 0x4b
movzx eax, al
mov cl, byte [eax + 0x1008b738]
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
xor ecx, 0x79
mov cl, byte [ecx + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x9817a]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10006b40
mov ax, word [ebp - 0x9817c]
lea ebx, [ebp - 0x98180]
mov word [edi + 0xc2], ax
movzx eax, word [esi + 0x202]
mov dword [ebp - 0x98180], eax
nop dword [eax]
mov dl, byte [ebx]
add dl, 0x17
mov al, dl
movzx ecx, dl
add al, al
shr ecx, 1
xor ecx, eax
xor dl, 0x2e
add dl, dl
and ecx, 0x55
movzx eax, dl
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
rol al, 4
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
xor al, 0xb3
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x9817e]
cmp ebx, eax
jne 0x10006bb0
mov ax, word [ebp - 0x98180]
lea edx, [ebp - 0x98184]
mov word [edi + 0xc4], ax
movzx eax, word [esi + 0x206]
mov dword [ebp - 0x98184], eax
mov al, byte [edx]
not al
ror al, 1
rol al, 1
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98182]
cmp edx, eax
jne 0x10006c16
mov ax, word [ebp - 0x98184]
mov word [edi + 0xc6], ax
movzx eax, byte [esi + 0x209]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
rol cl, 3
add cl, 0x3c
ror cl, 1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 2
rol cl, 1
mov byte [edi + 0xc8], cl
lea ecx, [ebp - 0x98188]
mov eax, dword [esi + 0x210]
mov dword [ebp - 0x98188], eax
nop
mov al, byte [ecx]
rol al, 3
not al
rol al, 2
ror al, 2
add al, 0x31
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x98184]
cmp ecx, eax
jne 0x10006cd0
mov eax, dword [ebp - 0x98188]
lea ecx, [ebp - 0x9818c]
mov dword [edi + 0xc9], eax
mov eax, dword [esi + 0x218]
mov dword [ebp - 0x9818c], eax
nop word [eax + eax]
mov al, byte [ecx]
ror al, 1
movzx eax, al
xor eax, 0xbc
mov al, byte [eax + 0x1008b738]
add al, 0x3f
xor al, 0xd7
sub al, 0x13
movzx eax, al
mov al, byte [eax + 0x1008b738]
xor al, 0x53
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x98188]
cmp ecx, eax
jne 0x10006d10
mov eax, dword [ebp - 0x9818c]
lea edx, [ebp - 0x98190]
mov dword [edi + 0xcd], eax
mov eax, dword [esi + 0x220]
mov dword [ebp - 0x98190], eax
nop
mov cl, byte [edx]
mov al, 0x23
ror cl, 1
rol cl, 4
rol cl, 3
sub al, cl
rol al, 4
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9818c]
cmp edx, eax
jne 0x10006d60
mov eax, dword [ebp - 0x98190]
lea edx, [ebp - 0x98194]
mov dword [edi + 0xd1], eax
movzx eax, byte [esi + 0x225]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
rol cl, 3
add cl, 0x3c
ror cl, 1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 2
rol cl, 1
mov byte [edi + 0xd5], cl
mov eax, dword [esi + 0x22c]
mov dword [ebp - 0x98194], eax
nop dword [eax + eax]
mov al, byte [edx]
sub al, 0x66
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98190]
cmp edx, eax
jne 0x10006e00
mov eax, dword [ebp - 0x98194]
mov dword [edi + 0xd6], eax
mov eax, dword [esi + 0x234]
lea esi, [ebp - 0x98198]
mov dword [ebp - 0x98198], eax
mov cl, byte [esi]
ror cl, 2
rol cl, 4
mov al, cl
mov bl, cl
shr bl, 1
add al, al
xor bl, al
xor cl, 0xcb
add cl, cl
and bl, 0x55
xor bl, cl
rol bl, 4
mov al, bl
mov dl, bl
shr dl, 1
add al, al
xor dl, al
xor bl, 0x1e
mov cl, dl
add bl, bl
and cl, 0xd5
mov al, bl
xor cl, bl
shr al, 1
add cl, cl
and dl, 0x55
xor cl, al
xor dl, bl
and cl, 0x55
lea eax, [ebp - 0x98194]
add dl, dl
xor cl, dl
mov byte [esi], cl
inc esi
cmp esi, eax
jne 0x10006e54
mov esi, dword [ebp - 0x983d0]
mov eax, dword [ebp - 0x98198]
mov dword [edi + 0xda], eax
mov dl, byte [esi + 0x239]
rol dl, 1
rol dl, 4
add dl, 0x2b
mov al, dl
mov cl, dl
xor cl, 0xe2
xor al, 0x22
add cl, cl
shr al, 1
xor cl, al
xor dl, 0x75
and cl, 0x55
add dl, dl
xor cl, dl
lea edx, [ebp - 0x9819c]
rol cl, 1
xor cl, 0x94
mov byte [edi + 0xde], cl
mov eax, dword [esi + 0x240]
mov dword [ebp - 0x9819c], eax
mov al, byte [edx]
mov cl, 0x58
rol al, 2
sub cl, al
lea eax, [ebp - 0x98198]
rol cl, 3
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10006f00
mov eax, dword [ebp - 0x9819c]
lea ebx, [ebp - 0x98144]
mov dword [edi + 0xdf], eax
mov eax, dword [esi + 0x248]
mov dword [ebp - 0x98144], eax
mov dl, byte [ebx]
mov cl, dl
movzx eax, dl
shr eax, 1
xor cl, 0x10
add cl, cl
xor dl, 0x90
xor ecx, eax
add dl, dl
xor ecx, 0xffffffea
movzx eax, dl
and ecx, 0x55
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
sub al, 0x54
rol al, 1
movzx eax, al
mov al, byte [eax + 0x1008b738]
rol al, 1
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98140]
cmp ebx, eax
jne 0x10006f37
mov eax, dword [ebp - 0x98144]
lea edx, [ebp - 0x981a0]
mov dword [edi + 0xe3], eax
mov eax, dword [esi + 0x250]
mov dword [ebp - 0x981a0], eax
mov al, byte [edx]
ror al, 1
ror al, 3
add al, 0x2a
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 4
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9819c]
cmp edx, eax
jne 0x10006f97
mov eax, dword [ebp - 0x981a0]
lea edx, [ebp - 0x981a4]
mov dword [edi + 0xe7], eax
mov eax, dword [esi + 0x258]
mov dword [ebp - 0x981a4], eax
mov cl, byte [edx]
xor cl, 0x7b
sub cl, 0x29
rol cl, 2
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x981a0]
sub cl, 0x32
ror cl, 2
xor cl, 0x88
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10006ff3
mov eax, dword [ebp - 0x981a4]
lea ebx, [ebp - 0x981a8]
mov dword [edi + 0xeb], eax
mov eax, dword [esi + 0x260]
mov dword [ebp - 0x981a8], eax
nop
mov dl, byte [ebx]
sub dl, 0x75
rol dl, 4
mov cl, dl
xor dl, 0xe2
sub cl, 0x80
add dl, dl
mov al, cl
xor cl, 0xe2
shr al, 1
add cl, cl
xor dl, al
lea eax, [ebp - 0x981a4]
xor dl, 0xfb
and dl, 0x55
xor dl, cl
rol dl, 2
rol dl, 2
mov byte [ebx], dl
inc ebx
cmp ebx, eax
jne 0x10007040
mov eax, dword [ebp - 0x981a8]
lea edx, [ebp - 0x981ac]
mov dword [edi + 0xef], eax
mov eax, dword [esi + 0x268]
mov dword [ebp - 0x981ac], eax
mov cl, byte [edx]
sub cl, 0x1f
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
xor cl, 0x38
mov al, cl
movzx ecx, cl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
xor ecx, 0xcf
movzx eax, byte [ecx + 0x1008b738]
mov al, byte [eax + 0x1008b738]
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981a8]
cmp edx, eax
jne 0x10007096
mov eax, dword [ebp - 0x981ac]
lea edx, [ebp - 0x981b0]
mov dword [edi + 0xf3], eax
mov eax, dword [esi + 0x270]
mov dword [ebp - 0x981b0], eax
mov al, byte [edx]
add al, 0x2a
movzx eax, al
mov cl, byte [eax + 0x1008b738]
xor cl, 0xb8
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
rol cl, 3
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x981ac]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10007108
mov eax, dword [ebp - 0x981b0]
lea edx, [ebp - 0x981b4]
mov dword [edi + 0xf7], eax
mov eax, dword [esi + 0x278]
mov dword [ebp - 0x981b4], eax
nop dword [eax]
mov al, byte [edx]
rol al, 3
movzx eax, al
mov cl, byte [eax + 0x1008b738]
xor cl, 0x41
sub cl, 0x7b
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
sub cl, 0x39
ror cl, 1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x981b0]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10007180
mov eax, dword [ebp - 0x981b4]
lea edx, [ebp - 0x981b8]
mov dword [edi + 0xfb], eax
mov eax, dword [esi + 0x280]
mov dword [ebp - 0x981b8], eax
nop
mov cl, byte [edx]
sub cl, 0x1f
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
xor cl, 0x38
mov al, cl
movzx ecx, cl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
xor ecx, 0xcf
movzx eax, byte [ecx + 0x1008b738]
mov al, byte [eax + 0x1008b738]
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981b4]
cmp edx, eax
jne 0x100071e0
mov eax, dword [ebp - 0x981b8]
lea edx, [ebp - 0x981bc]
mov dword [edi + 0xff], eax
mov eax, dword [esi + 0x288]
mov dword [ebp - 0x981bc], eax
mov al, byte [edx]
ror al, 1
ror al, 3
add al, 0x2a
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 4
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981b8]
cmp edx, eax
jne 0x10007252
mov eax, dword [ebp - 0x981bc]
lea edx, [ebp - 0x981c0]
mov dword [edi + 0x103], eax
mov eax, dword [esi + 0x290]
mov dword [ebp - 0x981c0], eax
nop
movzx eax, byte [edx]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 1
not al
ror al, 2
add al, 0x1c
rol al, 1
add al, 0x2c
not al
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981bc]
cmp edx, eax
jne 0x100072b0
mov eax, dword [ebp - 0x981c0]
lea edx, [ebp - 0x981c4]
mov dword [edi + 0x107], eax
mov eax, dword [esi + 0x298]
mov dword [ebp - 0x981c4], eax
nop
movzx eax, byte [edx]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
movzx eax, byte [ecx + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x981c0]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10007310
mov eax, dword [ebp - 0x981c4]
lea edx, [ebp - 0x981c8]
mov dword [edi + 0x10b], eax
mov eax, dword [esi + 0x2a0]
mov dword [ebp - 0x981c8], eax
nop dword [eax]
mov cl, byte [edx]
sub cl, 0x1f
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
xor cl, 0x38
mov al, cl
movzx ecx, cl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
xor ecx, 0xcf
movzx eax, byte [ecx + 0x1008b738]
mov al, byte [eax + 0x1008b738]
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981c4]
cmp edx, eax
jne 0x10007390
mov eax, dword [ebp - 0x981c8]
mov dword [edi + 0x10f], eax
movzx eax, word [esi + 0x2a6]
lea esi, [ebp - 0x981cc]
mov dword [ebp - 0x981cc], eax
mov dl, byte [esi]
mov cl, dl
shr dl, 1
add cl, cl
xor dl, cl
mov al, cl
mov bl, dl
shr al, 1
and bl, 0xd5
and dl, 0x55
xor bl, cl
xor dl, cl
xor bl, 0xcb
xor dl, 0xcb
add bl, bl
add dl, dl
xor bl, al
lea eax, [ebp - 0x981ca]
xor bl, 0xef
and bl, 0x55
xor bl, dl
add bl, 0x4c
rol bl, 1
xor bl, 7
sub bl, 0x1f
mov byte [esi], bl
inc esi
cmp esi, eax
jne 0x10007403
mov esi, dword [ebp - 0x983d0]
lea edx, [ebp - 0x981d0]
mov ax, word [ebp - 0x981cc]
mov word [edi + 0x113], ax
mov eax, dword [esi + 0x2ac]
mov dword [ebp - 0x981d0], eax
nop
mov cl, byte [edx]
sub cl, 0x1f
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
xor cl, 0x38
mov al, cl
movzx ecx, cl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
xor ecx, 0xcf
movzx eax, byte [ecx + 0x1008b738]
mov al, byte [eax + 0x1008b738]
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981cc]
cmp edx, eax
jne 0x10007470
mov eax, dword [ebp - 0x981d0]
lea ecx, [ebp - 0x981d4]
mov dword [edi + 0x115], eax
mov eax, dword [esi + 0x2b4]
mov dword [ebp - 0x981d4], eax
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
xor eax, 0xa0
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
xor al, 0xf5
sub al, 0x4c
xor al, 0xb5
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x981d0]
cmp ecx, eax
jne 0x100074e2
mov eax, dword [ebp - 0x981d4]
lea ebx, [ebp - 0x981d8]
mov dword [edi + 0x119], eax
mov eax, dword [esi + 0x2bc]
mov dword [ebp - 0x981d8], eax
mov dl, byte [ebx]
rol dl, 1
rol dl, 4
add dl, 0x2b
mov al, dl
mov cl, dl
xor cl, 0xe2
xor al, 0x22
add cl, cl
shr al, 1
xor cl, al
xor dl, 0x75
and cl, 0x55
lea eax, [ebp - 0x981d4]
add dl, dl
xor cl, dl
rol cl, 1
xor cl, 0x94
mov byte [ebx], cl
inc ebx
cmp ebx, eax
jne 0x10007536
mov eax, dword [ebp - 0x981d8]
mov dword [edi + 0x11d], eax
lea edi, [ebp - 0x981dc]
movzx eax, word [esi + 0x2c2]
mov dword [ebp - 0x981dc], eax
nop word [eax + eax]
mov dl, byte [edi]
rol dl, 4
xor dl, 0x47
ror dl, 1
mov cl, dl
movzx eax, dl
xor cl, 0xf7
xor eax, 0x22
add cl, cl
shr eax, 1
xor ecx, eax
xor dl, 0x98
and ecx, 0x55
add dl, dl
movzx eax, dl
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x981da]
mov byte [edi], cl
inc edi
cmp edi, eax
jne 0x10007590
mov edi, dword [ebp - 0x983c0]
lea ebx, [ebp - 0x981e0]
mov ax, word [ebp - 0x981dc]
mov word [edi + 0x156], ax
movzx eax, word [esi + 0x2c2]
mov dword [ebp - 0x981e0], eax
nop
mov dl, byte [ebx]
rol dl, 4
xor dl, 0x47
ror dl, 1
mov cl, dl
movzx eax, dl
xor cl, 0xf7
xor eax, 0x22
add cl, cl
shr eax, 1
xor ecx, eax
xor dl, 0x98
and ecx, 0x55
add dl, dl
movzx eax, dl
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x981de]
mov byte [ebx], cl
inc ebx
cmp ebx, eax
jne 0x10007600
mov eax, dword [ebp - 0x981e0]
movzx ecx, ax
mov dword [ebp - 0x983bc], ecx
test ax, ax
je 0x10007976
lea ecx, [edi + 0x160]
lea edi, [esi + 0x2dc]
mov esi, dword [ebp - 0x983bc]
mov dword [ecx - 8], 0
lea edx, [ebp - 0x981e4]
mov dword [ecx - 4], 0
xor eax, eax
mov dword [ecx + 0x18], 0
mov ebx, ecx
mov dword [ecx + 0x1c], 0
mov dword [ecx + 8], 0
mov word [ecx + 0xc], ax
mov byte [ecx + 0xe], al
mov eax, dword [edi - 0x10]
mov dword [ebp - 0x981e4], eax
nop
mov cl, byte [edx]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 1
movzx eax, cl
mov al, byte [eax + 0x1008b738]
rol al, 3
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
xor eax, 0x20
mov al, byte [eax + 0x1008b738]
rol al, 2
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981e0]
cmp edx, eax
jne 0x100076b0
mov eax, dword [ebp - 0x981e4]
lea edx, [ebp - 0x981e8]
mov dword [ebx - 8], eax
mov eax, dword [edi - 8]
mov dword [ebp - 0x981e8], eax
nop dword [eax + eax]
movzx eax, byte [edx]
xor eax, 0xeb
mov cl, byte [eax + 0x1008b738]
xor cl, 0x8e
ror cl, 2
mov al, cl
xor cl, 0x20
shr cl, 1
xor al, 0x24
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x981e4]
rol cl, 1
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10007710
mov eax, dword [ebp - 0x981e8]
lea edx, [ebp - 0x981ec]
mov dword [ebx - 4], eax
mov eax, dword [edi]
mov dword [ebp - 0x981ec], eax
nop dword [eax]
movzx eax, byte [edx]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x32
not al
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981e8]
cmp edx, eax
jne 0x10007770
mov eax, dword [ebp - 0x981ec]
lea edx, [ebp - 0x981f0]
mov dword [ebx], eax
mov al, byte [edi + 5]
rol al, 4
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x4a
mov byte [ebx + 4], al
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x981f0], eax
mov al, byte [edx]
add al, 0x78
movzx eax, al
xor eax, 0x66
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
sub al, 0x3f
movzx eax, al
mov al, byte [eax + 0x1008b738]
ror al, 2
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981ec]
cmp edx, eax
jne 0x10007812
mov eax, dword [ebp - 0x981f0]
lea edx, [ebp - 0x981f4]
mov dword [ebx + 5], eax
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x981f4], eax
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [edx]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 4
rol al, 1
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x27
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981f0]
cmp edx, eax
jne 0x10007870
mov eax, dword [ebp - 0x981f4]
lea edx, [ebp - 0x981f8]
mov dword [ebx + 9], eax
movzx eax, word [edi + 0x1a]
mov dword [ebp - 0x981f8], eax
mov al, byte [edx]
add al, 0x56
ror al, 2
movzx eax, al
mov al, byte [eax + 0x1008b738]
ror al, 1
ror al, 3
movzx eax, al
mov cl, byte [eax + 0x1008b738]
add cl, 0x74
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x981f6]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10007912
mov ax, word [ebp - 0x981f8]
lea ecx, [ebx + 0x17]
mov word [ebx + 0xd], ax
add edi, 0x34
mov eax, esi
dec esi
cmp eax, 1
jne 0x10007672
mov esi, dword [ebp - 0x983d0]
mov edi, dword [ebp - 0x983c0]
movzx eax, word [esi + 0x4cfae]
lea edx, [ebp - 0x981fc]
mov dword [ebp - 0x981fc], eax
nop dword [eax]
movzx eax, byte [edx]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
sub cl, 0x37
movzx eax, cl
mov al, byte [eax + 0x1008b738]
ror al, 3
ror al, 3
movzx eax, al
mov al, byte [eax + 0x1008b738]
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981fa]
cmp edx, eax
jne 0x10007990
mov ax, word [ebp - 0x981fc]
lea edx, [ebp - 0x98200]
mov word [edi + 0x220e6], ax
movzx eax, word [esi + 0x4cfae]
mov dword [ebp - 0x98200], eax
nop
movzx eax, byte [edx]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
sub cl, 0x37
movzx eax, cl
mov al, byte [eax + 0x1008b738]
ror al, 3
ror al, 3
movzx eax, al
mov al, byte [eax + 0x1008b738]
mov byte [edx], al
inc edx
lea eax, [ebp - 0x981fe]
cmp edx, eax
jne 0x100079f0
mov eax, dword [ebp - 0x98200]
movzx ecx, ax
mov dword [ebp - 0x983c8], ecx
test ax, ax
je 0x10007d72
lea ecx, [edi + 0x220ee]
lea ebx, [esi + 0x4cfc1]
mov dword [ebp - 0x983bc], ecx
mov dword [ebp - 0x983c4], ebx
mov esi, ecx
mov dword [ecx - 6], 0
lea edi, [ebp - 0x98204]
mov dword [ecx - 2], 0
mov dword [ecx + 2], 0
mov dword [ecx + 6], 0
mov dword [ecx + 0xa], 0
mov dword [ecx + 0xe], 0
mov eax, dword [ebx - 9]
mov dword [ebp - 0x98204], eax
nop dword [eax]
mov dh, byte [edi]
mov dl, dh
mov ch, dh
mov cl, dh
shr ch, 1
mov bl, dh
xor dl, 0xc9
xor dh, 0xc9
add dl, dl
add dh, dh
xor dl, ch
xor dh, ch
mov ah, dl
and ah, 0xd5
xor dh, 0xee
and dh, 0x55
xor cl, 0xfe
add cl, cl
xor bl, 0xfe
xor ah, cl
add bl, bl
xor ah, 0xc4
xor dh, bl
add ah, ah
xor dl, 0xee
add dh, dh
mov al, bl
shr al, 1
and dl, 0x55
xor ah, al
shr dh, 1
and ah, 0x55
xor dl, cl
add dl, dl
xor ah, dl
add ah, ah
xor dh, ah
and dh, 0x55
xor dh, ah
sub dh, 0x14
xor dh, 0x40
mov al, dh
shr dh, 1
add al, al
xor dh, al
and dh, 0x55
xor dh, al
lea eax, [ebp - 0x98200]
mov byte [edi], dh
inc edi
cmp edi, eax
jne 0x10007aa0
mov ebx, dword [ebp - 0x983c4]
lea edx, [ebp - 0x98208]
mov eax, dword [ebp - 0x98204]
mov dword [esi - 6], eax
movzx eax, word [ebx - 3]
mov dword [ebp - 0x98208], eax
nop dword [eax]
mov al, 0x4c
sub al, byte [edx]
ror al, 2
ror al, 2
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 1
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98206]
cmp edx, eax
jne 0x10007b40
mov ax, word [ebp - 0x98208]
lea edi, [ebp - 0x9820c]
mov word [esi - 2], ax
mov dl, byte [ebx]
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
rol dl, 2
xor dl, 0xd8
add dl, 0x2b
rol dl, 3
mov al, dl
mov cl, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 0xf9
and cl, 0x55
add dl, dl
xor cl, dl
mov byte [esi], cl
mov al, byte [ebx + 2]
sub al, 0x13
movzx eax, al
mov cl, byte [eax + 0x1008b738]
rol cl, 3
add cl, 7
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
xor cl, 0x4d
add cl, 0xb
mov byte [esi + 1], cl
mov eax, dword [ebx + 7]
mov dword [ebp - 0x9820c], eax
mov dl, byte [edi]
mov cl, dl
add dl, dl
sub cl, 0x5f
sub dl, 0x3e
mov al, cl
add cl, cl
shr al, 1
xor dl, al
and dl, 0x55
xor dl, cl
add dl, 0x25
movzx eax, dl
mov al, byte [eax + 0x1008b738]
add al, 0x7d
xor al, 0x48
sub al, 0x1d
mov byte [edi], al
inc edi
lea eax, [ebp - 0x98208]
cmp edi, eax
jne 0x10007c00
mov eax, dword [ebp - 0x9820c]
lea edx, [ebp - 0x98210]
mov dword [esi + 2], eax
mov eax, dword [ebx + 0xf]
mov dword [ebp - 0x98210], eax
mov al, 0x35
sub al, byte [edx]
not al
rol al, 4
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x76
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9820c]
cmp edx, eax
jne 0x10007c50
mov eax, dword [ebp - 0x98210]
lea edx, [ebp - 0x98214]
mov dword [esi + 6], eax
mov eax, dword [ebx + 0x17]
mov dword [ebp - 0x98214], eax
movzx eax, byte [edx]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
movzx eax, byte [ecx + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x98210]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10007ca5
mov eax, dword [ebp - 0x98214]
lea ecx, [ebp - 0x98218]
mov dword [esi + 0xa], eax
mov eax, dword [ebx + 0x1f]
mov dword [ebp - 0x98218], eax
nop dword [eax + eax]
mov al, byte [ecx]
sub al, 0x18
rol al, 3
sub al, 0x32
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x98214]
cmp ecx, eax
jne 0x10007d20
mov eax, dword [ebp - 0x98218]
lea ecx, [esi + 0x18]
mov edx, dword [ebp - 0x983c8]
add ebx, 0x34
mov dword [esi + 0xe], eax
mov eax, edx
dec edx
mov dword [ebp - 0x983c4], ebx
mov dword [ebp - 0x983c8], edx
cmp eax, 1
je 0x10007d66
mov esi, ecx
jmp 0x10007a60
mov esi, dword [ebp - 0x983d0]
mov edi, dword [ebp - 0x983c0]
movzx eax, byte [esi + 0x5af21]
lea edx, [ebp - 0x9821c]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
xor eax, 0x2f
mov al, byte [eax + 0x1008b738]
sub al, 0x6e
mov byte [edi + 0x28808], al
mov eax, dword [esi + 0x5af28]
mov dword [ebp - 0x9821c], eax
nop
mov al, byte [edx]
ror al, 1
ror al, 3
add al, 0x2a
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 4
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98218]
cmp edx, eax
jne 0x10007dc0
mov eax, dword [ebp - 0x9821c]
mov dword [edi + 0x28809], eax
mov dl, byte [esi + 0x5af2d]
mov cl, dl
add dl, dl
sub cl, 0x55
sub dl, 0x2a
mov al, cl
add cl, cl
shr al, 1
xor dl, al
and dl, 0x55
xor dl, cl
mov al, dl
movzx ecx, dl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
rol cl, 1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
add cl, 0x1c
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov byte [edi + 0x2880d], cl
mov dl, byte [esi + 0x5af2d]
mov cl, dl
add dl, dl
sub cl, 0x55
sub dl, 0x2a
mov al, cl
add cl, cl
shr al, 1
xor dl, al
and dl, 0x55
xor dl, cl
mov al, dl
movzx ecx, dl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov dl, byte [ecx + 0x1008b738]
xor ecx, ecx
rol dl, 1
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
add dl, 0x1c
mov ah, dl
mov al, dl
shr al, 1
add ah, ah
xor al, ah
and al, 0x55
cmp ah, al
je 0x10007f07
movzx edx, dl
lea ebx, [esi + 0x5af2f]
shr edx, 1
movzx eax, ah
xor edx, eax
and edx, 0x55
xor edx, eax
mov al, byte [ebx]
lea ebx, [ebx + 2]
rol al, 2
ror al, 2
movzx eax, al
mov al, byte [eax + 0x1008b738]
add al, 0x15
movzx eax, al
mov al, byte [eax + 0x1008b738]
sub al, 0x1b
ror al, 3
ror al, 3
mov byte [ecx + edi + 0x2880e], al
inc ecx
cmp ecx, edx
jl 0x10007ed4
push 0x2e
lea eax, [edi + 0x2899e]
push 0
push eax
mov dword [ebp - 0x983c8], eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esi + 0x5b258]
lea edx, [ebp - 0x98220]
add esp, 0xc
mov dword [ebp - 0x98220], eax
mov al, byte [edx]
movzx ecx, byte [edx]
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
dec al
movzx eax, al
mov cl, byte [eax + 0x1008b738]
xor cl, 0xc9
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x9821c]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10007f32
mov eax, dword [ebp - 0x98220]
lea ebx, [ebp - 0x98224]
mov dword [edi + 0x2899e], eax
mov eax, dword [esi + 0x5b260]
mov dword [ebp - 0x98224], eax
nop
mov cl, byte [ebx]
mov al, cl
mov dl, cl
add dl, 0x66
sub al, 0x1a
shr dl, 1
add al, al
xor dl, al
add cl, cl
and dl, 0x55
sub cl, 0x34
xor dl, cl
rol dl, 2
sub dl, 0x64
ror dl, 2
movzx eax, dl
mov al, byte [eax + 0x1008b738]
add al, 0x5b
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98220]
cmp ebx, eax
jne 0x10007fa0
mov eax, dword [ebp - 0x98224]
lea edx, [ebp - 0x98228]
mov dword [edi + 0x289a2], eax
mov eax, dword [esi + 0x5b268]
mov dword [ebp - 0x98228], eax
nop word [eax + eax]
mov al, byte [edx]
ror al, 2
rol al, 4
add al, 0x53
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98224]
cmp edx, eax
jne 0x10008000
mov eax, dword [ebp - 0x98228]
lea ebx, [esi + 0x5b26d]
mov dword [edi + 0x289a6], eax
xor edx, edx
lea eax, [edi + 0x289aa]
mov dword [ebp - 0x983bc], eax
mov edi, eax
nop
mov al, byte [ebx]
lea ebx, [ebx + 2]
rol al, 4
not al
ror al, 2
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
ror al, 3
mov byte [edx + edi], al
inc edx
cmp edx, 0x11
jl 0x10008060
mov eax, dword [esi + 0x5b294]
lea edx, [ebp - 0x9822c]
mov dword [ebp - 0x9822c], eax
nop word [eax + eax]
movzx eax, byte [edx]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 4
rol al, 1
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x27
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98228]
cmp edx, eax
jne 0x100080e0
mov ecx, dword [ebp - 0x983c8]
lea edi, [ebp - 0x98230]
mov eax, dword [ebp - 0x9822c]
mov dword [ecx + 0x1d], eax
mov eax, dword [esi + 0x5b29c]
mov dword [ebp - 0x98230], eax
nop word [eax + eax]
mov cl, byte [edi]
ror cl, 2
rol cl, 4
mov al, cl
mov bl, cl
shr bl, 1
add al, al
xor bl, al
xor cl, 0xcb
add cl, cl
and bl, 0x55
xor bl, cl
rol bl, 4
mov al, bl
mov dl, bl
shr dl, 1
add al, al
xor dl, al
xor bl, 0x1e
mov cl, dl
add bl, bl
and cl, 0xd5
mov al, bl
xor cl, bl
shr al, 1
add cl, cl
and dl, 0x55
xor cl, al
xor dl, bl
and cl, 0x55
lea eax, [ebp - 0x9822c]
add dl, dl
xor cl, dl
mov byte [edi], cl
inc edi
cmp edi, eax
jne 0x10008190
mov ecx, dword [ebp - 0x983c8]
lea edx, [ebp - 0x98234]
mov eax, dword [ebp - 0x98230]
mov edi, dword [ebp - 0x983c0]
mov dword [ecx + 0x21], eax
mov eax, dword [esi + 0x5b2a4]
mov dword [ebp - 0x98234], eax
nop dword [eax]
mov al, byte [edx]
sub al, 0x6c
ror al, 1
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
mov al, 0x40
imul ecx, ecx, 0x10101
shr ecx, 0x10
sub al, cl
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98230]
cmp edx, eax
jne 0x10008210
mov eax, dword [ebp - 0x98234]
lea edx, [ebp - 0x98238]
mov dword [edi + 0x289c3], eax
mov eax, dword [esi + 0x5b2ac]
mov dword [ebp - 0x98238], eax
nop word [eax + eax]
mov cl, byte [edx]
mov al, 0xa
ror cl, 3
rol cl, 4
sub al, cl
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98234]
cmp edx, eax
jne 0x10008270
mov eax, dword [ebp - 0x98238]
lea edx, [ebp - 0x9823c]
mov dword [edi + 0x289c7], eax
mov al, 0x84
mov cl, byte [esi + 0x5b2b1]
sub cl, 0x65
ror cl, 2
sub al, cl
mov byte [edi + 0x289cb], al
movzx eax, word [esi + 0x5b2b6]
mov dword [ebp - 0x9823c], eax
nop
mov cl, byte [edx]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 1
movzx eax, cl
mov al, byte [eax + 0x1008b738]
rol al, 3
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
xor eax, 0x20
mov al, byte [eax + 0x1008b738]
rol al, 2
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9823a]
cmp edx, eax
jne 0x100082c0
mov ax, word [ebp - 0x9823c]
lea edx, [ebp - 0x98240]
mov word [edi + 0x289cc], ax
movzx eax, word [esi + 0x5b2b6]
mov dword [ebp - 0x98240], eax
mov cl, byte [edx]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 1
movzx eax, cl
mov al, byte [eax + 0x1008b738]
rol al, 3
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
xor eax, 0x20
mov al, byte [eax + 0x1008b738]
rol al, 2
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9823e]
cmp edx, eax
jne 0x10008321
mov eax, dword [ebp - 0x98240]
movzx ecx, ax
mov dword [ebp - 0x983c8], ecx
test ax, ax
je 0x100084e9
lea ecx, [esi + 0x5b2d0]
lea ebx, [edi + 0x289d6]
mov dword [ebx - 8], 0
lea edi, [ebp - 0x98244]
mov dword [ebx - 4], 0
mov esi, ecx
mov dword [ebx], 0
mov eax, dword [ecx - 0x10]
mov dword [ebp - 0x98244], eax
nop word [eax + eax]
mov dl, byte [edi]
xor dl, 5
rol dl, 2
rol dl, 4
mov al, dl
mov cl, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 0x3f
and cl, 0x55
lea eax, [ebp - 0x98240]
add dl, dl
xor cl, dl
add cl, 0x60
mov byte [edi], cl
inc edi
cmp edi, eax
jne 0x100083b0
mov eax, dword [ebp - 0x98244]
lea edx, [ebp - 0x98248]
mov dword [ebx - 8], eax
mov eax, dword [esi - 8]
mov dword [ebp - 0x98248], eax
mov cl, byte [edx]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
sub cl, 0x6e
movzx eax, cl
mov cl, byte [eax + 0x1008b738]
xor cl, 0xc
ror cl, 1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
sub cl, 0x59
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x98244]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x100083f7
mov eax, dword [ebp - 0x98248]
lea edx, [ebp - 0x9824c]
mov dword [ebx - 4], eax
mov eax, dword [esi]
mov dword [ebp - 0x9824c], eax
mov al, byte [edx]
rol al, 1
add al, 0x5d
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 1
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98248]
cmp edx, eax
jne 0x10008458
mov eax, dword [ebp - 0x9824c]
lea ecx, [esi + 0x1c]
mov edx, dword [ebp - 0x983c8]
mov dword [ebx], eax
mov eax, edx
dec edx
add ebx, 0xc
mov dword [ebp - 0x983c8], edx
cmp eax, 1
jne 0x10008385
mov esi, dword [ebp - 0x983d0]
mov edi, dword [ebp - 0x983c0]
movzx eax, word [esi + 0x5e96a]
lea ebx, [ebp - 0x98250]
mov dword [ebp - 0x98250], eax
nop dword [eax]
mov dl, byte [ebx]
rol dl, 1
rol dl, 4
add dl, 0x2b
mov al, dl
mov cl, dl
xor cl, 0xe2
xor al, 0x22
add cl, cl
shr al, 1
xor cl, al
xor dl, 0x75
and cl, 0x55
lea eax, [ebp - 0x9824e]
add dl, dl
xor cl, dl
rol cl, 1
xor cl, 0x94
mov byte [ebx], cl
inc ebx
cmp ebx, eax
jne 0x10008500
mov ax, word [ebp - 0x98250]
lea ebx, [ebp - 0x98254]
mov word [edi + 0x2a13e], ax
movzx eax, word [esi + 0x5e96a]
mov dword [ebp - 0x98254], eax
mov dl, byte [ebx]
rol dl, 1
rol dl, 4
add dl, 0x2b
xor dl, 0x62
mov al, dl
mov cl, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 0x17
and cl, 0x55
lea eax, [ebp - 0x98252]
add dl, dl
xor cl, dl
rol cl, 1
xor cl, 0x94
mov byte [ebx], cl
inc ebx
cmp ebx, eax
jne 0x10008556
mov eax, dword [ebp - 0x98254]
movzx ecx, ax
mov dword [ebp - 0x983cc], ecx
xor ecx, ecx
mov dword [ebp - 0x983c4], ecx
test ax, ax
je 0x10008ef7
xor eax, eax
mov dword [ebp - 0x983bc], eax
mov dword [ebp - 0x983d8], eax
nop word [eax + eax]
add eax, 0x2a140
lea ebx, [ecx + esi]
push 0xbf
add edi, eax
mov dword [ebp - 0x983d4], ebx
push 0
push edi
mov dword [ebp - 0x983b8], edi
call sub.VCRUNTIME140.dll_memset
mov eax, dword [ebx + 0x5e974]
lea edx, [ebp - 0x98258]
add esp, 0xc
mov dword [ebp - 0x98258], eax
mov al, byte [edx]
ror al, 1
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x66
ror al, 3
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98254]
cmp edx, eax
jne 0x100085f8
mov eax, dword [ebp - 0x98258]
lea edx, [ebp - 0x9825c]
mov dword [edi], eax
mov eax, dword [ebx + 0x5e97c]
mov dword [ebp - 0x9825c], eax
mov al, byte [edx]
not al
ror al, 1
ror al, 3
sub al, 0x31
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98258]
cmp edx, eax
jne 0x10008672
mov eax, dword [ebp - 0x9825c]
xor edx, edx
mov dword [edi + 4], eax
lea eax, [edi + 8]
mov dword [ebp - 0x983c8], eax
lea edi, [ebx + 0x5e981]
mov esi, eax
nop dword [eax + eax]
mov cl, byte [edi]
lea edi, [edi + 2]
not cl
mov al, 0xd4
rol cl, 4
sub al, cl
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
ror al, 1
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [esi + edx], al
inc edx
cmp edx, 0x17
jl 0x100086d0
mov cl, byte [ebx + 0x5e9af]
lea edx, [ebp - 0x98260]
mov eax, dword [ebp - 0x983b8]
mov esi, dword [ebp - 0x983d0]
rol cl, 1
rol cl, 3
add cl, 0x71
ror cl, 2
mov byte [eax + 0x1f], cl
movzx eax, word [ebx + 0x5e9b2]
mov dword [ebp - 0x98260], eax
nop word [eax + eax]
movzx eax, byte [edx]
xor eax, 0x3a
mov al, byte [eax + 0x1008b738]
rol al, 4
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
sub cl, 0x57
xor cl, 0xb1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x9825e]
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10008770
mov edx, dword [ebp - 0x983b8]
lea ecx, [ebp - 0x98264]
mov ax, word [ebp - 0x98260]
mov word [edx + 0x20], ax
movzx eax, word [ebx + 0x5e9b6]
mov dword [ebp - 0x98264], eax
mov al, byte [ecx]
sub al, 0x52
rol al, 2
ror al, 2
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x98262]
cmp ecx, eax
jne 0x100087d3
mov ax, word [ebp - 0x98264]
mov word [edx + 0x22], ax
lea edx, [ebp - 0x98268]
mov eax, dword [ebx + 0x5e9bc]
mov dword [ebp - 0x98268], eax
mov cl, byte [edx]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 1
movzx eax, cl
mov al, byte [eax + 0x1008b738]
rol al, 3
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
xor eax, 0x20
mov al, byte [eax + 0x1008b738]
rol al, 2
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98264]
cmp edx, eax
jne 0x10008807
mov edi, dword [ebp - 0x983b8]
lea edx, [ebp - 0x9826c]
mov eax, dword [ebp - 0x98268]
mov dword [edi + 0x24], eax
mov eax, dword [ebx + 0x5e9c4]
mov dword [ebp - 0x9826c], eax
mov al, byte [edx]
not al
ror al, 1
ror al, 3
sub al, 0x31
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98268]
cmp edx, eax
jne 0x10008868
mov eax, dword [ebp - 0x9826c]
lea edx, [ebp - 0x98270]
mov dword [edi + 0x28], eax
mov al, byte [ebx + 0x5e9c9]
rol al, 4
not al
ror al, 2
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
ror al, 3
mov byte [edi + 0x2c], al
movzx eax, word [ebx + 0x5e9cc]
mov dword [ebp - 0x98270], eax
nop
mov cl, byte [edx]
add cl, 9
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 1
rol cl, 3
movzx eax, cl
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
xor al, 0x6c
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9826e]
cmp edx, eax
jne 0x10008920
mov edi, dword [ebp - 0x983b8]
lea edx, [ebp - 0x98274]
mov ax, word [ebp - 0x98270]
mov word [edi + 0x2d], ax
movzx eax, word [ebx + 0x5e9d0]
mov dword [ebp - 0x98274], eax
nop word [eax + eax]
mov cl, byte [edx]
sub cl, 0x20
rol cl, 3
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
add cl, 0x4e
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x98272]
xor cl, 0x9f
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x10008980
mov ax, word [ebp - 0x98274]
lea edx, [ebp - 0x98278]
mov word [edi + 0x2f], ax
movzx eax, word [ebx + 0x5e9d4]
mov dword [ebp - 0x98278], eax
nop dword [eax]
mov al, byte [edx]
ror al, 1
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
mov byte [edx], al
inc edx
lea eax, [ebp - 0x98276]
cmp edx, eax
jne 0x100089f0
mov ax, word [ebp - 0x98278]
lea edx, [ebp - 0x9827c]
mov word [edi + 0x31], ax
movzx eax, word [ebx + 0x5e9d4]
mov dword [ebp - 0x9827c], eax
mov al, byte [edx]
ror al, 1
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9827a]
cmp edx, eax
jne 0x10008a96
mov eax, dword [ebp - 0x9827c]
movzx ecx, ax
mov dword [ebp - 0x983c8], ecx
test ax, ax
je 0x10008caa
add edi, 0x36
add ebx, 0x5e9e3
nop
mov dword [edi - 3], 0
lea edx, [ebp - 0x98280]
mov dword [edi + 1], 0
movzx eax, word [ebx - 5]
mov dword [ebp - 0x98280], eax
nop
mov al, 0xa0
sub al, byte [edx]
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edx], al
inc edx
lea eax, [ebp - 0x9827e]
cmp edx, eax
jne 0x10008b60
mov ax, word [ebp - 0x98280]
lea esi, [ebp - 0x98284]
mov word [edi - 3], ax
mov cl, byte [ebx - 2]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
ror cl, 1
movzx eax, cl
mov al, byte [eax + 0x1008b738]
rol al, 3
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
xor eax, 0x20
mov al, byte [eax + 0x1008b738]
rol al, 2
mov byte [edi - 1], al
mov cl, byte [ebx]
add cl, 0x41
xor cl, 0xba
ror cl, 1
mov al, cl
mov dl, cl
xor dl, 0xd5
xor al, 0xd4
shr dl, 1
add al, al
xor dl, al
xor cl, 0xd4
and dl, 0x55
add cl, cl
xor dl, cl
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
add dl, 0x19
mov byte [edi], dl
mov eax, dword [ebx + 5]
mov dword [ebp - 0x98284], eax
nop dword [eax]
movzx eax, byte [esi]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x76
rol al, 4
ror al, 2
rol al, 3
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [esi], al
inc esi
lea eax, [ebp - 0x98280]
cmp esi, eax
jne 0x10008c20
mov eax, dword [ebp - 0x98284]
add ebx, 0x14
mov dword [edi + 1], eax
add edi, 8
sub dword [ebp - 0x983c8], 1
jne 0x10008b40
mov esi, dword [ebp - 0x983d0]
mov ebx, dword [ebp - 0x983d4]
mov eax, dword [ebx + 0x5eb1c]
lea edi, [ebp - 0x98288]
mov dword [ebp - 0x98288], eax
nop dword [eax]
mov al, byte [edi]
ror al, 1
movzx eax, al
mov dl, byte [eax + 0x1008b738]
mov cl, dl
add dl, 0x11
sub cl, 0x6f
add dl, dl
mov al, cl
add cl, cl
shr al, 1
xor dl, al
and dl, 0x55
xor dl, cl
mov al, dl
movzx ecx, dl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
xor al, 0x1e
rol al, 4
mov byte [edi], al
inc edi
lea eax, [ebp - 0x98284]
cmp edi, eax
jne 0x10008cc0
mov edi, dword [ebp - 0x983b8]
mov eax, dword [ebp - 0x98288]
mov dword [ebp - 0x983c8], edi
mov dword [edi + 0xb3], eax
lea edi, [ebp - 0x9828c]
mov dl, byte [ebx + 0x5eb21]
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
add dl, 0x48
ror dl, 2
mov al, dl
mov cl, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 7
and cl, 0x55
add dl, dl
xor cl, dl
mov edx, dword [ebp - 0x983c8]
add cl, 0x35
xor cl, 0x46
xor eax, eax
mov byte [edx + 0xb7], cl
mov dword [edx + 0xb8], 0
mov word [edx + 0xbc], ax
mov byte [edx + 0xbe], al
mov eax, dword [ebx + 0x5eb2c]
mov dword [ebp - 0x9828c], eax
mov al, 0x26
sub al, byte [edi]
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
rol al, 3
sub al, 0x5a
mov byte [edi], al
inc edi
lea eax, [ebp - 0x98288]
cmp edi, eax
jne 0x10008d91
mov eax, dword [ebp - 0x9828c]
mov dword [edx + 0xb8], eax
mov dl, byte [ebx + 0x5eb31]
mov al, dl
mov edi, dword [ebp - 0x983c8]
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
rol dl, 2
xor dl, 0xd8
add dl, 0x2b
rol dl, 3
mov cl, dl
mov al, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 0xf9
and cl, 0x55
add dl, dl
xor cl, dl
mov edx, 4
mov byte [edi + 0xbc], cl
mov cl, 0x23
mov al, byte [ebx + 0x5eb33]
ror al, 1
rol al, 4
rol al, 3
sub cl, al
call fcn.10001510
mov edx, dword [ebp - 0x983d8]
mov ecx, dword [ebp - 0x983bc]
add edx, 0x1cc
inc dword [ebp - 0x983c4]
add ecx, 0xbf
movzx eax, al
mov dword [ebp - 0x983d8], edx
mov dword [ebp - 0x983c8], edx
imul edx, eax, 0x802
imul eax, eax, 0x8020
mov dword [ebp - 0x983bc], ecx
mov dword [ebp - 0x983d4], ecx
and edx, 0x22110
and eax, 0x88440
or edx, eax
imul eax, edx, 0x10101
mov edx, 3
shr eax, 0x10
mov byte [edi + 0xbd], al
mov cl, byte [ebx + 0x5eb35]
call fcn.100014e0
not al
mov edx, 2
mov cl, al
call fcn.100014e0
mov edx, 2
mov cl, al
call fcn.10001510
mov ecx, dword [ebp - 0x983c4]
add al, 0x31
cmp ecx, dword [ebp - 0x983cc]
mov ecx, dword [ebp - 0x983c8]
mov byte [edi + 0xbe], al
mov edi, dword [ebp - 0x983c0]
mov eax, dword [ebp - 0x983d4]
jl 0x100085c0
mov cl, byte [esi + 0x96bdd]
mov edx, 2
not cl
call fcn.10001510
sub al, 0x34
mov edx, 2
mov cl, al
call fcn.10001510
mov edx, 2
mov cl, al
call fcn.100014e0
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
inc al
mov byte [edi + 0x4164c], al
lea edi, [ebp - 0x98290]
mov eax, dword [esi + 0x96be4]
mov dword [ebp - 0x98290], eax
mov dl, byte [edi]
mov al, dl
add dl, 0x15
sub al, 0x6b
add dl, dl
mov bl, al
add al, al
shr bl, 1
xor bl, dl
mov cl, bl
and bl, 0xd5
xor bl, dl
and cl, 0x55
xor cl, al
add bl, 3
add bl, bl
sub cl, 0x7d
mov al, cl
add cl, cl
shr al, 1
xor bl, al
lea eax, [ebp - 0x9828c]
and bl, 0x55
xor bl, cl
xor bl, 0xc3
add bl, 0x70
xor bl, 0xa4
sub bl, 0x2c
mov byte [edi], bl
inc edi
cmp edi, eax
jne 0x10008f62
mov edi, dword [ebp - 0x983c0]
lea ebx, [ebp - 0x98294]
mov eax, dword [ebp - 0x98290]
mov dword [edi + 0x4164d], eax
mov eax, dword [esi + 0x96bec]
mov dword [ebp - 0x98294], eax
mov cl, byte [ebx]
mov edx, 2
call fcn.10001510
not al
mov edx, 4
mov cl, al
call fcn.10001510
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98290]
cmp ebx, eax
jne 0x10008fd3
mov eax, dword [ebp - 0x98294]
mov edx, 2
mov dword [edi + 0x41651], eax
mov cl, byte [esi + 0x96bf1]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
call fcn.100014e0
lea ecx, [esi + 0x96bf3]
mov bl, al
xor bl, 0x32
mov dword [ebp - 0x983cc], ecx
add bl, bl
mov cl, al
shr cl, 1
xor al, 0xb2
xor bl, cl
add al, al
xor bl, 0xfb
mov edx, 3
and bl, 0x55
not bl
and bl, 0xdd
xor bl, al
mov cl, bl
call fcn.10001510
mov edx, 2
mov cl, al
call fcn.100014e0
mov esi, dword [ebp - 0x983cc]
mov cl, al
shr al, 1
add cl, cl
xor al, cl
and al, 0x55
xor al, cl
xor ebx, ebx
mov byte [edi + 0x41655], al
nop dword [eax]
movzx eax, byte [esi]
lea esi, [esi + 2]
mov edx, 2
mov cl, byte [eax + 0x1008b738]
call fcn.10001510
add al, 0x28
mov edx, 2
xor al, 3
sub al, 0xa
mov cl, al
call fcn.100014e0
movzx eax, al
mov al, byte [eax + 0x1008b738]
sub al, 0x5e
mov byte [ebx + edi + 0x41656], al
inc ebx
cmp ebx, 0x18
jl 0x100090d0
mov esi, dword [ebp - 0x983d0]
mov al, byte [esi + 0x96c23]
add al, 0x7d
not al
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edi + 0x4166e], al
mov al, byte [esi + 0x96c23]
add al, 0x7d
not al
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx ecx, al
mov dword [ebp - 0x983bc], ecx
test al, al
je 0x1000931a
lea edx, [esi + 0x96c3c]
mov dword [ebp - 0x983c4], edx
lea ebx, [edi + 0x41677]
nop dword [eax]
mov dword [ebx - 8], 0
lea edi, [ebp - 0x98298]
mov dword [ebx - 4], 0
mov dword [ebx], 0
mov eax, dword [edx - 0x10]
mov dword [ebp - 0x98298], eax
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [edi]
mov edx, 3
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
call fcn.100014e0
add al, 0x3c
mov edx, 1
mov cl, al
call fcn.10001510
mov cl, al
mov edx, 2
add cl, cl
shr al, 1
xor al, cl
and al, 0x55
xor al, cl
mov cl, al
call fcn.10001510
mov edx, 1
mov cl, al
call fcn.100014e0
mov byte [edi], al
inc edi
lea eax, [ebp - 0x98294]
cmp edi, eax
jne 0x100091d0
mov eax, dword [ebp - 0x98298]
lea edi, [ebp - 0x9829c]
mov dword [ebx - 8], eax
mov eax, dword [ebp - 0x983c4]
mov eax, dword [eax - 8]
mov dword [ebp - 0x9829c], eax
nop dword [eax]
movzx eax, byte [edi]
mov edx, 3
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.10001510
sub al, 0x36
mov byte [edi], al
inc edi
lea eax, [ebp - 0x98298]
cmp edi, eax
jne 0x10009250
mov edx, dword [ebp - 0x983c4]
lea ecx, [ebp - 0x982a0]
mov eax, dword [ebp - 0x9829c]
mov dword [ebx - 4], eax
mov eax, dword [edx]
mov dword [ebp - 0x982a0], eax
nop dword [eax]
movzx eax, byte [ecx]
xor eax, 0xb5
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
add al, 0x75
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
xor al, 0x23
add al, 0x44
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x9829c]
cmp ecx, eax
jne 0x100092b0
mov eax, dword [ebp - 0x982a0]
add edx, 0x1c
mov ecx, dword [ebp - 0x983bc]
mov dword [ebx], eax
add ebx, 0xc
mov eax, ecx
mov dword [ebp - 0x983c4], edx
dec ecx
mov dword [ebp - 0x983bc], ecx
cmp eax, 1
jne 0x100091a0
mov edi, dword [ebp - 0x983c0]
mov eax, dword [esi + 0x97718]
lea ebx, [ebp - 0x982a4]
mov dword [ebp - 0x982a4], eax
nop dword [eax]
mov cl, byte [ebx]
mov edx, 1
call fcn.10001510
xor al, 0xa9
mov edx, 3
mov cl, al
call fcn.100014e0
movzx eax, al
mov edx, 3
mov cl, byte [eax + 0x1008b738]
call fcn.100014e0
mov dl, al
mov cl, al
xor dl, 0xfd
xor cl, 0xfc
shr dl, 1
xor al, 0xfc
add cl, cl
add al, al
xor dl, cl
and dl, 0x55
xor dl, al
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
lea eax, [ebp - 0x982a0]
mov byte [ebx], dl
inc ebx
cmp ebx, eax
jne 0x10009330
mov eax, dword [ebp - 0x982a4]
lea ebx, [ebp - 0x982a8]
mov dword [edi + 0x41b1f], eax
mov eax, dword [esi + 0x97718]
mov dword [ebp - 0x982a8], eax
nop
mov cl, byte [ebx]
mov edx, 1
call fcn.10001510
xor al, 0xa9
mov edx, 3
mov cl, al
call fcn.100014e0
movzx eax, al
mov edx, 3
mov cl, byte [eax + 0x1008b738]
call fcn.100014e0
mov dl, al
mov cl, al
xor dl, 0xfd
xor cl, 0xfc
shr dl, 1
xor al, 0xfc
add cl, cl
add al, al
xor dl, cl
and dl, 0x55
xor dl, al
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
lea eax, [ebp - 0x982a4]
mov byte [ebx], dl
inc ebx
cmp ebx, eax
jne 0x100093b0
mov eax, dword [ebp - 0x982a8]
mov dword [ebp - 0x983c8], eax
test eax, eax
jle 0x10009734
lea eax, [edi + 0x41b23]
lea edi, [esi + 0x9772c]
mov dword [ebp - 0x983d8], eax
mov ebx, eax
mov dword [ebp - 0x983bc], edi
lea eax, [edi + 0x78]
mov dword [ebp - 0x983c4], eax
push 0x30
push 0
push ebx
call sub.VCRUNTIME140.dll_memset
mov eax, dword [edi - 8]
lea esi, [ebp - 0x982ac]
add esp, 0xc
mov dword [ebp - 0x982ac], eax
mov al, byte [esi]
mov edx, 4
sub al, 0x70
movzx eax, al
mov cl, byte [eax + 0x1008b738]
xor cl, 0x18
sub cl, 0x4b
xor cl, 0x92
sub cl, 0x65
call fcn.100014e0
xor al, 0xb0
mov byte [esi], al
inc esi
lea eax, [ebp - 0x982a8]
cmp esi, eax
jne 0x10009463
mov eax, dword [ebp - 0x982ac]
lea esi, [ebp - 0x982b0]
mov dword [ebx], eax
mov eax, dword [edi]
mov dword [ebp - 0x982b0], eax
nop dword [eax + eax]
movzx eax, byte [esi]
mov edx, 2
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x1a
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.10001510
sub al, 0x23
mov edx, 1
mov cl, al
call fcn.100014e0
mov byte [esi], al
inc esi
lea eax, [ebp - 0x982ac]
cmp esi, eax
jne 0x100094b0
mov eax, dword [ebp - 0x982b0]
lea edi, [ebx + 8]
mov dword [ebx + 4], eax
lea esi, [ebp - 0x982b4]
mov eax, dword [ebp - 0x983bc]
mov eax, dword [eax]
mov dword [ebp - 0x983b8], edi
mov dword [ebp - 0x982b4], eax
nop dword [eax]
movzx eax, byte [esi]
mov edx, 2
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x1a
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.10001510
sub al, 0x23
mov edx, 1
mov cl, al
call fcn.100014e0
mov byte [esi], al
inc esi
lea eax, [ebp - 0x982b0]
cmp esi, eax
jne 0x10009550
mov eax, dword [ebp - 0x982b4]
mov dword [ebp - 0x983bc], eax
test eax, eax
jle 0x100096ef
mov ebx, dword [ebp - 0x983c4]
add ebx, 0xffffff94
mov dword [edi], 0
lea esi, [ebp - 0x982b8]
mov dword [edi + 4], 0
mov eax, dword [ebx]
mov dword [ebp - 0x982b8], eax
nop dword [eax + eax]
movzx eax, byte [esi]
mov edx, 3
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
call fcn.10001510
mov edx, 3
mov cl, al
call fcn.100014e0
mov cl, al
movzx eax, al
shr eax, 1
add cl, cl
movzx ecx, cl
xor eax, ecx
and eax, 0x55
xor eax, ecx
mov al, byte [eax + 0x1008b738]
xor al, 0x4d
mov byte [esi], al
inc esi
lea eax, [ebp - 0x982b4]
cmp esi, eax
jne 0x10009600
mov ecx, dword [ebp - 0x983b8]
lea esi, [ebp - 0x982bc]
mov eax, dword [ebp - 0x982b8]
mov dword [ecx], eax
mov eax, dword [ebx + 8]
mov dword [ebp - 0x982bc], eax
mov cl, byte [esi]
mov edx, 3
call fcn.100014e0
movzx eax, al
mov edx, 2
movzx eax, byte [eax + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
add cl, 0xa
call fcn.100014e0
xor al, 0x57
mov byte [esi], al
inc esi
lea eax, [ebp - 0x982b8]
cmp esi, eax
jne 0x10009671
mov ecx, dword [ebp - 0x983b8]
add ebx, 0x14
mov eax, dword [ebp - 0x982bc]
mov dword [ecx + 4], eax
lea edi, [ecx + 8]
mov ecx, dword [ebp - 0x983bc]
mov eax, ecx
dec ecx
mov dword [ebp - 0x983b8], edi
mov dword [ebp - 0x983bc], ecx
cmp eax, 1
jne 0x100095e0
mov ebx, dword [ebp - 0x983d8]
mov edx, dword [ebp - 0x983c8]
add ebx, 0x30
mov ecx, dword [ebp - 0x983c4]
mov eax, edx
dec edx
mov dword [ebp - 0x983bc], ecx
mov dword [ebp - 0x983d8], ebx
mov edi, ecx
mov dword [ebp - 0x983c8], edx
cmp eax, 1
je 0x10009728
add ecx, 0x78
mov dword [ebp - 0x983c4], ecx
jmp 0x10009447
mov esi, dword [ebp - 0x983d0]
mov edi, dword [ebp - 0x983c0]
mov eax, dword [esi + 0x97798]
lea ebx, [ebp - 0x982c0]
mov dword [ebp - 0x982c0], eax
nop word [eax + eax]
mov cl, byte [ebx]
mov edx, 1
call fcn.10001510
mov edx, 1
mov cl, al
call fcn.10001510
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x61
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x982bc]
cmp ebx, eax
jne 0x10009750
mov eax, dword [ebp - 0x982c0]
lea ebx, [ebp - 0x982c4]
mov dword [edi + 0x41b53], eax
mov eax, dword [esi + 0x977a0]
mov dword [ebp - 0x982c4], eax
mov dl, byte [ebx]
mov cl, dl
movzx eax, dl
xor cl, 0x10
shr eax, 1
add cl, cl
xor dl, 0x90
xor ecx, eax
add dl, dl
xor ecx, 0xffffffea
movzx eax, dl
and ecx, 0x55
mov edx, 1
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
sub cl, 0x54
call fcn.100014e0
movzx eax, al
mov edx, 1
mov cl, byte [eax + 0x1008b738]
call fcn.100014e0
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x982c0]
cmp ebx, eax
jne 0x100097e1
mov eax, dword [ebp - 0x982c4]
lea ebx, [ebp - 0x982c8]
mov dword [edi + 0x41b57], eax
mov eax, dword [esi + 0x977a8]
mov dword [ebp - 0x982c8], eax
mov cl, byte [ebx]
mov edx, 3
call fcn.10001510
add al, 0x4f
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x982c4]
cmp ebx, eax
jne 0x10009852
mov eax, dword [ebp - 0x982c8]
mov edx, 3
mov dword [edi + 0x41b5b], eax
mov cl, byte [esi + 0x977ad]
call fcn.10001510
add al, 0x56
mov edx, 2
mov cl, al
call fcn.10001510
mov edx, 3
mov cl, al
call fcn.100014e0
sub al, 2
lea ebx, [ebp - 0x982cc]
mov byte [edi + 0x41b5f], al
mov dl, byte [esi + 0x977af]
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
mov cl, dl
mov al, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 0x3b
add dl, dl
and cl, 0x55
xor cl, dl
mov edx, 1
call fcn.10001510
movzx eax, al
mov edx, 4
mov cl, byte [eax + 0x1008b738]
xor cl, 0x27
call fcn.100014e0
mov byte [edi + 0x41b60], al
movzx eax, word [esi + 0x977b2]
mov dword [ebp - 0x982cc], eax
mov al, byte [ebx]
mov edx, 2
sub al, 0x45
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.100014e0
sub al, 0x1c
mov edx, 2
mov cl, al
call fcn.100014e0
mov edx, 1
mov cl, al
call fcn.10001510
mov cl, 0xf3
sub cl, al
lea eax, [ebp - 0x982ca]
mov byte [ebx], cl
inc ebx
cmp ebx, eax
jne 0x10009980
mov ax, word [ebp - 0x982cc]
lea ebx, [ebp - 0x982d0]
mov word [edi + 0x41b61], ax
mov dword [edi + 0x41b63], 0
mov dword [edi + 0x41b67], 0
mov dword [edi + 0x41b6b], 0
mov byte [edi + 0x41b6f], 0
mov eax, dword [esi + 0x977bc]
mov dword [ebp - 0x982d0], eax
movzx eax, byte [ebx]
mov edx, 4
xor eax, 0x3a
mov cl, byte [eax + 0x1008b738]
call fcn.100014e0
movzx eax, al
movzx eax, byte [eax + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
sub cl, 0x57
xor cl, 0xb1
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
lea eax, [ebp - 0x982cc]
mov byte [ebx], cl
inc ebx
cmp ebx, eax
jne 0x10009a25
mov eax, dword [ebp - 0x982d0]
mov dword [edi + 0x41b63], eax
mov al, byte [esi + 0x977c1]
lea ebx, [eax - 0x57]
add al, al
sub al, 0x2e
mov dl, bl
shr dl, 1
add bl, bl
xor dl, al
mov cl, dl
and dl, 0x55
and cl, 0xd5
xor dl, bl
xor cl, al
add dl, dl
add cl, cl
mov al, bl
shr al, 1
lea ebx, [ebp - 0x982d4]
xor cl, al
and cl, 0x55
xor cl, dl
mov al, cl
movzx ecx, cl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
xor al, 0x8e
mov byte [edi + 0x41b67], al
mov eax, dword [esi + 0x977c8]
mov dword [ebp - 0x982d4], eax
nop word [eax + eax]
mov cl, byte [ebx]
mov dl, cl
sub cl, 0x12
add dl, 0x6e
add cl, cl
mov al, dl
xor dl, 0xfc
shr al, 1
add dl, dl
xor cl, al
and cl, 0x55
xor cl, dl
mov edx, 3
call fcn.10001510
mov cl, al
movzx eax, al
shr eax, 1
add cl, cl
movzx ecx, cl
xor eax, ecx
and eax, 0x55
xor eax, ecx
movzx eax, byte [eax + 0x1008b738]
mov al, byte [eax + 0x1008b738]
sub al, 0xb
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x982d0]
cmp ebx, eax
jne 0x10009ae0
mov eax, dword [ebp - 0x982d4]
lea ebx, [ebp - 0x982d8]
mov dword [edi + 0x41b68], eax
mov eax, dword [esi + 0x977d0]
mov dword [ebp - 0x982d8], eax
mov cl, byte [ebx]
mov edx, 1
call fcn.10001510
mov edx, 4
mov cl, al
call fcn.10001510
mov edx, 3
mov cl, al
call fcn.100014e0
mov cl, 0x23
mov edx, 4
sub cl, al
call fcn.10001510
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x982d4]
cmp ebx, eax
jne 0x10009b53
mov eax, dword [ebp - 0x982d8]
lea ebx, [ebp - 0x982dc]
mov dword [edi + 0x41b6c], eax
movzx eax, word [esi + 0x977d6]
mov dword [ebp - 0x982dc], eax
nop word [eax + eax]
mov cl, byte [ebx]
mov edx, 3
call fcn.100014e0
sub al, 0x67
mov edx, 3
mov cl, al
call fcn.10001510
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x55
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x982da]
cmp ebx, eax
jne 0x10009be0
mov ax, word [ebp - 0x982dc]
mov edx, 2
mov word [edi + 0x41b70], ax
mov cl, byte [esi + 0x977d9]
sub cl, 0x65
call fcn.10001510
mov cl, 0x84
mov edx, 4
sub cl, al
mov byte [edi + 0x41b72], cl
mov dword [edi + 0x41b73], 0
mov byte [edi + 0x41b77], 0
mov cl, byte [esi + 0x977e1]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
call fcn.100014e0
add al, 0x10
lea ebx, [ebp - 0x982e0]
movzx eax, al
mov cl, byte [eax + 0x1008b738]
sub cl, 0x32
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov byte [edi + 0x41b73], cl
mov eax, dword [esi + 0x977e8]
mov dword [ebp - 0x982e0], eax
mov cl, byte [ebx]
mov edx, 3
call fcn.10001510
add al, 0x56
mov edx, 2
mov cl, al
call fcn.10001510
mov edx, 3
mov cl, al
call fcn.100014e0
sub al, 2
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x982dc]
cmp ebx, eax
jne 0x10009d22
mov eax, dword [ebp - 0x982e0]
lea ecx, [ebp - 0x982e4]
mov dword [edi + 0x41b74], eax
mov dword [edi + 0x41b78], 0
mov byte [edi + 0x41b7c], 0
mov eax, dword [esi + 0x977f4]
mov dword [ebp - 0x982e4], eax
mov al, 0x7d
sub al, byte [ecx]
mov byte [ecx], al
inc ecx
lea eax, [ebp - 0x982e0]
cmp ecx, eax
jne 0x10009d86
mov eax, dword [ebp - 0x982e4]
mov edx, 2
mov dword [edi + 0x41b78], eax
mov cl, byte [esi + 0x977f9]
sub cl, 0x65
call fcn.10001510
mov cl, 0x84
mov edx, 3
sub cl, al
mov byte [edi + 0x41b7c], cl
mov cl, byte [esi + 0x977fd]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
sub cl, 0x43
movzx eax, cl
mov cl, byte [eax + 0x1008b738]
call fcn.10001510
movzx eax, al
mov edx, 2
mov cl, byte [eax + 0x1008b738]
sub cl, 0x6a
call fcn.10001510
mov byte [edi + 0x41b7d], al
mov edx, 3
mov cl, byte [esi + 0x977fd]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
sub cl, 0x43
movzx eax, cl
mov cl, byte [eax + 0x1008b738]
call fcn.10001510
movzx eax, al
mov edx, 2
mov cl, byte [eax + 0x1008b738]
sub cl, 0x6a
call fcn.10001510
movzx eax, al
mov dword [ebp - 0x983d8], eax
test al, al
je 0x1000a050
lea eax, [esi + 0x9781c]
mov esi, eax
mov dword [ebp - 0x983cc], eax
lea ebx, [edi + 0x41b83]
mov dword [ebp - 0x983bc], esi
mov ecx, esi
mov dword [ebx - 5], 0
mov edx, 2
mov dword [ebx - 1], 0
mov dword [ebx + 3], 0
mov byte [ebx + 7], 0
movzx eax, byte [ecx - 0x17]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.100014e0
mov edx, 3
mov cl, al
call fcn.100014e0
mov byte [ebx - 5], al
lea edi, [ebp - 0x982e8]
mov eax, dword [ebp - 0x983bc]
mov eax, dword [eax - 0x10]
mov dword [ebp - 0x982e8], eax
mov dl, byte [edi]
sub dl, 0x15
mov cl, dl
movzx eax, dl
xor cl, 0x3c
shr eax, 1
add cl, cl
xor dl, 0xbc
xor ecx, eax
add dl, dl
and ecx, 0x55
movzx eax, dl
xor ecx, eax
mov edx, 3
xor ecx, 0xc7
mov cl, byte [ecx + 0x1008b738]
call fcn.10001510
add al, 0x3e
xor al, 0x6e
mov byte [edi], al
inc edi
lea eax, [ebp - 0x982e4]
cmp edi, eax
jne 0x10009f05
mov eax, dword [ebp - 0x982e8]
lea edi, [ebp - 0x982ec]
mov dword [ebx - 4], eax
mov eax, dword [esi - 8]
mov dword [ebp - 0x982ec], eax
mov cl, 0x2a
mov edx, 3
sub cl, byte [edi]
call fcn.100014e0
movzx eax, al
mov edx, 4
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x60
mov cl, al
call fcn.10001510
add al, 0x24
mov byte [edi], al
inc edi
lea eax, [ebp - 0x982e8]
cmp edi, eax
jne 0x10009f64
mov eax, dword [ebp - 0x982ec]
lea edi, [ebp - 0x982f0]
mov dword [ebx], eax
mov eax, dword [esi]
mov dword [ebp - 0x982f0], eax
nop word [eax + eax]
mov cl, byte [edi]
mov edx, 1
call fcn.100014e0
mov cl, 0x47
sub cl, al
movzx eax, cl
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x6f
mov byte [edi], al
inc edi
lea eax, [ebp - 0x982ec]
cmp edi, eax
jne 0x10009fd0
mov eax, dword [ebp - 0x982f0]
lea ecx, [esi + 0x20]
mov edx, dword [ebp - 0x983d8]
mov dword [ebx + 4], eax
add ebx, 0xd
mov eax, edx
mov dword [ebp - 0x983bc], ecx
dec edx
mov dword [ebp - 0x983d8], edx
cmp eax, 1
je 0x1000a044
mov esi, ecx
jmp 0x10009e71
mov esi, dword [ebp - 0x983d0]
mov edi, dword [ebp - 0x983c0]
mov eax, dword [esi + 0x97824]
lea edx, [ebp - 0x982f4]
mov dword [ebp - 0x982f4], eax
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [edx]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0xe
mov byte [edx], al
inc edx
lea eax, [ebp - 0x982f0]
cmp edx, eax
jne 0x1000a070
mov eax, dword [ebp - 0x982f4]
lea edx, [ebp - 0x982f8]
mov dword [edi + 0x41b8b], eax
mov eax, dword [esi + 0x9782c]
mov dword [ebp - 0x982f8], eax
nop dword [eax]
mov cl, byte [edx]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
add cl, 0x1d
movzx eax, cl
movzx eax, byte [eax + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
mov al, cl
movzx ecx, cl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
add al, 0x4b
mov byte [edx], al
inc edx
lea eax, [ebp - 0x982f4]
cmp edx, eax
jne 0x1000a110
mov eax, dword [ebp - 0x982f8]
mov dword [edi + 0x41b8f], eax
xor eax, eax
mov dword [edi + 0x41b93], 0
mov word [edi + 0x41b97], ax
mov cl, byte [esi + 0x97835]
lea edx, [eax + 1]
call fcn.10001510
mov edx, 3
mov cl, al
call fcn.10001510
add al, 0x2a
mov edx, 4
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.10001510
mov byte [edi + 0x41b93], al
lea ebx, [ebp - 0x982fc]
mov eax, dword [esi + 0x9783c]
mov dword [ebp - 0x982fc], eax
nop
mov cl, byte [ebx]
mov edx, 2
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
call fcn.100014e0
xor al, 0xd8
mov edx, 3
add al, 0x2b
mov cl, al
call fcn.100014e0
mov dl, al
mov cl, al
shr dl, 1
add cl, cl
xor dl, cl
xor al, 0xf9
add al, al
and dl, 0x55
xor dl, al
lea eax, [ebp - 0x982f8]
mov byte [ebx], dl
inc ebx
cmp ebx, eax
jne 0x1000a1e0
mov eax, dword [ebp - 0x982fc]
mov edx, 2
mov dword [edi + 0x41b94], eax
mov cl, byte [esi + 0x97841]
call fcn.100014e0
mov cl, 0x58
mov edx, 3
sub cl, al
call fcn.100014e0
mov byte [edi + 0x41b98], al
lea ebx, [ebp - 0x98300]
mov dword [edi + 0x41b99], 0
xor eax, eax
mov word [edi + 0x41b9d], ax
mov eax, dword [esi + 0x9784c]
mov dword [ebp - 0x98300], eax
nop dword [eax + eax]
movzx eax, byte [ebx]
xor eax, 0x70
mov dl, byte [eax + 0x1008b738]
mov al, dl
shr dl, 1
add al, al
xor dl, al
mov cl, dl
and dl, 0xd5
and cl, 0x55
xor dl, al
xor cl, al
add dl, dl
add cl, cl
shr al, 1
xor dl, al
and dl, 0x55
xor dl, cl
shr cl, 1
add dl, dl
xor cl, dl
and cl, 0x55
xor cl, dl
xor cl, 0x21
mov al, cl
movzx ecx, cl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov al, byte [ecx + 0x1008b738]
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x982fc]
cmp ebx, eax
jne 0x1000a290
mov eax, dword [ebp - 0x98300]
mov edx, 2
mov dword [edi + 0x41b99], eax
mov cl, byte [esi + 0x97851]
not cl
call fcn.100014e0
mov edx, 2
mov cl, al
call fcn.100014e0
add al, 0x5e
mov edx, 2
mov cl, al
call fcn.10001510
mov edx, 2
mov cl, al
call fcn.10001510
mov byte [edi + 0x41b9d], al
mov edx, 1
movzx eax, byte [esi + 0x97853]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x22
mov cl, al
call fcn.10001510
mov edx, 3
mov cl, al
call fcn.10001510
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edi + 0x41b9e], al
mov dl, byte [esi + 0x97855]
mov bl, dl
mov al, dl
shr bl, 1
add al, al
xor bl, al
xor dl, 0x17
mov cl, bl
add dl, dl
and cl, 0xd5
mov al, dl
xor cl, dl
shr al, 1
add cl, cl
and bl, 0x55
xor cl, al
xor bl, dl
and cl, 0x55
add bl, bl
xor cl, bl
mov edx, 3
call fcn.100014e0
mov cl, al
lea ebx, [ebp - 0x98304]
movzx eax, al
add cl, cl
shr eax, 1
movzx ecx, cl
xor eax, ecx
and eax, 0x55
xor eax, ecx
xor eax, 0x49
mov al, byte [eax + 0x1008b738]
mov byte [edi + 0x41b9f], al
mov eax, dword [esi + 0x9785c]
mov dword [ebp - 0x98304], eax
nop dword [eax]
mov cl, byte [ebx]
mov edx, 2
call fcn.100014e0
add al, 0x2d
mov edx, 1
mov cl, al
call fcn.100014e0
sub al, 0x3c
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98300]
cmp ebx, eax
jne 0x1000a440
mov eax, dword [ebp - 0x98304]
lea ebx, [ebp - 0x98308]
mov dword [edi + 0x41ba0], eax
mov edx, 2
mov al, byte [esi + 0x97861]
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.10001510
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x48
mov byte [edi + 0x41ba4], al
movzx eax, word [esi + 0x97864]
mov dword [ebp - 0x98308], eax
nop word [eax + eax]
mov cl, byte [ebx]
mov edx, 3
call fcn.10001510
mov cl, 0x55
sub cl, al
movzx eax, cl
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98306]
cmp ebx, eax
jne 0x1000a540
mov ax, word [ebp - 0x98308]
lea ebx, [ebp - 0x9830c]
mov word [edi + 0x41ba5], ax
mov eax, dword [esi + 0x9786c]
mov dword [ebp - 0x9830c], eax
mov al, byte [ebx]
mov edx, 3
add al, 0x2a
movzx eax, al
mov cl, byte [eax + 0x1008b738]
xor cl, 0xb8
mov al, cl
movzx ecx, cl
shr ecx, 1
add al, al
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
mov cl, byte [ecx + 0x1008b738]
call fcn.100014e0
mov dl, al
mov cl, dl
shr dl, 1
add cl, cl
xor dl, cl
and dl, 0x55
xor dl, cl
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
lea eax, [ebp - 0x98308]
mov byte [ebx], dl
inc ebx
cmp ebx, eax
jne 0x1000a5a2
mov eax, dword [ebp - 0x9830c]
lea ebx, [ebp - 0x98310]
mov dword [edi + 0x41ba7], eax
mov eax, dword [esi + 0x97874]
mov dword [ebp - 0x98310], eax
nop dword [eax]
mov cl, byte [ebx]
mov edx, 3
add cl, 0x4c
call fcn.10001510
xor al, 0xac
mov edx, 1
add al, 0x14
movzx eax, al
mov cl, byte [eax + 0x1008b738]
sub cl, 0x1b
call fcn.100014e0
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x9830c]
cmp ebx, eax
jne 0x1000a620
mov eax, dword [ebp - 0x98310]
lea ebx, [ebp - 0x98314]
mov dword [edi + 0x41bab], eax
mov eax, dword [esi + 0x9787c]
mov dword [ebp - 0x98314], eax
mov cl, byte [ebx]
mov edx, 3
add cl, 0x1e
xor cl, 0x28
call fcn.10001510
xor al, 4
mov edx, 2
mov cl, al
call fcn.10001510
movzx eax, al
mov al, byte [eax + 0x1008b738]
add al, 0x77
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98310]
cmp ebx, eax
jne 0x1000a674
mov eax, dword [ebp - 0x98314]
lea ebx, [ebp - 0x98318]
mov dword [edi + 0x41baf], eax
mov eax, dword [esi + 0x97884]
mov dword [ebp - 0x98318], eax
nop word [eax + eax]
movzx eax, byte [ebx]
mov edx, 4
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.10001510
mov cl, 0x4d
mov edx, 3
sub cl, al
call fcn.100014e0
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98314]
cmp ebx, eax
jne 0x1000a6d0
mov eax, dword [ebp - 0x98318]
mov edx, 4
mov dword [edi + 0x41bb3], eax
mov cl, byte [esi + 0x97889]
call fcn.10001510
movzx eax, al
mov edx, 4
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x4a
mov byte [edi + 0x41bb7], al
mov cl, byte [esi + 0x97889]
call fcn.10001510
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x4a
movzx eax, al
mov dword [ebp - 0x983bc], eax
je 0x1000a966
lea ecx, [esi + 0x97892]
add edi, 0x41bb8
mov dword [ebp - 0x983c4], ecx
mov dword [edi], 0
mov ebx, edi
movzx eax, word [ecx]
lea edi, [ebp - 0x98374]
mov dword [ebp - 0x98374], eax
mov dl, byte [edi]
mov cl, dl
mov al, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 0xe1
add dl, dl
and cl, 0x55
xor cl, dl
mov edx, 4
call fcn.100014e0
xor al, 0xf6
add al, 0xd
xor al, 0x57
mov byte [edi], al
inc edi
lea eax, [ebp - 0x98372]
cmp edi, eax
jne 0x1000a891
mov ax, word [ebp - 0x98374]
lea edi, [ebp - 0x9831c]
mov word [ebx], ax
mov eax, dword [ebp - 0x983c4]
movzx eax, word [eax + 4]
mov dword [ebp - 0x9831c], eax
mov dl, byte [edi]
mov cl, dl
mov al, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 0x80
xor cl, 0xea
add dl, dl
and cl, 0x55
xor cl, dl
mov edx, 3
call fcn.100014e0
xor al, 0x2d
mov dl, al
add al, al
sub dl, 0x45
sub al, 0xa
mov cl, dl
add dl, dl
shr cl, 1
xor al, cl
and al, 0x55
xor al, dl
mov byte [edi], al
inc edi
lea eax, [ebp - 0x9831a]
cmp edi, eax
jne 0x1000a8e4
mov ax, word [ebp - 0x9831c]
lea edi, [ebx + 4]
mov edx, dword [ebp - 0x983bc]
mov ecx, dword [ebp - 0x983c4]
mov word [ebx + 2], ax
add ecx, 0xc
mov eax, edx
mov dword [ebp - 0x983c4], ecx
dec edx
mov dword [ebp - 0x983bc], edx
cmp eax, 1
jne 0x1000a87a
mov edi, dword [ebp - 0x983c0]
xor eax, eax
mov dword [edi + 0x41bbc], 0
mov dword [edi + 0x41bc0], 0
lea ebx, [ebp - 0x98320]
mov dword [edi + 0x41bc4], 0
mov dword [edi + 0x41bc8], 0
mov dword [edi + 0x41bcc], 0
mov word [edi + 0x41bd0], ax
mov byte [edi + 0x41bd2], al
movzx eax, byte [esi + 0x9789d]
movzx eax, byte [eax + 0x1008b738]
movzx eax, byte [eax + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov al, cl
movzx ecx, cl
add al, al
shr ecx, 1
movzx eax, al
xor ecx, eax
and ecx, 0x55
xor ecx, eax
movzx eax, byte [ecx + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
mov byte [edi + 0x41bbc], cl
mov eax, dword [esi + 0x978a4]
mov dword [ebp - 0x98320], eax
mov cl, byte [ebx]
mov edx, 1
call fcn.10001510
mov edx, 3
mov cl, al
call fcn.10001510
add al, 0x2a
mov edx, 4
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.10001510
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x9831c]
cmp ebx, eax
jne 0x1000aa14
mov eax, dword [ebp - 0x98320]
lea ebx, [ebp - 0x98324]
mov dword [edi + 0x41bbd], eax
mov edx, 1
movzx eax, byte [esi + 0x978a9]
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.10001510
movzx eax, al
mov edx, 1
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
mov cl, al
call fcn.10001510
mov byte [edi + 0x41bc1], al
mov eax, dword [esi + 0x978b0]
mov dword [ebp - 0x98324], eax
nop dword [eax]
mov cl, 0x55
mov edx, 1
sub cl, byte [ebx]
call fcn.100014e0
sub al, 0x2a
mov edx, 3
movzx eax, al
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.10001510
mov edx, 2
mov cl, al
call fcn.100014e0
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98320]
cmp ebx, eax
jne 0x1000ab20
mov eax, dword [ebp - 0x98324]
lea ebx, [ebp - 0x98328]
mov dword [edi + 0x41bc2], eax
mov dword [edi + 0x41bc6], 0
mov dword [edi + 0x41bca], 0
mov dword [edi + 0x41bce], 0
mov byte [edi + 0x41bd2], 0
mov eax, dword [esi + 0x978bc]
mov dword [ebp - 0x98328], eax
mov cl, byte [ebx]
mov edx, 3
call fcn.10001510
mov cl, 0x55
sub cl, al
movzx eax, cl
imul ecx, eax, 0x8020
imul eax, eax, 0x802
and ecx, 0x88440
and eax, 0x22110
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98324]
cmp ebx, eax
jne 0x1000abe2
mov eax, dword [ebp - 0x98328]
lea ebx, [ebp - 0x9832c]
mov dword [edi + 0x41bc6], eax
mov eax, dword [esi + 0x978c4]
mov dword [ebp - 0x9832c], eax
mov cl, 0xcb
mov edx, 2
sub cl, byte [ebx]
call fcn.10001510
add al, 0x18
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98328]
cmp ebx, eax
jne 0x1000ac42
mov eax, dword [ebp - 0x9832c]
mov dword [edi + 0x41bca], eax
lea edi, [ebp - 0x98330]
mov eax, dword [esi + 0x978cc]
mov dword [ebp - 0x98330], eax
nop dword [eax]
mov dl, byte [edi]
mov al, dl
add dl, 0x15
sub al, 0x6b
add dl, dl
mov bl, al
add al, al
shr bl, 1
xor bl, dl
mov cl, bl
and bl, 0xd5
xor bl, dl
and cl, 0x55
xor cl, al
add bl, 3
add bl, bl
sub cl, 0x7d
mov al, cl
add cl, cl
shr al, 1
xor bl, al
lea eax, [ebp - 0x9832c]
and bl, 0x55
xor bl, cl
xor bl, 0xc3
add bl, 0x70
xor bl, 0xa4
sub bl, 0x2c
mov byte [edi], bl
inc edi
cmp edi, eax
jne 0x1000ac80
mov edi, dword [ebp - 0x983c0]
mov edx, 3
mov eax, dword [ebp - 0x98330]
mov dword [edi + 0x41bce], eax
mov cl, byte [esi + 0x978d1]
call fcn.100014e0
movzx eax, al
mov edx, 2
movzx eax, byte [eax + 0x1008b738]
mov cl, byte [eax + 0x1008b738]
mov al, cl
shr cl, 1
add al, al
xor cl, al
and cl, 0x55
xor cl, al
add cl, 0xa
call fcn.100014e0
xor al, 0x57
lea ebx, [ebp - 0x98334]
mov byte [edi + 0x41bd2], al
mov dword [edi + 0x41bd3], 0
mov dword [edi + 0x41bd7], 0
mov dword [edi + 0x41bdb], 0
mov dword [edi + 0x41bdf], 0
mov eax, dword [esi + 0x978dc]
mov dword [ebp - 0x98334], eax
nop dword [eax + eax]
mov cl, byte [ebx]
mov edx, 1
call fcn.10001510
xor al, 0xa9
mov edx, 3
mov cl, al
call fcn.100014e0
movzx eax, al
mov edx, 3
mov cl, byte [eax + 0x1008b738]
call fcn.100014e0
mov dl, al
mov cl, al
xor dl, 0xfd
xor cl, 0xfc
shr dl, 1
xor al, 0xfc
add cl, cl
add al, al
xor dl, cl
and dl, 0x55
xor dl, al
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
lea eax, [ebp - 0x98330]
mov byte [ebx], dl
inc ebx
cmp ebx, eax
jne 0x1000ad60
mov eax, dword [ebp - 0x98334]
lea ebx, [ebp - 0x98338]
mov dword [edi + 0x41bd3], eax
mov eax, dword [esi + 0x978e4]
mov dword [ebp - 0x98338], eax
nop
movzx eax, byte [ebx]
mov dl, byte [eax + 0x1008b738]
xor dl, 0xd8
add dl, 0x10
mov al, dl
shr dl, 1
add al, al
xor dl, al
and dl, 0x55
xor dl, al
mov cl, dl
mov al, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 0xe1
add dl, dl
and cl, 0x55
xor cl, dl
mov edx, 2
call fcn.100014e0
mov cl, al
shr al, 1
add cl, cl
xor al, cl
and al, 0x55
xor al, cl
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98334]
cmp ebx, eax
jne 0x1000ade0
mov eax, dword [ebp - 0x98338]
lea ebx, [ebp - 0x9833c]
mov dword [edi + 0x41bd7], eax
mov eax, dword [esi + 0x978ec]
mov dword [ebp - 0x9833c], eax
movzx eax, byte [ebx]
mov edx, 2
mov cl, byte [eax + 0x1008b738]
xor cl, 0xd
call fcn.10001510
movzx eax, al
mov edx, 4
mov cl, byte [eax + 0x1008b738]
add cl, 0x4a
call fcn.100014e0
mov edx, 4
mov cl, al
call fcn.100014e0
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98338]
cmp ebx, eax
jne 0x1000ae51
mov eax, dword [ebp - 0x9833c]
lea ebx, [ebp - 0x98340]
mov dword [edi + 0x41bdb], eax
mov eax, dword [esi + 0x978f4]
mov dword [ebp - 0x98340], eax
mov cl, byte [ebx]
mov edx, 1
call fcn.10001510
movzx eax, al
mov edx, 3
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x66
mov cl, al
call fcn.10001510
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x9833c]
cmp ebx, eax
jne 0x1000aeb4
mov eax, dword [ebp - 0x98340]
mov dword [edi + 0x41bdf], eax
xor eax, eax
mov dword [edi + 0x41be3], 0
mov dword [edi + 0x41be7], 0
mov word [edi + 0x41beb], ax
mov dl, byte [esi + 0x978fd]
mov cl, dl
mov al, dl
add cl, 0x66
sub al, 0x1a
shr cl, 1
add al, al
xor cl, al
add dl, dl
sub dl, 0x34
and cl, 0x55
xor cl, dl
mov edx, 2
call fcn.100014e0
sub al, 0x64
mov edx, 2
mov cl, al
call fcn.10001510
movzx eax, al
mov al, byte [eax + 0x1008b738]
add al, 0x5b
mov byte [edi + 0x41be3], al
lea edi, [ebp - 0x98344]
mov eax, dword [esi + 0x97904]
mov dword [ebp - 0x98344], eax
mov dh, byte [edi]
mov dl, dh
mov ch, dh
mov cl, dh
shr ch, 1
mov bl, dh
xor dl, 0xc9
xor dh, 0xc9
add dl, dl
add dh, dh
xor dl, ch
xor dh, ch
mov ah, dl
and ah, 0xd5
xor dh, 0xee
and dh, 0x55
xor cl, 0xfe
add cl, cl
xor bl, 0xfe
xor ah, cl
add bl, bl
xor ah, 0xc4
xor dh, bl
add ah, ah
xor dl, 0xee
add dh, dh
mov al, bl
shr al, 1
and dl, 0x55
xor ah, al
shr dh, 1
and ah, 0x55
xor dl, cl
add dl, dl
xor ah, dl
add ah, ah
xor dh, ah
and dh, 0x55
xor dh, ah
sub dh, 0x14
xor dh, 0x40
mov al, dh
shr dh, 1
add al, al
xor dh, al
and dh, 0x55
xor dh, al
lea eax, [ebp - 0x98340]
mov byte [edi], dh
inc edi
cmp edi, eax
jne 0x1000afa8
mov edi, dword [ebp - 0x983c0]
lea edx, [ebp - 0x98348]
mov eax, dword [ebp - 0x98344]
mov dword [edi + 0x41be4], eax
mov eax, dword [esi + 0x9790c]
mov dword [ebp - 0x98348], eax
mov al, byte [edx]
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
not al
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
mov cl, 0x59
shr eax, 0x10
sub cl, al
lea eax, [ebp - 0x98344]
not cl
mov byte [edx], cl
inc edx
cmp edx, eax
jne 0x1000b046
mov eax, dword [ebp - 0x98348]
mov edx, 1
mov dword [edi + 0x41be8], eax
movzx eax, byte [esi + 0x97911]
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
sub al, 0x2d
mov cl, al
call fcn.100014e0
sub al, 0x7c
lea ebx, [ebp - 0x9834c]
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov byte [edi + 0x41bec], al
mov dword [edi + 0x41bed], 0
mov byte [edi + 0x41bf1], 0
mov eax, dword [esi + 0x9791c]
mov dword [ebp - 0x9834c], eax
nop dword [eax]
mov cl, 0x40
mov edx, 1
sub cl, byte [ebx]
call fcn.10001510
sub al, 0xf
mov edx, 1
mov cl, al
call fcn.100014e0
mov edx, 3
mov cl, al
call fcn.100014e0
mov edx, 3
mov cl, al
call fcn.10001510
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98348]
cmp ebx, eax
jne 0x1000b140
mov eax, dword [ebp - 0x9834c]
lea ebx, [ebp - 0x98350]
mov dword [edi + 0x41bed], eax
mov edx, 2
mov cl, byte [esi + 0x97921]
not cl
call fcn.100014e0
mov edx, 2
mov cl, al
call fcn.100014e0
add al, 0x5e
mov edx, 2
mov cl, al
call fcn.10001510
mov edx, 2
mov cl, al
call fcn.10001510
mov byte [edi + 0x41bf1], al
mov eax, dword [esi + 0x97928]
mov dword [ebp - 0x98350], eax
nop dword [eax]
movzx eax, byte [ebx]
mov edx, 2
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
add al, 0x6c
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
mov cl, al
call fcn.100014e0
mov edx, 4
mov cl, al
call fcn.10001510
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x9834c]
cmp ebx, eax
jne 0x1000b1e0
mov eax, dword [ebp - 0x98350]
lea ebx, [ebp - 0x98354]
mov dword [edi + 0x41bf2], eax
mov dword [edi + 0x41bf6], 0
mov dword [edi + 0x41bfa], 0
mov eax, dword [esi + 0x97934]
mov dword [ebp - 0x98354], eax
mov dl, byte [ebx]
mov cl, dl
mov al, dl
shr cl, 1
add al, al
xor cl, al
xor dl, 0xe0
and cl, 0x55
add dl, dl
xor cl, dl
mov edx, 1
add cl, 0x22
call fcn.100014e0
movzx eax, al
mov edx, 4
mov cl, byte [eax + 0x1008b738]
call fcn.100014e0
mov cl, al
shr al, 1
add cl, cl
xor al, cl
and al, 0x55
xor al, cl
add al, 0x7c
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98350]
cmp ebx, eax
jne 0x1000b283
mov eax, dword [ebp - 0x98354]
lea ebx, [ebp - 0x98358]
mov dword [edi + 0x41bf6], eax
mov eax, dword [esi + 0x9793c]
mov dword [ebp - 0x98358], eax
mov cl, byte [ebx]
mov edx, 2
not cl
call fcn.10001510
sub al, 0x34
mov edx, 2
mov cl, al
call fcn.10001510
mov edx, 2
mov cl, al
call fcn.100014e0
movzx eax, al
imul ecx, eax, 0x802
imul eax, eax, 0x8020
and ecx, 0x22110
and eax, 0x88440
or ecx, eax
imul eax, ecx, 0x10101
shr eax, 0x10
inc al
mov byte [ebx], al
inc ebx
lea eax, [ebp - 0x98354]
cmp ebx, eax
jne 0x1000b2f2
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1001a41e
mov esp, ebp
pop ebp
ret