Function at 0x439b70
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x7f617a
mov eax, dword fs:[0]
push eax
mov eax, 0x11f4
call fcn.0047a450
mov eax, dword [0x907074]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [0x1802d70]
mov dword [ebp - 0x1200], edi
mov dword [ebp - 0x1044], 0
mov dword [ebp - 0x103c], 0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x1064]
push 8
push 0x8cd624
mov dword [ebp - 0x1054], 0
mov dword [ebp - 0x1050], 0xf
mov byte [ebp - 0x1064], 0
call fcn.00405ff0
lea eax, [ebp - 0x1064]
mov byte [ebp - 4], 1
push eax
mov ecx, 0x1802f68
call fcn.00404fe0
mov esi, eax
mov ecx, esi
call fcn.00405480
mov ecx, dword [ebp - 0x1040]
mov dword [esi], 0
mov dword [esi + 4], ecx
mov dword [esi + 8], 0
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x1050]
mov dword [ebp - 0x1044], 0
mov dword [ebp - 0x103c], 0
cmp edx, 0x10
jb 0x439c7b
mov ecx, dword [ebp - 0x1064]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x439c71
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be5c
push edx
push ecx
call fcn.00478f62
add esp, 8
lea ecx, [ebp - 0x1044]
mov dword [ebp - 0x1054], 0
mov dword [ebp - 0x1050], 0xf
mov byte [ebp - 0x1064], 0
mov dword [ebp - 4], 0xffffffff
call fcn.00406da0
mov eax, dword [edi + 0x7c]
lea esi, [edi + 0x6c]
test eax, eax
je 0x43a2f5
push 0
lea ecx, [ebp - 0x10ac]
call fcn.0045a4b0
lea ecx, [ebp - 0x1188]
mov dword [ebp - 4], 2
call fcn.004608a0
push 1
lea eax, [ebp - 0x10ac]
mov byte [ebp - 4], 3
push eax
push esi
lea ecx, [ebp - 0x1188]
call fcn.004625f0
push 0x8cd630
lea ecx, [ebp - 0x10ac]
call fcn.0045ae10
lea ecx, [ebp - 0x1064]
push ecx
mov ecx, eax
call fcn.0045c370
mov edx, eax
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1034]
call fcn.0044ca10
mov edx, eax
mov byte [ebp - 4], 5
cmp dword [edx + 0x14], 8
jb 0x439d2b
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0x1018], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x439d36
sub ecx, dword [ebp - 0x1018]
sar ecx, 1
push ecx
push edx
lea ecx, [edi + 0x6c0]
call fcn.0040daf0
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x439d9a
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x439d90
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be61
push edx
push ecx
call fcn.00478f62
add esp, 8
xor eax, eax
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x1050]
mov dword [ebp - 0x1024], 0
mov dword [ebp - 0x1020], 7
mov word [ebp - 0x1034], ax
cmp edx, 0x10
jb 0x439df5
mov ecx, dword [ebp - 0x1064]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x439deb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be66
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cd638
lea ecx, [ebp - 0x10ac]
call fcn.0045ae10
push 0x8cd644
mov ecx, eax
call fcn.0045ae10
lea ecx, [ebp - 0x1064]
push ecx
mov ecx, eax
call fcn.0045c370
mov edx, eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1034]
call fcn.0044ca10
mov edx, eax
mov byte [ebp - 4], 7
cmp dword [edx + 0x14], 8
jb 0x439e3e
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0x1018], eax
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x439e50
sub ecx, dword [ebp - 0x1018]
sar ecx, 1
push ecx
push edx
lea ecx, [edi + 0xd0]
call fcn.0040daf0
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x439eb4
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x439eaa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be6b
push edx
push ecx
call fcn.00478f62
add esp, 8
xor eax, eax
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x1050]
mov dword [ebp - 0x1024], 0
mov dword [ebp - 0x1020], 7
mov word [ebp - 0x1034], ax
cmp edx, 0x10
jb 0x439f0f
mov ecx, dword [ebp - 0x1064]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x439f05
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be70
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cd638
lea ecx, [ebp - 0x10ac]
call fcn.0045ae10
push 0x8cd648
mov ecx, eax
call fcn.0045ae10
lea ecx, [ebp - 0x1064]
push ecx
mov ecx, eax
call fcn.0045c370
mov edx, eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1034]
call fcn.0044ca10
mov edx, eax
mov byte [ebp - 4], 9
cmp dword [edx + 0x14], 8
jb 0x439f58
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0x1018], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x439f63
sub ecx, dword [ebp - 0x1018]
sar ecx, 1
push ecx
push edx
lea ecx, [edi + 0xe8]
call fcn.0040daf0
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x439fc7
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x439fbd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be75
push edx
push ecx
call fcn.00478f62
add esp, 8
xor eax, eax
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x1050]
mov dword [ebp - 0x1024], 0
mov dword [ebp - 0x1020], 7
mov word [ebp - 0x1034], ax
cmp edx, 0x10
jb 0x43a022
mov ecx, dword [ebp - 0x1064]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43a018
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be7a
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cd654
lea ecx, [ebp - 0x10ac]
call fcn.0045ae10
lea ecx, [ebp - 0x1064]
push ecx
mov ecx, eax
call fcn.0045c370
mov edx, eax
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1034]
call fcn.0044ca10
mov edx, eax
mov byte [ebp - 4], 0xb
cmp dword [edx + 0x14], 8
jb 0x43a05f
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0x103c], 0
xor eax, eax
mov dword [ebp - 0x1038], 7
mov word [ebp - 0x104c], ax
lea eax, [ecx + 2]
mov dword [ebp - 0x1018], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x43a087
sub ecx, dword [ebp - 0x1018]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x104c]
call fcn.0040daf0
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43a0eb
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43a0e1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be7f
push edx
push ecx
call fcn.00478f62
add esp, 8
xor eax, eax
mov dword [ebp - 0x1024], 0
mov dword [ebp - 0x1020], 7
mov word [ebp - 0x1034], ax
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x1050]
cmp edx, 0x10
jb 0x43a146
mov ecx, dword [ebp - 0x1064]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43a13c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be84
push edx
push ecx
call fcn.00478f62
add esp, 8
cmp dword [esi + 0x14], 0x10
mov eax, esi
mov dword [ebp - 0x1054], 0
mov dword [ebp - 0x1050], 0xf
mov byte [ebp - 0x1064], 0
jb 0x43a16b
mov eax, dword [esi]
mov dword [esi + 0x10], 0
lea ecx, [ebp - 0x104c]
mov byte [eax], 0
cmp dword [ebp - 0x1038], 8
cmovae ecx, dword [ebp - 0x104c]
call fcn.00410590
test eax, eax
je 0x43a274
lea ecx, [edi + 0x100]
lea eax, [ebp - 0x104c]
cmp ecx, eax
je 0x43a1c0
cmp dword [ebp - 0x1038], 8
push dword [ebp - 0x103c]
cmovae eax, dword [ebp - 0x104c]
push eax
call fcn.0040daf0
xor edi, edi
nop dword [eax]
nop word [eax + eax]
xorps xmm0, xmm0
mov dword [ebp - 0x10dc], 0
xor eax, eax
movlpd qword [ebp - 0x10f4], xmm0
movaps xmm0, xmmword [0x8d06e0]
mov dword [ebp - 0x10d8], 7
mov word [ebp - 0x10ec], ax
mov dword [ebp - 0x10c4], eax
mov dword [ebp - 0x10c0], 7
mov word [ebp - 0x10d4], ax
movups xmmword [ebp - 0x10bc], xmm0
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x104c]
cmp dword [ebp - 0x1038], 8
lea ecx, [ebp - 0x10f4]
push esi
cmovae eax, dword [ebp - 0x104c]
push eax
call fcn.004524e0
test eax, eax
je 0x43a24c
cmp dword [esi + 0x10], 0
jne 0x43a263
lea ecx, [ebp - 0x10f4]
call fcn.00451b70
inc edi
cmp edi, 0xa
jl 0x43a1d0
jmp 0x43a26e
lea ecx, [ebp - 0x10f4]
call fcn.00451b70
mov edi, dword [ebp - 0x1200]
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x1038]
cmp edx, 8
jb 0x43a2b8
mov ecx, dword [ebp - 0x104c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43a2ae
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be89
push edx
push ecx
call fcn.00478f62
add esp, 8
xor eax, eax
mov dword [ebp - 0x103c], 0
lea ecx, [ebp - 0x1188]
mov dword [ebp - 0x1038], 7
mov word [ebp - 0x104c], ax
call fcn.004398a0
lea ecx, [ebp - 0x10ac]
mov dword [ebp - 4], 0xffffffff
call fcn.0045a960
mov eax, dword [esi + 0x10]
cmp eax, 0xa
jbe 0x43be36
push 0
lea ecx, [ebp - 0x1064]
call fcn.0045a4b0
lea ecx, [ebp - 0x11fc]
mov dword [ebp - 4], 0x10
call fcn.004608a0
push 1
lea eax, [ebp - 0x1064]
mov byte [ebp - 4], 0x11
push eax
push esi
lea ecx, [ebp - 0x11fc]
call fcn.004625f0
push 0x8cd660
lea ecx, [ebp - 0x1064]
call fcn.0045ae10
lea ecx, [ebp - 0x1034]
push ecx
mov ecx, eax
call fcn.0045c370
mov esi, eax
lea edi, [esi + 0x10]
mov byte [ebp - 4], 0x12
cmp dword [edi], 0
jne 0x43a382
mov esi, 7
mov dword [ebp - 0x109c], 0
xor eax, eax
mov dword [ebp - 0x1098], esi
mov word [ebp - 0x10ac], ax
jmp 0x43a3c2
lea ecx, [ebp - 0x10fc]
call fcn.00412fa0
mov byte [ebp - 4], 0x13
cmp dword [esi + 0x14], 0x10
jb 0x43a399
mov esi, dword [esi]
mov eax, dword [edi]
lea ecx, [ebp - 0x10fc]
add eax, esi
push eax
push esi
lea eax, [ebp - 0x10ac]
push eax
call fcn.0041a7f0
lea ecx, [ebp - 0x10fc]
call fcn.00413240
mov esi, dword [ebp - 0x1098]
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0x1020]
cmp edx, 0x10
jb 0x43a400
mov ecx, dword [ebp - 0x1034]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43a3f6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be8e
push edx
push ecx
call fcn.00478f62
add esp, 8
mov eax, dword [0x8cc594]
lea edi, [ebp - 0x10ac]
cmp esi, 8
mov dword [ebp - 0x101c], eax
mov eax, dword [0x8cc598]
mov ecx, 5
cmovae edi, dword [ebp - 0x10ac]
cmp byte [0x8cc59b], 0
mov esi, dword [0x17f8f7c]
mov dword [ebp - 0x1024], 0
mov dword [ebp - 0x1020], 0xf
mov byte [ebp - 0x1034], 0
mov dword [ebp - 0x1018], eax
je 0x43a5bd
xor edx, edx
mov dword [ebp - 0x1200], edx
cmp esi, 2
jl 0x43a580
movaps xmm2, xmmword [0x8d06a0]
movaps xmm4, xmmword [0x8d0750]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm1, xmm4
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, ecx
psrad xmm1, xmm5
mov ecx, 0x1f
movaps xmm0, xmm1
movd xmm6, ecx
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d06d0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d06b0]
paddd xmm2, xmmword [0x8d06a0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x8d0710]
movd xmm0, dword [0x8cc594]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x8d0730]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [ebp - 0x101c], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm1, xmm4
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d06d0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x8d0710]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x8d0730]
movd xmm0, eax
pxor xmm1, xmm0
movd dword [ebp - 0x1018], xmm1
jmp 0x43a5bd
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 8
jl 0x43a580
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43a5e0
push edi
lea eax, [ebp - 0x101c]
push eax
lea eax, [ebp - 0x1040]
push eax
call fcn.00440d00
cmp byte [0x8cc59b], 0
mov eax, dword [0x8cc594]
mov ecx, dword [0x8cc598]
mov dword [ebp - 0x101c], eax
mov dword [ebp - 0x1018], ecx
je 0x43a7bd
xor edx, edx
mov dword [ebp - 0x1200], edx
cmp esi, 2
jl 0x43a780
movaps xmm2, xmmword [0x8d06a0]
mov eax, 5
movaps xmm5, xmmword [0x8d0750]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
pmuldq xmm1, xmm5
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm6, eax
psrad xmm1, xmm6
mov eax, 0x1f
movaps xmm0, xmm1
movd xmm7, eax
mov eax, dword [0x8d0730]
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d06d0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d06b0]
paddd xmm2, xmmword [0x8d06a0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x8d0710]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x8cc594]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [ebp - 0x101c], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
pmuldq xmm1, xmm5
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d06d0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x8d0710]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
pxor xmm1, xmm0
movd dword [ebp - 0x1018], xmm1
jmp 0x43a7bd
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 8
jl 0x43a780
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43a7e0
push ecx
lea eax, [ebp - 0x101c]
push eax
lea eax, [ebp - 0x1040]
push eax
lea eax, [ebp - 0x1114]
push eax
call fcn.00440f30
lea edx, [ebp - 0x1114]
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x1034]
call fcn.00444f30
lea edx, [ebp - 0x1034]
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x104c]
call fcn.00444da0
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43a8a6
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43a89c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be93
push edx
push ecx
call fcn.00478f62
add esp, 8
lea ecx, [ebp - 0x1114]
call fcn.00406c20
movups xmm0, xmmword [ebp - 0x104c]
sub esp, 0x18
lea eax, [ebp - 0x1114]
mov ecx, esp
movups xmmword [ebp - 0x1114], xmm0
movq xmm0, qword [ebp - 0x103c]
push eax
movq qword [ebp - 0x1104], xmm0
call fcn.004040f0
lea ecx, [ebp - 0x1094]
call fcn.0040feb0
push 0x1000
lea eax, [ebp - 0x1010]
mov byte [ebp - 4], 0x18
push 0
push eax
call fcn.006b6700
add esp, 0x24
lea ecx, [ebp - 0x1094]
cmp dword [ebp - 0x1080], 8
lea edx, [ebp - 0x1010]
cmovae ecx, dword [ebp - 0x1094]
call fcn.00410bc0
test eax, eax
je 0x43a964
lea eax, [ebp - 0x1010]
push eax
call dword [0x80e398]
test eax, eax
jle 0x43a964
lea ecx, [ebp - 0x1010]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x43a942
sub ecx, edx
lea eax, [ebp - 0x1010]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x1094]
call fcn.0040daf0
sub esp, 0x18
lea eax, [ebp - 0x1094]
mov ecx, esp
push eax
call fcn.004040f0
lea ecx, [ebp - 0x1034]
call fcn.00410710
mov esi, eax
add esp, 0x18
lea eax, [ebp - 0x1094]
cmp eax, esi
je 0x43a9c0
mov ecx, eax
call fcn.00406c20
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x1094], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x1084], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43aa00
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43a9f6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be98
push edx
push ecx
call fcn.00478f62
add esp, 8
cmp dword [ebp - 0x1080], 8
lea esi, [ebp - 0x1094]
movq xmm0, qword [0x8cddfc]
cmovae esi, dword [ebp - 0x1094]
xor edx, edx
mov al, byte [0x8cde04]
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
nop word [eax + eax]
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43aa40
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x101c], xmm0
mov byte [ebp - 0x1014], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43aaa0
push esi
lea eax, [ebp - 0x1040]
push eax
lea eax, [ebp - 0x101c]
push eax
call fcn.00440d00
push 0x8cd668
lea ecx, [ebp - 0x1064]
call fcn.0045ae10
lea ecx, [ebp - 0x107c]
push ecx
mov ecx, eax
call fcn.0045c370
mov esi, eax
lea edi, [esi + 0x10]
mov byte [ebp - 4], 0x19
cmp dword [edi], 0
jne 0x43ab3d
mov eax, 7
mov dword [ebp - 0x1024], 0
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov word [ebp - 0x1034], cx
jmp 0x43ab7d
lea ecx, [ebp - 0x10fc]
call fcn.00412fa0
mov byte [ebp - 4], 0x1a
cmp dword [esi + 0x14], 0x10
jb 0x43ab54
mov esi, dword [esi]
mov eax, dword [edi]
lea ecx, [ebp - 0x10fc]
add eax, esi
push eax
push esi
lea eax, [ebp - 0x1034]
push eax
call fcn.0041a7f0
lea ecx, [ebp - 0x10fc]
call fcn.00413240
mov eax, dword [ebp - 0x1020]
mov byte [ebp - 4], 0x1b
lea esi, [ebp - 0x1034]
movq xmm0, qword [0x8cca78]
cmp eax, 8
mov al, byte [0x8cca80]
cmovae esi, dword [ebp - 0x1034]
xor edx, edx
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
nop dword [eax]
nop dword [eax + eax]
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43abc0
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x101c], xmm0
mov byte [ebp - 0x1014], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43ac20
push esi
lea eax, [ebp - 0x1040]
push eax
lea eax, [ebp - 0x101c]
push eax
call fcn.00440d00
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43acb5
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43acab
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43be9d
push edx
push ecx
call fcn.00478f62
add esp, 8
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x1068]
cmp edx, 0x10
jb 0x43acf3
mov ecx, dword [ebp - 0x107c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43ace9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bea2
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cd674
lea ecx, [ebp - 0x1064]
call fcn.0045ae10
lea ecx, [ebp - 0x107c]
push ecx
mov ecx, eax
call fcn.0045c370
mov esi, eax
lea edi, [esi + 0x10]
mov byte [ebp - 4], 0x1c
cmp dword [edi], 0
jne 0x43ad3f
mov eax, 7
mov dword [ebp - 0x1024], 0
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov word [ebp - 0x1034], cx
jmp 0x43ad7f
lea ecx, [ebp - 0x10fc]
call fcn.00412fa0
mov byte [ebp - 4], 0x1d
cmp dword [esi + 0x14], 0x10
jb 0x43ad56
mov esi, dword [esi]
mov eax, dword [edi]
lea ecx, [ebp - 0x10fc]
add eax, esi
push eax
push esi
lea eax, [ebp - 0x1034]
push eax
call fcn.0041a7f0
lea ecx, [ebp - 0x10fc]
call fcn.00413240
mov eax, dword [ebp - 0x1020]
mov byte [ebp - 4], 0x1e
lea esi, [ebp - 0x1034]
movq xmm0, qword [0x8cc548]
cmp eax, 8
mov al, byte [0x8cc550]
cmovae esi, dword [ebp - 0x1034]
xor edx, edx
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
nop word [eax + eax]
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43adc0
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x101c], xmm0
mov byte [ebp - 0x1014], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43ae20
push esi
lea eax, [ebp - 0x1040]
push eax
lea eax, [ebp - 0x101c]
push eax
call fcn.00440d00
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43aeb5
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43aeab
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bea7
push edx
push ecx
call fcn.00478f62
add esp, 8
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x1068]
cmp edx, 0x10
jb 0x43aef3
mov ecx, dword [ebp - 0x107c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43aee9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43beac
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cddcc
lea ecx, [ebp - 0x1064]
call fcn.0045ae10
lea ecx, [ebp - 0x107c]
push ecx
mov ecx, eax
call fcn.0045c370
mov esi, eax
lea edi, [esi + 0x10]
mov byte [ebp - 4], 0x1f
cmp dword [edi], 0
jne 0x43af3f
mov eax, 7
mov dword [ebp - 0x1024], 0
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov word [ebp - 0x1034], cx
jmp 0x43af7f
lea ecx, [ebp - 0x10fc]
call fcn.00412fa0
mov byte [ebp - 4], 0x20
cmp dword [esi + 0x14], 0x10
jb 0x43af56
mov esi, dword [esi]
mov eax, dword [edi]
lea ecx, [ebp - 0x10fc]
add eax, esi
push eax
push esi
lea eax, [ebp - 0x1034]
push eax
call fcn.0041a7f0
lea ecx, [ebp - 0x10fc]
call fcn.00413240
mov eax, dword [ebp - 0x1020]
mov byte [ebp - 4], 0x21
lea esi, [ebp - 0x1034]
mov ecx, dword [0x8cddf8]
cmp eax, 8
mov eax, dword [0x8cddf4]
cmovae esi, dword [ebp - 0x1034]
cmp byte [0x8cddfb], 0
mov dword [ebp - 0x101c], eax
mov dword [ebp - 0x1018], ecx
je 0x43b12d
xor edx, edx
cmp dword [0x17f8f7c], 2
mov dword [ebp - 0x1200], edx
jl 0x43b0f0
movaps xmm2, xmmword [0x8d06a0]
mov eax, 5
movaps xmm5, xmmword [0x8d0750]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
pmuldq xmm1, xmm5
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm6, eax
psrad xmm1, xmm6
mov eax, 0x1f
movaps xmm0, xmm1
movd xmm7, eax
mov eax, dword [0x8d0730]
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d06d0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d06b0]
paddd xmm2, xmmword [0x8d06a0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x8d0710]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x8cddf4]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [ebp - 0x101c], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
pmuldq xmm1, xmm5
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d06d0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x8d0710]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
pxor xmm1, xmm0
movd dword [ebp - 0x1018], xmm1
jmp 0x43b12d
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 8
jl 0x43b0f0
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43b150
push esi
lea eax, [ebp - 0x101c]
push eax
lea eax, [ebp - 0x1040]
push eax
call fcn.00440d00
mov byte [ebp - 4], 0x1f
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43b1e5
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43b1db
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43beb1
push edx
push ecx
call fcn.00478f62
add esp, 8
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x1068]
cmp edx, 0x10
jb 0x43b223
mov ecx, dword [ebp - 0x107c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43b219
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43beb6
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cd680
lea ecx, [ebp - 0x1064]
call fcn.0045ae10
lea ecx, [ebp - 0x107c]
push ecx
mov ecx, eax
call fcn.0045c370
mov esi, eax
lea edi, [esi + 0x10]
mov byte [ebp - 4], 0x22
cmp dword [edi], 0
jne 0x43b26f
mov eax, 7
mov dword [ebp - 0x1024], 0
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov word [ebp - 0x1034], cx
jmp 0x43b2af
lea ecx, [ebp - 0x10fc]
call fcn.00412fa0
mov byte [ebp - 4], 0x23
cmp dword [esi + 0x14], 0x10
jb 0x43b286
mov esi, dword [esi]
mov eax, dword [edi]
lea ecx, [ebp - 0x10fc]
add eax, esi
push eax
push esi
lea eax, [ebp - 0x1034]
push eax
call fcn.0041a7f0
lea ecx, [ebp - 0x10fc]
call fcn.00413240
mov eax, dword [ebp - 0x1020]
mov byte [ebp - 4], 0x24
lea esi, [ebp - 0x1034]
mov ecx, dword [0x8cddf0]
cmp eax, 8
mov eax, dword [0x8cddec]
cmovae esi, dword [ebp - 0x1034]
cmp byte [0x8cddf3], 0
mov dword [ebp - 0x101c], eax
mov dword [ebp - 0x1018], ecx
je 0x43b45d
xor edx, edx
cmp dword [0x17f8f7c], 2
mov dword [ebp - 0x1200], edx
jl 0x43b420
movaps xmm2, xmmword [0x8d06a0]
mov eax, 5
movaps xmm5, xmmword [0x8d0750]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
pmuldq xmm1, xmm5
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm6, eax
psrad xmm1, xmm6
mov eax, 0x1f
movaps xmm0, xmm1
movd xmm7, eax
mov eax, dword [0x8d0730]
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d06d0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d06b0]
paddd xmm2, xmmword [0x8d06a0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x8d0710]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x8cddec]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [ebp - 0x101c], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
pmuldq xmm1, xmm5
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d06d0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x8d0710]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
pxor xmm1, xmm0
movd dword [ebp - 0x1018], xmm1
jmp 0x43b45d
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 8
jl 0x43b420
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43b480
push esi
lea eax, [ebp - 0x101c]
push eax
lea eax, [ebp - 0x1040]
push eax
call fcn.00440d00
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43b515
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43b50b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bebb
push edx
push ecx
call fcn.00478f62
add esp, 8
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x1068]
cmp edx, 0x10
jb 0x43b553
mov ecx, dword [ebp - 0x107c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43b549
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bec0
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cd688
lea ecx, [ebp - 0x1064]
call fcn.0045ae10
lea ecx, [ebp - 0x107c]
push ecx
mov ecx, eax
call fcn.0045c370
mov esi, eax
lea edi, [esi + 0x10]
mov byte [ebp - 4], 0x25
cmp dword [edi], 0
jne 0x43b59f
mov eax, 7
mov dword [ebp - 0x1024], 0
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov word [ebp - 0x1034], cx
jmp 0x43b5df
lea ecx, [ebp - 0x10fc]
call fcn.00412fa0
mov byte [ebp - 4], 0x26
cmp dword [esi + 0x14], 0x10
jb 0x43b5b6
mov esi, dword [esi]
mov eax, dword [edi]
lea ecx, [ebp - 0x10fc]
add eax, esi
push eax
push esi
lea eax, [ebp - 0x1034]
push eax
call fcn.0041a7f0
lea ecx, [ebp - 0x10fc]
call fcn.00413240
mov eax, dword [ebp - 0x1020]
mov byte [ebp - 4], 0x27
lea esi, [ebp - 0x1034]
movq xmm0, qword [0x8cdde0]
cmp eax, 8
mov al, byte [0x8cdde8]
cmovae esi, dword [ebp - 0x1034]
xor edx, edx
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
nop word [eax + eax]
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43b620
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x101c], xmm0
mov byte [ebp - 0x1014], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43b680
push esi
lea eax, [ebp - 0x1040]
push eax
lea eax, [ebp - 0x101c]
push eax
call fcn.00440d00
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43b715
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43b70b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bec5
push edx
push ecx
call fcn.00478f62
add esp, 8
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x1068]
cmp edx, 0x10
jb 0x43b753
mov ecx, dword [ebp - 0x107c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43b749
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43beca
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cd694
lea ecx, [ebp - 0x1064]
call fcn.0045ae10
lea ecx, [ebp - 0x107c]
push ecx
mov ecx, eax
call fcn.0045c370
mov esi, eax
lea edi, [esi + 0x10]
mov byte [ebp - 4], 0x28
cmp dword [edi], 0
jne 0x43b79f
mov eax, 7
mov dword [ebp - 0x1024], 0
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov word [ebp - 0x1034], cx
jmp 0x43b7df
lea ecx, [ebp - 0x10fc]
call fcn.00412fa0
mov byte [ebp - 4], 0x29
cmp dword [esi + 0x14], 0x10
jb 0x43b7b6
mov esi, dword [esi]
mov eax, dword [edi]
lea ecx, [ebp - 0x10fc]
add eax, esi
push eax
push esi
lea eax, [ebp - 0x1034]
push eax
call fcn.0041a7f0
lea ecx, [ebp - 0x10fc]
call fcn.00413240
mov eax, dword [ebp - 0x1020]
mov byte [ebp - 4], 0x2a
lea esi, [ebp - 0x1034]
movq xmm0, qword [0x8cddd4]
cmp eax, 8
mov al, byte [0x8cdddc]
cmovae esi, dword [ebp - 0x1034]
xor edx, edx
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
nop word [eax + eax]
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43b820
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x101c], xmm0
mov byte [ebp - 0x1014], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43b880
push esi
lea eax, [ebp - 0x1040]
push eax
lea eax, [ebp - 0x101c]
push eax
call fcn.00440d00
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43b915
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43b90b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43becf
push edx
push ecx
call fcn.00478f62
add esp, 8
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x1068]
cmp edx, 0x10
jb 0x43b953
mov ecx, dword [ebp - 0x107c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43b949
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bed4
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cd6a0
lea ecx, [ebp - 0x1064]
call fcn.0045ae10
lea ecx, [ebp - 0x107c]
push ecx
mov ecx, eax
call fcn.0045c370
mov esi, eax
lea edi, [esi + 0x10]
mov byte [ebp - 4], 0x2b
cmp dword [edi], 0
jne 0x43b99f
mov eax, 7
mov dword [ebp - 0x1024], 0
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov word [ebp - 0x1034], cx
jmp 0x43b9df
lea ecx, [ebp - 0x10fc]
call fcn.00412fa0
mov byte [ebp - 4], 0x2c
cmp dword [esi + 0x14], 0x10
jb 0x43b9b6
mov esi, dword [esi]
mov eax, dword [edi]
lea ecx, [ebp - 0x10fc]
add eax, esi
push eax
push esi
lea eax, [ebp - 0x1034]
push eax
call fcn.0041a7f0
lea ecx, [ebp - 0x10fc]
call fcn.00413240
mov eax, dword [ebp - 0x1020]
mov byte [ebp - 4], 0x2d
lea esi, [ebp - 0x1034]
movq xmm0, qword [0x8cc588]
cmp eax, 8
mov ax, word [0x8cc590]
cmovae esi, dword [ebp - 0x1034]
movq qword [ebp - 0x101c], xmm0
mov word [ebp - 0x1014], ax
test ah, ah
je 0x43ba5d
xor edx, edx
mov dword [ebp - 0x1200], edx
nop dword [eax]
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x101c], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 0xa
jl 0x43ba20
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43ba80
push esi
lea eax, [ebp - 0x101c]
push eax
lea eax, [ebp - 0x1040]
push eax
call fcn.00440d00
mov byte [ebp - 4], 0x2b
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43bb15
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43bb0b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bed9
push edx
push ecx
call fcn.00478f62
add esp, 8
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x1068]
cmp edx, 0x10
jb 0x43bb53
mov ecx, dword [ebp - 0x107c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43bb49
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bede
push edx
push ecx
call fcn.00478f62
add esp, 8
push 0x8cd6ac
lea ecx, [ebp - 0x1064]
call fcn.0045ae10
lea ecx, [ebp - 0x107c]
push ecx
mov ecx, eax
call fcn.0045c370
mov esi, eax
lea edi, [esi + 0x10]
mov byte [ebp - 4], 0x2e
cmp dword [edi], 0
jne 0x43bb9f
mov eax, 7
mov dword [ebp - 0x1024], 0
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov word [ebp - 0x1034], cx
jmp 0x43bbdf
lea ecx, [ebp - 0x10fc]
call fcn.00412fa0
mov byte [ebp - 4], 0x2f
cmp dword [esi + 0x14], 0x10
jb 0x43bbb6
mov esi, dword [esi]
mov eax, dword [edi]
lea ecx, [ebp - 0x10fc]
add eax, esi
push eax
push esi
lea eax, [ebp - 0x1034]
push eax
call fcn.0041a7f0
lea ecx, [ebp - 0x10fc]
call fcn.00413240
mov eax, dword [ebp - 0x1020]
mov byte [ebp - 4], 0x30
lea esi, [ebp - 0x1034]
cmp eax, 8
mov eax, dword [0x8cce4c]
mov dword [ebp - 0x1018], eax
cmovae esi, dword [ebp - 0x1034]
xor edx, edx
mov al, byte [0x8cce50]
mov byte [ebp - 0x1014], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1018], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 5
jl 0x43bc11
movq xmm0, qword [0x8cc554]
xor edx, edx
mov al, byte [0x8cc55c]
movq qword [ebp - 0x1040], xmm0
mov byte [ebp - 0x1038], al
mov dword [ebp - 0x1200], edx
mov eax, 0x8d3dcb09
imul edx
add edx, dword [ebp - 0x1200]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x1200]
movsx eax, al
mov cl, dl
imul eax, eax, 0x3a
sub cl, al
add cl, 0x39
xor byte [ebp + edx - 0x1040], cl
inc edx
mov dword [ebp - 0x1200], edx
cmp edx, 9
jl 0x43bc71
push esi
lea eax, [ebp - 0x1018]
push eax
lea eax, [ebp - 0x1040]
push eax
call fcn.00440d00
mov edx, dword [ebp - 0x1020]
cmp edx, 8
jb 0x43bd02
mov ecx, dword [ebp - 0x1034]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43bcf8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bee3
push edx
push ecx
call fcn.00478f62
add esp, 8
mov edx, dword [ebp - 0x1068]
cmp edx, 0x10
jb 0x43bd3c
mov ecx, dword [ebp - 0x107c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43bd32
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bee8
push edx
push ecx
call fcn.00478f62
add esp, 8
mov edx, dword [ebp - 0x1080]
cmp edx, 8
jb 0x43bd7c
mov ecx, dword [ebp - 0x1094]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43bd72
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43beed
push edx
push ecx
call fcn.00478f62
add esp, 8
mov edx, dword [ebp - 0x1100]
xor eax, eax
mov dword [ebp - 0x1084], 0
mov dword [ebp - 0x1080], 7
mov word [ebp - 0x1094], ax
cmp edx, 8
jb 0x43bdd9
mov ecx, dword [ebp - 0x1114]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43bdcf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bef2
push edx
push ecx
call fcn.00478f62
add esp, 8
mov edx, dword [ebp - 0x1098]
cmp edx, 8
jb 0x43be19
mov ecx, dword [ebp - 0x10ac]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43be0f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43bef7
push edx
push ecx
call fcn.00478f62
add esp, 8
lea ecx, [ebp - 0x11fc]
call fcn.004398a0
lea ecx, [ebp - 0x1064]
call fcn.0045a960
mov eax, 1
jmp 0x43be41
push 9
mov ecx, edi
call fcn.0043e170
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00478d26
mov esp, ebp
pop ebp
ret
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
call fcn.006b9a29
int3