Function at 0xdf03fb
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x63c
push 9
mov dword [ebp - 0x88], ecx
mov edx, 0xdd29c4
pop ecx
push ebx
push esi
mov al, 0x74
push edi
sub al, 0x30
cmp al, cl
ja 0xdf042c
inc edx
mov al, byte [edx]
test al, al
jne 0xdf0417
mov esi, dword [0xe1a628]
jmp 0xdf0438
mov esi, dword [0xe1a628]
add esi, 0x2b4d3980
xor esi, 0xc3daad5e
mov dword [ebp - 0x7c], 0x4a4c920d
mov dword [ebp - 8], esi
lea edi, [ebp - 0xf4]
mov esi, 0xdd10a8
mov dword [ebp - 0x78], 0x4e7a717b
push 5
pop eax
xor ecx, ecx
mov byte [ebp - 0x69], al
movsd dword es:[edi], dword [esi]
mov eax, ecx
mov dword [ebp - 0x74], 0x212f406c
mov dword [ebp - 0x70], 0x85637683
mov word [ebp - 0x6c], 0x577e
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x6a], 0x66
mov dword [ebp - 0x68], 0x1e2a001a
mov dword [ebp - 0x64], 0xebb4f885
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x60], 0xe0a51e4e
mov dword [ebp - 0x5c], 0xd5f12095
mov dword [ebp - 0x58], 0x1c317324
movsb byte es:[edi], byte [esi]
mov dword [ebp - 0x54], 0xbd45295b
mov edi, ecx
mov byte [ebp + eax - 0x200], al
inc eax
cmp eax, 0x100
jb 0xdf04ac
push 0xc
mov esi, ecx
pop ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x200]
mov eax, esi
div ecx
movzx ecx, bl
push 0xc
movzx eax, byte [ebp + edx - 0xf4]
add eax, edi
add ecx, eax
movzx edi, cl
pop ecx
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + esi - 0x200], al
inc esi
mov byte [ebp + edi - 0x200], bl
cmp esi, 0x100
jb 0xdf04c0
xor eax, eax
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x200]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x200]
mov byte [ebp + edi - 0x200], al
mov byte [ebp + ebx - 0x200], cl
movzx eax, byte [ebp + edi - 0x200]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x200]
xor al, byte [ebp + esi - 0x7c]
mov byte [ebp + esi - 0x3c4], al
inc esi
cmp esi, 0x2c
jb 0xdf0508
push 0x13
pop ecx
mov esi, 0xdd28a8
mov byte [ebp - 0x398], 0
lea edi, [ebp - 0x410]
mov dword [ebp - 4], 0xe21ca8a1
rep movsd dword es:[edi], dword [esi]
mov esi, 0xdd29c4
mov al, 0x74
push 9
mov ecx, esi
pop edx
sub al, 0x30
cmp al, dl
ja 0xdf0594
inc ecx
mov al, byte [ecx]
test al, al
jne 0xdf0582
mov ebx, dword [ebp - 8]
jmp 0xdf059d
mov ebx, dword [ebp - 8]
or ebx, 0x888310a4
push 0x74
sub ebx, 0x4c1c20a0
mov edx, 0x2070
mov eax, esi
pop ecx
add edx, ecx
inc eax
cmp edx, 0x16c
ja 0xdf05c1
movsx ecx, byte [eax]
test ecx, ecx
jne 0xdf05ad
jmp 0xdf05cc
call fcn.00df012f
imul ebx, ebx, 0x220f4e9
or ebx, 0x1e7d3657
sub ebx, 0x1811fc0d
or ebx, 0xdbba57a4
xor ecx, ecx
mov dword [ebp - 8], ebx
mov edi, ecx
mov eax, ecx
mov byte [ebp + eax - 0x200], al
inc eax
cmp eax, 0x100
jb 0xdf05e7
push 0x4b
mov esi, ecx
pop ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x200]
mov eax, esi
div ecx
movzx ecx, bl
push 0x4b
movzx eax, byte [ebp + edx - 0x410]
add eax, edi
add ecx, eax
movzx edi, cl
pop ecx
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + esi - 0x200], al
inc esi
mov byte [ebp + edi - 0x200], bl
cmp esi, 0x100
jb 0xdf05fb
xor eax, eax
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x200]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x200]
mov byte [ebp + edi - 0x200], al
mov byte [ebp + ebx - 0x200], cl
movzx eax, byte [ebp + edi - 0x200]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x200]
xor al, byte [ebp + esi - 4]
mov byte [ebp + esi - 0xd4], al
inc esi
cmp esi, 4
jb 0xdf0643
xor ebx, ebx
mov dword [ebp - 0x50], 0x36
push 0x58
mov byte [ebp - 0xd0], bl
mov eax, ebx
pop ecx
mov dword [ebp - 0x4c], 0xffffff74
add ecx, dword [ebp + eax*4 - 0x50]
inc eax
cmp eax, 2
jl 0xdf06ae
mov esi, 0xdd1e3c
mov dword [ebp - 0xc4], 0x1e
lea edi, [ebp - 0xa4]
mov dword [ebp - 0xc0], 0x3d
mov dword [ebp - 0xbc], 0x25
xorps xmm1, xmm1
mov dword [ebp - 0xb8], 0xffffff80
movups xmm0, xmmword [ebp - 0xc4]
movsd dword es:[edi], dword [esi]
push 0x38
psubd xmm1, xmm0
mov dword [ebp - 0x80], ecx
movaps xmm0, xmm1
mov dword [ebp - 0x24], 0xfc9d847
movsd dword es:[edi], dword [esi]
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x20], 0x48d04d8d
movups xmm0, xmm1
mov dword [ebp - 0x1b], 0x9dcb5cd2
movsd dword es:[edi], dword [esi]
pop eax
psrldq xmm0, 4
mov byte [ebp - 0x1c], al
paddd xmm1, xmm0
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0xf], al
mov eax, ebx
mov dword [ebp - 0x17], 0x6e361e79
mov dword [ebp - 0x13], 0xdb8a16e9
movsb byte es:[edi], byte [esi]
mov word [ebp - 0xe], 0xa37d
mov edi, ebx
mov byte [ebp + eax - 0x200], al
inc eax
cmp eax, 0x100
jb 0xdf074f
mov esi, ebx
mov dl, byte [ebp + esi - 0x200]
mov eax, esi
and eax, 0xf
movzx ecx, dl
movzx eax, byte [ebp + eax - 0xa4]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + esi - 0x200], al
inc esi
mov byte [ebp + edi - 0x200], dl
cmp esi, 0x100
jb 0xdf0760
xor edi, edi
mov esi, ebx
add dword [ebp - 8], 0x3b782e50
lea eax, [ebx + 1]
movzx ebx, al
mov cl, byte [ebp + ebx - 0x200]
movzx edx, cl
lea eax, [edx + esi]
movzx esi, al
mov al, byte [ebp + esi - 0x200]
mov byte [ebp + ebx - 0x200], al
mov byte [ebp + esi - 0x200], cl
movzx eax, byte [ebp + ebx - 0x200]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x200]
xor al, byte [ebp + edi - 0x24]
mov byte [ebp + edi - 0x35c], al
inc edi
cmp edi, 0x18
jb 0xdf07a7
mov eax, dword [0xdd1e34]
xor ecx, ecx
mov dword [ebp - 0x90], eax
mov edi, ecx
mov ax, word [0xdd1e38]
mov word [ebp - 0x8c], ax
mov eax, ecx
mov byte [ebp - 0x344], cl
mov dword [ebp - 4], 0x3f5fe8a8
mov byte [ebp + eax - 0x200], al
inc eax
cmp eax, 0x100
jb 0xdf0822
sub dword [ebp - 8], 0x39e844d5
mov esi, ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x200]
push 5
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x90]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + esi - 0x200], al
inc esi
mov byte [ebp + edi - 0x200], bl
cmp esi, 0x100
jb 0xdf083a
xor eax, eax
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x200]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x200]
mov byte [ebp + edi - 0x200], al
mov byte [ebp + ebx - 0x200], cl
movzx eax, byte [ebp + edi - 0x200]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x200]
xor al, byte [ebp + esi - 4]
mov byte [ebp + esi - 0xdc], al
inc esi
cmp esi, 4
jb 0xdf0882
xor eax, eax
mov dword [ebp - 0x50], 0x28
push 2
mov byte [ebp - 0xd8], al
pop ecx
mov dword [ebp - 0x4c], 0xffffffd7
add ecx, dword [ebp + eax*4 - 0x50]
inc eax
cmp eax, 2
jl 0xdf08eb
mov ebx, dword [ebp - 8]
mov edx, 0x10ce
movzx eax, byte [0xe1a5cc]
or ebx, 0x60d82982
mov dword [ebp - 0x48], ecx
mov ecx, 0xe1a5cc
mov dword [ebp - 0x24], 0xb1b4a78c
mov dword [ebp - 0x20], 0xe8176708
mov dword [ebp - 0x1c], 0x5755ce6b
mov dword [ebp - 0x18], 0x5dde8ad8
mov dword [ebp - 0x14], 0xbaebdab1
mov dword [ebp - 0x10], 0x8c5d7edd
jmp 0xdf0950
add edx, eax
inc ecx
cmp edx, 0x11a3
ja 0xdf09dd
movzx eax, byte [ecx]
test eax, eax
jne 0xdf093e
or ebx, 0xf8f83f54
or ebx, 0xeed01b0e
call fcn.00deffb9
push 5
pop eax
mov ecx, eax
lea edi, [ebp - 0xa8]
mov esi, 0xdd1040
rep movsd dword es:[edi], dword [esi]
xor ecx, ecx
mov eax, ecx
movsw word es:[edi], word [esi]
mov edi, ecx
mov byte [ebp + eax - 0x200], al
inc eax
cmp eax, 0x100
jb 0xdf097f
mov esi, ecx
mov dword [ebp - 0x40], 0x15
xor edx, edx
mov cl, byte [ebp + esi - 0x200]
mov eax, esi
mov byte [ebp - 9], cl
div dword [ebp - 0x40]
movzx ecx, cl
push 0x70
movzx eax, byte [ebp + edx - 0xa8]
mov edx, 0x23cd
add eax, edi
add ecx, eax
mov eax, 0xdd2990
movzx edi, cl
pop ecx
add edx, ecx
lea eax, [eax + 2]
cmp edx, 0x275
ja 0xdf09f8
movzx ecx, word [eax]
test ecx, ecx
jne 0xdf09c7
jmp 0xdf09fe
call fcn.00deffb9
xor ebx, 0x7ac9341c
call fcn.00df012f
or ebx, 0x577065fd
jmp 0xdf095a
sub ebx, 0x2137df40
lea eax, [ebx + 0x28ea5938]
imul ebx, eax, 0x8c08dfe5
call fcn.00df012f
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + esi - 0x200], al
inc esi
mov al, byte [ebp - 9]
mov byte [ebp + edi - 0x200], al
cmp esi, 0x100
jb 0xdf0997
xor eax, eax
mov esi, eax
mov edx, eax
mov ecx, eax
lea eax, [edx + 1]
movzx edx, al
mov al, byte [ebp + edx - 0x200]
movzx edi, al
mov byte [ebp - 9], al
lea eax, [esi + edi]
movzx esi, al
mov al, byte [ebp + esi - 0x200]
mov byte [ebp + edx - 0x200], al
xor eax, eax
inc eax
cmp eax, 0x2119
je 0xdf0a78
cmp byte [eax + 0xdd29d8], 0
jne 0xdf0a65
jmp 0xdf0a7e
xor ebx, 0x2ce56787
mov al, byte [ebp - 9]
add ebx, 0xb1830f4
mov byte [ebp + esi - 0x200], al
or ebx, 0x8daa5be
movzx eax, byte [ebp + edx - 0x200]
add eax, edi
movzx eax, al
mov al, byte [ebp + eax - 0x200]
xor al, byte [ebp + ecx - 0x24]
mov byte [ebp + ecx - 0x6c], al
inc ecx
cmp ecx, 0x18
jb 0xdf0a3c
push 5
pop eax
mov ecx, eax
mov dword [ebp - 8], ebx
mov esi, 0xdd28f4
mov dword [ebp - 4], 0xdf5d0d27
lea edi, [ebp - 0xa8]
xor edx, edx
rep movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x54], dl
mov eax, edx
movsw word es:[edi], word [esi]
mov edi, edx
mov byte [ebp + eax - 0x200], al
inc eax
cmp eax, 0x100
jb 0xdf0add
mov esi, edx
xor edx, edx
mov bl, byte [ebp + esi - 0x200]
push 0x15
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0xa8]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + esi - 0x200], al
inc esi
mov byte [ebp + edi - 0x200], bl
cmp esi, 0x100
jb 0xdf0aee
mov esi, dword [ebp - 8]
xor eax, eax
sub esi, 0x4207da37
mov ebx, eax
cmp byte [0xe1a5cc], al
je 0xdf0b5b
inc eax
cmp eax, 0x1a67
jg 0xdf0b55
cmp byte [eax + 0xe1a5cc], bl
jne 0xdf0b43
jmp 0xdf0b5b
and esi, 0x98a99860
imul edi, esi, 0x3da3bb45
and edi, 0x95fe6b5f
mov dword [ebp - 0x44], edi
call fcn.00df012f
xor esi, esi
mov edi, ebx
lea eax, [ebx + 1]
movzx ebx, al
mov cl, byte [ebp + ebx - 0x200]
movzx edx, cl
lea eax, [edi + edx]
movzx edi, al
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + ebx - 0x200], al
mov byte [ebp + edi - 0x200], cl
movzx eax, byte [ebp + ebx - 0x200]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x200]
xor al, byte [ebp + esi - 4]
mov byte [ebp + esi - 0x90], al
inc esi
cmp esi, 4
jb 0xdf0b73
mov edi, dword [ebp - 0x44]
xor eax, eax
push 9
pop ecx
push 5
mov ebx, ecx
mov byte [ebp - 0x8c], al
pop ecx
mov dword [ebp - 0xa8], 0x57
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0xa0], 0x2a
mov dword [ebp - 0x9c], 0x18
mov dword [ebp - 0x98], 0xffffff6a
sub ebx, dword [ebp + eax*4 - 0xa8]
inc eax
cmp eax, ecx
jl 0xdf0c04
movd eax, xmm1
lea ecx, [ebp - 0xd4]
sub edi, 0x444f015c
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x63c], 0x22c
push eax
push dword [ebp - 0x80]
mov dword [0xe1a628], edi
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x3c4]
call fcn.00dee9ca
call eax
lea ecx, [ebp - 0x63c]
mov dword [ebp - 0x44], eax
push ecx
push eax
lea ecx, [ebp - 0xdc]
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x35c]
call fcn.00dee9ca
call eax
cmp eax, dword [ebp - 0x48]
jne 0xdf1757
push 9
pop eax
xor edx, edx
mov byte [ebp - 0x24], al
mov eax, edx
mov dword [ebp - 0x23], 0x93dbd552
mov dword [ebp - 0x1f], 0x47ce9767
mov dword [ebp - 0x1b], 0xd04a1925
mov dword [ebp - 0x17], 0x8e63613c
mov dword [ebp - 0x13], 0x9c7fc7df
mov word [ebp - 0xf], 0xcc76
mov byte [ebp - 0xd], 0x33
cmp byte [0xe1a5cc], al
je 0xdf0cc8
inc eax
cmp eax, 0x9dc
jg 0xdf0ce8
cmp byte [eax + 0xe1a5cc], dl
jne 0xdf0cb8
mov ebx, dword [0xe1a628]
mov ecx, edx
mov eax, 0xdd2990
inc ecx
lea eax, [eax + 2]
cmp ecx, 0xb21
jg 0xdf0cf6
cmp word [eax], dx
jne 0xdf0cd5
jmp 0xdf0cfc
mov ebx, dword [0xe1a628]
add ebx, 0x30fb854b
jmp 0xdf0cce
add ebx, 0x6b12baba
call fcn.00df0066
call fcn.00deffb9
mov esi, 0xdd290c
lea edi, [ebp - 0x100]
and ebx, 0x4421100
or ebx, 0x40000000
xor ebx, 0x60c0ace7
movsd dword es:[edi], dword [esi]
sub ebx, 0x4d6058ed
xor ecx, ecx
mov dword [ebp - 4], ebx
mov eax, ecx
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edi, ecx
mov byte [ebp + eax - 0x200], al
inc eax
cmp eax, 0x100
jb 0xdf0d36
mov esi, ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x200]
push 9
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x100]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + esi - 0x200], al
inc esi
mov byte [ebp + edi - 0x200], bl
cmp esi, 0x100
jb 0xdf0d47
push 9
mov ecx, 0xdd29c4
mov al, 0x74
pop edx
sub al, 0x30
cmp al, dl
ja 0xdf0da3
inc ecx
mov al, byte [ecx]
test al, al
jne 0xdf0d91
mov ebx, dword [ebp - 4]
jmp 0xdf0dac
mov ebx, dword [ebp - 4]
xor ebx, 0xe83531fe
or ebx, 0x1e5155ef
mov dword [ebp - 4], ebx
call fcn.00df012f
xor eax, eax
mov ebx, eax
mov esi, eax
mov edi, eax
lea eax, [esi + 1]
movzx esi, al
mov cl, byte [ebp + esi - 0x200]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x200]
mov byte [ebp + esi - 0x200], al
mov byte [ebp + ebx - 0x200], cl
movzx eax, byte [ebp + esi - 0x200]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x200]
xor al, byte [ebp + edi - 0x24]
mov byte [ebp + edi - 0x340], al
inc edi
cmp edi, 0x18
jb 0xdf0dc2
mov ebx, dword [ebp - 4]
lea edi, [ebp - 0xa4]
mov esi, 0xdd1e3c
mov dword [ebp - 8], 0x31ddf047
xor eax, eax
mov ecx, 0xdd2990
push 0x70
mov byte [ebp - 0x328], al
add ebx, 0x63713855
movsd dword es:[edi], dword [esi]
mov eax, 0x270b
pop edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
add eax, edx
lea ecx, [ecx + 2]
cmp eax, 0x1f03
ja 0xdf0e5c
movzx edx, word [ecx]
test edx, edx
jne 0xdf0e47
jmp 0xdf0e67
call fcn.00deffb9
xor ebx, 0x3f75160f
xor ebx, 0xbc0b2b73
add ebx, 0x95ceb42
call fcn.00deffb9
xor ecx, ecx
mov edi, ecx
mov eax, ecx
mov byte [ebp + eax - 0x324], al
inc eax
cmp eax, 0x100
jb 0xdf0e7e
mov esi, ecx
mov dl, byte [ebp + esi - 0x324]
mov eax, esi
and eax, 0xf
movzx ecx, dl
xor ebx, 0x1a07890a
movzx eax, byte [ebp + eax - 0xa4]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x324]
mov byte [ebp + esi - 0x324], al
inc esi
mov byte [ebp + edi - 0x324], dl
cmp esi, 0x100
jb 0xdf0e8f
xor eax, eax
mov dword [0xe1a628], ebx
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x324]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x324]
mov byte [ebp + edi - 0x324], al
mov byte [ebp + ebx - 0x324], cl
movzx eax, byte [ebp + edi - 0x324]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x324]
xor al, byte [ebp + esi - 8]
mov byte [ebp + esi - 0xb0], al
inc esi
cmp esi, 4
jb 0xdf0edf
mov dword [ebp - 0xc4], 0x3f
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0xc0], 0x18
xorps xmm1, xmm1
mov dword [ebp - 0xbc], 0x4c
xor eax, eax
mov dword [ebp - 0xb8], 0xffffff68
movups xmm0, xmmword [ebp - 0xc4]
mov byte [ebp - 0xac], al
lea eax, [ebp - 0x63c]
push eax
push dword [ebp - 0x44]
psubd xmm1, xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd ebx, xmm1
add ebx, 0xc
mov dword [ebp - 0x80], ebx
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x340]
call fcn.00dee9ca
call eax
cmp eax, ebx
jne 0xdf1754
mov dword [ebp - 0xc4], 0x37
xor ebx, ebx
mov dword [ebp - 0xc0], 0x2e
mov dword [ebp - 0xbc], 0x4d
mov dword [ebp - 0xb8], 0xffffff86
movups xmm0, xmmword [ebp - 0xc4]
mov eax, ebx
inc eax
cmp eax, 0x21f7
je 0xdf1014
cmp byte [eax + 0xdd29c4], 0
jne 0xdf0fee
mov esi, dword [0xe1a628]
cmp eax, 0x1e74
jg 0xdf101e
and esi, 0x3c0294b5
jmp 0xdf1029
imul esi, dword [0xe1a628], 0xf89da9da
call fcn.00df0066
or esi, 0x89c6dfb1
lea ebx, [esi + 0x78687ebe]
mov dword [0xe1a628], ebx
call fcn.00df012f
mov edi, dword [ebp - 0x88]
xorps xmm1, xmm1
psubd xmm1, xmm0
mov ecx, edi
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd esi, xmm1
add esi, 0x3c
call fcn.00e05897
cmp eax, esi
jbe 0xdf1083
mov edx, edi
lea ecx, [ebp - 0x618]
call fcn.00e05c67
jmp 0xdf11e4
mov esi, 0xdd2918
mov dword [ebp - 0x3c], 0x16d827fa
lea edi, [ebp - 0x100]
mov dword [ebp - 0x38], 0x2f783c18
lea eax, [ebx + 0x491f687c]
mov dword [ebp - 0x34], 0x98d4d408
xor ebx, ebx
mov dword [0xe1a628], eax
movsd dword es:[edi], dword [esi]
mov eax, ebx
mov dword [ebp - 0x30], 0x2c74f6e7
mov dword [ebp - 0x2c], 0xf818ccfe
mov dword [ebp - 0x28], 0x21ede4e6
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov edi, ebx
mov byte [ebp + eax - 0x324], al
inc eax
cmp eax, 0x100
jb 0xdf10cc
mov esi, ebx
mov dl, byte [ebp + esi - 0x324]
mov eax, esi
and eax, 7
movzx ecx, dl
movzx eax, byte [ebp + eax - 0x100]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x324]
mov byte [ebp + esi - 0x324], al
inc esi
mov byte [ebp + edi - 0x324], dl
cmp esi, 0x100
jb 0xdf10dd
xor eax, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x324]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x324]
mov byte [ebp + edi - 0x324], al
mov byte [ebp + ebx - 0x324], cl
movzx eax, byte [ebp + edi - 0x324]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x324]
xor al, byte [ebp + esi - 0x3c]
mov byte [ebp + esi - 0x378], al
inc esi
cmp esi, 0x18
jb 0xdf111f
xor eax, eax
mov dword [ebp - 0x20c], 0x3d
push 0x22
mov byte [ebp - 0x360], al
pop edi
mov dword [ebp - 0x208], 0x4b
mov dword [ebp - 0x204], 0xffffff56
add edi, dword [ebp + eax*4 - 0x20c]
inc eax
cmp eax, 3
jl 0xdf1198
lea ecx, [ebp - 0x378]
call fcn.00e0523e
mov esi, eax
lea ecx, [ebp - 0x618]
mov edx, esi
call fcn.00e05c67
mov ecx, esi
mov dword [ebp - 0x48], eax
call fcn.00e05897
push eax
push edi
push esi
call fcn.00e05117
add esp, 0xc
mov ecx, esi
call fcn.00dee98d
mov ebx, dword [0xe1a628]
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0xdf1725
push 9
pop eax
mov byte [ebp - 0x33], al
mov edx, 0xbf9
mov eax, dword [0xdd2924]
mov dword [ebp - 0x50], eax
mov ax, word [0xdd2928]
push 0x74
mov word [ebp - 0x4c], ax
mov eax, 0xdd29c4
mov dword [ebp - 0x3c], 0xa4d8b74c
mov dword [ebp - 0x38], 0x6d4c8018
mov byte [ebp - 0x34], 0xed
mov dword [ebp - 0x32], 0x6a023569
mov dword [ebp - 0x2e], 0xfb91c9ee
mov dword [ebp - 0x2a], 0xe3d435ff
mov word [ebp - 0x26], 0x76db
pop ecx
add edx, ecx
inc eax
cmp edx, 0x190c
ja 0xdf1252
movsx ecx, byte [eax]
test ecx, ecx
jne 0xdf123e
jmp 0xdf1258
imul ebx, ebx, 0x1ec6d761
xor ebx, 0xec074185
xor ecx, ecx
mov dword [ebp - 8], ecx
mov eax, ecx
mov byte [ebp + eax - 0x324], al
inc eax
cmp eax, 0x100
jb 0xdf1265
mov esi, ecx
lea edi, [ebx - 0x125b44cd]
xor edx, edx
mov bl, byte [ebp + esi - 0x324]
push 5
mov eax, esi
imul edi, edi, 0xfa9d231f
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x50]
add eax, dword [ebp - 8]
add ecx, eax
movzx ecx, cl
mov dword [ebp - 8], ecx
mov al, byte [ebp + ecx - 0x324]
mov byte [ebp + esi - 0x324], al
inc esi
mov byte [ebp + ecx - 0x324], bl
cmp esi, 0x100
jb 0xdf127c
xor eax, eax
mov dword [ebp - 8], eax
mov ebx, eax
mov esi, eax
lea eax, [ebx + 1]
and edi, 0x4c420212
movzx ebx, al
or edi, 0x3c2184
mov eax, dword [ebp - 8]
mov cl, byte [ebp + ebx - 0x324]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 8], eax
mov al, byte [ebp + eax - 0x324]
mov byte [ebp + ebx - 0x324], al
mov eax, dword [ebp - 8]
mov byte [ebp + eax - 0x324], cl
movzx eax, byte [ebp + ebx - 0x324]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x324]
xor al, byte [ebp + esi - 0x3c]
mov byte [ebp + esi - 0x394], al
inc esi
cmp esi, 0x18
jb 0xdf12cc
mov dword [0xe1a628], edi
mov esi, 0xdd292c
lea edi, [ebp - 0x224]
mov dword [ebp - 4], 0x7d8932ec
xor ecx, ecx
mov byte [ebp - 0x37c], cl
mov eax, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edi, ecx
mov byte [ebp + eax - 0x200], al
inc eax
cmp eax, 0x100
jb 0xdf1358
mov esi, ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x200]
push 9
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x224]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + esi - 0x200], al
inc esi
mov byte [ebp + edi - 0x200], bl
cmp esi, 0x100
jb 0xdf1369
xor eax, eax
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x200]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x200]
mov byte [ebp + edi - 0x200], al
mov byte [ebp + ebx - 0x200], cl
movzx eax, byte [ebp + edi - 0x200]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x200]
xor al, byte [ebp + esi - 4]
mov byte [ebp + esi - 0xe4], al
inc esi
cmp esi, 4
jb 0xdf13b1
mov dword [ebp - 0x1c], 1
xor ebx, ebx
mov dword [ebp - 0x18], 0x3b
mov ecx, ebx
mov dword [ebp - 0x14], 0x4c
mov eax, ebx
mov dword [ebp - 0x10], 0xff4e
movups xmm1, xmmword [ebp - 0x1c]
mov byte [ebp - 0xe0], bl
mov dword [ebp - 0x218], 0xb
movaps xmm0, xmm1
mov dword [ebp - 0x214], 0x27
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x210], 0xffffffce
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd edx, xmm1
add edx, 0x29
sub ecx, dword [ebp + eax*4 - 0x218]
inc eax
cmp eax, 3
jl 0xdf146a
mov edi, ebx
mov dword [ebp - 0xf4], 0x40
mov dword [ebp - 0xf0], 0xe
mov eax, ebx
mov dword [ebp - 0xec], 0xffffffb2
sub edi, dword [ebp + eax*4 - 0xf4]
inc eax
cmp eax, 3
jl 0xdf1499
push 0x38
pop eax
push 0x15
mov dword [ebp - 0xa4], eax
xorps xmm1, xmm1
pop eax
push dword [ebp - 0x634]
mov dword [ebp - 0x9c], eax
or edx, 0x1f0000
mov dword [ebp - 0xa0], 0x36
mov dword [ebp - 0x98], 0xffffff89
movups xmm0, xmmword [ebp - 0xa4]
push ecx
push edx
psubd xmm1, xmm0
lea ecx, [ebp - 0xe4]
movaps xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd esi, xmm1
add esi, 0xd
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x394]
call fcn.00dee9ca
call eax
mov dword [ebp - 0x48], eax
cmp eax, edi
je 0xdf1727
neg esi
cmp eax, esi
je 0xdf1727
push 0xe
pop ecx
mov esi, 0xdd2938
mov dword [ebp - 0x3c], 0x85d9315b
lea edi, [ebp - 0x400]
mov dword [ebp - 0x38], 0xda43d06e
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x34], 0x9885ba4d
mov eax, ebx
mov dword [ebp - 0x30], 0x4cb6b418
mov dword [ebp - 0x2c], 0x62aed8ba
movsb byte es:[edi], byte [esi]
mov dword [ebp - 0x28], 0xd8b9c0b4
mov edi, ebx
mov byte [ebp + eax - 0x324], al
inc eax
cmp eax, 0x100
jb 0xdf1575
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x324]
push 0x38
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x400]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x324]
mov byte [ebp + esi - 0x324], al
inc esi
mov byte [ebp + edi - 0x324], bl
cmp esi, 0x100
jb 0xdf1586
xor eax, eax
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x324]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x324]
mov byte [ebp + edi - 0x324], al
mov byte [ebp + ebx - 0x324], cl
movzx eax, byte [ebp + edi - 0x324]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x324]
xor al, byte [ebp + esi - 0x3c]
mov byte [ebp + esi - 0xcc], al
inc esi
cmp esi, 0x18
jb 0xdf15ce
mov esi, 0xdd2974
mov dword [ebp - 4], 0x73dbeb55
lea edi, [ebp - 0xa8]
xor ecx, ecx
mov byte [ebp - 0xb4], cl
mov eax, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov edi, ecx
mov byte [ebp + eax - 0x200], al
inc eax
cmp eax, 0x100
jb 0xdf1643
mov esi, ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x200]
push 0x12
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0xa8]
add eax, edi
add ecx, eax
imul eax, dword [0xe1a628], 0x42b130d9
movzx edi, cl
mov dword [0xe1a628], eax
mov al, byte [ebp + edi - 0x200]
mov byte [ebp + esi - 0x200], al
inc esi
mov byte [ebp + edi - 0x200], bl
cmp esi, 0x100
jb 0xdf1654
xor eax, eax
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x200]
movzx edx, cl
lea eax, [ebx + edx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x200]
mov byte [ebp + edi - 0x200], al
mov byte [ebp + ebx - 0x200], cl
movzx eax, byte [ebp + edi - 0x200]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x200]
xor al, byte [ebp + esi - 4]
mov byte [ebp + esi - 0x88], al
inc esi
cmp esi, 4
jb 0xdf16ab
push dword [ebp - 0x44]
xor eax, eax
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x84], al
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0xcc]
call fcn.00dee9ca
call eax
mov eax, dword [ebp - 0x48]
jmp 0xdf1775
xor ebx, ebx
lea eax, [ebp - 0x63c]
push eax
push dword [ebp - 0x44]
lea ecx, [ebp - 0xb0]
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x340]
call fcn.00dee9ca
call eax
cmp eax, dword [ebp - 0x80]
je 0xdf0fe5
mov ebx, dword [ebp - 0x40]
push dword [ebp - 0x44]
lea ecx, [ebp - 0x90]
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x6c]
call fcn.00dee9ca
call eax
neg ebx
mov eax, ebx
pop edi
pop esi
pop ebx
leave
ret