Function at 0x562c5c
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 0x565d3a
push dword fs:[eax]
mov dword fs:[eax], esp
xor edi, edi
push ebp
push 0x565d05
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
mov eax, dword [0x583f5c]
mov eax, dword [eax]
cmp dword [eax + 0xc], 0
je 0x565b4d
xor eax, eax
mov dword [ebp - 0x18], eax
mov eax, dword [0x583f5c]
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.0040cd84
mov eax, dword [ebp - 0x14f4]
lea edx, [ebp - 0x98]
call fcn.0048050c
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 [0x583fa0]
mov ecx, 0x1000
call fcn.004035b8
lea edx, [ebp - 0x10e0]
mov eax, dword [0x583cec]
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 0x562df6
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 0x562e7b
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 0x56346e
add dword [ebp - 0x84], 0x400
dec dword [ebp - 0x2c]
jne 0x56345f
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 [0x583f5c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x18]
call fcn.00480694
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 0x563a9e
add eax, 7
sar eax, 3
test eax, eax
jle 0x56405f
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 0x56401d
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 0x563aac
mov eax, dword [ebp - 0x38]
and eax, 0x80000007
jns 0x56406e
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x564641
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 0x564602
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 0x564641
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 0x56462a
mov eax, dword [0x583384]
mov eax, dword [eax]
call fcn.004602f0
cmp eax, dword [ebp - 0x1421]
jne 0x565b40
cmp dword [ebp - 0x13e9], 0
je 0x565b40
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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
lea eax, [ebp - 8]
call fcn.004055e4
push 0x565d50
mov eax, dword [0x583384]
mov eax, dword [eax]
call fcn.004602f0
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x14f8]
call fcn.0040ce70
push dword [ebp - 0x14f8]
push 0x565d5c
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 0x56472c
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
lea edx, [ebp - 0x14fc]
mov eax, dword [ebp - 0x58]
call fcn.0040cd84
mov eax, dword [ebp - 0x14fc]
lea edx, [ebp - 0x98]
call fcn.0048050c
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.0047e32c
push 0xcccc0000
lea edx, [ebp - 0x64]
lea eax, [ebp - 0x5c]
mov ecx, 0xfffffffe
call fcn.0047e2f8
push 0xcccc0000
lea edx, [ebp - 0x64]
lea eax, [ebp - 0x60]
mov ecx, 0xfffffffe
call fcn.0047e2f8
push 1
push 0x66666666
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x5c]
lea eax, [ebp - 0x60]
call fcn.0047e32c
push 8
push 0xff00ff
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x60]
lea eax, [ebp - 0x5c]
call fcn.0047e32c
push 1
push 0x66666666
lea ecx, [ebp - 0x64]
lea edx, [ebp - 0x5c]
lea eax, [ebp - 0x60]
call fcn.0047e32c
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 [0x583500]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
cmp byte [eax], 0
je 0x5648de
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 0x5648fe
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 [0x583f08]
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 [0x583f08]
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 [0x583f08]
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 [0x583f08]
or eax, dword [ecx + edx*4 + 0x300]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x60]
and eax, 0x3f
mov edx, dword [0x583f08]
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 [0x583f08]
or eax, dword [ecx + edx*4 + 0x500]
mov edx, dword [ebp - 0x60]
shr edx, 0xf
and edx, 0x3f
mov ecx, dword [0x583f08]
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 [0x583f08]
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 0x5648af
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 0x564eae
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 [0x583c84]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
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 [0x583c84]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
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 [0x583c84]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
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 [0x583c84]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x700]
add dword [ebp - 0x10], 8
cmp dword [ebp - 0x10], 0x20
jl 0x564b48
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 0x5654fa
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.0047f184
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 0x56540e
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 [0x583c84]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
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 [0x583c84]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
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 [0x583c84]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
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 [0x583c84]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x700]
add dword [ebp - 0x10], 8
cmp dword [ebp - 0x10], 0x20
jl 0x5650a8
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 0x564fb4
mov eax, dword [ebp - 0x38]
mov ecx, 0x14
cdq
idiv ecx
test edx, edx
je 0x565a41
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 0x56594a
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 [0x583c84]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
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 [0x583c84]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
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 [0x583c84]
mov ecx, dword [esi + ecx*4]
xor ecx, dword [ebp - 0x6c]
mov esi, eax
shr esi, 0xa
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x200]
mov esi, eax
shr esi, 0x12
and esi, 0x3f
mov edi, dword [0x583c84]
xor ecx, dword [edi + esi*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov esi, dword [0x583c84]
xor ecx, dword [esi + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov esi, dword [0x583c84]
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 [0x583c84]
xor edx, dword [esi + ecx*4]
mov ecx, eax
shr ecx, 0xa
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x200]
mov ecx, eax
shr ecx, 0x12
and ecx, 0x3f
mov esi, dword [0x583c84]
xor edx, dword [esi + ecx*4 + 0x400]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x600]
mov eax, dword [ebp - 0x64]
shr eax, 2
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x100]
mov eax, dword [ebp - 0x64]
shr eax, 0xa
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x300]
mov eax, dword [ebp - 0x64]
shr eax, 0x12
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x500]
mov eax, dword [ebp - 0x64]
shr eax, 0x1a
and eax, 0x3f
mov ecx, dword [0x583c84]
xor edx, dword [ecx + eax*4 + 0x700]
add dword [ebp - 0x10], 8
cmp dword [ebp - 0x10], 0x20
jl 0x5655e4
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.0047f184
lea edx, [ebp - 4]
mov eax, dword [ebp - 8]
call fcn.00490598
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x565a8d
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.0040dcf0
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
mov eax, dword [0x583f5c]
mov eax, dword [eax]
call fcn.00483ef4
mov edx, eax
dec edx
mov eax, dword [0x583f5c]
mov eax, dword [eax]
call fcn.00483f0c
mov eax, dword [0x583f5c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x18]
call fcn.00483c30
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 0x562ce7
mov eax, dword [0x5834d8]
cmp dword [eax], 0
je 0x565b61
mov eax, dword [0x5834d8]
call fcn.004137f0
mov eax, dword [0x5839b0]
cmp dword [eax], 0
je 0x565b75
mov eax, dword [0x5839b0]
call fcn.004137f0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [0x583ce8]
call fcn.004137f0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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 [0x583730]
call fcn.004137f0
mov eax, dword [0x583f5c]
mov eax, dword [eax]
call fcn.00483bcc
mov eax, dword [0x58378c]
cmp dword [eax], 0
je 0x565bde
mov eax, dword [0x58378c]
call fcn.004137f0
mov eax, dword [0x584130]
cmp dword [eax], 0
je 0x565bf2
mov eax, dword [0x584130]
call fcn.004137f0
mov eax, dword [0x583b4c]
cmp dword [eax], 0
je 0x565c06
mov eax, dword [0x583b4c]
call fcn.004137f0
mov eax, dword [0x5833a0]
cmp dword [eax], 0
je 0x565c1a
mov eax, dword [0x5833a0]
call fcn.004137f0
mov eax, dword [0x58339c]
cmp dword [eax], 0
je 0x565c2e
mov eax, dword [0x58339c]
call fcn.004137f0
mov eax, dword [0x583390]
cmp dword [eax], 0
je 0x565c93
mov eax, dword [0x583390]
mov eax, dword [eax]
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0x565c89
inc eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x10], 0
mov eax, dword [0x583390]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
call fcn.0041e2b4
mov eax, dword [eax]
call fcn.004046a4
mov eax, dword [0x583390]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
call fcn.0041e2b4
mov edx, 8
call fcn.00403228
inc dword [ebp - 0x10]
dec dword [ebp - 0x78]
jne 0x565c52
mov eax, dword [0x583390]
call fcn.004137f0
mov eax, dword [0x583db8]
cmp dword [eax], 0
je 0x565cb3
mov eax, dword [0x583db8]
mov eax, dword [eax]
call fcn.00494248
mov eax, dword [0x583db8]
call fcn.004137f0
mov eax, dword [0x58338c]
cmp dword [eax], 0
je 0x565cd3
mov eax, dword [0x58338c]
mov eax, dword [eax]
call fcn.00494248
mov eax, dword [0x58338c]
call fcn.004137f0
mov eax, dword [ebp - 0xc]
add eax, 0x7b4
call fcn.004137f0
mov eax, dword [ebp - 0xc]
add eax, 0x7b0
call fcn.004137f0
mov eax, dword [ebp - 0xc]
add eax, 0x700
push eax
call sub.kernel32.dll_DeleteCriticalSection
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x565d0f
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x565d41
lea eax, [ebp - 0x14fc]
mov edx, 3
call fcn.00405608
lea eax, [ebp - 8]
mov edx, 2
call fcn.00405608
ret