Function at 0x50a850
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
mov dword [ebp - 0x50], 0x94c82
mov dword [ebp - 8], 0x40668
mov dword [ebp - 0x3c], 0xbdc26
mov dword [ebp - 0x10], 0xbf360
mov dword [ebp - 0x58], 0x23a15
mov dword [ebp - 0x14], 0x5440
mov dword [ebp - 0x4c], 0xace81
mov dword [ebp - 0x24], 0xd29c2
mov dword [ebp - 0x2c], 0xe79b8
mov dword [ebp - 0x20], 0xd0937
mov dword [ebp - 0x34], 0xb1e5e
mov dword [ebp - 0x5c], 0x7754d
mov dword [ebp - 0x54], 0x1c937
mov dword [ebp - 0x38], 0xa3810
mov dword [ebp - 0x1c], 0xc1e16
mov dword [ebp - 0x18], 0x99167
mov dword [ebp - 4], 0xdd4c7
mov dword [ebp - 0xc], 0x24529
mov dword [ebp - 0x28], 0x38178
mov dword [ebp - 0x64], 0x80b20
mov dword [ebp - 0x48], 0xc8b36
mov dword [ebp - 0x30], 0x41d7d
mov dword [ebp - 0x44], 0x17dfa
mov dword [ebp - 0x60], 0x48a0a
mov dword [ebp - 0x40], 0xea475
mov eax, dword [ebp - 0x28]
sub eax, 0x6e3d4
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x30]
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x2c], 0xcdf84
jge 0x50a952
mov edx, dword [ebp - 0x38]
or edx, 0xa4231
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x24]
xor eax, dword [ebp - 0x48]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x18]
add ecx, dword [ebp - 0x58]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x34]
xor edx, dword [ebp - 0x2c]
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x30]
add eax, 1
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x28]
add ecx, 0x4a96a
push ecx
call fcn.00411270
add esp, 4
cmp dword [ebp - 0xc], 0x2452a
jge 0x50aa44
mov edx, dword [ebp - 0x34]
add edx, 0x6ccbc
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0x64]
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x20]
sub ecx, dword [ebp - 0x54]
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x24]
xor edx, dword [ebp - 8]
mov dword [ebp - 0x24], edx
cmp dword [ebp - 8], 0xb7279
je 0x50a9cb
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x64]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x4c]
or ecx, 0xa48fa
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x38]
xor edx, 0x6d6b6
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x20]
or edx, dword [ebp - 0x2c]
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x10]
xor eax, 0x204a7
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x34], 0x8fee3
jle 0x50aa3f
mov ecx, dword [ebp - 0x48]
xor ecx, 0xe2f62
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x28]
xor edx, dword [ebp - 0x18]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x10]
and eax, dword [ebp - 0x4c]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x50]
and ecx, dword [ebp - 0x48]
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x34]
add edx, 0x1ac9b
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0x50]
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x48]
or ecx, dword [ebp - 0x50]
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x48]
sub edx, 1
mov dword [ebp - 0x48], edx
jmp 0x50a964
mov eax, dword [ebp - 0x44]
add eax, dword [ebp - 0x20]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x1c]
and ecx, dword [ebp - 0x34]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x50]
and edx, 0x6f4cc
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x48]
sub eax, dword [ebp - 0x18]
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x14]
xor ecx, dword [ebp - 0x24]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x40]
xor edx, 0xcd2ac
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x18], 0x58d31
jle 0x50aaed
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x3c]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x60]
and ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x18]
and edx, 0x3f790
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x24]
xor eax, 0x5c2a8
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x4c]
sub ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x2c], 0x3b1f8
je 0x50aaed
mov edx, dword [ebp - 0x2c]
xor edx, dword [ebp - 0x58]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x14]
add eax, 0x21ce8
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x30]
or ecx, 0xd2e9a
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x58]
sub edx, 1
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x38]
add eax, 1
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0xc]
or ecx, dword [ebp - 0x38]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x24]
xor edx, dword [ebp - 8]
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x10]
sub eax, 0x9df78
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x1c]
and ecx, 0x66aba
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x1c]
sub edx, 0xa3d19
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 4], 0x1772d
jne 0x50ac96
mov eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x28]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 8]
sub ecx, 0xec8b1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x40]
xor edx, 0x485e1
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x14]
and eax, dword [ebp - 0x34]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0xc]
or ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x10]
or edx, 0x7e3ed
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x28]
xor eax, 0x42014
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x34]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x18]
add edx, 0x9fbb3
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], 0xb7e37
jle 0x50ac96
mov eax, dword [ebp - 8]
sub eax, 0xaf776
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x54]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x48]
add edx, dword [ebp - 0x28]
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 4]
or eax, dword [ebp - 0x3c]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x54], 0xf1079
je 0x50ac96
mov edx, dword [ebp - 0x40]
xor edx, dword [ebp - 0x20]
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x54]
add eax, 0x30049
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x44]
or edx, dword [ebp - 0x44]
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 4]
and eax, 0x6d363
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x60]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x40]
or edx, dword [ebp - 4]
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x14]
or eax, dword [ebp - 0x64]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 8]
xor ecx, dword [ebp - 0x24]
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x24]
and edx, 0x6d57
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x5c], 0x320fb
jle 0x50ac96
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x5c]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x44]
xor ecx, dword [ebp - 0x14]
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x54]
sub edx, dword [ebp - 0x14]
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 4]
and eax, 0xb2823
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x38]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x24]
xor edx, dword [ebp - 0x60]
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x48]
or eax, 0x48fac
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x14]
and ecx, dword [ebp - 0x34]
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x38], 0xceea7
jl 0x50aa44
mov edx, dword [ebp + 8]
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x2c]
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 8]
or ecx, dword [ebp - 0x28]
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x40]
and edx, dword [ebp - 0x4c]
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x60]
xor ecx, 0xc6d5f
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 4]
add edx, 0x46d85
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x54]
sub eax, dword [ebp - 0x10]
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x50]
sub ecx, 0x2e046
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x38]
or edx, 0xca939
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x10], 0xfffee74c
jl 0x50aca9
mov eax, dword [ebp - 0x1c]
or eax, 0xdce6e
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
or ecx, dword [ebp - 0x48]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x4c]
and edx, dword [ebp - 0x30]
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x10]
and eax, 0x48d50
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x50], 0x450f
je 0x50ada2
mov ecx, dword [ebp - 0x50]
or ecx, 0xc06a7
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0xc]
or edx, 0xf367e
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0x24], 0xae0bf
jge 0x50ada2
mov eax, dword [ebp - 0x1c]
or eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x38]
and ecx, 0x2f1fc
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0xc]
add edx, 0xab603
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x4c]
or eax, 0xeb18
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x44]
add ecx, 0x8c402
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x28]
sub edx, 1
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x40]
add eax, 1
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x10]
and ecx, 0x4be1b
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x3c]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 4]
add ecx, 0xb31af
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x30]
and edx, dword [ebp - 0x64]
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x58]
or eax, 0xfde1
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x50], 0x35efe
je 0x50aea9
mov ecx, dword [ebp - 0x2c]
sub ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x44]
add edx, 0x4af25
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x14]
and eax, dword [ebp - 0x60]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x1c]
add ecx, dword [ebp - 4]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x20]
or edx, dword [ebp - 0xc]
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x14]
sub eax, 0xa71be
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x54], 0x616f1
jne 0x50aea9
mov ecx, dword [ebp - 8]
or ecx, dword [ebp - 0x18]
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x18]
and edx, 0x1504e
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 8]
xor eax, dword [ebp - 4]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x18]
xor ecx, 0xd2b6a
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 8]
or edx, 0x2578a
mov dword [ebp - 8], edx
mov eax, dword [ebp - 4]
or eax, dword [ebp - 0x50]
mov dword [ebp - 4], eax
cmp dword [ebp - 8], 0xcbd9a
jle 0x50aea9
mov ecx, dword [ebp - 0x3c]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x14]
add edx, dword [ebp - 0x44]
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x38]
xor eax, dword [ebp - 0x2c]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x34]
add ecx, 0xd7db4
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x40], 0x242da
jl 0x50ad0f
mov edx, dword [ebp - 0x38]
sub edx, 0x7d4de
push edx
mov eax, dword [ebp - 8]
add eax, 0xff149
push eax
mov ecx, dword [ebp - 0x28]
add ecx, 0x19788e
push ecx
mov edx, dword [ebp - 4]
sub edx, 0x1c9ecd
push edx
mov eax, dword [ebp - 0x18]
add eax, 0x5963e
push eax
mov ecx, dword [ebp - 0x4c]
add ecx, 0xe269b
push ecx
mov edx, dword [ebp - 8]
add edx, 0x5edbe
push edx
mov eax, dword [ebp - 0x1c]
sub eax, 0x1b987c
push eax
call fcn.00432760
add esp, 0x20
cmp dword [ebp - 0x48], 0xaaf74
jge 0x50b2e8
mov ecx, dword [ebp - 0x28]
and ecx, 0x29f03
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x38]
or edx, dword [ebp - 0x2c]
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x2c]
sub eax, 0x1396c
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 4]
and ecx, 0xe412b
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x64]
add edx, dword [ebp - 0x3c]
mov dword [ebp - 0x64], edx
cmp dword [ebp - 0x20], 0xb0da6
jle 0x50b2b4
mov eax, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x38]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x40]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x18]
and edx, dword [ebp - 0x24]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x64]
add eax, 0x2a4d6
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x44]
or ecx, 0x274ee
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 8]
sub edx, 0xd0e35
mov dword [ebp - 8], edx
cmp dword [ebp - 0x14], 0x8575d
jge 0x50b2b4
mov eax, dword [ebp - 0x14]
sub eax, 0x1e4ea
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x50]
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x58]
or edx, 0x2d45f
mov dword [ebp - 0x58], edx
cmp dword [ebp - 0x10], 0x1a697
jne 0x50b2b4
mov eax, dword [ebp - 0x38]
xor eax, 0xc649f
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x58]
xor ecx, 0xc19c
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x3c]
sub edx, 0x6b29c
mov dword [ebp - 0x3c], edx
cmp dword [ebp - 0x44], 0x63103
je 0x50b2b4
mov eax, dword [ebp - 0x3c]
xor eax, dword [ebp - 0x10]
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x5c]
sub ecx, dword [ebp - 0x24]
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x18]
or edx, 0x944c9
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x44]
sub eax, 0xe6ec7
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x14]
sub ecx, 0xf1f65
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x28], 0x15030
je 0x50b2b4
mov edx, dword [ebp - 0x30]
sub edx, 0xd6d6c
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x40]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x24]
and ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x14]
add edx, dword [ebp - 0x10]
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x30]
sub eax, 0x79215
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 8]
sub ecx, dword [ebp - 0x40]
mov dword [ebp - 8], ecx
cmp dword [ebp - 0x50], 0xc2a52
jle 0x50b2b4
mov edx, dword [ebp - 0x28]
add edx, 0xdcee8
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x3c]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x20], 0x74a16
je 0x50b2b4
mov ecx, dword [ebp - 0x20]
and ecx, dword [ebp - 0xc]
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x24]
xor edx, dword [ebp - 0x38]
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x18], 0x41230
jge 0x50b2b4
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0x34]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x2c]
sub ecx, dword [ebp - 0x58]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0xc]
and edx, 0x8716b
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x10]
and eax, dword [ebp - 0x30]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x2c]
and ecx, dword [ebp - 0x10]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x54]
add edx, dword [ebp - 0x34]
mov dword [ebp - 0x54], edx
cmp dword [ebp - 0x10], 0x1597c
jne 0x50b2b4
mov eax, dword [ebp - 0xc]
xor eax, 0xc4f51
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x60]
sub ecx, dword [ebp - 8]
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 8]
and edx, 0xab9e8
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x44]
and eax, dword [ebp - 0x40]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x28]
or ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x14]
and edx, 0x3a710
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x30]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x10], 0xd2bc7
je 0x50b2b4
mov ecx, dword [ebp - 0x20]
or ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x58]
xor edx, dword [ebp - 8]
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x34]
or eax, dword [ebp - 4]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0xc], 0x53d99
jge 0x50b2b4
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x20]
sub edx, 0x68286
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 4]
xor eax, dword [ebp - 0x20]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x60]
add ecx, dword [ebp - 0x50]
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x10]
or edx, dword [ebp - 8]
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0xc]
add eax, 0xaa26e
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0x64], 0xe97f2
jne 0x50b2b4
mov ecx, dword [ebp - 0x10]
xor ecx, dword [ebp - 0x40]
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0xc]
or edx, 0x49e21
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x38]
add eax, 0xf2051
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x14]
and ecx, dword [ebp - 0x20]
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x3c], 0xa3e7c
jle 0x50b2b4
mov edx, dword [ebp - 0x10]
and edx, 0xe9d16
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x4c]
sub eax, 0xd0d8e
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0xc]
and ecx, 0xa7a9c
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x64]
add edx, 0x451a9
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x24]
sub eax, 0x51bd6
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x3c], 0xb1b55
jle 0x50b2b4
mov ecx, dword [ebp - 0xc]
xor ecx, 0x43de3
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x3c]
add edx, 0x6e217
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0x20]
sub eax, 0xab26d
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x40]
add ecx, dword [ebp - 0x18]
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x24]
xor edx, 0xa99fc
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x3c]
add eax, 0x726a8
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 0x2e3c4
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x30]
sub edx, 0x4a4ac
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x24]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x48]
add ecx, 1
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 4]
or edx, dword [ebp - 0x4c]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x28]
xor eax, 0xc360
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x54]
sub edx, 1
mov dword [ebp - 0x54], edx
jmp 0x50af0b
cmp dword [ebp - 0x34], 0xf7a39
jge 0x50b40e
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x60]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 4]
add ecx, 0x49948
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
xor edx, dword [ebp - 0x5c]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x1c]
or eax, 0x26200
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x5c]
and ecx, dword [ebp - 0x34]
mov dword [ebp - 0x5c], ecx
cmp dword [ebp - 0x2c], 0x5554d
jne 0x50b3b9
mov edx, dword [ebp - 0x50]
sub edx, 0x45477
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x18]
or eax, 0x52f17
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x48]
or ecx, dword [ebp - 0x50]
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x4c]
add edx, dword [ebp - 0x20]
mov dword [ebp - 0x4c], edx
cmp dword [ebp - 0x24], 0x8345e
je 0x50b3b9
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x54]
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x10]
or ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x48]
xor edx, 0xc2cbd
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 4]
xor eax, 0x6ada
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x28]
or ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x54]
or edx, 0x35ecc
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x54]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x64]
sub ecx, 0x5dc1a
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0x4c]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x2c]
and ecx, dword [ebp - 0xc]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0xc]
xor edx, 0x7b4f0
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 4]
add eax, 0x1979c
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0xc]
or ecx, 0x96b3a
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0x14]
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 4]
sub eax, 1
mov dword [ebp - 4], eax
jmp 0x50b2e8
call fcn.0041fcb0
nop
jmp 0x50b41f
mov ecx, dword [ebp - 0x68]
add ecx, 1
mov dword [ebp - 0x68], ecx
mov edx, dword [ebp - 0x68]
movsx eax, byte [edx]
test eax, eax
je 0x50b42b
jmp 0x50b416
cmp dword [ebp - 0x18], 1
jge 0x50b4f0
mov ecx, dword [ebp - 0x4c]
or ecx, dword [ebp - 0x40]
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x40]
xor edx, dword [ebp - 0x14]
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x48]
add eax, 0x1d588
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x3c]
or ecx, 0x79be6
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x4c]
add edx, 0x906b8
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x30]
and eax, dword [ebp - 0x58]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 4]
and ecx, 0xe26c1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x50]
or eax, 0xd8c
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 4]
and ecx, 0xb1bc3
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x24]
or edx, 0x5e67d
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x10]
and eax, 0xea3ab
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xb3e7c
jne 0x50b4eb
mov ecx, dword [ebp - 0x5c]
and ecx, 0x8627a
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x24]
and edx, 0x6182c
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x5c]
add eax, 0xab106
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x50]
or ecx, dword [ebp - 0xc]
mov dword [ebp - 0x50], ecx
jmp 0x50b42b
mov dword [ebp - 0x6c], 0
jmp 0x50b502
mov edx, dword [ebp - 0x6c]
add edx, 1
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x14]
add eax, 0x3f369
cmp dword [ebp - 0x6c], eax
jge 0x50b58b
mov ecx, dword [ebp - 0x20]
sub ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x38]
or edx, 0x73a24
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
or ecx, dword [ebp - 0xc]
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 0x64], 0x64ac7
jle 0x50b586
mov edx, dword [ebp - 4]
xor edx, dword [ebp - 0x40]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
sub eax, dword [ebp - 8]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x60]
add ecx, 0x78a83
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 8]
and edx, 0xd2da7
mov dword [ebp - 8], edx
mov eax, dword [ebp - 4]
and eax, 0x3dd3f
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x10]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 8]
and edx, dword [ebp - 4]
mov dword [ebp - 8], edx
jmp 0x50b4f9
mov eax, dword [ebp - 0x68]
sub eax, dword [ebp + 8]
jmp 0x50b7cd
mov esp, ebp
pop ebp
ret