Function at 0x56694c
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
push eax
add esp, 0xfffffb04
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x14fc], edx
mov dword [ebp - 0x14f8], edx
mov dword [ebp - 0x14f4], edx
mov dword [ebp - 4], edx
mov dword [ebp - 8], edx
mov dword [ebp - 0xc], eax
lea ebx, [ebp - 0x1098]
xor eax, eax
push ebp
push 0x569c43
push dword fs:[eax]
mov dword fs:[eax], esp
xor edi, edi
push ebp
push 0x569c0e
push dword fs:[edi]
mov dword fs:[edi], esp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [0x588f48]
mov eax, dword [eax]
cmp dword [eax + 0xc], 0
je 0x5699d6
xor eax, eax
mov dword [ebp - 0x18], eax
mov eax, dword [0x588f48]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add eax, 0x21e2
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
mov edx, dword [ebp - 0x74]
movzx edx, byte [edx + 2]
add eax, edx
mov edx, dword [ebp - 0x74]
movzx edx, byte [edx + 3]
add eax, edx
mov edx, dword [ebp - 0x74]
movzx edx, byte [edx + 4]
add eax, edx
mov edx, dword [ebp - 0x74]
movzx edx, byte [edx + 5]
add eax, edx
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x38], 0x34b
mov eax, ebx
mov ecx, 0xff
mov edx, 0x1000
call fcn.00403e38
lea eax, [ebp - 0x10e0]
mov ecx, 0xff
mov edx, 0x48
call fcn.00403e38
lea eax, [ebp - 0x98]
xor ecx, ecx
mov edx, 0x14
call fcn.00403e38
lea edx, [ebp - 0x14f4]
mov eax, dword [ebp - 0x58]
call fcn.0040cd7c
mov eax, dword [ebp - 0x14f4]
lea edx, [ebp - 0x98]
call fcn.0048fd04
lea eax, [ebp - 0x28]
xor ecx, ecx
mov edx, 8
call fcn.00403e38
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x98]
mov ecx, 8
call fcn.004035b8
mov esi, 0x40
mov ecx, 8
mov eax, esi
xor edx, edx
div ecx
mov esi, eax
mov edx, ebx
mov eax, dword [0x588f88]
mov ecx, 0x1000
call fcn.004035b8
lea edx, [ebp - 0x10e0]
mov eax, dword [0x588cdc]
mov ecx, 0x48
call fcn.004035b8
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0x12
lea eax, [ebp - 0x10e0]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x2c]
add eax, 3
xor edx, edx
div esi
movzx ecx, byte [ebp + edx - 0x28]
mov eax, dword [ebp - 0x2c]
add eax, 2
xor edx, edx
div esi
movzx eax, byte [ebp + edx - 0x28]
shl eax, 8
add ecx, eax
mov eax, dword [ebp - 0x2c]
inc eax
xor edx, edx
div esi
movzx eax, byte [ebp + edx - 0x28]
shl eax, 0x10
add ecx, eax
mov eax, dword [ebp - 0x2c]
movzx eax, byte [ebp + eax - 0x28]
shl eax, 0x18
add ecx, eax
mov eax, dword [ebp - 0x84]
xor dword [eax], ecx
mov eax, dword [ebp - 0x2c]
add eax, 4
xor edx, edx
div esi
mov dword [ebp - 0x2c], edx
add dword [ebp - 0x84], 4
dec dword [ebp - 0x10]
jne 0x566b19
lea eax, [ebp - 0x34]
xor ecx, ecx
mov edx, 8
call fcn.00403e38
mov dword [ebp - 0x10], 9
lea eax, [ebp - 0x10e0]
mov dword [ebp - 0x84], eax
lea edx, [ebp - 0x34]
mov ecx, edx
mov eax, dword [ecx]
add edx, 4
mov edx, dword [edx]
mov esi, eax
and esi, 0xff
shl esi, 0x18
mov edi, eax
and edi, 0xff00
shl edi, 8
or esi, edi
mov edi, eax
and edi, 0xff0000
shr edi, 8
or esi, edi
and eax, 0xff000000
shr eax, 0x18
or esi, eax
mov eax, esi
mov esi, edx
and esi, 0xff
shl esi, 0x18
mov edi, edx
and edi, 0xff00
shl edi, 8
or esi, edi
mov edi, edx
and edi, 0xff0000
shr edi, 8
or esi, edi
and edx, 0xff000000
shr edx, 0x18
or esi, edx
mov edx, esi
xor eax, dword [ebp - 0x10e0]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10dc]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10d8]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10d4]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10d0]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10cc]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10c8]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10c4]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10c0]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10bc]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10b8]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10b4]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10b0]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10ac]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10a8]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10a4]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10a0]
xor edx, dword [ebp - 0x109c]
mov esi, eax
and esi, 0xff
shl esi, 0x18
mov edi, eax
and edi, 0xff00
shl edi, 8
or esi, edi
mov edi, eax
and edi, 0xff0000
shr edi, 8
or esi, edi
and eax, 0xff000000
shr eax, 0x18
or esi, eax
mov eax, esi
mov esi, edx
and esi, 0xff
shl esi, 0x18
mov edi, edx
and edi, 0xff00
shl edi, 8
or esi, edi
mov edi, edx
and edi, 0xff0000
shr edi, 8
or esi, edi
and edx, 0xff000000
shr edx, 0x18
or esi, edx
mov edx, esi
mov dword [ecx], edx
lea edx, [ebp - 0x34]
add edx, 4
mov dword [edx], eax
movzx eax, byte [ebp - 0x31]
movzx edx, byte [ebp - 0x32]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0x33]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0x34]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0x84]
mov dword [edx], eax
movzx eax, byte [ebp - 0x2d]
movzx edx, byte [ebp - 0x2e]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0x2f]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0x30]
shl edx, 0x18
add eax, edx
mov edx, dword [ebp - 0x84]
mov dword [edx + 4], eax
add dword [ebp - 0x84], 8
dec dword [ebp - 0x10]
jne 0x566b9e
mov dword [ebp - 0x2c], 4
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x10], 0x80
mov eax, dword [ebp - 0x84]
mov ecx, eax
lea edx, [ebp - 0x34]
mov eax, dword [edx]
add edx, 4
mov edx, dword [edx]
mov esi, eax
and esi, 0xff
shl esi, 0x18
mov edi, eax
and edi, 0xff00
shl edi, 8
or esi, edi
mov edi, eax
and edi, 0xff0000
shr edi, 8
or esi, edi
and eax, 0xff000000
shr eax, 0x18
or esi, eax
mov eax, esi
mov esi, edx
and esi, 0xff
shl esi, 0x18
mov edi, edx
and edi, 0xff00
shl edi, 8
or esi, edi
mov edi, edx
and edi, 0xff0000
shr edi, 8
or esi, edi
and edx, 0xff000000
shr edx, 0x18
or esi, edx
mov edx, esi
xor eax, dword [ebp - 0x10e0]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10dc]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10d8]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10d4]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10d0]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10cc]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10c8]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10c4]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10c0]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10bc]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10b8]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10b4]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10b0]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10ac]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10a8]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10a4]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10a0]
xor edx, dword [ebp - 0x109c]
mov esi, eax
and esi, 0xff
shl esi, 0x18
mov edi, eax
and edi, 0xff00
shl edi, 8
or esi, edi
mov edi, eax
and edi, 0xff0000
shr edi, 8
or esi, edi
and eax, 0xff000000
shr eax, 0x18
or esi, eax
mov eax, esi
mov esi, edx
and esi, 0xff
shl esi, 0x18
mov edi, edx
and edi, 0xff00
shl edi, 8
or esi, edi
mov edi, edx
and edi, 0xff0000
shr edi, 8
or esi, edi
and edx, 0xff000000
shr edx, 0x18
or esi, edx
mov edx, esi
lea esi, [ebp - 0x34]
mov dword [esi], edx
lea edx, [ebp - 0x34]
add edx, 4
mov dword [edx], eax
movzx eax, byte [ebp - 0x31]
movzx edx, byte [ebp - 0x32]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0x33]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0x34]
shl edx, 0x18
add eax, edx
mov dword [ecx], eax
movzx eax, byte [ebp - 0x2d]
movzx edx, byte [ebp - 0x2e]
shl edx, 8
add eax, edx
movzx edx, byte [ebp - 0x2f]
shl edx, 0x10
add eax, edx
movzx edx, byte [ebp - 0x30]
shl edx, 0x18
add eax, edx
mov dword [ecx + 4], eax
add ecx, 8
dec dword [ebp - 0x10]
jne 0x567191
add dword [ebp - 0x84], 0x400
dec dword [ebp - 0x2c]
jne 0x567182
lea eax, [ebp - 0x142b]
xor ecx, ecx
mov edx, 0x34b
call fcn.00403e38
lea eax, [ebp - 0x142b]
mov dword [ebp - 0x20], eax
mov eax, dword [0x588f48]
mov eax, dword [eax]
mov edx, dword [ebp - 0x18]
call fcn.0048fe8c
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x54]
mov ecx, 0xff
mov edx, 8
call fcn.00403e38
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x38]
test eax, eax
jns 0x5677c1
add eax, 7
sar eax, 3
test eax, eax
jle 0x567d82
mov dword [ebp - 0x78], eax
mov edx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
mov eax, esi
mov ecx, 8
call fcn.004035b8
lea edx, [ebp - 0x4c]
mov eax, esi
mov ecx, 8
call fcn.004035b8
mov ecx, dword [ebp - 0x44]
mov eax, dword [ecx]
mov edx, dword [ebp - 0x44]
add edx, 4
mov edx, dword [edx]
mov esi, eax
shr esi, 0x18
mov edi, eax
shr edi, 8
and edi, 0xff00
or esi, edi
mov edi, eax
shl edi, 8
and edi, 0xff0000
or esi, edi
shl eax, 0x18
or esi, eax
mov eax, esi
mov esi, edx
shr esi, 0x18
mov edi, edx
shr edi, 8
and edi, 0xff00
or esi, edi
mov edi, edx
shl edi, 8
and edi, 0xff0000
or esi, edi
shl edx, 0x18
or esi, edx
mov edx, esi
xor eax, dword [ebp - 0x109c]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10a0]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10a4]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10a8]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10ac]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10b0]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10b4]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10b8]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10bc]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10c0]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10c4]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10c8]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10cc]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10d0]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10d4]
mov esi, eax
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, eax
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, eax
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor edx, esi
xor edx, dword [ebp - 0x10d8]
mov esi, edx
shr esi, 0x18
and esi, 0xff
mov esi, dword [ebx + esi*4]
mov edi, edx
shr edi, 0x10
and edi, 0xff
add esi, dword [ebx + edi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0xff
xor esi, dword [ebx + edi*4 + 0x800]
mov edi, edx
and edi, 0xff
add esi, dword [ebx + edi*4 + 0xc00]
xor eax, esi
xor eax, dword [ebp - 0x10dc]
xor edx, dword [ebp - 0x10e0]
mov esi, eax
shr esi, 0x18
mov edi, eax
shr edi, 8
and edi, 0xff00
or esi, edi
mov edi, eax
shl edi, 8
and edi, 0xff0000
or esi, edi
shl eax, 0x18
or esi, eax
mov eax, esi
mov esi, edx
shr esi, 0x18
mov edi, edx
shr edi, 8
and edi, 0xff00
or esi, edi
mov edi, edx
shl edi, 8
and edi, 0xff0000
or esi, edi
shl edx, 0x18
or esi, edx
mov edx, esi
mov dword [ecx], edx
mov edx, dword [ebp - 0x44]
add edx, 4
mov dword [edx], eax
mov eax, 1
lea edx, [ebp - 0x54]
add edx, eax
dec edx
movzx edx, byte [edx]
mov ecx, dword [ebp - 0x44]
add ecx, eax
dec ecx
xor byte [ecx], dl
inc eax
cmp eax, 9
jne 0x567d40
lea edx, [ebp - 0x54]
lea eax, [ebp - 0x4c]
mov ecx, 8
call fcn.004035b8
mov eax, dword [ebp - 0x40]
add eax, 8
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x44]
add eax, 8
mov dword [ebp - 0x44], eax
dec dword [ebp - 0x78]
jne 0x5677cf
mov eax, dword [ebp - 0x38]
and eax, 0x80000007
jns 0x567d91
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x568364
lea eax, [ebp - 0x54]
mov eax, dword [eax]
lea edx, [ebp - 0x54]
add edx, 4
mov edx, dword [edx]
mov ecx, eax
and ecx, 0xff
shl ecx, 0x18
mov esi, eax
and esi, 0xff00
shl esi, 8
or ecx, esi
mov esi, eax
and esi, 0xff0000
shr esi, 8
or ecx, esi
and eax, 0xff000000
shr eax, 0x18
or ecx, eax
mov eax, ecx
mov ecx, edx
and ecx, 0xff
shl ecx, 0x18
mov esi, edx
and esi, 0xff00
shl esi, 8
or ecx, esi
mov esi, edx
and esi, 0xff0000
shr esi, 8
or ecx, esi
and edx, 0xff000000
shr edx, 0x18
or ecx, edx
mov edx, ecx
xor eax, dword [ebp - 0x10e0]
mov ecx, eax
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, eax
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, eax
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, eax
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor edx, ecx
xor edx, dword [ebp - 0x10dc]
mov ecx, edx
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, edx
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, edx
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, edx
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor eax, ecx
xor eax, dword [ebp - 0x10d8]
mov ecx, eax
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, eax
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, eax
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, eax
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor edx, ecx
xor edx, dword [ebp - 0x10d4]
mov ecx, edx
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, edx
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, edx
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, edx
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor eax, ecx
xor eax, dword [ebp - 0x10d0]
mov ecx, eax
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, eax
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, eax
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, eax
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor edx, ecx
xor edx, dword [ebp - 0x10cc]
mov ecx, edx
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, edx
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, edx
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, edx
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor eax, ecx
xor eax, dword [ebp - 0x10c8]
mov ecx, eax
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, eax
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, eax
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, eax
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor edx, ecx
xor edx, dword [ebp - 0x10c4]
mov ecx, edx
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, edx
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, edx
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, edx
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor eax, ecx
xor eax, dword [ebp - 0x10c0]
mov ecx, eax
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, eax
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, eax
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, eax
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor edx, ecx
xor edx, dword [ebp - 0x10bc]
mov ecx, edx
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, edx
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, edx
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, edx
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor eax, ecx
xor eax, dword [ebp - 0x10b8]
mov ecx, eax
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, eax
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, eax
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, eax
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor edx, ecx
xor edx, dword [ebp - 0x10b4]
mov ecx, edx
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, edx
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, edx
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, edx
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor eax, ecx
xor eax, dword [ebp - 0x10b0]
mov ecx, eax
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, eax
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, eax
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, eax
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor edx, ecx
xor edx, dword [ebp - 0x10ac]
mov ecx, edx
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, edx
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, edx
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, edx
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor eax, ecx
xor eax, dword [ebp - 0x10a8]
mov ecx, eax
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, eax
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, eax
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, eax
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor edx, ecx
xor edx, dword [ebp - 0x10a4]
mov ecx, edx
shr ecx, 0x18
and ecx, 0xff
mov ecx, dword [ebx + ecx*4]
mov esi, edx
shr esi, 0x10
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0x400]
mov esi, edx
shr esi, 8
and esi, 0xff
xor ecx, dword [ebx + esi*4 + 0x800]
mov esi, edx
and esi, 0xff
add ecx, dword [ebx + esi*4 + 0xc00]
xor eax, ecx
xor eax, dword [ebp - 0x10a0]
xor edx, dword [ebp - 0x109c]
mov ecx, eax
and ecx, 0xff
shl ecx, 0x18
mov esi, eax
and esi, 0xff00
shl esi, 8
or ecx, esi
mov esi, eax
and esi, 0xff0000
shr esi, 8
or ecx, esi
and eax, 0xff000000
shr eax, 0x18
or ecx, eax
mov eax, ecx
mov ecx, edx
and ecx, 0xff
shl ecx, 0x18
mov esi, edx
and esi, 0xff00
shl esi, 8
or ecx, esi
mov esi, edx
and esi, 0xff0000
shr esi, 8
or ecx, esi
and edx, 0xff000000
shr edx, 0x18
or ecx, edx
mov edx, ecx
lea ecx, [ebp - 0x54]
mov dword [ecx], edx
lea edx, [ebp - 0x54]
add edx, 4
mov dword [edx], eax
mov ecx, dword [ebp - 0x38]
and ecx, 0x80000007
jns 0x568325
dec ecx
or ecx, 0xfffffff8
inc ecx
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
call fcn.004035b8
mov ecx, 8
mov eax, dword [ebp - 0x38]
cdq
idiv ecx
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x38]
test eax, eax
jle 0x568364
mov dword [ebp - 0x78], eax
mov eax, 1
lea edx, [ebp - 0x54]
add edx, eax
dec edx
movzx edx, byte [edx]
mov ecx, dword [ebp - 0x44]
add ecx, eax
dec ecx
xor byte [ecx], dl
inc eax
dec dword [ebp - 0x78]
jne 0x56834d
mov eax, dword [0x588374]
mov eax, dword [eax]
call fcn.004602e8
cmp eax, dword [ebp - 0x1421]
jne 0x5699c9
cmp dword [ebp - 0x13e9], 0
je 0x5699c9
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 0x143c]
push eax
call sub.kernel32.dll_GetLocalTime
movzx eax, word [ebp - 0x143c]
movzx edx, word [ebp - 0x143a]
add eax, edx
movzx edx, word [ebp - 0x1436]
add eax, edx
movzx edx, word [ebp - 0x1434]
add eax, edx
movzx edx, word [ebp - 0x1432]
add eax, edx
mov dword [ebp - 0x58], eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [ebp - 8]
call fcn.004055e4
push 0x569c5c
mov eax, dword [0x588374]
mov eax, dword [eax]
call fcn.004602e8
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x14f8]
call fcn.0040ce68
push dword [ebp - 0x14f8]
push 0x569c68
lea eax, [ebp - 4]
mov edx, 3
call fcn.00405978
mov eax, dword [ebp - 4]
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
je 0x5684cf
mov eax, dword [ebp - 0x7c]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 8]
mov edx, dword [ebp - 0x38]
call fcn.00405d04
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea edx, [ebp - 0x14fc]
mov eax, dword [ebp - 0x58]
call fcn.0040cd7c
mov eax, dword [ebp - 0x14fc]
lea edx, [ebp - 0x98]
call fcn.0048fd04
lea eax, [ebp - 0x28]
xor ecx, ecx
mov edx, 8
call fcn.00403e38
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x98]
mov ecx, 8
call fcn.004035b8
movzx eax, byte [ebp - 0x28]
movzx edx, byte [ebp - 0x27]
shl edx, 8
or eax, edx
movzx edx, byte [ebp - 0x26]
shl edx, 0x10
or eax, edx
movzx edx, byte [ebp - 0x25]
shl edx, 0x18
or eax, edx
mov dword [ebp - 0x5c], eax
movzx eax, byte [ebp - 0x24]
movzx edx, byte [ebp - 0x23]
shl edx, 8
or eax, edx
movzx edx, byte [ebp - 0x22]
shl edx, 0x10
or eax, edx
movzx edx, byte [ebp - 0x21]
shl edx, 0x18
or eax, edx
mov dword [ebp - 0x60], eax
push 4
push 0xf0f0f0f
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x5c]
lea eax, [ebp - 0x60]
call fcn.0048b488
push 0xcccc0000
lea edx, [ebp - 0x64]
lea eax, [ebp - 0x5c]
mov ecx, 0xfffffffe
call fcn.0048b454
push 0xcccc0000
lea edx, [ebp - 0x64]
lea eax, [ebp - 0x60]
mov ecx, 0xfffffffe
call fcn.0048b454
push 1
push 0x66666666
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x5c]
lea eax, [ebp - 0x60]
call fcn.0048b488
push 8
push 0xff00ff
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x60]
lea eax, [ebp - 0x5c]
call fcn.0048b488
push 1
push 0x66666666
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x5c]
lea eax, [ebp - 0x60]
call fcn.0048b488
mov eax, dword [ebp - 0x60]
and eax, 0xff
shl eax, 0x10
mov edx, dword [ebp - 0x60]
and edx, 0xff00
or eax, edx
mov edx, dword [ebp - 0x60]
and edx, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, dword [ebp - 0x5c]
and edx, 0xf0000000
shr edx, 4
or eax, edx
mov dword [ebp - 0x60], eax
and dword [ebp - 0x5c], 0xfffffff
xor eax, eax
mov dword [ebp - 0x10], eax
mov eax, dword [0x5884f0]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0
je 0x5686b4
mov eax, dword [ebp - 0x5c]
shr eax, 2
mov edx, dword [ebp - 0x5c]
shl edx, 0x1a
or eax, edx
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x60]
shr eax, 2
mov edx, dword [ebp - 0x60]
shl edx, 0x1a
or eax, edx
mov dword [ebp - 0x60], eax
jmp 0x5686d4
mov eax, dword [ebp - 0x5c]
shr eax, 1
mov edx, dword [ebp - 0x5c]
shl edx, 0x1b
or eax, edx
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x60]
shr eax, 1
mov edx, dword [ebp - 0x60]
shl edx, 0x1b
or eax, edx
mov dword [ebp - 0x60], eax
and dword [ebp - 0x5c], 0xfffffff
and dword [ebp - 0x60], 0xfffffff
mov eax, dword [ebp - 0x5c]
and eax, 0x3f
mov edx, dword [0x588ef4]
mov eax, dword [edx + eax*4]
mov edx, dword [ebp - 0x5c]
shr edx, 6
and edx, 3
mov ecx, dword [ebp - 0x5c]
shr ecx, 7
and ecx, 0x3c
or edx, ecx
mov ecx, dword [0x588ef4]
or eax, dword [ecx + edx*4 + 0x100]
mov edx, dword [ebp - 0x5c]
shr edx, 0xd
and edx, 0xf
mov ecx, dword [ebp - 0x5c]
shr ecx, 0xe
and ecx, 0x30
or edx, ecx
mov ecx, dword [0x588ef4]
or eax, dword [ecx + edx*4 + 0x200]
mov edx, dword [ebp - 0x5c]
shr edx, 0x14
and edx, 1
mov ecx, dword [ebp - 0x5c]
shr ecx, 0x15
and ecx, 6
or edx, ecx
mov ecx, dword [ebp - 0x5c]
shr ecx, 0x16
and ecx, 0x38
or edx, ecx
mov ecx, dword [0x588ef4]
or eax, dword [ecx + edx*4 + 0x300]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x60]
and eax, 0x3f
mov edx, dword [0x588ef4]
mov eax, dword [edx + eax*4 + 0x400]
mov edx, dword [ebp - 0x60]
shr edx, 7
and edx, 3
mov ecx, dword [ebp - 0x60]
shr ecx, 8
and ecx, 0x3c
or edx, ecx
mov ecx, dword [0x588ef4]
or eax, dword [ecx + edx*4 + 0x500]
mov edx, dword [ebp - 0x60]
shr edx, 0xf
and edx, 0x3f
mov ecx, dword [0x588ef4]
or eax, dword [ecx + edx*4 + 0x600]
mov edx, dword [ebp - 0x60]
shr edx, 0x15
and edx, 0xf
mov ecx, dword [ebp - 0x60]
shr ecx, 0x16
and ecx, 0x30
or edx, ecx
mov ecx, dword [0x588ef4]
or eax, dword [ecx + edx*4 + 0x700]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
shl eax, 0x10
mov edx, dword [ebp - 0x68]
and edx, 0xffff
or eax, edx
mov edx, eax
add edx, edx
add edx, edx
shr eax, 0x1e
or edx, eax
mov eax, dword [ebp - 0x10]
add eax, eax
mov dword [ebp + eax*4 - 0x14bc], edx
mov eax, dword [ebp - 0x68]
shr eax, 0x10
mov edx, dword [ebp - 0x64]
and edx, 0xffff0000
or eax, edx
mov edx, eax
shl edx, 6
shr eax, 0x1a
or edx, eax
mov eax, dword [ebp - 0x10]
add eax, eax
mov dword [ebp + eax*4 - 0x14b8], edx
inc dword [ebp - 0x10]
inc dword [ebp - 0x84]
cmp dword [ebp - 0x10], 0x10
jne 0x568685
lea eax, [ebp - 0x14e4]
mov ecx, 0x8f
mov edx, 0x14
call fcn.00403e38
lea eax, [ebp - 0x14e4]
mov edx, dword [eax]
lea eax, [ebp - 0x14e4]
add eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
shr eax, 4
xor eax, edx
and eax, 0xf0f0f0f
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
shl eax, 4
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 0x10
xor eax, dword [ebp - 0x6c]
and eax, 0xffff
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
shl eax, 0x10
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 2
xor eax, edx
and eax, 0x33333333
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
add eax, eax
add eax, eax
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 8
xor eax, dword [ebp - 0x6c]
and eax, 0xff00ff
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
shl eax, 8
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 1
xor eax, edx
and eax, 0x66666666
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
add eax, eax
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 0x1d
add edx, edx
add edx, edx
add edx, edx
or eax, edx
mov edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 0x1d
mov ecx, dword [ebp - 0x6c]
add ecx, ecx
add ecx, ecx
add ecx, ecx
or eax, ecx
mov dword [ebp - 0x6c], eax
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x20
jge 0x568c84
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14bc]
xor eax, edx
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14b8]
xor ecx, edx
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x700]
mov dword [ebp - 0x6c], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14b4]
xor eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14b0]
xor ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x700]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14ac]
xor eax, edx
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14a8]
xor ecx, edx
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x700]
mov dword [ebp - 0x6c], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14a4]
xor eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14a0]
xor ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x700]
add dword [ebp - 0x10], 8
cmp dword [ebp - 0x10], 0x20
jl 0x56891e
mov eax, edx
shr eax, 3
shl edx, 0x1d
or eax, edx
mov edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 3
mov ecx, dword [ebp - 0x6c]
shl ecx, 0x1d
or eax, ecx
mov dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 1
xor eax, dword [ebp - 0x6c]
and eax, 0x66666666
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
add eax, eax
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 8
xor eax, edx
and eax, 0xff00ff
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
shl eax, 8
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 2
xor eax, dword [ebp - 0x6c]
and eax, 0x33333333
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
add eax, eax
add eax, eax
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 0x10
xor eax, edx
and eax, 0xffff
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
shl eax, 0x10
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 4
xor eax, dword [ebp - 0x6c]
and eax, 0xf0f0f0f
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
shl eax, 4
xor edx, eax
lea eax, [ebp - 0x14e4]
mov ecx, dword [ebp - 0x6c]
mov dword [eax], ecx
lea eax, [ebp - 0x14e4]
add eax, 4
mov dword [eax], edx
lea edx, [ebp - 0x14d0]
lea eax, [ebp - 0x14e4]
mov ecx, 0x14
call fcn.004035b8
lea eax, [ebp - 4]
call fcn.00405ad4
mov dword [ebp - 0x40], eax
lea eax, [ebp - 8]
call fcn.00405ad4
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x38]
mov ecx, 0x14
cdq
idiv ecx
test eax, eax
jle 0x5692d0
mov dword [ebp - 0x78], eax
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov ecx, 0x14
call fcn.004035b8
lea edx, [ebp - 0x14d0]
mov eax, dword [ebp - 0x44]
mov ecx, 0x14
call fcn.0048e97c
mov eax, dword [ebp - 0x44]
mov edx, dword [eax]
mov eax, dword [ebp - 0x44]
add eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
shr eax, 4
xor eax, edx
and eax, 0xf0f0f0f
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
shl eax, 4
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 0x10
xor eax, dword [ebp - 0x6c]
and eax, 0xffff
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
shl eax, 0x10
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 2
xor eax, edx
and eax, 0x33333333
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
add eax, eax
add eax, eax
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 8
xor eax, dword [ebp - 0x6c]
and eax, 0xff00ff
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
shl eax, 8
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 1
xor eax, edx
and eax, 0x66666666
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
add eax, eax
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 0x1d
add edx, edx
add edx, edx
add edx, edx
or eax, edx
mov edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 0x1d
mov ecx, dword [ebp - 0x6c]
add ecx, ecx
add ecx, ecx
add ecx, ecx
or eax, ecx
mov dword [ebp - 0x6c], eax
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x20
jge 0x5691e4
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14bc]
xor eax, edx
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14b8]
xor ecx, edx
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x700]
mov dword [ebp - 0x6c], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14b4]
xor eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14b0]
xor ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x700]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14ac]
xor eax, edx
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14a8]
xor ecx, edx
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x700]
mov dword [ebp - 0x6c], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14a4]
xor eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14a0]
xor ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x700]
add dword [ebp - 0x10], 8
cmp dword [ebp - 0x10], 0x20
jl 0x568e7e
mov eax, edx
shr eax, 3
shl edx, 0x1d
or eax, edx
mov edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 3
mov ecx, dword [ebp - 0x6c]
shl ecx, 0x1d
or eax, ecx
mov dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 1
xor eax, dword [ebp - 0x6c]
and eax, 0x66666666
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
add eax, eax
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 8
xor eax, edx
and eax, 0xff00ff
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
shl eax, 8
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 2
xor eax, dword [ebp - 0x6c]
and eax, 0x33333333
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
add eax, eax
add eax, eax
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 0x10
xor eax, edx
and eax, 0xffff
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
shl eax, 0x10
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 4
xor eax, dword [ebp - 0x6c]
and eax, 0xf0f0f0f
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
shl eax, 4
xor edx, eax
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x44]
add eax, 4
mov dword [eax], edx
lea edx, [ebp - 0x14d0]
mov eax, dword [ebp - 0x44]
mov ecx, 0x14
call fcn.004035b8
mov eax, dword [ebp - 0x40]
add eax, 0x14
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x44]
add eax, 0x14
mov dword [ebp - 0x44], eax
dec dword [ebp - 0x78]
jne 0x568d8a
mov eax, dword [ebp - 0x38]
mov ecx, 0x14
cdq
idiv ecx
test edx, edx
je 0x569817
lea eax, [ebp - 0x14d0]
mov edx, dword [eax]
lea eax, [ebp - 0x14d0]
add eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
shr eax, 4
xor eax, edx
and eax, 0xf0f0f0f
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
shl eax, 4
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 0x10
xor eax, dword [ebp - 0x6c]
and eax, 0xffff
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
shl eax, 0x10
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 2
xor eax, edx
and eax, 0x33333333
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
add eax, eax
add eax, eax
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 8
xor eax, dword [ebp - 0x6c]
and eax, 0xff00ff
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
shl eax, 8
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 1
xor eax, edx
and eax, 0x66666666
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
add eax, eax
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 0x1d
add edx, edx
add edx, edx
add edx, edx
or eax, edx
mov edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 0x1d
mov ecx, dword [ebp - 0x6c]
add ecx, ecx
add ecx, ecx
add ecx, ecx
or eax, ecx
mov dword [ebp - 0x6c], eax
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x20
jge 0x569720
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14bc]
xor eax, edx
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14b8]
xor ecx, edx
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x700]
mov dword [ebp - 0x6c], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14b4]
xor eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14b0]
xor ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x700]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14ac]
xor eax, edx
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14a8]
xor ecx, edx
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x588c74]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x588c74]
xor ecx, dword [esi + eax*4 + 0x700]
mov dword [ebp - 0x6c], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x14a4]
xor eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x14a0]
xor ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x64]
shr ecx, 4
mov esi, dword [ebp - 0x64]
shl esi, 0x1c
or ecx, esi
mov dword [ebp - 0x64], ecx
mov ecx, eax
shr ecx, 2
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x588c74]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x588c74]
xor edx, dword [ecx + eax*4 + 0x700]
add dword [ebp - 0x10], 8
cmp dword [ebp - 0x10], 0x20
jl 0x5693ba
mov eax, edx
shr eax, 3
shl edx, 0x1d
or eax, edx
mov edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 3
mov ecx, dword [ebp - 0x6c]
shl ecx, 0x1d
or eax, ecx
mov dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 1
xor eax, dword [ebp - 0x6c]
and eax, 0x66666666
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
add eax, eax
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 8
xor eax, edx
and eax, 0xff00ff
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
shl eax, 8
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 2
xor eax, dword [ebp - 0x6c]
and eax, 0x33333333
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
add eax, eax
add eax, eax
xor edx, eax
mov eax, dword [ebp - 0x6c]
shr eax, 0x10
xor eax, edx
and eax, 0xffff
mov dword [ebp - 0x64], eax
xor edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
shl eax, 0x10
xor dword [ebp - 0x6c], eax
mov eax, edx
shr eax, 4
xor eax, dword [ebp - 0x6c]
and eax, 0xf0f0f0f
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
xor dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x64]
shl eax, 4
xor edx, eax
lea eax, [ebp - 0x14d0]
mov ecx, dword [ebp - 0x6c]
mov dword [eax], ecx
lea eax, [ebp - 0x14d0]
add eax, 4
mov dword [eax], edx
mov eax, dword [ebp - 0x38]
mov ecx, 0x14
cdq
idiv ecx
mov ecx, edx
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
call fcn.004035b8
mov eax, dword [ebp - 0x38]
mov ecx, 0x14
cdq
idiv ecx
mov ecx, edx
lea edx, [ebp - 0x14d0]
mov eax, dword [ebp - 0x44]
call fcn.0048e97c
lea edx, [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.0049ad0c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [ebp - 0x70], 0x10e10000
mov eax, dword [ebp - 4]
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 0
je 0x569896
mov eax, dword [ebp - 0x80]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x14ec], eax
mov eax, dword [ebp - 0x14ec]
call fcn.0040320c
mov dword [ebp - 0x14e8], eax
mov eax, dword [ebp - 4]
call fcn.00405a74
mov edx, eax
mov eax, dword [ebp - 0x14e8]
call fcn.0040dce8
lea eax, [ebp - 0x14f0]
push eax
mov eax, dword [ebp - 0x70]
push eax
push 0x4a
mov eax, dword [ebp - 0x13e9]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebp - 0x14e8]
call fcn.00403228
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [0x588f48]
mov eax, dword [eax]
call fcn.00493680
mov edx, eax
dec edx
mov eax, dword [0x588f48]
mov eax, dword [eax]
call fcn.00493698
mov eax, dword [0x588f48]
mov eax, dword [eax]
mov edx, dword [ebp - 0x18]
call fcn.00493428
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xa
jne 0x566a0a
mov eax, dword [0x5884c8]
cmp dword [eax], 0
je 0x5699ea
mov eax, dword [0x5884c8]
call fcn.004137e8
mov eax, dword [0x5889a0]
cmp dword [eax], 0
je 0x5699fe
mov eax, dword [0x5889a0]
call fcn.004137e8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [0x588cd8]
call fcn.004137e8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [0x588720]
call fcn.004137e8
mov eax, dword [0x588f48]
mov eax, dword [eax]
call fcn.004933c4
mov eax, dword [0x58877c]
cmp dword [eax], 0
je 0x569ae7
mov eax, dword [0x58877c]
call fcn.004137e8
mov eax, dword [0x589118]
cmp dword [eax], 0
je 0x569afb
mov eax, dword [0x589118]
call fcn.004137e8
mov eax, dword [0x588b3c]
cmp dword [eax], 0
je 0x569b0f
mov eax, dword [0x588b3c]
call fcn.004137e8
mov eax, dword [0x588390]
cmp dword [eax], 0
je 0x569b23
mov eax, dword [0x588390]
call fcn.004137e8
mov eax, dword [0x58838c]
cmp dword [eax], 0
je 0x569b37
mov eax, dword [0x58838c]
call fcn.004137e8
mov eax, dword [0x588380]
cmp dword [eax], 0
je 0x569b9c
mov eax, dword [0x588380]
mov eax, dword [eax]
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0x569b92
inc eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x10], 0
mov eax, dword [0x588380]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
call fcn.0041e2ac
mov eax, dword [eax]
call fcn.004046a4
mov eax, dword [0x588380]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
call fcn.0041e2ac
mov edx, 8
call fcn.00403228
inc dword [ebp - 0x10]
dec dword [ebp - 0x78]
jne 0x569b5b
mov eax, dword [0x588380]
call fcn.004137e8
mov eax, dword [0x588da4]
cmp dword [eax], 0
je 0x569bbc
mov eax, dword [0x588da4]
mov eax, dword [eax]
call fcn.0049e9c8
mov eax, dword [0x588da4]
call fcn.004137e8
mov eax, dword [0x58837c]
cmp dword [eax], 0
je 0x569bdc
mov eax, dword [0x58837c]
mov eax, dword [eax]
call fcn.0049e9c8
mov eax, dword [0x58837c]
call fcn.004137e8
mov eax, dword [ebp - 0xc]
add eax, 0x7a8
call fcn.004137e8
mov eax, dword [ebp - 0xc]
add eax, 0x7a4
call fcn.004137e8
mov eax, dword [ebp - 0xc]
add eax, 0x6ac
push eax
call sub.kernel32.dll_DeleteCriticalSection
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x569c18
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x569c4a
lea eax, [ebp - 0x14fc]
mov edx, 3
call fcn.00405608
lea eax, [ebp - 8]
mov edx, 2
call fcn.00405608
ret