Function at 0x425c00
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x220
mov dword [ebp - 0x220], ebx
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x218], edi
mov dword [ebp - 4], eax
mov dword [ebp - 8], edx
mov dword [ebp - 0xc], ecx
mov eax, dword [ebp - 4]
call fcn.00407140
mov eax, dword [ebp - 8]
call fcn.00407140
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x1ec], 0
lea ecx, [ebp - 0x1cc]
lea edx, [ebp - 0x1e4]
mov eax, 1
call fcn.0040b6a0
call fcn.0040d660
push eax
test eax, eax
jne 0x426c64
lea edi, [ebp - 0x1c0]
mov esi, 0x560e80
cld
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea edi, [ebp - 0x1b0]
mov esi, 0x560d80
cld
mov ecx, 0x40
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 8]
call fcn.00407140
lea eax, [ebp - 0x20]
call fcn.00403b60
mov eax, dword [ebp - 8]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x1ec]
call fcn.00403b60
mov dword [ebp - 0x1ec], 0
push 3
lea eax, [ebp - 0x1ec]
push eax
mov eax, dword [ebp - 0x20]
mov ecx, 0
mov edx, 0x560e98
call fcn.00443240
mov eax, dword [ebp - 0x1ec]
call fcn.00407140
lea eax, [ebp - 0x20]
call fcn.00403b60
mov eax, dword [ebp - 0x1ec]
mov dword [ebp - 0x20], eax
push 3
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 4]
mov ecx, 0
mov edx, 0x560e98
call fcn.00443240
lea eax, [ebp - 0x78]
mov cl, 0
mov edx, 0xc
call fcn.004035c0
lea eax, [ebp - 0x94]
mov cl, 0
mov edx, 0x19
call fcn.004035c0
lea eax, [ebp - 0xb0]
mov cl, 0
mov edx, 0xc
call fcn.004035c0
lea eax, [ebp - 0x24]
call fcn.00403b60
mov dword [ebp - 0x24], 0
lea eax, [ebp - 0x18]
call fcn.00403b60
mov eax, 0
mov dword [ebp - 0x18], eax
test eax, eax
je 0x425dad
mov eax, dword [eax - 4]
mov dword [ebp - 0x10], 1
cmp eax, dword [ebp - 0x10]
jl 0x425dd6
dec dword [ebp - 0x10]
inc dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
dec edx
mov ebx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
mov cl, byte [ebx + ecx - 1]
mov byte [ebp + edx - 0x78], cl
cmp eax, dword [ebp - 0x10]
jg 0x425dbc
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x425de0
mov ebx, dword [ebx - 4]
mov dword [ebp - 0x10], 1
cmp ebx, dword [ebp - 0x10]
jl 0x425e97
dec dword [ebp - 0x10]
nop
inc dword [ebp - 0x10]
lea eax, [ebp - 0x1ec]
call fcn.00403b60
mov dword [ebp - 0x1ec], 0
lea eax, [ebp - 0x1f0]
call fcn.00403b60
mov dword [ebp - 0x1f0], 0
lea eax, [ebp - 0x1f4]
call fcn.00403b60
mov dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
lea edx, [ebp - 0x1f4]
call fcn.004074a0
mov eax, dword [ebp - 0x1f4]
mov edx, str.FX84VBCNY1M2367PQJK59WLUAEZDGRST
call fcn.00446180
dec eax
lea ecx, [ebp - 0x1f0]
mov edx, 5
call fcn.00426f00
mov eax, dword [ebp - 0x1f0]
lea edx, [ebp - 0x1ec]
call fcn.00534ff0
mov ecx, dword [ebp - 0x1ec]
mov edx, dword [ebp - 0x24]
lea eax, [ebp - 0x24]
call fcn.00407170
cmp ebx, dword [ebp - 0x10]
jg 0x425df4
mov dword [ebp - 0x10], 0
dec dword [ebp - 0x10]
lea esi, [esi]
inc dword [ebp - 0x10]
lea eax, [ebp - 0x1f4]
call fcn.00403b60
mov dword [ebp - 0x1f4], 0
lea eax, [ebp - 0x1f0]
call fcn.00403b60
mov dword [ebp - 0x1f0], 0
lea eax, [ebp - 0x1f0]
push eax
mov edx, dword [ebp - 0x10]
lea edx, [edx*8 + 1]
mov eax, dword [ebp - 0x24]
mov ecx, 8
call fcn.00407820
mov eax, dword [ebp - 0x1f0]
lea edx, [ebp - 0x1f4]
call fcn.00534ff0
mov eax, dword [ebp - 0x1f4]
call fcn.00426db0
mov edx, dword [ebp - 0x10]
mov byte [ebp + edx - 0xa4], al
cmp dword [ebp - 0x10], 0xf
jl 0x425ea4
pushal
lea ecx, [ebp - 0xa4]
movzx edx, word [ecx + 4]
movzx eax, word [ecx + 6]
add eax, edx
cdq
or edx, dword [ecx]
xor esi, esi
or eax, esi
add eax, dword [ecx + 8]
adc edx, dword [ecx + 0xc]
mov edi, eax
mov esi, edx
mov ecx, esi
shrd eax, ecx, 4
sar ecx, 4
mov edx, edi
mov ebx, esi
shrd edx, ebx, 8
mov ecx, edi
shrd edi, esi, 0xc
and eax, 0xf
sar ebx, 8
add al, 0x41
and ecx, 0xf
mov ebx, edi
lea edi, [ebp - 0x78]
mov byte [edi + 2], al
add cl, 0x43
and edx, 0xf
and ebx, 0xf
mov byte [edi + 3], cl
add dl, 0x44
add bl, 0x43
mov byte [edi + 4], dl
mov byte [edi + 5], bl
popal
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x425f8a
mov eax, dword [eax - 4]
mov dword [ebp - 0x10], 1
cmp eax, dword [ebp - 0x10]
jl 0x425fb9
dec dword [ebp - 0x10]
lea esi, [esi]
inc dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
dec edx
mov ecx, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x10]
mov cl, byte [ecx + ebx - 1]
mov byte [ebp + edx - 0x94], cl
cmp eax, dword [ebp - 0x10]
jg 0x425f9c
pushal
lea esi, [ebp - 0x94]
add esi, 1
mov edi, 4
mov ebx, 1
mov dword [ebp - 0xa8], edi
lea ecx, [edi - 1]
and ecx, 0x80000007
jns 0x425fe3
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, 1
shl eax, cl
movsx ecx, byte [esi - 1]
test ecx, eax
je 0x426001
mov eax, ebx
cdq
or dword [ebp - 0xb0], eax
or dword [ebp - 0xac], edx
mov ecx, edi
rol ebx, 1
and ecx, 0x80000007
jns 0x426012
dec ecx
or ecx, 0xfffffff8
inc ecx
movsx eax, byte [esi]
mov edx, 1
shl edx, cl
test eax, edx
je 0x42602f
mov eax, ebx
cdq
or dword [ebp - 0xb0], eax
or dword [ebp - 0xac], edx
lea ecx, [edi + 1]
rol ebx, 1
and ecx, 0x80000007
jns 0x426041
dec ecx
or ecx, 0xfffffff8
inc ecx
movsx eax, byte [esi + 1]
mov edx, 1
shl edx, cl
test eax, edx
je 0x42605f
mov eax, ebx
cdq
or dword [ebp - 0xb0], eax
or dword [ebp - 0xac], edx
lea ecx, [edi + 2]
rol ebx, 1
and ecx, 0x80000007
jns 0x426071
dec ecx
or ecx, 0xfffffff8
inc ecx
movsx eax, byte [esi + 2]
mov edx, 1
shl edx, cl
test eax, edx
je 0x42608f
mov eax, ebx
cdq
or dword [ebp - 0xb0], eax
or dword [ebp - 0xac], edx
lea ecx, [edi + 3]
rol ebx, 1
and ecx, 0x80000007
jns 0x4260a1
dec ecx
or ecx, 0xfffffff8
inc ecx
movsx eax, byte [esi + 3]
mov edx, 1
shl edx, cl
test eax, edx
je 0x4260bf
mov eax, ebx
cdq
or dword [ebp - 0xb0], eax
or dword [ebp - 0xac], edx
lea ecx, [edi + 4]
rol ebx, 1
and ecx, 0x80000007
jns 0x4260d1
dec ecx
or ecx, 0xfffffff8
inc ecx
movsx eax, byte [esi + 4]
mov edx, 1
shl edx, cl
test eax, edx
je 0x4260ef
mov eax, ebx
cdq
or dword [ebp - 0xb0], eax
or dword [ebp - 0xac], edx
rol ebx, 1
add edi, 6
add esi, 6
dec dword [ebp - 0xa8]
jne 0x425fd3
mov eax, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xac]
mov edi, eax
mov esi, edx
shrd eax, edx, 4
sar edx, 4
mov edx, edi
mov ebx, esi
shrd edx, ebx, 8
mov ecx, edi
shrd edi, esi, 0xc
and eax, 0xf
sar ebx, 8
add al, 0x41
and ecx, 0xf
mov ebx, edi
lea edi, [ebp - 0x78]
mov byte [edi + 6], al
add cl, 0x43
and edx, 0xf
and ebx, 0xf
mov byte [edi + 7], cl
add dl, 0x44
add bl, 0x43
mov byte [edi + 8], dl
mov byte [edi + 9], bl
popal
mov dword [ebp - 0x10], 2
dec dword [ebp - 0x10]
mov esi, esi
inc dword [ebp - 0x10]
lea eax, [ebp - 0x1f4]
call fcn.00403b60
mov dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x10]
mov al, byte [ebp + eax - 0x78]
lea edx, [ebp - 0x1f4]
call fcn.004074a0
mov ecx, dword [ebp - 0x1f4]
mov edx, dword [ebp - 0x18]
lea eax, [ebp - 0x18]
call fcn.00407170
cmp dword [ebp - 0x10], 9
jl 0x426160
pushal
lea edi, [ebp - 0x78]
movsx eax, byte [edi + 7]
movsx ebx, byte [edi + 8]
add eax, ebx
movsx ebx, byte [edi + 4]
add eax, ebx
movsx ebx, byte [edi + 3]
add eax, ebx
movsx ebx, byte [edi + 6]
movsx edx, byte [edi + 9]
add edx, ebx
movsx ebx, byte [edi + 5]
add edx, ebx
movsx ebx, byte [edi + 2]
add edx, ebx
shl eax, 8
or eax, edx
mov dword [ebp - 0x10], eax
popal
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.0043fe90
lea eax, [ebp - 0x68]
mov cl, 0
mov edx, 0x40
call fcn.004035c0
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x4261fe
mov eax, dword [eax - 4]
mov dword [ebp - 0x10], 1
cmp eax, dword [ebp - 0x10]
jl 0x42622a
dec dword [ebp - 0x10]
lea esi, [esi]
inc dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
dec edx
mov ecx, dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x10]
mov cl, byte [ecx + ebx - 1]
mov byte [ebp + edx - 0x68], cl
cmp eax, dword [ebp - 0x10]
jg 0x426210
mov eax, dword [ebp - 0x10]
mov byte [ebp + eax - 0x68], pe_nt_image_headers32
mov byte [ebp - 0x30], 0x28
pushal
lea eax, [ebp - 0x1c0]
lea ecx, [ebp - 0x68]
mov edx, dword [eax + 4]
mov esi, dword [eax + 8]
mov edi, dword [eax + 0xc]
mov ebp, dword [ecx]
mov ebx, edi
xor ebx, esi
and ebx, edx
xor ebx, edi
add ebx, ebp
mov ebp, dword [eax]
lea ebx, [ebp + ebx - 0x28955b88]
rol ebx, 7
push eax
mov eax, esi
add ebx, edx
xor eax, edx
and eax, ebx
mov ebp, dword [ecx + 4]
xor eax, esi
add edi, ebp
add eax, 0xe8c7b756
add edi, eax
rol edi, 0xc
mov eax, edx
add edi, ebx
xor eax, ebx
and eax, edi
mov ebp, dword [ecx + 8]
xor eax, edx
add esi, ebp
add eax, 0x242070db
add esi, eax
rol esi, 0x11
mov eax, edi
add esi, edi
xor eax, ebx
and eax, esi
mov ebp, dword [ecx + 0xc]
xor eax, ebx
add edx, ebp
add eax, 0xc1bdceee
add edx, eax
rol edx, 0x16
mov eax, edi
add edx, esi
xor eax, esi
and eax, edx
mov ebp, dword [ecx + 0x10]
xor eax, edi
add ebx, ebp
add eax, 0xf57c0faf
add ebx, eax
rol ebx, 7
mov eax, esi
add ebx, edx
xor eax, edx
and eax, ebx
mov ebp, dword [ecx + 0x14]
xor eax, esi
add edi, ebp
add eax, 0x4787c62a
add edi, eax
rol edi, 0xc
mov eax, edx
add edi, ebx
xor eax, ebx
and eax, edi
mov ebp, dword [ecx + 0x18]
xor eax, edx
add esi, ebp
add eax, 0xa8304613
add esi, eax
rol esi, 0x11
mov eax, edi
add esi, edi
xor eax, ebx
and eax, esi
mov ebp, dword [ecx + 0x1c]
xor eax, ebx
add edx, ebp
add eax, 0xfd469501
add edx, eax
rol edx, 0x16
mov eax, edi
add edx, esi
xor eax, esi
and eax, edx
mov ebp, dword [ecx + 0x20]
xor eax, edi
add ebx, ebp
add eax, 0x698098d8
add ebx, eax
rol ebx, 7
mov eax, esi
add ebx, edx
xor eax, edx
and eax, ebx
mov ebp, dword [ecx + 0x24]
xor eax, esi
add edi, ebp
add eax, 0x8b44f7af
add edi, eax
rol edi, 0xc
mov eax, edx
add edi, ebx
xor eax, ebx
and eax, edi
mov ebp, dword [ecx + 0x28]
xor eax, edx
add esi, ebp
add eax, 0xffff5bb1
add esi, eax
rol esi, 0x11
mov eax, edi
add esi, edi
xor eax, ebx
and eax, esi
mov ebp, dword [ecx + 0x2c]
xor eax, ebx
add edx, ebp
add eax, 0x895cd7be
add edx, eax
rol edx, 0x16
mov eax, edi
add edx, esi
xor eax, esi
and eax, edx
mov ebp, dword [ecx + 0x30]
xor eax, edi
add ebx, ebp
add eax, 0x6b901122
add ebx, eax
rol ebx, 7
mov eax, esi
add ebx, edx
xor eax, edx
and eax, ebx
mov ebp, dword [ecx + 0x34]
xor eax, esi
add edi, ebp
add eax, 0xfd987193
add edi, eax
rol edi, 0xc
mov eax, edx
add edi, ebx
xor eax, ebx
and eax, edi
mov ebp, dword [ecx + 0x38]
xor eax, edx
add esi, ebp
add eax, 0xa679438e
add esi, eax
rol esi, 0x11
mov eax, edi
add esi, edi
xor eax, ebx
and eax, esi
mov ebp, dword [ecx + 0x3c]
xor eax, ebx
add edx, ebp
add eax, 0x49b40821
add edx, eax
rol edx, 0x16
mov eax, esi
add edx, esi
mov ebp, dword [ecx + 4]
xor eax, edx
and eax, edi
xor eax, esi
add ebx, ebp
add eax, 0xf61e2562
add ebx, eax
mov eax, edx
rol ebx, 5
mov ebp, dword [ecx + 0x18]
add ebx, edx
xor eax, ebx
and eax, esi
xor eax, edx
add edi, ebp
add eax, 0xc040b340
add edi, eax
mov ebp, dword [ecx + 0x2c]
rol edi, 9
add edi, ebx
mov eax, edi
xor eax, ebx
and eax, edx
xor eax, ebx
add esi, ebp
add eax, 0x265e5a51
add esi, eax
mov eax, edi
rol esi, 0xe
mov ebp, dword [ecx]
add esi, edi
xor eax, esi
and eax, ebx
xor eax, edi
add edx, ebp
add eax, 0xe9b6c7aa
add edx, eax
mov eax, esi
rol edx, 0x14
mov ebp, dword [ecx + 0x14]
add edx, esi
xor eax, edx
and eax, edi
xor eax, esi
add ebx, ebp
add eax, 0xd62f105d
add ebx, eax
mov eax, edx
rol ebx, 5
mov ebp, dword [ecx + 0x28]
add ebx, edx
xor eax, ebx
and eax, esi
xor eax, edx
add edi, ebp
add eax, 0x2441453
add edi, eax
rol edi, 9
add edi, ebx
mov ebp, dword [ecx + 0x3c]
mov eax, edi
xor eax, ebx
and eax, edx
xor eax, ebx
add esi, ebp
add eax, 0xd8a1e681
add esi, eax
mov eax, edi
rol esi, 0xe
mov ebp, dword [ecx + 0x10]
add esi, edi
xor eax, esi
and eax, ebx
xor eax, edi
add edx, ebp
add eax, 0xe7d3fbc8
add edx, eax
mov eax, esi
rol edx, 0x14
mov ebp, dword [ecx + 0x24]
add edx, esi
xor eax, edx
and eax, edi
xor eax, esi
add ebx, ebp
add eax, 0x21e1cde6
add ebx, eax
mov eax, edx
rol ebx, 5
mov ebp, dword [ecx + 0x38]
add ebx, edx
xor eax, ebx
and eax, esi
xor eax, edx
add edi, ebp
add eax, 0xc33707d6
add edi, eax
mov ebp, dword [ecx + 0xc]
rol edi, 9
add edi, ebx
mov eax, edi
xor eax, ebx
and eax, edx
xor eax, ebx
add esi, ebp
add eax, 0xf4d50d87
add esi, eax
mov eax, edi
rol esi, 0xe
mov ebp, dword [ecx + 0x20]
add esi, edi
xor eax, esi
and eax, ebx
xor eax, edi
add edx, ebp
add eax, 0x455a14ed
add edx, eax
rol edx, 0x14
add edx, esi
mov eax, esi
mov ebp, dword [ecx + 0x34]
xor eax, edx
and eax, edi
xor eax, esi
add ebx, ebp
add eax, 0xa9e3e905
add ebx, eax
mov eax, edx
rol ebx, 5
mov ebp, dword [ecx + 8]
add ebx, edx
xor eax, ebx
and eax, esi
xor eax, edx
add edi, ebp
add eax, 0xfcefa3f8
add edi, eax
mov ebp, dword [ecx + 0x1c]
rol edi, 9
add edi, ebx
mov eax, edi
xor eax, ebx
and eax, edx
xor eax, ebx
add esi, ebp
add eax, 0x676f02d9
add esi, eax
mov eax, edi
rol esi, 0xe
add esi, edi
xor eax, esi
mov ebp, eax
and ebp, ebx
xor ebp, edi
mov eax, dword [ecx + 0x30]
add edx, ebp
add eax, 0x8d2a4c8a
add edx, eax
rol edx, 0x14
mov eax, edi
add edx, esi
xor eax, esi
mov ebp, dword [ecx + 0x14]
xor eax, edx
add ebx, ebp
add eax, 0xfffa3942
add ebx, eax
rol ebx, 4
mov eax, esi
add ebx, edx
xor eax, edx
mov ebp, dword [ecx + 0x20]
xor eax, ebx
add edi, ebp
add eax, 0x8771f681
add edi, eax
rol edi, 0xb
mov ebp, dword [ecx + 0x2c]
add esi, ebp
add edi, ebx
mov eax, edi
add esi, 0x6d9d6122
xor eax, edx
xor eax, ebx
add esi, eax
rol esi, 0x10
mov eax, edi
add esi, edi
xor eax, esi
mov ebp, dword [ecx + 0x38]
add edx, ebp
mov ebp, ebx
xor ebp, eax
add edx, 0xfde5380c
add edx, ebp
rol edx, 0x17
mov ebp, dword [ecx + 4]
add ebx, ebp
add edx, esi
mov ebp, edx
add ebx, 0xa4beea44
xor ebp, eax
add ebx, ebp
rol ebx, 4
mov eax, esi
add ebx, edx
xor eax, edx
mov ebp, dword [ecx + 0x10]
xor eax, ebx
add edi, ebp
add eax, 0x4bdecfa9
add edi, eax
rol edi, 0xb
mov ebp, dword [ecx + 0x1c]
add esi, ebp
add edi, ebx
mov eax, edi
add esi, 0xf6bb4b60
xor eax, edx
xor eax, ebx
add esi, eax
rol esi, 0x10
mov eax, edi
add esi, edi
mov ebp, dword [ecx + 0x28]
add edx, ebp
mov ebp, ebx
xor eax, esi
add edx, 0xbebfbc70
xor ebp, eax
add edx, ebp
rol edx, 0x17
mov ebp, dword [ecx + 0x34]
add ebx, ebp
add edx, esi
mov ebp, edx
add ebx, 0x289b7ec6
xor ebp, eax
add ebx, ebp
rol ebx, 4
mov eax, esi
add ebx, edx
xor eax, edx
mov ebp, dword [ecx]
xor eax, ebx
add edi, ebp
add eax, 0xeaa127fa
add edi, eax
rol edi, 0xb
mov ebp, dword [ecx + 0xc]
add esi, ebp
add edi, ebx
mov eax, edi
add esi, 0xd4ef3085
xor eax, edx
xor eax, ebx
add esi, eax
rol esi, 0x10
mov eax, edi
add esi, edi
mov ebp, dword [ecx + 0x18]
add edx, ebp
mov ebp, ebx
xor eax, esi
add edx, 0x4881d05
xor ebp, eax
add edx, ebp
rol edx, 0x17
add edx, esi
mov ebp, edx
xor ebp, eax
mov eax, dword [ecx + 0x24]
add ebx, ebp
add eax, 0xd9d4d039
add ebx, eax
rol ebx, 4
mov eax, esi
add ebx, edx
xor eax, edx
mov ebp, dword [ecx + 0x30]
xor eax, ebx
add eax, 0xe6db99e5
add edi, ebp
add edi, eax
rol edi, 0xb
mov ebp, dword [ecx + 0x3c]
add edi, ebx
add esi, ebp
mov eax, edi
add esi, 0x1fa27cf8
xor eax, edx
xor eax, ebx
add esi, eax
rol esi, 0x10
mov eax, edi
add esi, edi
mov ebp, dword [ecx + 8]
xor eax, esi
add edx, ebp
xor eax, ebx
add edx, 0xc4ac5665
add edx, eax
rol edx, 0x17
mov eax, edi
xor eax, 0xffffffff
add edx, esi
mov ebp, dword [ecx]
or eax, edx
xor eax, esi
add ebx, ebp
add eax, 0xf4292244
add ebx, eax
rol ebx, 6
mov eax, esi
xor eax, 0xffffffff
add ebx, edx
mov ebp, dword [ecx + 0x1c]
or eax, ebx
xor eax, edx
add edi, ebp
add eax, 0x432aff97
add edi, eax
rol edi, 0xa
mov eax, edx
xor eax, 0xffffffff
add edi, ebx
mov ebp, dword [ecx + 0x38]
or eax, edi
xor eax, ebx
add esi, ebp
add eax, 0xab9423a7
add esi, eax
rol esi, 0xf
mov eax, ebx
xor eax, 0xffffffff
add esi, edi
mov ebp, dword [ecx + 0x14]
or eax, esi
xor eax, edi
add edx, ebp
add edx, 0xfc93a039
add edx, eax
rol edx, 0x15
mov eax, edi
xor eax, 0xffffffff
add edx, esi
mov ebp, dword [ecx + 0x30]
or eax, edx
xor eax, esi
add ebx, ebp
add eax, 0x655b59c3
add ebx, eax
rol ebx, 6
mov eax, esi
xor eax, 0xffffffff
add ebx, edx
mov ebp, dword [ecx + 0xc]
or eax, ebx
xor eax, edx
add edi, ebp
add eax, 0x8f0ccc92
add edi, eax
rol edi, 0xa
mov eax, edx
xor eax, 0xffffffff
add edi, ebx
mov ebp, dword [ecx + 0x28]
or eax, edi
xor eax, ebx
add esi, ebp
add eax, 0xffeff47d
add esi, eax
rol esi, 0xf
mov eax, ebx
xor eax, 0xffffffff
add esi, edi
mov ebp, dword [ecx + 4]
or eax, esi
xor eax, edi
add edx, ebp
add eax, 0x85845dd1
add edx, eax
rol edx, 0x15
mov eax, edi
xor eax, 0xffffffff
add edx, esi
mov ebp, dword [ecx + 0x20]
or eax, edx
xor eax, esi
add ebx, ebp
add eax, 0x6fa87e4f
add ebx, eax
rol ebx, 6
mov eax, esi
xor eax, 0xffffffff
add ebx, edx
mov ebp, dword [ecx + 0x3c]
or eax, ebx
xor eax, edx
add edi, ebp
add eax, 0xfe2ce6e0
add edi, eax
rol edi, 0xa
mov eax, edx
xor eax, 0xffffffff
add edi, ebx
mov ebp, dword [ecx + 0x18]
or eax, edi
xor eax, ebx
add esi, ebp
add eax, 0xa3014314
add esi, eax
rol esi, 0xf
mov eax, ebx
xor eax, 0xffffffff
add esi, edi
mov ebp, dword [ecx + 0x34]
or eax, esi
xor eax, edi
add edx, ebp
add eax, 0x4e0811a1
add edx, eax
rol edx, 0x15
mov eax, edi
xor eax, 0xffffffff
add edx, esi
mov ebp, dword [ecx + 0x10]
or eax, edx
xor eax, esi
add ebx, ebp
add eax, 0xf7537e82
add ebx, eax
rol ebx, 6
mov eax, esi
xor eax, 0xffffffff
add ebx, edx
mov ebp, dword [ecx + 0x2c]
or eax, ebx
xor eax, edx
add edi, ebp
add eax, 0xbd3af235
add edi, eax
rol edi, 0xa
mov eax, edx
xor eax, 0xffffffff
add edi, ebx
mov ebp, dword [ecx + 8]
or eax, edi
xor eax, ebx
add esi, ebp
add eax, 0x2ad7d2bb
add esi, eax
rol esi, 0xf
mov eax, ebx
xor eax, 0xffffffff
add esi, edi
mov ebp, dword [ecx + 0x24]
or eax, esi
xor eax, edi
add edx, ebp
add eax, 0xeb86d391
add edx, eax
rol edx, 0x15
pop eax
add edx, esi
mov ecx, dword [eax]
add ebx, ecx
mov ecx, dword [eax + 4]
add edx, ecx
mov dword [eax], ebx
mov ecx, dword [eax + 8]
mov dword [eax + 4], edx
add esi, ecx
mov ecx, dword [eax + 0xc]
mov dword [eax + 8], esi
add edi, ecx
mov dword [eax + 0xc], edi
popal
pushal
lea esi, [ebp - 0x1b0]
xor ecx, ecx
xor ebx, ebx
xor ecx, ecx
lea ebp, [ebp - 0x1c0]
lea edi, [ebp + 0x10]
mov dl, byte [ecx + esi]
mov al, byte [ebp]
add bl, al
add bl, dl
mov al, byte [ebx + esi]
mov byte [ecx + esi], al
mov byte [ebx + esi], dl
mov al, byte [ebp + 1]
mov dl, byte [ecx + esi + 1]
add bl, al
add bl, dl
mov al, byte [ebx + esi]
mov byte [ecx + esi + 1], al
mov byte [ebx + esi], dl
mov al, byte [ebp + 2]
mov dl, byte [ecx + esi + 2]
add bl, al
add bl, dl
mov al, byte [ebx + esi]
mov byte [ecx + esi + 2], al
mov byte [ebx + esi], dl
mov al, byte [ebp + 3]
mov dl, byte [ecx + esi + 3]
add bl, al
add bl, dl
mov al, byte [ebx + esi]
mov byte [ecx + esi + 3], al
add ebp, 4
mov byte [ebx + esi], dl
cmp ebp, edi
jne 0x426917
lea ebp, [ebp - 0x10]
add cl, 4
jne 0x4268bb
popal
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x426927
mov eax, dword [eax - 4]
mov dword [ebp - 0x1f8], eax
lea eax, [ebp - 0x1f8]
push eax
mov edx, 0x562f08
lea eax, [ebp - 0x6c]
mov ecx, 1
call fcn.0040a4e0
mov eax, dword [ebp - 0x6c]
call fcn.0040a340
mov edx, eax
mov eax, dword [ebp - 0x6c]
mov cl, 0
call fcn.004035c0
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x426964
mov eax, dword [eax - 4]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x10], 1
cmp ecx, dword [ebp - 0x10]
jl 0x426998
dec dword [ebp - 0x10]
lea esi, [esi]
inc dword [ebp - 0x10]
mov ebx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x10]
dec eax
mov esi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x10]
mov dl, byte [esi + edx - 1]
mov byte [ebx + eax], dl
cmp ecx, dword [ebp - 0x10]
jg 0x42697c
pushal
mov eax, dword [ebp - 0x6c]
sub eax, 4
lea esi, [ebp - 0x1b0]
xor edx, edx
xor ecx, ecx
mov ebx, dword [ebp - 0x14]
push ebx
shr ebx, 2
test ebx, ebx
je 0x426a76
mov ebp, ebx
mov edi, dword [eax + 4]
inc ecx
push eax
xor eax, eax
and ecx, 0xff
mov al, byte [esi + ecx]
add edx, eax
and edx, 0xff
mov bl, byte [esi + edx]
mov byte [esi + ecx], bl
inc ecx
mov byte [esi + edx], al
add al, bl
mov al, byte [esi + eax]
xor edi, eax
and ecx, 0xff
xor eax, eax
mov al, byte [esi + ecx]
add edx, eax
and edx, 0xff
mov bl, byte [esi + edx]
mov byte [esi + ecx], bl
inc ecx
mov byte [esi + edx], al
add al, bl
mov al, byte [esi + eax]
shl eax, 8
xor edi, eax
and ecx, 0xff
xor eax, eax
mov al, byte [esi + ecx]
add edx, eax
and edx, 0xff
mov bl, byte [esi + edx]
mov byte [esi + ecx], bl
inc ecx
mov byte [esi + edx], al
add al, bl
mov al, byte [esi + eax]
shl eax, 0x10
xor edi, eax
and ecx, 0xff
xor eax, eax
mov al, byte [esi + ecx]
add edx, eax
and edx, 0xff
mov bl, byte [esi + edx]
mov byte [esi + ecx], bl
mov byte [esi + edx], al
add al, bl
mov al, byte [esi + eax]
shl eax, 0x18
lea ebx, [ebp*4]
xor edi, eax
pop eax
add eax, 4
mov dword [eax], edi
dec ebp
jne 0x4269ba
pop ebp
and ebp, 3
test ebp, ebp
je 0x426aa1
lea edi, [eax + 4]
inc ecx
mov ebx, 0xff
and ecx, ebx
xor eax, eax
mov al, byte [esi + ecx]
add edx, eax
and edx, ebx
xor ebx, ebx
mov bl, byte [esi + edx]
mov byte [esi + ecx], bl
mov byte [esi + edx], al
add al, bl
mov bl, byte [edi]
mov al, byte [esi + eax]
xor bl, al
mov byte [edi], bl
inc edi
dec ebp
jne 0x426a76
popal
pushal
mov edx, dword [ebp - 0x6c]
lea edi, [ebp - 0x78]
movzx eax, byte [edx]
movzx ecx, byte [edx + 3]
shr eax, 4
add al, 0x43
and ecx, 0xf
mov byte [edi + 0xa], al
mov eax, dword [ebp - 0x7c]
add cl, 0x45
mov byte [edi + 0xb], cl
popal
lea eax, [ebp - 0x18]
call fcn.00403b60
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x10], 0
dec dword [ebp - 0x10]
mov esi, esi
inc dword [ebp - 0x10]
mov eax, 0x1f
call fcn.0040cdc0
mov edx, dword [ebp - 0x10]
mov byte [ebp + edx - 0x78], al
lea eax, [ebp - 0x1f4]
call fcn.00403b60
mov dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x10]
movzx eax, byte [ebp + eax - 0x78]
inc eax
and eax, 0xff
mov al, byte [eax + str._FX84VBCNY1M2367PQJK59WLUAEZDGRST]
lea edx, [ebp - 0x1f4]
call fcn.004074a0
mov ecx, dword [ebp - 0x1f4]
mov edx, dword [ebp - 0x18]
lea eax, [ebp - 0x18]
call fcn.00407170
cmp dword [ebp - 0x10], 1
jl 0x426ae0
mov dword [ebp - 0x10], 2
dec dword [ebp - 0x10]
lea esi, [esi]
inc dword [ebp - 0x10]
lea eax, [ebp - 0x1f4]
call fcn.00403b60
mov dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x10]
mov al, byte [ebp + eax - 0x78]
lea edx, [ebp - 0x1f4]
call fcn.004074a0
mov ecx, dword [ebp - 0x1f4]
mov edx, dword [ebp - 0x18]
lea eax, [ebp - 0x18]
call fcn.00407170
cmp dword [ebp - 0x10], 0xb
jl 0x426b4c
lea eax, [ebp - 0x1f4]
call fcn.00403b60
mov dword [ebp - 0x1f4], 0
lea eax, [ebp - 0x1f4]
push eax
mov eax, dword [ebp - 0x18]
mov ecx, 2
mov edx, 1
call fcn.00407820
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x20c], eax
mov eax, 0x560e98
mov dword [ebp - 0x208], eax
lea eax, [ebp - 0x210]
call fcn.00403b60
mov dword [ebp - 0x210], 0
lea eax, [ebp - 0x210]
push eax
mov eax, dword [ebp - 0x18]
mov ecx, 5
mov edx, 3
call fcn.00407820
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x204], eax
mov eax, 0x560e98
mov dword [ebp - 0x200], eax
lea eax, [ebp - 0x214]
call fcn.00403b60
mov dword [ebp - 0x214], 0
lea eax, [ebp - 0x214]
push eax
mov eax, dword [ebp - 0x18]
mov ecx, 5
mov edx, 8
call fcn.00407820
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x1fc], eax
lea edx, [ebp - 0x20c]
mov eax, dword [ebp - 0xc]
mov ecx, 4
call fcn.004072e0
call fcn.0040b970
lea eax, [ebp - 0x214]
call fcn.00403b60
mov dword [ebp - 0x214], 0
lea eax, [ebp - 0x210]
call fcn.00403b60
mov dword [ebp - 0x210], 0
lea eax, [ebp - 0x1f4]
call fcn.00403b60
mov dword [ebp - 0x1f4], 0
lea eax, [ebp - 0x1f0]
call fcn.00403b60
mov dword [ebp - 0x1f0], 0
lea eax, [ebp - 0x1ec]
call fcn.00403b60
mov dword [ebp - 0x1ec], 0
lea eax, [ebp - 0x18]
call fcn.00403b60
mov dword [ebp - 0x18], 0
lea eax, [ebp - 0x1c]
call fcn.00403b60
mov dword [ebp - 0x1c], 0
lea eax, [ebp - 0x20]
call fcn.00403b60
mov dword [ebp - 0x20], 0
lea eax, [ebp - 0x24]
call fcn.00403b60
mov dword [ebp - 0x24], 0
lea eax, [ebp - 0x28]
call fcn.00403b60
mov dword [ebp - 0x28], 0
mov edx, 0x562f08
lea eax, [ebp - 0x6c]
call fcn.0040c6d0
lea eax, [ebp - 4]
call fcn.00403b60
lea eax, [ebp - 8]
call fcn.00403b60
pop eax
test eax, eax
je 0x426d44
call fcn.0040bae0
mov ebx, dword [ebp - 0x220]
mov esi, dword [ebp - 0x21c]
mov edi, dword [ebp - 0x218]
leave
ret