Function at 0x563d80
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x154
mov eax, dword [0x62d040]
xor eax, esp
mov dword [esp + 0x150], eax
push ebx
push esi
push edi
mov edi, edx
mov dword [esp + 0xe8], edi
mov edx, ecx
mov dword [esp + 0xc8], edx
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x20], eax
mov eax, dword [eax + 0xc]
mov dword [esp + 0x84], eax
mov esi, dword [ebp + 8]
mov dword [esp + 0xec], esi
mov ecx, dword [ebp + 0xc]
movups xmm2, xmmword [0x624670]
mov esi, dword [esi]
mov ebx, dword [edx]
mov eax, ebx
shr eax, 0x13
and eax, 1
mov dword [esp + 0x68], ecx
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x80], eax
mov eax, ebx
shr eax, 0x11
and eax, 1
mov dword [esp + 0xd8], ecx
mov ecx, dword [ebp + 0x14]
mov dword [esp + 0xa4], eax
mov eax, ebx
mov dword [esp + 0xdc], ecx
mov ecx, dword [ebp + 0x18]
shr eax, 0x12
and eax, 1
mov dword [esp + 0xe0], ecx
mov ecx, dword [ebp + 0x1c]
mov dword [esp + 0xc0], eax
xor eax, 1
mov dword [esp + 0xe4], ecx
mov ecx, dword [ebp + 0x20]
mov dword [esp + 0xcc], ecx
mov ecx, dword [ebp + 0x28]
mov dword [esp + 0xc4], eax
mov eax, ebx
mov dword [esp + 0x44], ecx
or ecx, 0xffffffff
or edx, 0xffffffff
shr eax, 3
mov dword [esp + 0xa8], ecx
and eax, 1
mov ecx, dword [edi]
mov dword [esp + 0x88], 0
mov dword [esp + 0x48], ebx
mov dword [esp + 0x18], esi
mov dword [esp + 0x74], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb0], ecx
mov dword [esp + 0x3c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x78], 0xffffffff
mov dword [esp + 0x1c], edx
mov dword [esp + 0x54], 0xffffffff
mov dword [esp + 0x30], 0xffffffff
mov dword [esp + 0x8c], eax
mov dword [esp + 0xd0], 0x8a
mov dword [esp + 0xd4], 0x84
movaps xmmword [esp + 0xf0], xmm2
nop dword [eax]
mov eax, dword [esi]
mov ebx, eax
and ebx, 0xffff0000
movzx edi, ax
cmp dword [esp + 0x44], 0
mov dword [esp + 0x2c], ebx
je 0x563fe4
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x14]
mov ecx, dword [eax + 0x28]
mov eax, dword [eax + 0x14]
lea ecx, [eax + ecx*2]
lea eax, [ecx - 0xc8]
cmp ebx, eax
ja 0x567585
mov ecx, ebx
mov ebx, dword [esp + 0x2c]
cmp ecx, dword [esp + 0xb4]
cmovb ecx, dword [esp + 0xb4]
mov dword [esp + 0x14], ecx
cmp ebx, 0x80340000
jb 0x563f94
cmp ebx, 0x803f0000
jbe 0x563fdd
sub ecx, dword [esp + 0xb0]
mov eax, dword [esp + 0x44]
sar ecx, 1
mov dword [esp + 0x14], ecx
mov ebx, dword [esp + 0x14]
mov ecx, dword [eax]
mov eax, 0x7fffffeb
sub eax, ecx
cmp eax, ebx
jb 0x56769f
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0x44]
mov dword [ecx], eax
cmp eax, 0x10000
ja 0x56769f
mov ecx, dword [esp + 0xb0]
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x14], ecx
mov dword [esp + 0xb4], ecx
cmp ebx, 0x80340000
jb 0x563ff4
cmp ebx, 0x803f0000
jbe 0x564024
mov eax, dword ds:[esp + 0x4c]
mov dword [esp + 0x3c], ecx
test eax, eax
je 0x564028
mov ecx, dword [esp + 0xa8]
mov ebx, 1
cmp dword [esp + 0xbc], 0
cmove ecx, ebx
mov dword [esp + 0xa8], ecx
jmp 0x564028
mov eax, dword [esp + 0x4c]
xor ebx, ebx
mov dword [esp + 0x4c], 0
xor ecx, ecx
cmp dword [esp + 0x2c], 0x80220000
ja 0x565b49
mov eax, dword [esp + 0x2c]
cmp eax, 0x80220000
je 0x565b30
nop word [eax + eax]
cmp eax, 0x800f0000
ja 0x565225
mov ebx, eax
cmp ebx, 0x800f0000
je 0x565207
nop dword [eax]
cmp ebx, 0x80070000
ja 0x5642ad
je 0x5641aa
cmp ebx, 0x80030000
ja 0x56411e
nop
je 0x5640e5
cmp ebx, 0x80000000
je 0x5675e5
cmp ebx, 0x80010000
je 0x5675e5
nop word [eax + eax]
cmp ebx, 0x80020000
jne 0x56649d
mov edx, dword ds:[esp + 0x20]
lea ebx, [ecx + 1]
mov eax, 0x84
mov dword [esp + 0x28], eax
mov edi, eax
jmp 0x565c6f
mov ebx, dword [esp + 0x20]
cmp edi, 0xa
jae 0x5640f6
lea esi, [ebx + 0x2c]
lea esi, [esi + edi*4]
jmp 0x5640fd
add esi, 4
mov dword [esp + 0x18], esi
mov eax, dword [esi]
mov dword [esp + 0x74], eax
cmp edi, dword [ebx + 0x74]
jbe 0x565998
mov dword [ebx + 0x54], eax
mov eax, dword [esp + 0x68]
mov dword [eax], 0x73
jmp 0x5676b8
nop
cmp ebx, 0x80040000
je 0x56587b
cmp ebx, 0x80050000
je 0x56419e
nop dword [eax]
nop dword [eax + eax]
cmp ebx, 0x80060000
jne 0x565c4c
mov ecx, dword [esp + 0x14]
mov eax, 0x76
movaps xmm2, xmmword [esp + 0xf0]
mov word [ecx], ax
mov eax, dword [esp + 0x18]
movzx eax, word [eax + 4]
mov word [ecx + 2], ax
mov eax, dword [esp + 0x18]
movzx eax, word [eax + 8]
mov word [ecx + 4], ax
mov eax, dword [esp + 0x18]
movzx eax, word [eax + 0xc]
mov word [ecx + 6], ax
add ecx, 8
mov esi, dword [esp + 0x18]
add esi, 0xc
mov dword [esp + 0x14], ecx
add esi, 4
mov dword [esp + 0x18], esi
jmp 0x563f30
add esi, 4
mov dword [esp + 0x18], esi
jmp 0x5664ac
mov edi, dword [esp + 0x44]
test edi, edi
je 0x5641d5
mov eax, dword [esi + 0xc]
add esi, 0x10
mov ecx, dword [esp + 0x14]
add eax, 5
add dword [edi], eax
add esi, 4
movaps xmm2, xmmword [esp + 0xf0]
mov dword [esp + 0x18], esi
jmp 0x563f30
mov edi, dword [esp + 0x14]
mov eax, 0x77
mov esi, dword [esi + 0xc]
lea ecx, [edi + 0xa]
mov word [edi], ax
mov eax, dword [esp + 0x18]
movzx eax, word [eax + 4]
mov word [edi + 2], ax
mov eax, dword [esp + 0x18]
movzx eax, word [eax + 8]
mov word [edi + 4], ax
mov eax, dword [esp + 0x18]
add eax, 0x10
mov dword [esp + 0x18], eax
mov edx, dword [eax]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x74], edx
mov eax, dword [eax + 0x1c]
lea edx, [eax + edx*2]
movzx eax, word [edx]
add edx, 2
mov word [ecx], ax
mov ebx, eax
add ecx, 2
mov eax, 0x7d
cmp ebx, 0x7b
mov dword [esp + 0x34], ecx
cmove ebx, eax
mov eax, dword [esp + 0x74]
inc eax
dec esi
mov word [edi + 8], ax
cmp esi, 1
jbe 0x56427b
movzx edi, word [edx]
cmp edi, ebx
jne 0x56425e
movzx eax, word [edx + 2]
cmp eax, ebx
jne 0x56425e
add edx, 4
movzx eax, bx
dec esi
jmp 0x564263
add edx, 2
mov eax, edi
mov edi, dword [esp + 0x34]
dec esi
mov word [edi], ax
lea ecx, [edi + 2]
mov dword [esp + 0x34], ecx
cmp esi, 1
ja 0x564246
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
xor eax, eax
movaps xmm2, xmmword [esp + 0xf0]
mov word [ecx], ax
add ecx, 2
mov eax, ecx
mov dword [esp + 0x14], ecx
sub eax, edi
sar eax, 1
mov word [edi + 6], ax
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x18], esi
jmp 0x563f30
cmp ebx, 0x800b0000
ja 0x564385
je 0x5651a5
nop
cmp ebx, 0x80080000
je 0x564357
cmp ebx, 0x80090000
je 0x5642df
cmp ebx, 0x800a0000
jmp 0x564397
test dword [esp + 0x48], 0x400
je 0x56432c
cmp dword [esp + 0x30], 0xffffffff
jne 0x564301
mov edx, 0xfffffffe
mov dword [esp + 0x30], 0xfffffffe
mov dword [esp + 0x1c], edx
mov ecx, dword [esp + 0x14]
mov eax, 0x1c
movaps xmm2, xmmword [esp + 0xf0]
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ecx, dword [esp + 0x14]
mov eax, 0x1b
movaps xmm2, xmmword [esp + 0xf0]
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov eax, 0x88
mov ecx, 1
mov dword [esp + 0x28], eax
mov ebx, ecx
mov eax, dword [esp + 0x14]
mov word [eax + 4], di
mov eax, dword [esp + 0x20]
mov edx, eax
mov dword [eax + 0x78], edi
mov edi, dword [esp + 0x28]
jmp 0x565c6f
cmp ebx, 0x800c0000
je 0x5651a5
cmp ebx, 0x800e0000
jne 0x565c4c
mov edi, dword ds:[esi + 4]
xor eax, eax
cmp ebx, 0x800e0000
mov dword [esp + 0x4c], 1
sete al
mov dword [esp + 0x6c], eax
cmp edi, 0x80000000
jae 0x564559
cmp dword [esi + 8], 0x800d0000
lea eax, [esi + 8]
jne 0x564559
mov dword [esp + 0x18], eax
cmp ebx, 0x800a0000
je 0x5664ae
mov eax, dword [esp + 0x64]
mov ecx, 0xfffffffe
mov esi, dword [esp + 0x80]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x30]
cmp eax, 0xffffffff
cmove eax, ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x30], eax
mov edx, eax
mov dword [esp + 0x38], ecx
mov dword [esp + 0x1c], edx
test esi, esi
jne 0x564435
cmp dword [esp + 0xa4], esi
je 0x5644b6
mov ebx, dword ds:[esp + 0x48]
test bl, 8
je 0x5644bd
mov eax, edi
test eax, eax
jns 0x564452
add eax, 0x7f
sar eax, 7
movzx ecx, word [eax*2 + 0x5f3170]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x56446e
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x5e0570]
lea eax, [eax + eax*2]
mov al, byte [eax*4 + 0x5dc363]
test al, al
je 0x5644ba
mov ecx, dword [esp + 0x14]
movaps xmm2, xmmword [esp + 0xf0]
movzx eax, al
mov dword [ecx], 0xa000f
mov word [ecx + 4], ax
add ecx, 6
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ebx, dword [esp + 0x48]
test bl, 8
mov ecx, dword [esp + 0x14]
mov eax, 0
setne al
add eax, 0x1f
mov word [ecx], ax
add ecx, 2
mov dword [esp + 0x14], ecx
test esi, esi
je 0x564533
nop word [eax + eax]
cmp edi, 0xffff
jbe 0x564533
mov ebx, dword [esp + 0x14]
lea ecx, [edi - 0x10000]
movaps xmm2, xmmword [esp + 0xf0]
mov eax, ecx
shr eax, 0xa
and ecx, 0x3ff
or eax, 0xd800
or ecx, 0xdc00
mov word [ebx], ax
mov eax, 4
mov word [ebx + 2], cx
mov ecx, ebx
mov esi, dword [esp + 0x18]
add ecx, eax
add esi, eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
movaps xmm2, xmmword [esp + 0xf0]
mov eax, 2
mov word [ecx], di
add ecx, eax
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
nop dword [eax]
cmp ebx, 0x800a0000
jne 0x5646a6
cmp edi, 0x80000000
jae 0x5646a6
cmp dword ds:[esi + 8], 0x80000000
jae 0x5646a6
cmp dword [esi + 0xc], 0x800d0000
jne 0x5646a6
mov edx, edi
test edx, edx
jns 0x56459c
add edx, 0x7f
sar edx, 7
mov ecx, edi
and ecx, 0x8000007f
jns 0x5645ae
dec ecx
or ecx, 0xffffff80
inc ecx
movzx eax, word [edx*2 + 0x5f3170]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5e0570]
lea eax, [eax + eax*2]
cmp byte [eax*4 + 0x5dc363], 0
jne 0x5646a6
cmp dword [esp + 0x80], 0
jne 0x5645e8
cmp dword [esp + 0xa4], 0
je 0x564617
cmp edi, 0x7f
jbe 0x564617
lfence
movzx eax, word [edx*2 + 0x5f3170]
mov esi, dword [esp + 0x18]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5e0570]
lea eax, [eax + eax*2]
mov eax, dword [eax*4 + 0x5dc364]
add eax, edi
jmp 0x564637
nop word [eax + eax]
cmp edi, 0xff
ja 0x5646a6
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 8]
movzx eax, byte [eax + edi]
cmp edi, eax
je 0x5646a6
nop dword [eax + eax]
cmp dword [esi + 8], eax
jne 0x5646a6
mov ebx, dword [esp + 0x48]
add esi, 0xc
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x18], esi
test bl, 8
jne 0x564679
or ebx, 8
mov dword [esp + 0xac], 1
mov dword [esp + 0x48], ebx
mov dword [esp + 0x8c], 1
nop dword [eax]
test ecx, ecx
je 0x566595
cmp edi, 0xffff
ja 0x56655f
movzx edi, di
mov ebx, 1
mov eax, edi
movzx eax, ax
jmp 0x5665a0
mov ecx, dword ds:[esp + 0x14]
add esi, 4
add ecx, 6
mov dword [esp + 0x18], esi
xor edi, edi
mov dword [esp + 0x50], 0
xorps xmm0, xmm0
mov dword [esp + 0x28], 0
mov ebx, dword [esi]
mov dword [esp + 0x60], 0
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], edi
mov dword [esp + 0x24], esi
movups xmmword [esp + 0x10c], xmm0
movups xmmword [esp + 0x11c], xmm0
cmp ebx, 0x800d0000
je 0x564830
mov eax, esi
mov ecx, esi
mov edx, esi
cmp ebx, 0x801c0000
je 0x564d9a
nop
cmp ebx, 0x801d0000
je 0x564d9a
cmp ebx, 0x80050000
jne 0x56475e
lea esi, [eax + 4]
mov dword [esp + 0x18], esi
mov ebx, dword [esi]
nop dword [eax]
cmp ebx, 0xd
je 0x56474e
cmp ebx, 0xa
jne 0x564d0e
mov edx, dword [esp + 0x20]
or dword [edx + 0x70], 0x800
jmp 0x564d12
nop
cmp ebx, 0x80000000
jb 0x56473d
mov eax, ebx
and eax, 0xffff0000
cmp eax, 0x80180000
jne 0x565c4c
inc dword [esp + 0x58]
movzx esi, bx
lea eax, [esi - 6]
cmp eax, 0xf
ja case.0x564789.12
jmp dword [eax*4 + 0x5676d4]
mov ebx, dword [esp + 0x84]
lea esi, [esp + 0x10c]
xor ecx, ecx
lea eax, [ebx + 0x5f]
lea edx, [ebx + 0x40]
cmp esi, eax
ja 0x5648f0
lea eax, [esp + 0x12b]
cmp eax, edx
jb 0x5648f0
nop dword [eax]
mov al, byte [ebx + ecx + 0x40]
or byte [esp + ecx + 0x10c], al
inc ecx
cmp ecx, 0x20
jl 0x5647c0
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
mov ecx, dword ds:[esp + 0x78]
cmp eax, ecx
jbe 0x564804
mov edx, dword [esp + 0x44]
mov dword [esp + 0x60], 1
test edx, edx
je 0x564804
sub eax, ecx
sar eax, 1
add dword [edx], eax
mov eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x38], eax
add edi, 4
mov eax, edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x24], edi
mov esi, edi
mov ecx, eax
mov edx, eax
mov ebx, dword [edi]
mov edi, dword [esp + 0x58]
cmp ebx, 0x800d0000
jne 0x564712
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x30]
mov edx, 0xfffffffe
mov ebx, dword [esp + 0x28]
cmp eax, 0xffffffff
cmove eax, edx
cmp dword [esp + 0x60], 0
mov edx, dword [esp + 0x70]
mov dword [esp + 0x30], eax
mov dword [esp + 0x38], edx
mov edx, eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x78], eax
je 0x565125
mov eax, dword [esp + 0x48]
and eax, 0x20000
jne 0x56488e
nop dword [eax + eax]
cmp dword [esp + 0x5c], eax
jne 0x56488e
test ebx, ebx
jne 0x565125
cmp dword [esp + 0x50], 0
jne 0x5648b3
test ebx, ebx
je 0x565038
cmp dword [esp + 0x2c], 0x800e0000
je 0x565038
test eax, eax
jne 0x565038
cmp dword [esp + 0x80], 0
mov eax, 2
mov word [ecx], ax
lea eax, [ecx + 2]
lea ecx, [eax + 4]
je 0x565032
mov ebx, 0xdfff
mov dword [eax], 0xdbff0100
mov word [ecx], bx
lea ecx, [eax + 6]
jmp 0x565038
movups xmm0, xmmword [esp + ecx + 0x10c]
movups xmm1, xmmword [edx + ecx]
orps xmm1, xmm0
movups xmmword [esp + ecx + 0x10c], xmm1
add ecx, 0x10
cmp ecx, 0x20
jl 0x5648f0
jmp case.0x564789.12
mov ebx, dword [esp + 0x84]
lea esi, [esp + 0x10c]
xor ecx, ecx
mov dword [esp + 0x28], 1
lea eax, [ebx + 0x5f]
lea edx, [ebx + 0x40]
cmp esi, eax
ja 0x564970
lea eax, ds:[esp + 0x12b]
cmp eax, edx
jb 0x564970
nop dword [eax]
nop dword [eax + eax]
mov al, byte ds:[ebx + ecx + 0x40]
not al
or byte [esp + ecx + 0x10c], al
inc ecx
cmp ecx, 0x20
jl 0x564950
jmp case.0x564789.12
movups xmm1, xmmword [edx + ecx]
movups xmm0, xmmword [esp + ecx + 0x10c]
andnps xmm1, xmm2
orps xmm1, xmm0
movups xmmword [esp + ecx + 0x10c], xmm1
add ecx, 0x10
cmp ecx, 0x20
jl 0x564970
jmp case.0x564789.12
mov ebx, dword [esp + 0x84]
lea esi, [esp + 0x10c]
xor ecx, ecx
lea eax, [ebx + 0xbf]
lea edx, [ebx + 0xa0]
cmp esi, eax
ja 0x5649f0
lea eax, ds:[esp + 0x12b]
cmp eax, edx
jb 0x5649f0
nop dword [eax]
nop dword [eax + eax]
mov al, byte ds:[ebx + ecx + 0xa0]
or byte [esp + ecx + 0x10c], al
inc ecx
cmp ecx, 0x20
jl 0x5649d0
jmp case.0x564789.12
movups xmm0, xmmword [esp + ecx + 0x10c]
movups xmm1, xmmword [edx + ecx]
orps xmm1, xmm0
movups xmmword [esp + ecx + 0x10c], xmm1
add ecx, 0x10
cmp ecx, 0x20
jl 0x5649f0
jmp case.0x564789.12
mov ebx, dword [esp + 0x84]
lea esi, [esp + 0x10c]
xor ecx, ecx
mov dword [esp + 0x28], 1
lea eax, [ebx + 0xbf]
lea edx, [ebx + 0xa0]
cmp esi, eax
ja 0x564a70
lea eax, [esp + 0x12b]
cmp eax, edx
jb 0x564a70
nop word [eax + eax]
mov al, byte [ebx + ecx + 0xa0]
not al
or byte [esp + ecx + 0x10c], al
inc ecx
cmp ecx, 0x20
jl 0x564a50
jmp case.0x564789.12
movups xmm1, xmmword [edx + ecx]
movups xmm0, xmmword [esp + ecx + 0x10c]
andnps xmm1, xmm2
orps xmm1, xmm0
movups xmmword [esp + ecx + 0x10c], xmm1
add ecx, 0x10
cmp ecx, 0x20
jl 0x564a70
jmp case.0x564789.12
mov ebx, dword [esp + 0x84]
lea ecx, [esp + 0x10c]
xor edx, edx
lea eax, [ebx + 0x1f]
cmp ecx, eax
ja 0x564ad9
lea eax, [esp + 0x12b]
cmp eax, ebx
jb 0x564ad9
mov esi, ebx
mov eax, ecx
sub esi, eax
nop
lea ecx, [esp + 0x10c]
add ecx, edx
inc edx
mov al, byte [ecx + esi]
or byte [ecx], al
cmp edx, 0x20
jl 0x564ac0
jmp case.0x564789.12
mov ecx, ebx
lea eax, [esp + 0x10c]
sub ecx, eax
nop dword [eax]
nop dword [eax + eax]
movups xmm0, xmmword [esp + edx + 0x10c]
lea eax, [eax + 0x10]
movups xmm1, xmmword [eax + ecx - 0x10]
orps xmm1, xmm0
movups xmmword [esp + edx + 0x10c], xmm1
add edx, 0x10
cmp edx, 0x20
jl 0x564af0
jmp case.0x564789.12
mov ebx, dword [esp + 0x84]
lea ecx, [esp + 0x10c]
xor edx, edx
mov dword [esp + 0x28], 1
lea eax, [ebx + 0x1f]
cmp ecx, eax
ja 0x564b6b
lea eax, ds:[esp + 0x12b]
cmp eax, ebx
jb 0x564b6b
mov esi, ebx
mov eax, ecx
sub esi, eax
nop word [eax + eax]
lea ecx, [esp + 0x10c]
add ecx, edx
inc edx
mov al, byte [ecx + esi]
not al
or byte [ecx], al
cmp edx, 0x20
jl 0x564b50
jmp case.0x564789.12
mov ecx, ebx
lea eax, [esp + 0x10c]
sub ecx, eax
nop word [eax + eax]
movups xmm1, xmmword [eax + ecx]
lea eax, [eax + 0x10]
movups xmm0, xmmword [esp + edx + 0x10c]
andnps xmm1, xmm2
orps xmm1, xmm0
movups xmmword [esp + edx + 0x10c], xmm1
add edx, 0x10
cmp edx, 0x20
jl 0x564b80
jmp case.0x564789.12
mov ebx, dword [esp + 0x20]
mov edi, 0x5f9120
mov edx, dword ds:[edi]
lea ecx, [edi + 4]
xor esi, esi
lea eax, [edx + 1]
cmp dword [ecx], eax
jne 0x564bcd
lea ecx, [ecx + 4]
inc eax
inc esi
cmp dword [ecx], eax
je 0x564bc4
mov dword [ebx + 0x98], edx
lea ecx, [esp + 0x10c]
mov eax, dword [edi + esi*4]
lea edx, [esp + 0x38]
mov dword [ebx + 0x9c], eax
push dword [edi + esi*4]
mov eax, dword [esp + 0x4c]
push dword [edi]
and eax, 0xfffffff7
push ebx
push eax
call fcn.005636c0
lea edi, [edi + esi*4]
add edi, 4
cmp dword [edi], 0xffffffff
jb 0x564bb3
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x1c], eax
jmp 0x5647d9
push 0x5f9120
push dword [esp + 0x24]
mov eax, dword [esp + 0x50]
lea edx, [esp + 0x40]
and eax, 0xfffffff7
lea ecx, [esp + 0x114]
push eax
call fcn.00563b20
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x1c], eax
jmp 0x5647d9
mov ebx, dword [esp + 0x20]
mov edi, str._n_v_f_r
mov edx, dword [edi]
lea eax, [edi + 4]
xor esi, esi
lea ecx, [edx + 1]
cmp dword [eax], ecx
jne 0x564c69
nop
lea eax, [eax + 4]
inc ecx
inc esi
cmp dword [eax], ecx
je 0x564c60
mov dword [ebx + 0x98], edx
lea ecx, [esp + 0x10c]
mov eax, dword [edi + esi*4]
lea edx, [esp + 0x38]
mov dword [ebx + 0x9c], eax
push dword [edi + esi*4]
mov eax, dword [esp + 0x4c]
push dword [edi]
and eax, 0xfffffff7
push ebx
push eax
call fcn.005636c0
lea edi, ds:[edi + esi*4]
add edi, 4
cmp dword [edi], 0xffffffff
jb 0x564c51
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x1c], eax
jmp 0x5647d9
push str._n_v_f_r
jmp 0x564c1b
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x1c]
add eax, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], 1
mov eax, dword [eax]
mov edx, eax
movzx ecx, ax
xor eax, eax
shr edx, 0x10
cmp esi, 0x10
setne al
add eax, 3
mov word [ebx], ax
lea eax, [ebx + 4]
mov word [ebx + 2], dx
mov word [eax], cx
add eax, 2
mov edi, dword [esp + 0x18]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x38], eax
jmp 0x5647d9
mov edx, dword [esp + 0x20]
mov eax, dword [esi + 4]
cmp eax, 0x801f0000
je 0x564d30
nop dword [eax]
cmp eax, 0x801e0000
je 0x564d30
mov dword [edx + 0x9c], ebx
push ebx
jmp 0x564d68
lea ecx, ds:[esi + 8]
mov dword [esp + 0x18], ecx
mov eax, dword [ecx]
cmp eax, 0x80050000
jne 0x564d50
lea eax, [ecx + 4]
mov dword [esp + 0x18], eax
mov eax, dword [eax]
cmp eax, 0xd
je 0x564d5a
cmp eax, 0xa
jne 0x564d61
or dword [edx + 0x70], 0x800
mov dword [edx + 0x9c], eax
push eax
push ebx
push edx
push dword [esp + 0x54]
mov dword [edx + 0x98], ebx
lea ecx, [esp + 0x11c]
lea edx, [esp + 0x48]
call fcn.005636c0
add dword [esp + 0x58], eax
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x1c], eax
jmp 0x5647d9
xor eax, eax
mov edi, edx
cmp ebx, 0x801d0000
sete al
cmp ebx, 0x801c0000
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x48]
cmove edi, ecx
add edi, 4
mov dword [esp + 0x18], edi
mov ecx, dword [edi]
test al, 8
je 0x564dcd
xor edx, edx
cmp ecx, 2
cmovle ecx, edx
test eax, 0x20000
je 0x564dfe
mov eax, ecx
sub eax, 8
je 0x564eaa
nop
sub eax, 1
je 0x564eaa
sub eax, 1
je 0x564eaa
mov eax, dword [esp + 0x50]
or eax, dword [esp + 0x28]
mov dword [esp + 0x50], eax
lea ecx, [ecx + ecx*2]
mov eax, dword [ecx*4 + 0x5db4a0]
add eax, dword [esp + 0x84]
mov esi, dword [ecx*4 + 0x5db4a8]
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x13c], xmm0
movups xmm0, xmmword [eax + 0x10]
mov eax, dword [ecx*4 + 0x5db4a4]
movups xmmword [esp + 0x14c], xmm0
test eax, eax
js 0x564f87
mov ecx, dword ds:[esp + 0x84]
lea edx, [ecx + eax]
add eax, 0x1f
add eax, ecx
mov dword [esp + 0x34], edx
xor ecx, ecx
lea edx, [esp + 0x13c]
test esi, esi
js 0x564f25
cmp edx, eax
mov edx, dword [esp + 0x34]
ja 0x564f00
lea eax, ds:[esp + 0x15b]
cmp eax, edx
jb 0x564f00
nop dword [eax + eax]
mov al, byte ds:[edx + ecx]
or byte [esp + ecx + 0x13c], al
inc ecx
cmp ecx, 0x20
jl 0x564e90
jmp 0x564f8d
mov edx, dword ds:[esp + 0x1c]
xor eax, eax
cmp ebx, 0x801d0000
sete al
add eax, 3
mov word [edx], ax
cmp ecx, 8
jne 0x564eca
lea eax, [ecx + 6]
jmp 0x564ed5
xor eax, eax
cmp ecx, 9
setne al
add eax, 0xf
lea edi, [edx + 6]
mov word [edx + 2], ax
xor ecx, ecx
mov dword [esp + 0x1c], edi
mov word [edx + 4], cx
mov dword [esp + 0x38], edi
mov edi, dword [esp + 0x18]
mov dword [esp + 0x5c], 1
jmp 0x5647d5
movups xmm0, xmmword [esp + ecx + 0x13c]
movups xmm1, xmmword [edx + ecx]
orps xmm1, xmm0
movups xmmword [esp + ecx + 0x13c], xmm1
add ecx, 0x10
cmp ecx, 0x20
jl 0x564f00
nop
jmp 0x564f8d
cmp edx, eax
mov edx, dword [esp + 0x34]
ja 0x564f60
lea eax, [esp + 0x15b]
cmp eax, edx
jb 0x564f60
nop dword [eax + eax]
mov al, byte [edx + ecx]
not al
and byte [esp + ecx + 0x13c], al
inc ecx
cmp ecx, 0x20
jl 0x564f40
jmp 0x564f8b
movups xmm1, xmmword ds:[edx + ecx]
movups xmm0, xmmword [esp + ecx + 0x13c]
andnps xmm1, xmm2
andps xmm1, xmm0
movups xmmword [esp + ecx + 0x13c], xmm1
add ecx, 0x10
cmp ecx, 0x20
jl 0x564f60
jmp 0x564f8b
test esi, esi
jns 0x564f8d
neg esi
cmp esi, 1
jne 0x564f9c
and byte [esp + 0x13d], 0xc3
jmp 0x564fad
nop dword [eax]
cmp esi, 2
jne 0x564fad
and byte [esp + 0x147], 0x7f
xor eax, eax
cmp ebx, 0x801d0000
jne 0x565000
nop word [eax + eax]
movups xmm1, xmmword [esp + eax + 0x13c]
movups xmm0, xmmword [esp + eax + 0x10c]
andnps xmm1, xmm2
orps xmm1, xmm0
movups xmmword [esp + eax + 0x10c], xmm1
add eax, 0x10
cmp eax, 0x20
jl 0x564fc0
mov dword [esp + 0x58], 1
jmp 0x5647d5
movups xmm0, xmmword ds:[esp + eax + 0x10c]
movups xmm1, xmmword [esp + eax + 0x13c]
orps xmm1, xmm0
movups xmmword [esp + eax + 0x10c], xmm1
add eax, 0x10
cmp eax, 0x20
jl 0x565000
mov dword [esp + 0x58], 1
jmp 0x5647d5
mov dword [eax], 0xffff0100
mov ebx, dword [esp + 0x14]
lea esi, [ecx + 2]
xor eax, eax
mov word [ecx], ax
mov eax, 0x70
mov word [ebx], ax
xor eax, eax
cmp dword [esp + 0x2c], 0x800e0000
sete al
cmp dword [esp + 0x5c], 0
movzx eax, ax
mov word [ebx + 4], ax
mov ecx, eax
je 0x565073
or eax, 4
mov word [ebx + 4], ax
movzx ecx, ax
test edi, edi
jle 0x5650f4
or ecx, 2
mov eax, esi
mov word [ebx + 4], cx
add ebx, 6
sub eax, ebx
and eax, 0xfffffffe
push eax
lea eax, [ebx + 0x20]
push ebx
push eax
call fcn.00586310
add esp, 0xc
cmp dword [esp + 0x2c], 0x800e0000
jne 0x5650d0
cmp dword [esp + 0x5c], 0
jne 0x5650d0
movaps xmm2, xmmword [esp + 0xf0]
xor eax, eax
movups xmm0, xmmword [esp + eax + 0x10c]
andnps xmm0, xmm2
movups xmmword [esp + eax + 0x10c], xmm0
add eax, 0x10
cmp eax, 0x20
jl 0x5650b5
movups xmm0, xmmword [esp + 0x10c]
mov edx, dword [esp + 0x1c]
lea ecx, [esi + 0x20]
mov dword [esp + 0x14], ecx
movups xmmword [ebx], xmm0
movups xmm0, xmmword [esp + 0x11c]
movups xmmword [ebx + 0x10], xmm0
jmp 0x5650fa
mov ecx, esi
mov dword [esp + 0x14], esi
mov ebx, dword ds:[esp + 0x3c]
mov eax, ecx
movaps xmm2, xmmword [esp + 0xf0]
sub eax, ebx
sar eax, 1
mov word [ebx + 2], ax
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ecx, dword [esp + 0x14]
xor eax, eax
cmp dword [esp + 0x6c], ebx
setne al
add eax, 0x6e
cmp dword [esp + 0x44], 0
mov word [ecx], ax
jne 0x565183
cmp dword [esp + 0x2c], 0x800e0000
jne 0x56516b
xor eax, eax
nop dword [eax + eax]
movups xmm0, xmmword [esp + eax + 0x10c]
andnps xmm0, xmm2
movups xmmword [esp + eax + 0x10c], xmm0
add eax, 0x10
cmp eax, 0x20
jl 0x565150
movups xmm0, xmmword [esp + 0x10c]
movups xmmword [ecx + 2], xmm0
movups xmm0, xmmword [esp + 0x11c]
movups xmmword [ecx + 0x12], xmm0
mov esi, dword ds:[esp + 0x18]
add ecx, 0x22
movaps xmm2, xmmword [esp + 0xf0]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
movaps xmm2, xmmword [esp + 0xf0]
cmp ebx, 0x800c0000
mov ebx, dword [esp + 0x30]
mov ecx, 0xd
mov eax, 0xa2
mov dword [esp + 0x4c], 1
cmove eax, ecx
mov ecx, dword [esp + 0x14]
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
cmp ebx, 0xffffffff
mov eax, 0xfffffffe
mov dword [esp + 0x14], ecx
cmove ebx, eax
mov eax, dword [esp + 0x70]
mov edx, ebx
mov dword [esp + 0x30], ebx
add esi, 4
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov edx, dword ds:[esp + 0x20]
mov eax, 0x8a
mov dword [esp + 0x28], eax
mov ebx, 1
mov edi, eax
jmp 0x565c6f
cmp eax, 0x80170000
ja 0x565647
je 0x5655db
nop word [eax + eax]
cmp eax, 0x80130000
ja 0x565308
je 0x5653c5
cmp eax, 0x80100000
je 0x5652db
nop dword [eax]
cmp eax, 0x80110000
je 0x5653c5
cmp eax, 0x80120000
jne 0x565c4c
mov edi, dword [esp + 0x20]
add esi, 4
mov eax, 0x8a
mov dword [esp + 0x18], esi
mov dword [esp + 0x28], eax
mov ecx, dword [esi]
lea eax, [esi + 4]
mov dword [esp + 0x18], eax
mov eax, dword [eax]
cmp eax, dword [edi + 0x74]
ja 0x56759c
nop
cmp eax, dword [edi + 0x88]
jbe 0x5652ae
mov dword [edi + 0x88], eax
mov edx, dword [esp + 0x14]
sub ecx, 2
mov edi, dword [esp + 0x28]
mov dword [esp + 0x74], ecx
mov ecx, 0x90
mov word [edx + 4], cx
mov ecx, 2
mov word [edx + 6], ax
mov edx, dword [esp + 0x20]
lea ebx, [ecx - 1]
jmp 0x565c6f
mov edx, dword [esp + 0x20]
add esi, 4
mov dword [esp + 0x18], esi
mov ecx, 0xa7
mov edi, 0x8a
mov eax, dword [esi]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x14]
mov word [eax + 4], cx
mov ecx, 1
jmp 0x565c6f
cmp eax, 0x80140000
je 0x5653c5
cmp eax, 0x80150000
je 0x565365
nop
cmp eax, 0x80160000
jne 0x565c4c
mov eax, dword ds:[esp + 0x48]
mov ecx, dword [esp + 0x14]
and eax, 0x400
movaps xmm2, xmmword [esp + 0xf0]
neg eax
sbb eax, eax
neg eax
add eax, 0x19
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov eax, 0x8a
mov dword [esp + 0x28], eax
cmp dword [esi + 4], ecx
jbe 0x565389
cmp dword [esi + 8], 0xa
jb 0x565382
jne 0x56539a
cmp dword ds:[esi + 0xc], 0x28
ja 0x56539a
mov eax, 0x95
jmp 0x56539f
cmp dword [esi + 8], 0xa
jne 0x56539a
cmp dword [esi + 0xc], 0x28
mov eax, 0x95
je 0x56539f
mov eax, 0x94
mov ecx, dword ds:[esp + 0x14]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
movzx eax, ax
mov word [ecx + 4], ax
mov ecx, 1
add dword [esp + 0x18], 0xc
mov ebx, ecx
jmp 0x565c6f
mov edi, dword [esp + 0x20]
add esi, 4
mov eax, 0x8a
mov dword [esp + 0x18], esi
mov dword [esp + 0x28], eax
lea eax, [esi + 4]
mov ecx, dword [esi]
mov ebx, dword [edi + 0x64]
mov dword [esp + 0x18], eax
mov edx, dword [eax]
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x74], edx
mov dword [esp + 0x60], ecx
lea esi, [eax + edx*2]
xor edx, edx
xor eax, eax
mov dword [esp + 0x88], esi
mov dword [esp + 0x50], edx
cmp ax, word [edi + 0x58]
jae 0x5654d2
nop
movzx eax, word [ebx + 8]
cmp ecx, eax
jne 0x5654b8
mov edx, dword [ebx]
mov edi, ecx
test ecx, ecx
je 0x565442
movzx ecx, word [esi]
lea esi, [esi + 2]
movzx eax, word [edx]
lea edx, [edx + 2]
cmp cx, ax
jne 0x5654a5
sub edi, 1
jne 0x565424
mov ecx, dword [esp + 0x60]
cmp word [ebx + 0xa], 0
mov edi, dword [esp + 0x20]
jne 0x5654ce
mov edx, dword ds:[esp + 0x14]
xor eax, eax
cmp dword [esp + 0x2c], 0x80130000
sete al
lea eax, [eax*2 + 0x90]
mov word [edx + 4], ax
mov ax, word [ebx + 4]
mov word [edx + 6], ax
mov eax, dword [ebx + 4]
cmp eax, dword [edi + 0x88]
jbe 0x56548e
mov dword [edi + 0x88], eax
mov edi, dword ds:[esp + 0x28]
mov ecx, 2
mov edx, dword [esp + 0x20]
lea ebx, [ecx - 1]
jmp 0x565c6f
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x50]
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x20]
movzx eax, word [edi + 0x58]
inc edx
add ebx, 0xc
mov dword [esp + 0x50], edx
cmp edx, eax
jb 0x565410
jmp 0x5654d2
mov edx, dword [esp + 0x50]
movzx eax, word [edi + 0x58]
cmp edx, eax
jb 0x56555b
xor esi, esi
cmp dword [esp + 0x2c], 0x80140000
jne 0x5675ca
lea edx, [esi + 1]
cmp ecx, edx
jbe 0x565522
mov edi, dword [esp + 0x60]
mov ebx, dword [esp + 0x88]
movzx ecx, word [ebx + edx*2]
lea esi, [esi + esi*4]
lea esi, [esi - 0x18]
lea esi, [ecx + esi*2]
cmp esi, 0xffff
ja 0x5675ae
inc edx
cmp edx, edi
jb 0x565500
mov edi, dword [esp + 0x20]
cmp esi, dword [edi + 0x74]
ja 0x5675ca
mov edi, dword [esp + 0x28]
test esi, esi
mov edx, dword [esp + 0x20]
mov eax, 0xffff
cmove esi, eax
mov ecx, 0x92
mov eax, dword [esp + 0x14]
mov word [eax + 4], cx
mov ecx, 2
mov word [eax + 6], si
lea ebx, [ecx - 1]
jmp 0x565c6f
mov edi, dword [esp + 0x14]
xor eax, eax
cmp dword [esp + 0x2c], 0x80130000
sete al
xor esi, esi
mov dword [esp + 0x50], esi
lea eax, [eax*2 + 0x90]
mov word [edi + 4], ax
xor eax, eax
mov dword [esp + 0x34], eax
cmp dword [esp + 0x44], eax
jne 0x5655ba
push dword [esp + 0x20]
mov edx, dword [esp + 0x6c]
lea eax, [esp + 0x38]
push edx
push eax
lea eax, [esp + 0x5c]
mov edx, ecx
mov ecx, dword [esp + 0x94]
push eax
call fcn.00563c00
test eax, eax
je 0x5676b8
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x50]
inc word [edi + 4]
mov ecx, 3
mov edx, dword [esp + 0x20]
mov word [edi + 6], si
mov word [edi + 8], ax
mov edi, dword [esp + 0x28]
lea ebx, [ecx - 2]
jmp 0x565c6f
mov ebx, dword [esp + 0x30]
mov eax, 0xfffffffe
mov ecx, dword [esp + 0x14]
cmp ebx, 0xffffffff
mov edi, dword [esp + 0x64]
movaps xmm2, xmmword [esp + 0xf0]
cmove ebx, eax
mov eax, dword [esp + 0x70]
mov edx, ebx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x48]
shr eax, 5
and eax, 1
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x54]
or eax, 0xc
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x4c], 1
mov dword [esp + 0x1c], edx
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], ebx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
cmp eax, 0x801b0000
ja 0x565865
je 0x56580d
cmp eax, 0x80180000
je 0x56568f
nop
cmp eax, 0x80190000
je 0x5675e5
cmp eax, 0x801a0000
jne 0x565c4c
mov edx, dword [esp + 0x20]
mov eax, 0x86
mov dword [esp + 0x28], eax
mov ebx, 1
mov edi, eax
jmp 0x565c6f
mov ebx, dword [esp + 0x30]
lea eax, [edi - 6]
cmp eax, 0x10
ja 0x5656b2
cmp ebx, 0xffffffff
mov dword [esp + 0x4c], 1
mov eax, 0xfffffffe
cmove ebx, eax
mov dword [esp + 0x30], ebx
mov eax, dword [esp + 0x70]
mov edx, ebx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x78], eax
cmp edi, 0xf
je 0x56577d
nop dword [eax]
cmp edi, 0x10
je 0x56577d
mov ebx, dword [esp + 0x20]
cmp word [ebx + 0x5e], cx
jbe 0x565715
cmp edi, 3
jne 0x565715
mov eax, dword ds:[ebx]
test byte [eax + 0x24], 0x40
jne 0x565744
mov eax, dword [esp + 0x68]
mov dword [eax], 0xc7
jmp 0x5676b8
cmp edi, 0xe
jne 0x565723
or dword [ebx + 0x70], sym.SystemInformer.exe_Ordinal_1329
jmp 0x565744
cmp edi, 5
je 0x565732
cmp edi, 4
je 0x565732
cmp edi, 1
jne 0x565744
cmp dword [ebx + 0xac], ecx
jne 0x565744
mov dword [ebx + 0xac], 1
cmp dword [esp + 0x80], ecx
jne 0x565757
cmp edi, 0xe
jne 0x565757
mov edi, 0xd
mov ecx, dword [esp + 0x14]
movaps xmm2, xmmword [esp + 0xf0]
mov word [ecx], di
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
add esi, 4
mov dword [esp + 0x18], esi
mov eax, dword [esi]
mov ecx, eax
shr ecx, 0x10
movzx edx, ax
cmp edi, 0x10
jne 0x5657c6
test ecx, ecx
jne 0x5657c6
mov ecx, dword [esp + 0x14]
mov eax, 0xd
mov edx, dword [esp + 0x1c]
movaps xmm2, xmmword [esp + 0xf0]
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ebx, dword [esp + 0x14]
xor eax, eax
movaps xmm2, xmmword [esp + 0xf0]
cmp edi, 0x10
sete al
add eax, 0xf
mov word [ebx], ax
add ebx, 2
mov dword [esp + 0x14], ebx
mov word [ebx], cx
mov ecx, ebx
add ecx, 2
mov word [ecx], dx
add ecx, 2
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov eax, dword ds:[esp + 0xc8]
add esi, 4
mov ecx, dword [esp + 0x14]
movaps xmm2, xmmword [esp + 0xf0]
mov dword [esp + 0x18], esi
mov ebx, dword [esi]
mov dword [eax], ebx
mov eax, ebx
shr eax, 0x12
and eax, 1
mov dword [esp + 0x48], ebx
mov dword [esp + 0xc0], eax
xor eax, 1
mov dword [esp + 0xc4], eax
mov eax, ebx
shr eax, 3
and eax, 1
add esi, 4
mov dword [esp + 0x8c], eax
mov dword [esp + 0x18], esi
jmp 0x563f30
cmp eax, 0x80200000
je 0x565ab1
cmp eax, 0x80210000
jne 0x565c4c
mov edx, dword [esp + 0x20]
add esi, 4
mov dword [esp + 0x18], esi
xor edi, edi
mov dword [esp + 0x60], ecx
mov dword [esp + 0x34], edi
mov ecx, dword [esi]
lea eax, [esi + 4]
mov ebx, dword [edx + 0x64]
mov dword [esp + 0x18], eax
mov esi, dword [eax]
mov eax, dword [edx + 0x1c]
xor edx, edx
mov dword [esp + 0x74], esi
mov dword [esp + 0x50], ecx
mov dword [esp + 0x5c], edx
lea eax, [eax + esi*2]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x20]
movzx eax, word [eax + 0x58]
mov esi, eax
mov dword [esp + 0x6c], esi
cmp dx, ax
jae 0x56764d
nop dword [eax]
movzx eax, word [ebx + 8]
cmp ecx, eax
jne 0x565962
mov edx, dword [ebx]
mov edi, ecx
mov esi, dword [esp + 0x28]
test ecx, ecx
je 0x56590e
nop dword [eax + eax]
movzx ecx, word ds:[esi]
lea esi, [esi + 2]
movzx eax, word [edx]
lea edx, [edx + 2]
cmp cx, ax
jne 0x56595a
sub edi, 1
jne 0x5658f0
cmp dword [esp + 0x2c], 0x80210000
movzx esi, word [ebx + 0xa]
mov edi, dword [ebx + 4]
mov dword [esp + 0x60], esi
mov dword [esp + 0x34], edi
je 0x565a14
mov edx, 1
mov ecx, edi
mov eax, edx
shl eax, cl
cmp edi, 0x20
mov ecx, dword [esp + 0x20]
cmovae eax, edx
or dword [ecx + 0x8c], eax
cmp edi, dword [ecx + 0x88]
jbe 0x565954
mov dword [ecx + 0x88], edi
mov ecx, dword [esp + 0x50]
jmp 0x565966
mov edi, dword [esp + 0x34]
mov ecx, dword [esp + 0x50]
mov esi, dword [esp + 0x60]
mov eax, dword [esp + 0x6c]
add ebx, 0xc
inc dword [esp + 0x5c]
movzx eax, ax
cmp dword [esp + 0x5c], eax
jb 0x5658d0
nop
test edi, edi
je 0x56764d
test esi, esi
jne 0x565a1d
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
cmp dword [esp + 0x30], 0xffffffff
jne 0x5659b0
mov edx, 0xfffffffe
mov dword [esp + 0x30], 0xfffffffe
mov dword [esp + 0x1c], edx
test byte [esp + 0x48], 8
mov eax, 0
mov ecx, dword [esp + 0x14]
setne al
add eax, 0x71
mov word [ecx], ax
mov eax, 1
mov word [ecx + 2], di
add ecx, 4
mov dword [esp + 0x14], ecx
cmp edi, 0x20
jae 0x5659e4
mov ecx, edi
shl eax, cl
mov ecx, dword [esp + 0x14]
or dword [ebx + 0x8c], eax
cmp edi, dword [ebx + 0x88]
jbe 0x566759
mov esi, dword [esp + 0x18]
movaps xmm2, xmmword [esp + 0xf0]
add esi, 4
mov dword [ebx + 0x88], edi
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ebx, dword [esp + 0x20]
jmp 0x565acb
xor esi, esi
xor edi, edi
mov dword [esp + 0x34], esi
mov dword [esp + 0x50], edi
cmp dword [esp + 0x44], esi
jne 0x565a5c
push dword [esp + 0x20]
lea eax, [esp + 0x38]
mov edx, ecx
push dword [esp + 0x6c]
mov ecx, dword [esp + 0x30]
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.00563c00
test eax, eax
je 0x5676b8
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x50]
mov ebx, dword [esp + 0x30]
mov eax, 0xfffffffe
mov ecx, dword [esp + 0x14]
cmp ebx, 0xffffffff
mov edx, dword [esp + 0x1c]
movaps xmm2, xmmword [esp + 0xf0]
cmove ebx, eax
test byte [esp + 0x48], 8
mov eax, 0
mov dword [esp + 0x30], ebx
setne al
add eax, 0x73
mov word [ecx], ax
mov word [ecx + 4], si
mov word [ecx + 2], di
add ecx, 6
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ebx, dword [esp + 0x20]
add esi, 4
mov dword [esp + 0x18], esi
mov eax, dword [esi]
mov dword [esp + 0x74], eax
cmp edi, dword [ebx + 0x74]
ja 0x56410c
mov ecx, dword [esp + 0x14]
mov eax, 0x75
movaps xmm2, xmmword [esp + 0xf0]
mov dword [esp + 0x90], 0
mov word [ecx], ax
mov eax, 0xfffffffe
mov word [ecx + 2], di
add ecx, 4
mov esi, dword [esp + 0x18]
mov dword [ebx + 0xb8], 1
mov ebx, dword [esp + 0x30]
cmp ebx, 0xffffffff
mov dword [esp + 0x14], ecx
cmove ebx, eax
mov eax, dword [esp + 0x70]
mov edx, ebx
mov dword [esp + 0x30], ebx
add esi, 4
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov eax, 0x85
mov dword [esp + 0x28], eax
mov edx, dword [esp + 0x20]
mov ebx, 1
mov edi, eax
jmp 0x565c6f
mov edi, dword [esp + 0x2c]
cmp edi, 0x80310000
ja 0x566208
je 0x5661f1
nop
cmp edi, 0x802a0000
ja 0x566146
je 0x566092
cmp edi, 0x80260000
ja 0x565c25
nop
je 0x565c19
cmp edi, 0x80230000
je 0x565c0f
cmp edi, 0x80240000
je 0x565bb6
nop word [eax + eax]
cmp edi, 0x80250000
jne 0x565c4c
mov edi, 0x80
jmp 0x565c67
cmp dword ds:[esi + 4], 0x80190000
jne 0x565c05
mov eax, dword [esi + 8]
cmp eax, 0x80340000
jb 0x565bd7
cmp eax, 0x803f0000
jbe 0x565c05
mov ecx, dword [esp + 0x14]
mov eax, 0xa2
movaps xmm2, xmmword [esp + 0xf0]
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
add esi, 4
mov dword [esp + 0x18], esi
jmp 0x563f30
mov edi, 0x7f
jmp 0x565c67
mov edi, 0x7e
jmp 0x565c67
mov edi, 0x81
jmp 0x565c67
cmp edi, 0x80270000
je 0x565c62
cmp edi, 0x80280000
je 0x565c5b
mov ebx, dword ds:[esp + 0x2c]
cmp ebx, 0x80290000
je 0x566270
mov eax, dword [esp + 0x68]
mov dword [eax], 0xbd
jmp 0x5676b8
mov edi, 0x83
jmp 0x565c67
mov edi, 0x82
mov edx, dword [esp + 0x20]
inc word [edx + 0x5e]
mov eax, dword [esp + 0x14]
inc word [edx + 0x5c]
mov dword [esp + 0x6c], 0
mov word [eax], di
add dword [esp + 0x18], 4
cmp dword [esp + 0x44], 0
mov dword [esp + 0x40], eax
lea eax, [esp + 0x94]
cmove eax, dword [esp + 0x6c]
push eax
mov esi, dword [edx + 0xa8]
lea eax, [esp + 0x9c]
push edx
push dword [esp + 0xd4]
lea edx, [esp + 0x4c]
mov dword [esp + 0xa0], 0
push eax
lea eax, [esp + 0xb0]
push eax
lea eax, [esp + 0xb0]
push eax
lea eax, [esp + 0xd0]
push eax
push ecx
push dword [esp + 0x88]
mov ecx, dword [esp + 0x6c]
lea eax, [esp + 0x3c]
push eax
call fcn.00567820
mov dword [esp + 0x88], eax
test eax, eax
je 0x5676b8
mov ecx, dword [esp + 0x20]
mov edx, 0xffff
add word [ecx + 0x5c], dx
test ebx, ebx
je 0x565d33
cmp edi, 0x8a
je 0x565d4c
mov edx, dword [esp + 0x4c]
test eax, eax
mov eax, 1
cmovg edx, eax
mov dword [esp + 0x4c], edx
mov edx, 0xffff
lea eax, [edi - 0x7e]
cmp eax, 5
ja 0x565d3f
add word [ecx + 0x5e], dx
nop
cmp edi, 0x8a
jne 0x565e76
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x565e88
mov ecx, dword [esp + 0x14]
xor edx, edx
nop
movzx eax, word [ecx + 2]
inc edx
cmp word [ecx + eax*2], 0x79
lea ecx, [ecx + eax*2]
jne 0x565d60
mov ecx, dword ds:[esp + 0x14]
mov eax, 0xa7
cmp word [ecx + 4], ax
jne 0x565dc5
cmp edx, 1
jg 0x567667
mov edx, dword ds:[esp + 0x1c]
mov eax, 0x94
movaps xmm2, xmmword [esp + 0xf0]
mov word [ecx + 4], ax
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x40]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
cmp edx, 2
jg 0x567685
cmp edx, 1
jne 0x565e26
mov edx, dword [esp + 0x40]
mov eax, 0xfffffffe
mov ebx, dword [esp + 0x30]
mov ecx, eax
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x64]
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x38], edx
mov edx, ebx
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x90], 0
jmp 0x565f4d
cmp dword [esp + 0x88], 0
jle 0x565ee6
mov eax, dword [esp + 0x40]
mov ebx, dword [esp + 0x30]
mov edx, ebx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x4c], 1
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x90], 0
jmp 0x565f3f
mov eax, dword ds:[esp + 0x44]
test eax, eax
je 0x565ee6
mov edi, dword ds:[esp + 0x44]
mov ecx, 0x7fffffeb
mov esi, dword [esp + 0x94]
mov edx, dword [edi]
sub ecx, edx
lea eax, [esi - 4]
cmp ecx, eax
jb 0x56769f
mov ecx, dword [esp + 0x14]
lea eax, [esi - 4]
movaps xmm2, xmmword [esp + 0xf0]
add eax, edx
mov edx, 2
mov dword [edi], eax
mov word [ecx + 6], dx
mov edx, dword [esp + 0x1c]
mov dword [ecx + 2], 0x790002
add ecx, 8
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x14], ecx
cmp edi, 0xa7
je 0x566739
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x38], edx
mov edx, ebx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x90], 0
mov dword [esp + 0x4c], eax
mov dword [esp + 0x14], ecx
cmp edi, 0x84
jb 0x566005
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x98]
cmp ebx, 0xffffffff
jne 0x565fa7
cmp ecx, ebx
je 0x565fa7
nop
cmp ecx, 0xfffffffe
jae 0x565f91
mov edx, dword [esp + 0xb8]
mov dword [esp + 0x70], edx
mov edx, 0xfffffffe
mov dword [esp + 0x30], ecx
mov dword [esp + 0x90], 1
mov dword [esp + 0x1c], edx
jmp 0x565fce
mov edx, 0xfffffffe
mov dword [esp + 0x30], 0xfffffffe
mov dword [esp + 0x1c], edx
jmp 0x565fce
cmp ecx, 0xfffffffe
jae 0x565fce
cmp eax, 0xfffffffe
jb 0x565fd7
mov eax, dword [esp + 0xb8]
mov dword [esp + 0xa0], eax
mov eax, ecx
or eax, esi
mov dword [esp + 0x98], eax
cmp eax, 0xfffffffe
jae 0x566755
mov esi, dword ds:[esp + 0x18]
mov edi, dword [esp + 0xa0]
add esi, 4
mov ecx, dword [esp + 0x14]
movaps xmm2, xmmword [esp + 0xf0]
mov dword [esp + 0x64], edi
mov dword [esp + 0x54], eax
mov dword [esp + 0x18], esi
jmp 0x563f30
cmp edi, 0x7e
je 0x56602c
mov dword ds:[esp + 0x4c], eax
mov dword [esp + 0x14], ecx
cmp edi, 0x82
jne 0x566759
mov edx, dword ds:[esp + 0x98]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x14], ecx
cmp edx, 0xfffffffe
jae 0x566739
cmp dword [esp + 0x9c], 0xfffffffe
mov dword [esp + 0x4c], eax
mov dword [esp + 0x14], ecx
jae 0x566739
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0xa0]
add esi, 4
movaps xmm2, xmmword [esp + 0xf0]
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x64], edi
mov dword [esp + 0x4c], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ebx, dword [esp + 0x20]
mov dword [esp + 0xbc], 1
mov ecx, dword [ebx + 0x60]
mov dword [ebx + 0xb0], 1
test ecx, ecx
je 0x5660fc
mov edx, dword [esp + 0x14]
nop word [eax + eax]
mov ax, word [ecx + 6]
cmp ax, word [ebx + 0x5e]
jb 0x5660f4
mov eax, dword [esp + 0x44]
test eax, eax
je 0x5660db
add dword [eax], 3
jmp 0x5660ee
mov eax, 0xa5
mov word [edx], ax
mov ax, word [ecx + 4]
mov word [edx + 2], ax
add edx, 4
mov ecx, dword [ecx]
test ecx, ecx
jne 0x5660c0
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x1c]
mov ecx, dword ds:[esp + 0x14]
xor ax, ax
cmp ax, word [ebx + 0x5e]
sbb eax, eax
neg eax
add eax, 0xa3
mov word [ecx], ax
add ecx, 2
cmp dword [esp + 0x30], 0xffffffff
mov dword [esp + 0x14], ecx
jne 0x566759
mov esi, dword [esp + 0x18]
movaps xmm2, xmmword [esp + 0xf0]
add esi, 4
mov dword [esp + 0x30], 0xfffffffe
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ebx, dword [esp + 0x2c]
cmp ebx, 0x802e0000
ja 0x566191
je 0x5661ac
nop dword [eax]
cmp ebx, 0x802b0000
je 0x5661ba
cmp ebx, 0x802c0000
je 0x5661ba
nop dword [eax + eax]
cmp ebx, 0x802d0000
jne 0x565c4c
jmp 0x566270
cmp ebx, 0x802f0000
je 0x5661f5
nop dword [eax]
cmp ebx, 0x80300000
jne 0x565c4c
mov eax, dword [esp + 0x20]
mov dword [eax + 0xb4], 1
mov ecx, dword [esp + 0x14]
lea eax, [ebx + 0x7fd70000]
movaps xmm2, xmmword [esp + 0xf0]
shr eax, 0x10
mov ax, word [eax*4 + 0x5db200]
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
mov dword [eax + 0xb4], 1
jmp 0x566270
mov ebx, dword [esp + 0x2c]
cmp ebx, 0x80390000
ja 0x56643b
je 0x56642c
nop
cmp ebx, 0x80350000
ja 0x566405
je 0x566258
cmp ebx, 0x80320000
je 0x5663ce
nop
cmp ebx, 0x80330000
je 0x566265
cmp ebx, 0x80340000
jne 0x565c4c
xor ecx, ecx
mov ebx, 0x10000
jmp 0x566783
mov eax, dword [esp + 0x20]
or dword [eax + 0x70], 0x1000
mov ecx, dword [esp + 0x14]
lea eax, [ebx + 0x7fd70000]
shr eax, 0x10
xor esi, esi
mov dword [esp + 0x34], esi
mov ax, word [eax*4 + 0x5db200]
mov word [ecx], ax
add ecx, 2
mov edx, dword [esp + 0x18]
add edx, 4
mov dword [esp + 0x18], edx
mov ebx, dword [edx]
mov dword [esp + 0x40], ecx
add ecx, 2
mov dword [esp + 0x14], ecx
test ebx, ebx
jle 0x56639f
cmp dword [esp + 0x80], esi
je 0x56636e
nop
add edx, 4
mov dword [esp + 0x18], edx
mov ecx, dword [edx]
cmp ecx, 0xffff
ja 0x5662e7
mov word [esp + 0x12c], cx
mov edi, 1
jmp 0x566318
sub ecx, 0x10000
mov edi, 2
mov eax, ecx
and ecx, 0x3ff
shr eax, 0xa
or eax, 0xd800
or ecx, 0xdc00
mov word [esp + 0x12c], ax
mov word [esp + 0x12e], cx
mov eax, dword ds:[esp + 0x44]
test eax, eax
je 0x56632f
add dword [eax], edi
mov ecx, dword [esp + 0x14]
jmp 0x566360
lea esi, ds:[edi + edi]
push esi
lea eax, [esp + 0x130]
push eax
push dword [esp + 0x1c]
call fcn.00586310
mov ecx, dword [esp + 0x20]
add esp, 0xc
mov edx, dword [esp + 0x18]
add ecx, esi
mov esi, dword [esp + 0x34]
add esi, edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x34], esi
sub ebx, 1
jne 0x5662c0
jmp 0x56639f
mov edi, dword [esp + 0x44]
add edx, 4
mov dword [esp + 0x18], edx
mov ax, word [edx]
mov word [esp + 0x12c], ax
test edi, edi
je 0x56638f
inc dword [edi]
jmp 0x56639a
mov word [ecx], ax
add ecx, 2
mov edx, dword [esp + 0x18]
inc esi
sub ebx, 1
jne 0x566372
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x1c]
movaps xmm2, xmmword [esp + 0xf0]
mov word [eax], si
xor eax, eax
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
mov eax, dword ds:[esp + 0x20]
mov ecx, dword [esp + 0x14]
movaps xmm2, xmmword [esp + 0xf0]
or dword [eax + 0x70], 0x1000
mov eax, 0x9e
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
add esi, 4
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
jmp 0x563f30
cmp ebx, 0x80360000
je 0x566258
cmp ebx, 0x80370000
je 0x56642c
nop dword [eax]
cmp ebx, 0x80380000
jne 0x565c4c
mov ecx, 1
mov ebx, 0x10000
jmp 0x566783
nop dword [eax + eax]
cmp ebx, 0x803d0000
ja 0x566485
je 0x566771
cmp ebx, 0x803a0000
je 0x566478
nop
cmp ebx, 0x803b0000
je 0x566478
cmp ebx, 0x803c0000
jne 0x565c4c
xor ecx, ecx
lea ebx, [ecx + 1]
jmp 0x566783
cmp ebx, 0x803e0000
je 0x566771
cmp ebx, 0x803f0000
je 0x566771
nop dword [eax]
cmp ebx, 0x80000000
jae 0x565c4c
mov edi, dword [esi]
mov ecx, dword ds:[esp + 0x80]
mov dword [esp + 0x4c], 1
test ecx, ecx
jne 0x5664d5
cmp dword [esp + 0xa4], ecx
je 0x566595
test byte ds:[esp + 0x48], 8
je 0x564679
mov eax, edi
mov ebx, 0x80
cdq
idiv ebx
movzx eax, word [eax*2 + 0x5f3170]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x5e0570]
lea eax, [eax + eax*2]
mov al, byte [eax*4 + 0x5dc363]
test al, al
je 0x564679
mov ecx, dword [esp + 0x14]
movzx eax, al
mov dword [ecx], 0xa0010
mov word [ecx + 4], ax
add ecx, 6
cmp dword [esp + 0x30], 0xffffffff
mov dword [esp + 0x14], ecx
jne 0x566739
mov esi, dword [esp + 0x18]
mov edx, 0xfffffffe
movaps xmm2, xmmword [esp + 0xf0]
add esi, 4
mov dword [esp + 0x1c], edx
mov dword [esp + 0x30], edx
mov dword [esp + 0x18], esi
jmp 0x563f30
lea eax, [edi - 0x10000]
mov ebx, 2
mov ecx, eax
and eax, 0x3ff
shr ecx, 0xa
or ecx, 0xd800
or eax, 0xdc00
mov word [esp + 0x12e], ax
mov di, cx
movzx eax, cx
movzx eax, ax
jmp 0x5665a0
movzx eax, di
mov ebx, 1
mov di, ax
test byte ds:[esp + 0x48], 8
lea esi, [ebx + ebx]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x34], eax
movzx eax, ax
mov dword [esp + 0x6c], eax
mov eax, 0
setne al
mov word [esp + 0x12c], di
add eax, 0x1d
mov word [ecx], ax
add ecx, 2
push esi
lea eax, [esp + 0x130]
mov dword [esp + 0x18], ecx
push eax
push ecx
call fcn.00586310
mov ecx, dword [esp + 0x20]
add esp, 0xc
add ecx, esi
cmp word [esp + 0x34], 0xd
mov dword [esp + 0x14], ecx
je 0x56660a
cmp word [esp + 0x6c], 0xa
jne 0x56661a
mov eax, dword [esp + 0x20]
or dword [eax + 0x70], 0x800
jmp 0x56661e
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x30]
cmp esi, 0xffffffff
jne 0x5666a5
mov esi, dword [esp + 0x64]
mov edx, 0xfffffffe
mov dword [esp + 0x7c], esi
mov esi, dword [esp + 0x54]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x78], esi
cmp ebx, 1
je 0x566668
cmp dword [esp + 0x8c], 0
je 0x566668
mov dword [esp + 0x54], edx
mov dword [esp + 0x30], edx
jmp 0x5666f3
movzx esi, di
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x8c]
mov dword [esp + 0x30], esi
cmp ebx, 1
je 0x5666f3
movzx esi, word ds:[ecx - 2]
mov eax, dword [eax + 0xa8]
mov dword [esp + 0x64], esi
mov dword [esp + 0x54], eax
jmp 0x5666f3
mov edx, dword [esp + 0x70]
mov dword [esp + 0x38], edx
mov edx, esi
mov esi, dword [esp + 0x64]
mov dword [esp + 0x7c], esi
mov esi, dword [esp + 0x54]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x78], esi
cmp ebx, 1
je 0x5666da
cmp dword [esp + 0x8c], 0
jne 0x5666f3
movzx ebx, word [ecx - 2]
mov dword [esp + 0x64], ebx
mov ebx, dword [eax + 0xa8]
or ebx, dword [esp + 0x8c]
mov dword [esp + 0x54], ebx
cmp dword ds:[esp + 0xac], 0
je 0x566759
mov esi, dword [esp + 0x18]
and dword [esp + 0x48], 0xfffffff7
add esi, 4
movaps xmm2, xmmword [esp + 0xf0]
mov dword [esp + 0x8c], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0x18], esi
jmp 0x563f30
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
add esi, 4
movaps xmm2, xmmword [esp + 0xf0]
mov dword [esp + 0x18], esi
jmp 0x563f30
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
movaps xmm2, xmmword [esp + 0xf0]
add esi, 4
mov dword [esp + 0x18], esi
jmp 0x563f30
add esi, 4
mov dword [esp + 0x18], esi
mov ecx, dword [esi]
add esi, 4
mov dword [esp + 0x18], esi
mov ebx, dword [esi]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], ecx
test eax, eax
je 0x5667b5
test ecx, ecx
je 0x5667b5
xor edx, edx
mov eax, 2
cmp ecx, ebx
mov edi, 1
cmove eax, edx
mov dword [esp + 0x50], eax
jmp 0x5667ed
xor edi, edi
mov eax, 2
cmp ecx, ebx
mov dword [esp + 0x4c], edi
cmove eax, edi
mov dword [esp + 0x50], eax
test ecx, ecx
jne 0x5667f1
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x30], edx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x4c], edi
mov edx, eax
mov eax, dword [esp + 0x2c]
cmp eax, 0x803b0000
ja 0x566845
je 0x566872
cmp eax, 0x80380000
ja 0x56683b
nop dword [eax]
je 0x566872
cmp eax, 0x80350000
je 0x566872
cmp eax, 0x80360000
jmp 0x566860
cmp eax, 0x80390000
jmp 0x566860
cmp eax, 0x803c0000
je 0x566887
cmp eax, 0x803e0000
je 0x566872
cmp eax, 0x803f0000
je 0x566887
mov eax, dword [esp + 0xc0]
jmp 0x56688e
mov dword [esp + 0x2c], 0
mov dword [esp + 0x5c], 1
jmp 0x56689a
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x5c], 0
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x40], eax
movzx eax, word [eax]
movzx ecx, ax
add ecx, 0xffffffe3
mov dword [esp + 0x58], eax
cmp ecx, 0x85
ja case.0x5668c2.33
movzx eax, byte [ecx + 0x56772c]
jmp dword [eax*4 + 0x567714]
mov edx, dword [esp + 0x24]
cmp ebx, 1
jne 0x5668de
cmp edx, ebx
je case.0x5668c2.162
cmp dword [esp + 0x80], 0
mov edi, dword [ecx*4 + 0x5db3d0]
je 0x566945
mov eax, dword [esp + 0x14]
mov ecx, 0xfc00
mov ax, word [eax - 2]
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x566945
mov eax, dword [esp + 0x14]
lea ecx, [eax - 4]
sub eax, ecx
sar eax, 1
mov dword [esp + 0x60], eax
add eax, eax
push eax
push ecx
lea eax, [esp + 0x134]
push eax
call fcn.00586310
add esp, 0xc
mov dword [esp + 0x28], 0xffffffff
or edx, 0xffffffff
jmp 0x567215
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x60], 1
movzx eax, word [eax - 2]
mov word [esp + 0x12c], ax
cmp cx, 0x1e
ja 0x5671f4
cmp edx, 1
jbe 0x5671f4
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0xa8]
mov dword [esp + 0x54], eax
cmp cx, 0x1e
jne 0x5671f4
or eax, 1
mov dword [esp + 0x28], 0xffffffff
mov dword [esp + 0x54], eax
or edx, 0xffffffff
jmp 0x567215
test ebx, ebx
jne 0x5669bc
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x14], ecx
jmp 0x56755b
mov ecx, dword [esp + 0x24]
cmp ebx, 1
jne 0x5669d1
cmp ecx, ebx
je case.0x5668c2.162
test ecx, ecx
jne 0x566a45
nop dword [eax]
cmp ebx, 0x10000
jne 0x566a0a
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x2c]
add eax, 0x62
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
jmp 0x567177
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], edx
cmp ebx, 1
jne 0x566a78
mov ecx, dword ds:[esp + 0x14]
mov eax, dword [esp + 0x2c]
add eax, 0x66
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], edx
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
jmp 0x567177
cmp ecx, 1
jne 0x566a78
cmp ebx, 0x10000
jne 0x566a78
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x2c]
add eax, 0x64
mov word [ecx], ax
add ecx, 2
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
jmp 0x567177
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x2c]
add eax, 0x68
mov word [edx], ax
add edx, 2
xor eax, eax
mov dword [esp + 0x14], edx
mov word [edx], cx
mov ecx, edx
add ecx, 2
cmp ebx, 0x10000
cmove ebx, eax
mov word [ecx], bx
add ecx, 2
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
jmp 0x567177
mov edx, dword ds:[esp + 0x24]
cmp ebx, 1
jne 0x566ae5
cmp edx, ebx
jne 0x566ae5
cmp dword [esp + 0x5c], 0
je case.0x5668c2.162
nop dword [eax]
jmp 0x566b16
test edx, edx
je 0x566bc2
cmp edx, 1
jne 0x566b0c
nop word [eax + eax]
cmp ebx, 0x10000
je 0x566bc2
mov ecx, edx
cmp edx, ebx
jne 0x566b19
lea ecx, [edx - 1]
cmp dword ds:[esp + 0x44], 0
je 0x566b76
mov eax, ecx
lea edi, [ecx + ecx]
mov ecx, 2
imul ecx
test edx, edx
jg 0x56769f
nop word [eax + eax]
jl 0x566b51
cmp eax, 0x7fffffff
ja 0x56769f
mov edx, dword ds:[esp + 0x44]
mov eax, 0x7fffffeb
mov ecx, dword [edx]
sub eax, ecx
cmp eax, edi
jb 0x56769f
lea eax, [edi + ecx]
mov dword [edx], eax
mov edx, dword [esp + 0x24]
jmp 0x566ba0
test ecx, ecx
jle 0x566ba0
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x3c]
mov eax, dword [eax]
mov dword [esi], eax
mov eax, esi
add esi, 4
sub ecx, 1
jne 0x566b86
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x3c], eax
cmp edx, ebx
je 0x567173
cmp ebx, 0x10000
je 0x566bba
sub ebx, edx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], 0
mov edx, dword [esp + 0x3c]
mov ecx, 0x86
mov dword [esp + 0x88], 0xffffffff
mov eax, dword [edx]
mov dword [edx + 4], eax
mov eax, dword [esp + 0x14]
mov dword [edx], 0x40086
add eax, 8
mov dword [edx + 8], 0x40079
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], eax
mov dword [esp + 0x94], 6
jmp 0x566c13
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x3c]
sub eax, edx
xor edi, edi
mov edx, dword [esp + 0x24]
sar eax, 1
mov dword [esp + 0x34], eax
mov dword [esp + 0x6c], edi
mov dword [esp + 0x60], edi
cmp ebx, 1
jne 0x566c4a
cmp edx, ebx
jne 0x566c4a
nop word [eax + eax]
cmp dword [esp + 0x5c], edi
je case.0x5668c2.162
cmp cx, word [esp + 0xd0]
jne 0x566c87
mov ecx, dword [esp + 0x3c]
mov edx, 0x94
cmp word [ecx + 4], dx
mov edx, dword [esp + 0x24]
jne 0x566cb3
movzx eax, word [ecx + 2]
cmp word [ecx + eax*2], 0x78
jne case.0x5668c2.162
mov eax, dword [esp + 0x34]
jmp 0x566cb3
cmp cx, word [esp + 0xd4]
mov ecx, dword [esp + 0x3c]
jae 0x566cb3
nop dword [eax]
cmp ebx, 0x10000
jne 0x566cb3
lea ebx, [edx + 1]
mov dword [esp + 0x28], ebx
test edx, edx
jne 0x566d96
nop dword [eax + eax]
cmp ebx, 1
jbe 0x566d18
cmp ebx, 0x10000
je 0x566d18
add eax, eax
push eax
push ecx
lea eax, [ecx + 6]
push eax
call fcn.00586310
mov ecx, dword [esp + 0x48]
add esp, 0xc
mov eax, dword [esp + 0x2c]
add dword [esp + 0x14], 6
add eax, 0x96
dec ebx
mov word [ecx], ax
lea edi, [ecx + 4]
lea eax, [ecx + 6]
mov dword [ecx + 2], 0x86
mov esi, dword [esp + 0x18]
mov dword [esp + 0x3c], eax
jmp 0x566e6f
add eax, eax
lea esi, [ecx + 2]
push eax
push ecx
push esi
call fcn.00586310
mov ecx, dword [esp + 0x20]
add esp, 0xc
add ecx, 2
mov dword [esp + 0x14], ecx
test ebx, ebx
jne 0x566d54
mov eax, dword [esp + 0x3c]
mov edx, 0xa6
mov dword [esp + 0x3c], esi
mov word [eax], dx
mov esi, dword [esp + 0x18]
jmp 0x56755b
mov edx, dword ds:[esp + 0x3c]
xor edi, edi
mov eax, dword [esp + 0x2c]
add eax, 0x96
mov dword [esp + 0x60], edx
mov dword [esp + 0x3c], esi
mov word [edx], ax
mov edx, dword [esp + 0x14]
mov dword [esp + 0x14], edx
cmp ebx, 0x10000
je 0x566fe9
mov esi, dword [esp + 0x18]
dec ebx
jmp 0x566e6f
cmp edx, 1
jbe 0x566e61
nop
cmp dword [esp + 0x44], edi
je 0x566e05
lea eax, [edx - 1]
mov edx, eax
imul edx, dword [esp + 0x94]
mov dword [esp + 0x6c], edx
mul dword [esp + 0x94]
test edx, edx
jg 0x56769f
jl 0x566ddb
cmp eax, 0x7fffffff
ja 0x56769f
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x6c]
mov ecx, dword [eax]
mov eax, 0x7fffffeb
sub eax, ecx
cmp eax, edx
jb 0x56769f
lea eax, ds:[edx + ecx]
mov ecx, dword [esp + 0x44]
mov dword [ecx], eax
jmp 0x566e5d
cmp dword [esp + 0x90], edi
je 0x566e2d
cmp dword [esp + 0x54], 0xfffffffe
jb 0x566e2d
mov ebx, dword [esp + 0x70]
mov dword [esp + 0x64], ebx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x54], ebx
mov edi, dword [esp + 0x14]
lea esi, [eax + eax]
lea ebx, [edx - 1]
push esi
push ecx
push edi
call fcn.00586310
mov ecx, dword [esp + 0x48]
add esp, 0xc
add edi, esi
sub ebx, 1
jne 0x566e37
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x6c]
mov edx, dword [esp + 0x24]
cmp ebx, 0x10000
je 0x566fe5
sub ebx, edx
cmp ebx, 0x10000
je 0x566fe5
cmp dword [esp + 0x44], 0
je 0x566f31
test ebx, ebx
je 0x566f31
mov eax, dword [esp + 0x94]
add eax, 5
mov ecx, eax
imul ecx, ebx
mul ebx
sub ecx, 4
test edx, edx
jg 0x56769f
jl 0x566ebb
cmp eax, 0x7fffffff
ja 0x56769f
mov ebx, dword [esp + 0x44]
mov eax, 0x7fffffeb
mov edx, dword [ebx]
sub eax, edx
cmp eax, ecx
jb 0x56769f
lea eax, [ecx + edx]
mov dword [ebx], eax
mov ecx, dword [esp + 0x14]
nop dword [eax]
test edi, edi
je 0x567177
mov ebx, 0x79
nop dword [eax]
mov edx, ecx
mov esi, ecx
sub edx, edi
sar edx, 1
inc edx
lea eax, [edx + edx]
sub esi, eax
movzx eax, word [esi + 2]
mov word [ecx], bx
test eax, eax
je 0x566fc5
neg eax
lea edi, [edi + eax*2]
movzx eax, dx
mov word [ecx + 2], ax
add ecx, 4
mov dword [esp + 0x14], ecx
mov word [esi + 2], ax
test edi, edi
jne 0x566ef0
mov esi, dword [esp + 0x18]
jmp 0x567177
cmp ebx, 1
jb 0x566ed5
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x34]
add eax, 0x96
mov ecx, dword [esp + 0x14]
add esi, esi
mov dword [esp + 0x6c], eax
nop dword [eax]
mov word ds:[ecx], ax
add ecx, 2
mov dword [esp + 0x14], ecx
cmp ebx, 1
je 0x566f9a
mov eax, 0x86
mov word [ecx], ax
test edi, edi
jne 0x566f85
xor eax, eax
jmp 0x566f8c
lea eax, [ecx + 2]
sub eax, edi
sar eax, 1
lea edi, [ecx + 2]
mov word [ecx + 2], ax
add ecx, 4
mov dword [esp + 0x14], ecx
push esi
push dword [esp + 0x40]
push ecx
call fcn.00586310
mov ecx, dword [esp + 0x20]
dec ebx
mov eax, dword [esp + 0x78]
add ecx, esi
add esp, 0xc
mov dword [esp + 0x14], ecx
cmp ebx, 1
jae 0x566f50
mov esi, dword [esp + 0x18]
jmp 0x566ed9
movzx eax, dx
mov word [ecx + 2], ax
add ecx, 4
mov word [esi + 2], ax
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
jmp 0x567177
mov edx, dword [esp + 0x14]
movzx eax, word [edx - 2]
lea esi, [edx - 4]
add eax, eax
mov edi, esi
sub edi, eax
mov edx, 0x84
movzx ecx, word [edi]
mov eax, ecx
cmp cx, dx
jne 0x567025
mov ebx, dword [esp + 0x5c]
test ebx, ebx
je 0x567165
mov eax, 0x86
mov word [edi], ax
mov edx, eax
jmp 0x567039
mov ecx, 0x85
mov edx, eax
cmp ax, cx
je 0x567165
mov ebx, dword [esp + 0x5c]
cmp dword [esp + 0x44], 0
movzx ecx, dx
jne 0x567090
cmp dword [esp + 0x88], 0
movzx eax, dx
jge 0x567061
lea eax, [edx + 5]
mov word [edi], ax
movzx eax, ax
mov edx, 0x8a
movzx ecx, ax
cmp ax, dx
jne 0x567095
movzx eax, word [edi + 2]
mov ecx, edx
cmp word [edi + eax*2], 0x78
lea eax, [edx + 5]
je 0x56709a
mov word [edi], ax
mov ecx, eax
jmp 0x56709a
mov edx, 0x8a
mov eax, 0x8f
nop word [eax + eax]
test ebx, ebx
je 0x567153
cmp cx, dx
je 0x5670d1
cmp cx, ax
je 0x5670d1
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x14]
mov word [edi], ax
mov eax, 0x7c
mov word [esi], ax
jmp 0x567121
mov esi, dword [esp + 0x14]
sub esi, edi
sar esi, 1
lea eax, [esi + esi]
push eax
lea eax, [edi + 4]
push edi
push eax
call fcn.00586310
mov ecx, dword [esp + 0x20]
mov edx, 0x8a
add esp, 0xc
mov eax, 0x8c
cmp word [edi], dx
mov edx, 0x87
cmove eax, edx
mov word [edi], ax
mov eax, 0x7c
mov word [ecx + 4], ax
lea eax, [esi + 2]
mov word [ecx + 6], ax
add ecx, 8
mov dword [esp + 0x14], ecx
mov word [edi + 2], ax
mov eax, dword [esp + 0x60]
test eax, eax
je 0x567135
mov edx, 0x98
mov word [eax], dx
cmp dword ds:[esp + 0x24], 2
mov esi, dword [esp + 0x18]
jae 0x567186
mov dword [esp + 0x5c], 0
jmp 0x567177
mov eax, dword ds:[esp + 0x2c]
add eax, 0x7a
mov word [esi], ax
jmp 0x567553
mov eax, dword [esp + 0x2c]
add eax, 0x7a
mov word [esi], ax
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
cmp dword ds:[esp + 0x5c], 0
je 0x56755b
mov eax, dword [esp + 0x40]
movzx ecx, word [eax]
lea eax, [ecx - 0x1d]
cmp eax, 0x53
ja case.0x5671a0.33
movzx eax, byte [eax + 0x5677c8]
jmp dword [eax*4 + 0x5677b4]
mov ecx, dword [esp + 0x58]
cmp cx, 0x17
jae 0x5676ae
cmp ebx, 1
jne 0x5671ca
nop
cmp dword [esp + 0x24], ebx
je case.0x5668c2.162
mov dword ds:[esp + 0x60], 0
mov edi, 0x34
cmp cx, 0x10
je 0x567205
cmp cx, 0xf
je 0x567205
mov dword ds:[esp + 0x28], 0xffffffff
or edx, 0xffffffff
jmp 0x567215
mov eax, dword [esp + 0x3c]
movzx edx, word [eax + 2]
movzx eax, word [eax + 4]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x34], edx
mov dword [esp + 0x14], eax
test ebx, ebx
je case.0x5668c2.162
add dword [esp + 0x2c], edi
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x5672c8
mov esi, dword [esp + 0x3c]
mov eax, dword [esp + 0x2c]
movzx eax, ax
lea ecx, [esi + 2]
mov dword [esp + 0x14], ecx
cmp ebx, 0x10000
jne 0x56729d
add eax, 0x21
mov word [esi], ax
mov edi, dword [esp + 0x58]
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0x60]
test eax, eax
je 0x56740c
lea esi, [eax + eax]
push esi
lea eax, [esp + 0x130]
push eax
push ecx
call fcn.00586310
mov ecx, dword [esp + 0x20]
add esp, 0xc
add ecx, esi
mov dword [esp + 0x14], ecx
mov esi, dword [esp + 0x18]
jmp 0x567177
mov edi, dword [esp + 0x58]
cmp ebx, 1
jne 0x5672b6
add eax, 0x25
mov dword [esp + 0x14], ecx
mov word [esi], ax
jmp 0x567265
add eax, 0x27
mov word [esi], ax
mov word [ecx], bx
add ecx, 2
mov dword [esp + 0x14], ecx
jmp 0x567265
cmp eax, 1
jne 0x567328
cmp ebx, 0x10000
jne 0x5672f7
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x2c]
add eax, 0x23
mov word [ecx], ax
add ecx, 2
mov dword [esp + 0x14], ecx
jmp 0x567261
mov dword ds:[esp + 0x14], ecx
cmp ebx, 1
je case.0x5668c2.162
mov eax, dword [esp + 0x2c]
add eax, 0x27
mov word [ecx], ax
add ecx, 2
lea eax, [ebx - 1]
mov word [ecx], ax
add ecx, 2
mov dword [esp + 0x14], ecx
jmp 0x567261
mov ecx, dword [esp + 0x3c]
lea eax, [edi + 0x29]
mov word [ecx], ax
mov eax, dword [esp + 0x24]
mov word [ecx + 2], ax
add ecx, 4
mov dword [esp + 0x14], ecx
cmp ebx, eax
je 0x567261
mov eax, dword [esp + 0x60]
test eax, eax
je 0x5673a9
lea esi, [eax + eax]
push esi
lea eax, [esp + 0x130]
push eax
push ecx
call fcn.00586310
mov ecx, dword [esp + 0x20]
add esp, 0xc
mov edx, dword [esp + 0x34]
add ecx, esi
mov edi, dword [esp + 0x58]
mov dword [esp + 0x14], ecx
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
add ecx, 2
movzx eax, ax
cmp ebx, 0x10000
jne 0x5673cf
mov ebx, dword [esp + 0x14]
add eax, 0x21
mov dword [esp + 0x14], ecx
mov word [ebx], ax
jmp 0x567269
mov edi, dword [esp + 0x58]
mov word [ecx], di
add ecx, 2
mov dword [esp + 0x14], ecx
test edx, edx
js 0x56737c
mov esi, dword [esp + 0x28]
mov word [ecx], dx
mov word [ecx + 2], si
add ecx, 4
mov dword [esp + 0x14], ecx
jmp 0x567380
sub ebx, dword [esp + 0x24]
cmp ebx, 1
jne 0x5673ef
mov ebx, dword [esp + 0x14]
add eax, 0x25
mov dword [esp + 0x14], ecx
mov word [ebx], ax
jmp 0x567269
mov edx, dword [esp + 0x14]
add eax, 0x27
mov word [edx], ax
mov edx, dword [esp + 0x34]
mov word [ecx], bx
add ecx, 2
mov dword [esp + 0x14], ecx
jmp 0x567269
mov word [ecx], di
add ecx, 2
mov dword [esp + 0x14], ecx
test edx, edx
js 0x567294
mov word [ecx], dx
mov word [ecx + 2], si
add ecx, 4
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], ecx
jmp 0x567177
mov eax, dword ds:[esp + 0x40]
movzx eax, word [eax + 4]
cmp eax, 0x10
je 0x567465
cmp eax, 0xf
je 0x567465
movzx ecx, byte [ecx + 0x5f7690]
xor eax, eax
add ecx, eax
jmp 0x5674cd
movzx ecx, byte [ecx + 0x5f7690]
mov eax, 2
add ecx, eax
jmp 0x5674cd
cmp dword [esp + 0x80], 0
mov eax, dword [esp + 0x40]
movzx ecx, byte [ecx + 0x5f7690]
lea ecx, [eax + ecx*2]
mov dword [esp + 0x40], ecx
je case.0x5671a0.33
mov ax, word [ecx - 2]
mov edx, 0xfc00
and ax, dx
mov edx, 0xd800
cmp ax, dx
jne case.0x5671a0.33
lea eax, [ecx + 2]
jmp 0x5674d4
add dword ds:[esp + 0x40], 0x22
jmp case.0x5671a0.33
mov ecx, dword [esp + 0x40]
movzx ecx, word [ecx + 2]
mov eax, dword [esp + 0x40]
lea eax, [eax + ecx*2]
mov dword [esp + 0x40], eax
mov ebx, dword [esp + 0x14]
mov edi, ebx
mov ecx, dword [esp + 0x40]
sub edi, ecx
sar edi, 1
test edi, edi
jle case.0x5668c2.162
movzx eax, word [ecx]
cmp eax, 0x76
jae 0x567513
mov al, byte [eax + 0x5db420]
test al, al
je 0x567513
movzx eax, al
mov word [ecx], ax
jmp 0x567553
mov ecx, dword [esp + 0x40]
lea eax, [edi + edi]
push eax
push ecx
lea eax, [ecx + 4]
push eax
call fcn.00586310
mov eax, dword [esp + 0x4c]
mov ecx, 0x84
add esp, 0xc
mov word [eax], cx
mov eax, 0x79
lea ecx, [edi + 2]
mov word [ebx + 4], ax
mov word [ebx + 6], cx
add ebx, 8
mov eax, dword [esp + 0x40]
mov dword [esp + 0x14], ebx
mov word [eax + 2], cx
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword ds:[esp + 0x20]
mov eax, dword [esp + 0x50]
movaps xmm2, xmmword [esp + 0xf0]
or dword [edx + 0xa8], eax
add esi, 4
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x18], esi
jmp 0x563f30
mov edx, dword [esp + 0x68]
cmp ebx, ecx
sbb eax, eax
and eax, 0x22
add eax, 0x98
mov dword [edx], eax
jmp 0x5676b8
mov eax, dword [esp + 0x68]
mov dword [eax], 0x73
mov dword [edi + 0x54], ecx
jmp 0x5676b8
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x20]
mov dword [eax], 0xa1
mov eax, dword [esp + 0x74]
add eax, edx
mov dword [ecx + 0x54], eax
jmp 0x5676b8
mov eax, dword ds:[esp + 0x68]
mov dword [eax], 0x73
mov eax, dword [esp + 0x74]
mov dword [edi + 0x54], eax
jmp 0x5676b8
mov ecx, dword [esp + 0xd8]
mov eax, dword [esp + 0x70]
mov dword [ecx], eax
mov ecx, dword [esp + 0xdc]
mov eax, dword [esp + 0x30]
mov dword [ecx], eax
mov ecx, dword [esp + 0xe0]
mov eax, dword [esp + 0x64]
mov dword [ecx], eax
mov ecx, dword [esp + 0xe4]
mov eax, dword [esp + 0x54]
mov dword [ecx], eax
mov ecx, dword [esp + 0xe8]
mov eax, dword [esp + 0x14]
mov dword [ecx], eax
mov eax, dword [esp + 0xec]
mov dword [eax], esi
mov eax, dword [esp + 0xa8]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x150]
xor ecx, esp
call fcn.00583f7f
mov esp, ebp
pop ebp
ret 0x24
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x74]
mov dword [eax], 0x73
mov eax, dword [esp + 0x20]
mov dword [eax + 0x54], ecx
jmp 0x5676b8
mov eax, dword ds:[esp + 0x20]
mov ecx, dword [esp + 0x74]
mov dword [eax + 0x54], ecx
mov eax, dword [esp + 0x68]
mov dword [eax], 0x9a
jmp 0x5676b8
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x74]
mov dword [eax + 0x54], ecx
mov eax, dword [esp + 0x68]
mov dword [eax], 0x7f
jmp 0x5676b8
mov eax, dword [esp + 0x68]
mov dword [eax], 0x78
jmp 0x5676b8
mov eax, dword [esp + 0x68]
mov dword [eax], 0x6e
mov ecx, dword [esp + 0x15c]
xor eax, eax
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00583f7f
mov esp, ebp
pop ebp
ret 0x24