Function at 0x4f3330
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
and esp, 0xfffffff0
push ebp
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x3c8
mov eax, dword [ebx + 8]
mov dword [ebp - 0x1f4], esi
mov dword [ebp - 0x218], eax
mov esi, dword [eax + 4]
xor eax, eax
mov dword [ebp - 0x1f0], edi
xor ecx, ecx
movzx edi, byte [esi + 0x16d]
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x3a8], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], esi
mov ecx, edi
and ecx, 0x10
lea eax, [ebp - 0x3a4]
push eax
shr ecx, 4
lea edx, [ebp - 0x1c0]
push edx
mov dword [ebp - 0x1c], ecx
lea esi, [ebx + 0x10]
push esi
lea edi, [ebx + 0xc]
push edi
call fcn.00501270
add esp, 0x10
test eax, eax
jne 0x4f4b4e
mov esi, dword [ebp - 0x1b8]
cmp esi, 2
je 0x4f4bd4
cmp esi, 1
je 0x4f4946
mov eax, dword [ebp - 0x14]
movzx ecx, byte [eax + 0x16d]
test cl, 0x20
je 0x4f3424
movsx edx, byte [eax + 0x158]
test edx, edx
jne 0x4f3424
cmp dword [ebp - 0x1b4], 1
jle 0x4f3424
cmp esi, 5
jl 0x4f3424
cmp esi, 0x11
jle 0x4f3418
cmp esi, 0x19
jl 0x4f3424
cmp esi, 0x1f
jle 0x4f3418
cmp esi, 0x32
jl 0x4f340e
cmp esi, 0x34
jle 0x4f3418
jmp 0x4f3424
cmp esi, 0x28
jl 0x4f3424
cmp esi, 0x30
jg 0x4f3424
mov dword [ebp - 0x1b0], 1
jmp 0x4f342c
xor eax, eax
mov dword [ebp - 0x1b0], eax
mov eax, dword [ebp - 0x3a4]
cmp dword [ebp - 0x1b0], 0
je 0x4f3444
cmp eax, 5
je 0x4f37dc
cmp eax, 7
jl 0x4f35d8
cmp eax, 8
jg 0x4f35d8
mov edx, dword [ebp - 0x1b4]
xor eax, eax
mov dword [ebp - 0x1c4], eax
test edx, edx
mov dword [ebp - 0x18], edx
je 0x4f347f
mov eax, dword [ebp - 0x1bc]
cdq
mov edi, dword [ebp - 0x18]
idiv edi
mov dword [ebp - 0x1f8], eax
jmp 0x4f3487
xor eax, eax
mov dword [ebp - 0x1f8], eax
cmp dword [ebp - 0x1f8], 0
jne 0x4f349c
mov dword [ebp - 0x10], 1
jmp 0x4f3384
cmp esi, 0x34
je 0x4f34ab
cmp esi, 0x1c
jl 0x4f34b8
cmp esi, 0x2c
jg 0x4f34b8
mov eax, 1
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
jmp 0x4f34bf
mov dword [ebp - 0x24], 0
mov esi, dword [ebp - 0x3a0]
test esi, esi
jle 0x4f351f
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x390]
jne 0x4f34eb
mov eax, dword [ebp - 0x394]
cmp eax, dword [ebp - 0x398]
jg 0x4f34eb
cmp eax, 1
je 0x4f37f5
xor eax, eax
lea edx, [eax*8]
lea ecx, [edx + eax*4]
mov edx, dword [ebp + ecx - 0x394]
mov edi, dword [ebp + ecx - 0x390]
mov dword [ebp + eax*4 - 0x11c], edx
mov dword [ebp + eax*4 - 0xa0], edi
mov dword [ebp + eax*4 - 0x198], edx
inc eax
cmp eax, esi
jl 0x4f34ed
xor edx, edx
test esi, esi
jle 0x4f3544
xor eax, eax
mov ecx, dword [ebp + eax*4 - 0x198]
sub ecx, dword [ebp + eax*4 - 0x11c]
imul ecx, dword [ebp + eax*4 - 0xa0]
inc eax
add edx, ecx
cmp eax, esi
jl 0x4f3527
add edx, dword [ebp - 0x39c]
lea eax, [ebp - 0x3a4]
mov dword [ebp - 0x1c0], edx
lea edx, [ebp - 0x198]
push eax
push edx
push 0
call fcn.00501790
add esp, 0xc
cmp dword [ebp - 0x18], 4
jne 0x4f3598
mov eax, dword [ebp - 0x14]
test byte [eax + 0x3c], 3
jne 0x4f358c
test byte [ebp - 0x1c0], 3
jne 0x4f358c
mov dword [ebp - 0x21c], 1
jmp 0x4f35c6
mov dword [ebp - 0x21c], 0
jmp 0x4f35c6
cmp dword [ebp - 0x18], 8
jne 0x4f35c6
mov eax, dword [ebp - 0x14]
test byte [eax + 0x3c], 0x1f
jne 0x4f35bc
test byte [ebp - 0x1c0], 0x1f
jne 0x4f35bc
mov dword [ebp - 0x3a8], 1
jmp 0x4f35c6
mov dword [ebp - 0x3a8], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x128], 0
jmp 0x4f3704
cmp eax, 6
je 0x4f35e6
cmp eax, 5
jne 0x4f36b8
xor eax, eax
mov dword [ebp - 0x1c4], eax
cmp dword [ebp - 0x1b4], 0
je 0x4f3490
mov eax, dword [ebp - 0x1bc]
test eax, eax
mov dword [ebp - 0x18], eax
je 0x4f3490
test cl, 0x10
je 0x4f366c
cmp dword [ebp - 0x1c4], 0
jne 0x4f365b
push dword [ebp - 0x14]
lea eax, [ebp - 0x1c0]
push eax
call fcn.00501e40
add esp, 8
test eax, eax
je 0x4f365b
mov eax, dword [ebp - 0x1b4]
test eax, eax
mov dword [ebp - 0x18], eax
je 0x4f3651
mov eax, dword [ebp - 0x1bc]
cdq
mov ecx, dword [ebp - 0x18]
idiv ecx
mov dword [ebp - 0x1f8], eax
jmp 0x4f3676
xor eax, eax
mov dword [ebp - 0x1f8], eax
jmp 0x4f3676
xor eax, eax
mov dword [ebp - 0x1f8], 1
mov dword [ebp - 0x1c], eax
jmp 0x4f3676
mov dword [ebp - 0x1f8], 1
mov eax, dword [ebp - 0x14]
test byte [eax + 0x168], 2
je 0x4f3704
cmp dword [ebp - 0x1f8], 0
jne 0x4f36ac
mov dword [ebp - 0x10], 1
mov dword [eax + 0x128], 1
movzx ecx, byte [eax + 0x16d]
jmp 0x4f3384
mov dword [eax + 0x128], 0
jmp 0x4f3704
cmp esi, 0x34
je 0x4f36c7
cmp esi, 0x1c
jl 0x4f36dc
cmp esi, 0x2c
jg 0x4f36dc
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1f8], 2
jmp 0x4f36ef
mov eax, dword [ebp - 0x1bc]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1f8], 1
mov eax, dword [ebp - 0x14]
xor edx, edx
mov dword [ebp - 0x1c4], edx
mov dword [eax + 0x128], 0
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
cmp dword [ebp - 0x10], 0
je 0x4f390a
cmp esi, 1
jle 0x4f37c9
mov eax, dword [ebp - 0x3a4]
cmp eax, 7
je 0x4f3730
cmp eax, 8
jne 0x4f37a7
test edi, edi
je 0x4f3745
mov eax, dword [ebp - 0x1b4]
dec esi
add dword [ebp - 0x1c0], eax
xor edi, edi
jmp 0x4f370d
cmp dword [ebp - 0x24], 0
mov edx, dword [ebp - 0x3a0]
je 0x4f3756
mov edi, 1
xor eax, eax
test edx, edx
jle 0x4f3781
mov dword [ebp - 0x20], edi
xor ecx, ecx
mov edi, dword [ebp + ecx*4 - 0x198]
sub edi, dword [ebp + ecx*4 - 0x11c]
imul edi, dword [ebp + ecx*4 - 0xa0]
inc ecx
add eax, edi
cmp ecx, edx
jl 0x4f3761
mov edi, dword [ebp - 0x20]
add eax, dword [ebp - 0x39c]
lea edx, [ebp - 0x198]
mov dword [ebp - 0x1c0], eax
lea eax, [ebp - 0x3a4]
push eax
push edx
push 0
call fcn.00501790
add esp, 0xc
jmp 0x4f37b6
mov eax, dword [ebp - 0x1b4]
add dword [ebp - 0x1c0], eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
dec esi
mov dword [eax + 0x128], 0
jmp 0x4f370d
nop
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], edi
movzx ecx, byte [eax + 0x16d]
jmp 0x4f3384
mov dword [ebp - 0x1c4], 1
mov dword [ebp - 0x1b0], 0
jmp 0x4f35ee
cmp esi, 1
jg 0x4f38b8
test cl, 0x10
jne 0x4f3827
mov eax, dword [ebp - 0x1bc]
mov edx, dword [ebp - 0x39c]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c0], edx
mov dword [ebp - 0x1f8], 1
jmp 0x4f3568
push dword [ebp - 0x14]
lea eax, [ebp - 0x1c0]
push eax
call fcn.00501e40
add esp, 8
test eax, eax
jne 0x4f3866
mov eax, dword [ebp - 0x1bc]
xor ecx, ecx
mov edx, dword [ebp - 0x39c]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c0], edx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x1f8], 1
jmp 0x4f3568
cmp dword [ebp - 0x1b0], 0
je 0x4f38a5
mov eax, dword [ebp - 0x1bc]
mov esi, 1
mov edx, dword [ebp - 0x39c]
xor ecx, ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c0], edx
mov dword [ebp - 0x1c4], esi
mov dword [ebp - 0x1b0], ecx
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x1c], ecx
jmp 0x4f3568
mov esi, dword [ebp - 0x3a0]
test esi, esi
jg 0x4f34eb
jmp 0x4f351f
mov edx, 1
lea eax, [edx*8]
lea eax, [eax + edx*4]
mov edi, dword [ebp + eax - 0x394]
cmp edi, 1
jne 0x4f34eb
cmp edi, dword [ebp + eax - 0x398]
jg 0x4f34eb
mov edi, dword [ebp + eax - 0x3a4]
imul edi, dword [ebp + eax - 0x39c]
cmp edi, dword [ebp + eax - 0x390]
jne 0x4f34eb
inc edx
cmp edx, esi
jl 0x4f38bd
jmp 0x4f37fe
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1ac], eax
cmp dword [ebp - 0x1b0], 0
je 0x4f3b8e
mov eax, dword [ebp - 0x18]
lea edx, [eax + 3]
and edx, dword [ebp - 0x1ac]
test dl, 3
jne 0x4f3aea
cmp dword [ebp - 0x18], 4
je 0x4f3ab3
cmp dword [ebp - 0x18], 8
jne 0x4f39b7
mov dword [ebp - 0x1f8], esi
mov esi, dword [ebp - 0x1ac]
mov eax, dword [esi + 4]
mov edx, eax
mov ecx, dword [esi]
mov esi, eax
and esi, 0xff0000
shr edx, 0x18
shr esi, 8
or edx, esi
mov esi, eax
and esi, 0xff00
shl esi, 8
shl eax, 0x18
or edx, esi
or edx, eax
mov eax, ecx
mov dword [ebp - 0x1e8], edx
mov esi, ecx
and eax, 0xff0000
mov edx, ecx
shr esi, 0x18
and edx, 0xff00
shr eax, 8
shl edx, 8
or esi, eax
shl ecx, 0x18
or esi, edx
or esi, ecx
mov dword [ebp - 0x1e4], esi
mov esi, dword [ebp - 0x1f8]
jmp 0x4f3b80
cmp dword [ebp - 0x18], 0x10
jne 0x4f3a9a
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1f8], esi
mov edi, dword [eax]
mov ecx, dword [eax + 4]
mov esi, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov edx, eax
mov dword [ebp - 0x224], edi
mov edi, eax
and edi, 0xff0000
shr edx, 0x18
shr edi, 8
or edx, edi
mov edi, eax
and edi, 0xff00
shl edi, 8
shl eax, 0x18
or edx, edi
or edx, eax
mov edi, esi
mov dword [ebp - 0x1e8], edx
mov edx, esi
and edx, 0xff0000
mov eax, esi
shr edi, 0x18
and eax, 0xff00
shr edx, 8
shl eax, 8
or edi, edx
shl esi, 0x18
or edi, eax
or edi, esi
mov esi, ecx
mov edx, ecx
and esi, 0xff0000
mov eax, ecx
shr edx, 0x18
and eax, 0xff00
shr esi, 8
shl eax, 8
or edx, esi
shl ecx, 0x18
or edx, eax
or edx, ecx
mov dword [ebp - 0x1e0], edx
mov edx, dword [ebp - 0x224]
mov ecx, edx
mov esi, edx
and ecx, 0xff0000
mov eax, edx
shr esi, 0x18
and eax, 0xff00
shr ecx, 8
shl eax, 8
or esi, ecx
shl edx, 0x18
or esi, eax
or esi, edx
mov dword [ebp - 0x1e4], edi
mov dword [ebp - 0x1dc], esi
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
jmp 0x4f3b80
mov eax, dword [ebp - 0x1ac]
movzx edx, word [eax]
rol dx, 8
mov word [ebp - 0x1e8], dx
jmp 0x4f3b80
mov ecx, dword [ebp - 0x1ac]
mov eax, dword [ecx]
mov ecx, eax
mov edx, eax
and ecx, 0xff0000
shr edx, 0x18
shr ecx, 8
or edx, ecx
mov ecx, eax
and ecx, 0xff00
shl ecx, 8
shl eax, 0x18
or edx, ecx
or edx, eax
mov dword [ebp - 0x1e8], edx
jmp 0x4f3b80
cmp dword [ebp - 0x18], 1
je 0x4f488a
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
mov dword [ebp - 0x1a0], edx
test edx, edx
jle 0x4f3b80
xor ecx, ecx
mov edx, dword [ebp - 0x1ac]
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x20], edi
add edx, eax
mov dword [ebp - 0x1a8], edx
lea eax, [ebp + eax - 0x1e8]
mov dword [ebp - 0x1a4], eax
xor eax, eax
mov esi, eax
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1ac]
mov edx, dword [ebp - 0x1a8]
movzx edi, byte [ecx + eax]
movzx eax, byte [esi + edx - 1]
xor edi, eax
mov byte [ebp + ecx - 0x1e8], al
inc ecx
movzx edx, byte [esi + edx - 1]
dec esi
mov eax, dword [ebp - 0x19c]
xor edx, edi
mov edi, dword [ebp - 0x1a4]
mov byte [eax + edi - 1], dl
dec eax
cmp ecx, dword [ebp - 0x1a0]
jl 0x4f3b31
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x1e8]
mov dword [ebp - 0x1ac], eax
jmp 0x4f3bd5
cmp dword [ebp - 0x1c], 0
je 0x4f3bd5
cmp dword [ebp - 0x1b8], 0x38
je 0x4f3bd5
lea eax, [ebp - 0x1e8]
push eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
lea edx, [ebp - 0x1c0]
push edx
call fcn.005019a0
add esp, 0x10
test eax, eax
lea edx, [ebp - 0x1e8]
mov dword [ebp - 0x1ac], edx
je 0x4f3bd5
push 0
push 0x5f
call fcn.004fc9b0
add esp, 8
mov eax, dword [ebp - 0x14]
movzx eax, byte [eax + 0x16f]
test al, 0x20
je 0x4f3bf8
cmp esi, 1
je 0x4f489e
mov edx, dword [ebp - 0x14]
and eax, 0xffffffdf
mov byte [edx + 0x16f], al
test al, 0x40
jne 0x4f3717
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x3c]
mov edx, dword [ecx + 0x44]
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1fc], edx
add ecx, eax
cmp edx, ecx
jae 0x4f4856
sub dword [ebp - 0x1fc], eax
cmp dword [ebp - 0x1c4], 0
je 0x4f3e96
mov edx, dword [ebp - 0x1b4]
cmp edx, 2
mov ecx, dword [ebp - 0x1ac]
je 0x4f436e
cmp edx, 4
je 0x4f3e2b
cmp edx, 8
jne 0x4f3cfe
mov edx, dword [ebp - 0x1fc]
test edx, edx
jle 0x4f3eb1
mov dword [ebp - 0x210], edx
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x20], edi
mov edx, dword [ecx + 4]
mov edi, edx
mov esi, dword [ecx]
and edi, 0xff0000
mov dword [ebp - 0x208], ecx
mov ecx, edx
shr ecx, 0x18
shr edi, 8
or ecx, edi
mov edi, edx
and edi, 0xff00
shl edi, 8
shl edx, 0x18
or ecx, edi
or ecx, edx
mov edi, esi
mov dword [eax], ecx
mov ecx, esi
and ecx, 0xff0000
mov edx, esi
shr edi, 0x18
and edx, 0xff00
shr ecx, 8
shl edx, 8
or edi, ecx
shl esi, 0x18
or edi, edx
or edi, esi
mov esi, dword [ebp - 0x210]
add esi, 0xfffffff8
mov ecx, dword [ebp - 0x208]
mov dword [eax + 4], edi
add eax, 8
add ecx, 8
mov dword [ebp - 0x210], esi
test esi, esi
jg 0x4f3c73
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
jmp 0x4f3eb1
cmp edx, 0x10
jne 0x4f3eb1
mov edx, dword [ebp - 0x1fc]
test edx, edx
jle 0x4f3eb1
mov dword [ebp - 0x20c], edx
mov dword [ebp - 0x208], ecx
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x20], edi
mov edx, dword [ebp - 0x208]
mov edi, dword [edx]
mov esi, dword [edx + 4]
mov ecx, dword [edx + 0xc]
mov dword [ebp - 0x204], edi
mov edi, ecx
mov dword [ebp - 0x200], esi
and edi, 0xff0000
mov esi, dword [edx + 8]
mov edx, ecx
shr edx, 0x18
shr edi, 8
or edx, edi
mov edi, ecx
and edi, 0xff00
shl edi, 8
shl ecx, 0x18
or edx, edi
or edx, ecx
mov ecx, esi
mov dword [eax], edx
mov edi, esi
and ecx, 0xff0000
mov edx, esi
shr edi, 0x18
and edx, 0xff00
shr ecx, 8
shl edx, 8
or edi, ecx
shl esi, 0x18
or edi, edx
mov ecx, dword [ebp - 0x200]
or edi, esi
mov esi, ecx
mov edx, ecx
mov dword [eax + 4], edi
mov edi, ecx
and esi, 0xff0000
and edx, 0xff00
shr edi, 0x18
shr esi, 8
shl edx, 8
or edi, esi
shl ecx, 0x18
or edi, edx
mov esi, dword [ebp - 0x204]
mov edx, esi
or edi, ecx
and edx, 0xff0000
mov dword [eax + 8], edi
mov edi, esi
mov ecx, esi
shr edi, 0x18
and ecx, 0xff00
shr edx, 8
shl ecx, 8
or edi, edx
shl esi, 0x18
or edi, ecx
mov ecx, dword [ebp - 0x20c]
or edi, esi
add ecx, 0xfffffff0
mov edx, dword [ebp - 0x208]
mov dword [eax + 0xc], edi
add eax, 0x10
add edx, 0x10
mov dword [ebp - 0x20c], ecx
test ecx, ecx
mov dword [ebp - 0x208], edx
jg 0x4f3d2a
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
jmp 0x4f3eb1
mov edx, dword [ebp - 0x1fc]
test edx, edx
jle 0x4f3eb1
mov dword [ebp - 0x1ec], eax
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x20], edi
mov esi, dword [ecx]
mov edi, esi
mov eax, esi
and edi, 0xff0000
shr eax, 0x18
add edx, 0xfffffffc
shr edi, 8
add ecx, 4
or eax, edi
mov edi, esi
and edi, 0xff00
shl edi, 8
shl esi, 0x18
or eax, edi
or eax, esi
mov esi, dword [ebp - 0x1ec]
mov dword [esi], eax
add esi, 4
mov dword [ebp - 0x1ec], esi
test edx, edx
jg 0x4f3e44
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
jmp 0x4f3eb1
push dword [ebp - 0x1fc]
push dword [ebp - 0x1ac]
push eax
call fcn.0053ba70
add esp, 0xc
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x3c]
mov edx, dword [ebp - 0x14]
add eax, dword [ebp - 0x1fc]
push edx
mov dword [edx + 0x3c], eax
call fcn.004ffa10
add esp, 4
test eax, eax
jne 0x4f47d0
mov eax, dword [ebp - 0x14]
test byte [eax + 0x170], 2
je 0x4f4737
add dword [eax + 0x98], 1
mov edx, dword [eax + 0x40]
adc dword [eax + 0x9c], 0
and byte [eax + 0x16f], 0xfb
mov dword [ebp - 0x214], edx
test edx, edx
jne 0x4f3f0e
mov edx, eax
mov eax, dword [edx + 0x38]
mov dword [ebp - 0x214], eax
mov dword [edx + 0x40], eax
mov eax, dword [ebp - 0x14]
test byte [eax + 0x168], 1
je 0x4f3f30
test byte [eax + 0x16b], 8
je 0x4f3f30
cmp byte [eax + 0x155], 2
je 0x4f43a4
mov edx, eax
mov eax, dword [ebp - 0x214]
mov dword [edx + 0x3c], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x214]
mov dword [ebp - 0x1f8], esi
add edx, dword [ecx + 0xf8]
mov dword [ecx + 0x44], edx
mov esi, dword [ebp - 0x1fc]
mov ecx, dword [ebp - 0x18]
sub ecx, esi
add dword [ebp - 0x1ac], esi
mov dword [ebp - 0x214], edx
mov dword [ebp - 0x18], ecx
lea esi, [eax + ecx]
cmp edx, esi
mov esi, dword [ebp - 0x1f8]
jae 0x4f4725
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x20], edi
mov esi, dword [ebp - 0x14]
mov edi, edx
sub edi, eax
cmp dword [ebp - 0x1c4], 0
je 0x4f41ea
mov edx, dword [ebp - 0x1b4]
cmp edx, 2
mov ecx, dword [ebp - 0x1ac]
je 0x4f43bd
cmp edx, 4
je 0x4f4186
cmp edx, 8
jne 0x4f4063
mov edx, edi
test edi, edi
jle 0x4f41fd
mov dword [ebp - 0x1d8], edx
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x14], esi
mov edx, dword [ecx + 4]
mov edi, edx
mov esi, dword [ecx]
and edi, 0xff0000
mov dword [ebp - 0x1d0], ecx
mov ecx, edx
shr ecx, 0x18
shr edi, 8
or ecx, edi
mov edi, edx
and edi, 0xff00
shl edi, 8
shl edx, 0x18
or ecx, edi
or ecx, edx
mov edi, esi
mov dword [eax], ecx
mov ecx, esi
and ecx, 0xff0000
mov edx, esi
shr edi, 0x18
and edx, 0xff00
shr ecx, 8
shl edx, 8
or edi, ecx
shl esi, 0x18
or edi, edx
or edi, esi
mov esi, dword [ebp - 0x1d8]
add esi, 0xfffffff8
mov ecx, dword [ebp - 0x1d0]
mov dword [eax + 4], edi
add eax, 8
add ecx, 8
mov dword [ebp - 0x1d8], esi
test esi, esi
jg 0x4f3fdb
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x220]
mov eax, dword [esi + 0x3c]
jmp 0x4f41fd
cmp edx, 0x10
jne 0x4f41fd
mov edx, edi
test edi, edi
jle 0x4f41fd
mov dword [ebp - 0x1d4], edx
mov dword [ebp - 0x1d0], ecx
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x14], esi
mov edx, dword [ebp - 0x1d0]
mov edi, dword [edx]
mov esi, dword [edx + 4]
mov ecx, dword [edx + 0xc]
mov dword [ebp - 0x1cc], edi
mov edi, ecx
mov dword [ebp - 0x1c8], esi
and edi, 0xff0000
mov esi, dword [edx + 8]
mov edx, ecx
shr edx, 0x18
shr edi, 8
or edx, edi
mov edi, ecx
and edi, 0xff00
shl edi, 8
shl ecx, 0x18
or edx, edi
or edx, ecx
mov ecx, esi
mov dword [eax], edx
mov edi, esi
and ecx, 0xff0000
mov edx, esi
shr edi, 0x18
and edx, 0xff00
shr ecx, 8
shl edx, 8
or edi, ecx
shl esi, 0x18
or edi, edx
mov ecx, dword [ebp - 0x1c8]
or edi, esi
mov esi, ecx
mov edx, ecx
mov dword [eax + 4], edi
mov edi, ecx
and esi, 0xff0000
and edx, 0xff00
shr edi, 0x18
shr esi, 8
shl edx, 8
or edi, esi
shl ecx, 0x18
or edi, edx
mov esi, dword [ebp - 0x1cc]
mov edx, esi
or edi, ecx
and edx, 0xff0000
mov dword [eax + 8], edi
mov edi, esi
mov ecx, esi
shr edi, 0x18
and ecx, 0xff00
shr edx, 8
shl ecx, 8
or edi, edx
shl esi, 0x18
or edi, ecx
mov ecx, dword [ebp - 0x1d4]
or edi, esi
add ecx, 0xfffffff0
mov edx, dword [ebp - 0x1d0]
mov dword [eax + 0xc], edi
add eax, 0x10
add edx, 0x10
mov dword [ebp - 0x1d4], ecx
test ecx, ecx
mov dword [ebp - 0x1d0], edx
jg 0x4f408b
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x220]
mov eax, dword [esi + 0x3c]
jmp 0x4f41fd
mov edx, edi
test edi, edi
jle 0x4f41fd
mov dword [ebp - 0x1ec], eax
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x14], esi
mov esi, dword [ecx]
mov edi, esi
mov eax, esi
and edi, 0xff0000
shr eax, 0x18
add edx, 0xfffffffc
shr edi, 8
add ecx, 4
or eax, edi
mov edi, esi
and edi, 0xff00
shl edi, 8
shl esi, 0x18
or eax, edi
or eax, esi
mov esi, dword [ebp - 0x1ec]
mov dword [esi], eax
add esi, 4
mov dword [ebp - 0x1ec], esi
test edx, edx
jg 0x4f419b
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x220]
mov eax, dword [esi + 0x3c]
jmp 0x4f41fd
push edi
push dword [ebp - 0x1ac]
push eax
call fcn.0053ba70
add esp, 0xc
mov eax, dword [esi + 0x3c]
push esi
add eax, edi
mov dword [esi + 0x3c], eax
call fcn.004ffa10
add esp, 4
test eax, eax
jne 0x4f46a2
add dword [esi + 0x98], 1
mov edx, dword [esi + 0x40]
adc dword [esi + 0x9c], 0
and byte [esi + 0x16f], 0xfb
test edx, edx
jne 0x4f4235
mov edx, dword [esi + 0x38]
mov dword [esi + 0x40], edx
test byte [esi + 0x168], 1
je 0x4f4254
test byte [esi + 0x16b], 8
je 0x4f4254
cmp byte [esi + 0x155], 2
je 0x4f43ec
mov dword [esi + 0x3c], edx
mov eax, edx
mov ecx, dword [ebp - 0x18]
sub ecx, edi
add dword [ebp - 0x1ac], edi
add edx, dword [esi + 0xf8]
mov dword [esi + 0x44], edx
mov dword [ebp - 0x18], ecx
lea edi, [eax + ecx]
cmp edx, edi
jb 0x4f3f8a
mov dword [ebp - 0x14], esi
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
cmp dword [ebp - 0x21c], 0
je 0x4f42e8
test al, 3
jne 0x4f42cf
test byte [ebp - 0x1ac], 3
jne 0x4f42cf
mov dword [ebp - 0x21c], 1
cmp dword [ebp - 0x18], 4
jne 0x4f42d7
cmp dword [ebp - 0x1c4], 0
jne 0x4f43fd
mov edx, dword [ebp - 0x1ac]
mov ecx, dword [edx]
mov dword [eax], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x3c]
jmp 0x4f4360
xor edx, edx
mov dword [ebp - 0x21c], edx
cmp dword [ebp - 0x18], 8
jne 0x4f433b
cmp dword [ebp - 0x3a8], 0
jne 0x4f430e
jmp 0x4f433b
cmp dword [ebp - 0x3a8], 0
je 0x4f433b
test al, 0x1f
jne 0x4f4333
test byte [ebp - 0x1ac], 0x1f
jne 0x4f4333
mov dword [ebp - 0x3a8], 1
cmp dword [ebp - 0x18], 8
jne 0x4f433b
cmp dword [ebp - 0x1c4], 0
jne 0x4f43fd
mov ecx, dword [ebp - 0x1ac]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [eax], edx
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x3c]
jmp 0x4f4360
xor edx, edx
mov dword [ebp - 0x3a8], edx
cmp dword [ebp - 0x1c4], 0
jne 0x4f43fd
push dword [ebp - 0x18]
push dword [ebp - 0x1ac]
push eax
call fcn.0053ba70
add esp, 0xc
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x3c]
mov edx, dword [ebp - 0x14]
add eax, dword [ebp - 0x18]
mov dword [edx + 0x3c], eax
jmp 0x4f3717
mov edx, dword [ebp - 0x1fc]
test edx, edx
jle 0x4f3eb1
mov dword [ebp - 0x20], edi
add edx, 0xfffffffe
movzx edi, word [ecx]
add ecx, 2
rol di, 8
mov word [eax], di
add eax, 2
test edx, edx
jg 0x4f437f
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
jmp 0x4f3eb1
mov edx, dword [ebp - 0x214]
mov ecx, eax
lea eax, [edx + 1]
mov dword [ecx + 0x3c], eax
mov byte [edx], 0x20
mov eax, dword [ecx + 0x3c]
jmp 0x4f3f3b
mov edx, edi
test edi, edi
jle 0x4f41fd
mov dword [ebp - 0x14], esi
add edx, 0xfffffffe
movzx esi, word [ecx]
add ecx, 2
rol si, 8
mov word [eax], si
add eax, 2
test edx, edx
jg 0x4f43ca
mov esi, dword [ebp - 0x14]
mov eax, dword [esi + 0x3c]
jmp 0x4f41fd
lea eax, [edx + 1]
mov dword [esi + 0x3c], eax
mov byte [edx], 0x20
mov eax, dword [esi + 0x3c]
jmp 0x4f4259
mov edx, dword [ebp - 0x1b4]
cmp edx, 2
je 0x4f4669
cmp edx, 4
je 0x4f454e
cmp edx, 8
jne 0x4f442a
mov edx, dword [ebp - 0x18]
test edx, edx
jg 0x4f45c3
jmp 0x4f4360
cmp edx, 0x10
jne 0x4f4360
mov edx, dword [ebp - 0x18]
test edx, edx
jle 0x4f4360
mov dword [ebp - 0x3b4], edx
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x20], edi
mov edx, dword [ebp - 0x1ac]
mov edi, dword [edx]
mov esi, dword [edx + 4]
mov ecx, dword [edx + 0xc]
mov dword [ebp - 0x3b0], edi
mov edi, ecx
mov dword [ebp - 0x3ac], esi
and edi, 0xff0000
mov esi, dword [edx + 8]
mov edx, ecx
shr edx, 0x18
shr edi, 8
or edx, edi
mov edi, ecx
and edi, 0xff00
shl edi, 8
shl ecx, 0x18
or edx, edi
or edx, ecx
mov ecx, esi
mov dword [eax], edx
mov edi, esi
and ecx, 0xff0000
mov edx, esi
shr edi, 0x18
and edx, 0xff00
shr ecx, 8
shl edx, 8
or edi, ecx
shl esi, 0x18
or edi, edx
mov ecx, dword [ebp - 0x3ac]
or edi, esi
mov esi, ecx
mov edx, ecx
mov dword [eax + 4], edi
mov edi, ecx
and esi, 0xff0000
and edx, 0xff00
shr edi, 0x18
shr esi, 8
shl edx, 8
or edi, esi
shl ecx, 0x18
or edi, edx
mov esi, dword [ebp - 0x3b0]
mov edx, esi
or edi, ecx
and edx, 0xff0000
mov dword [eax + 8], edi
mov edi, esi
mov ecx, esi
shr edi, 0x18
and ecx, 0xff00
shr edx, 8
shl ecx, 8
or edi, edx
shl esi, 0x18
or edi, ecx
mov ecx, dword [ebp - 0x3b4]
or edi, esi
add ecx, 0xfffffff0
mov edx, dword [ebp - 0x1ac]
mov dword [eax + 0xc], edi
add eax, 0x10
add edx, 0x10
mov dword [ebp - 0x3b4], ecx
test ecx, ecx
mov dword [ebp - 0x1ac], edx
jg 0x4f444d
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
jmp 0x4f4360
mov edx, dword [ebp - 0x18]
test edx, edx
jle 0x4f4360
mov dword [ebp - 0x1ec], eax
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x20], edi
mov eax, dword [ebp - 0x1ac]
mov esi, dword [eax]
mov edi, esi
mov ecx, esi
and edi, 0xff0000
shr ecx, 0x18
add edx, 0xfffffffc
shr edi, 8
add eax, 4
or ecx, edi
mov edi, esi
and edi, 0xff00
shl edi, 8
shl esi, 0x18
or ecx, edi
or ecx, esi
mov esi, dword [ebp - 0x1ec]
mov dword [esi], ecx
add esi, 4
mov dword [ebp - 0x1ec], esi
test edx, edx
jg 0x4f456e
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
jmp 0x4f4360
mov dword [ebp - 0x3b8], edx
mov dword [ebp - 0x1ec], eax
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x20], edi
mov edx, dword [ebp - 0x1ac]
mov edi, dword [edx + 4]
mov esi, edi
mov ecx, edi
and esi, 0xff0000
shr ecx, 0x18
shr esi, 8
or ecx, esi
mov esi, edi
and esi, 0xff00
shl esi, 8
or ecx, esi
mov esi, dword [ebp - 0x1ec]
shl edi, 0x18
mov eax, dword [edx]
or ecx, edi
mov edi, eax
add edx, 8
mov dword [esi], ecx
mov ecx, eax
and edi, 0xff0000
shr ecx, 0x18
shr edi, 8
or ecx, edi
mov edi, eax
and edi, 0xff00
shl edi, 8
shl eax, 0x18
or ecx, edi
or ecx, eax
mov eax, dword [ebp - 0x3b8]
add eax, 0xfffffff8
mov dword [esi + 4], ecx
add esi, 8
mov dword [ebp - 0x3b8], eax
test eax, eax
mov dword [ebp - 0x1ec], esi
jg 0x4f45de
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1f8]
mov edi, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
jmp 0x4f4360
mov edx, dword [ebp - 0x18]
test edx, edx
jle 0x4f4360
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x1ac]
add edx, 0xfffffffe
movzx ecx, word [edi]
add edi, 2
rol cx, 8
mov word [eax], cx
add eax, 2
test edx, edx
jg 0x4f467d
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
jmp 0x4f4360
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4f4705
test byte [edx + 0x44], 2
je 0x4f46da
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4f46c7
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.00500a40
add esp, 0x14
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.004fa8e0
add esp, 0x10
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp dword [ebp - 0x21c], 0
jne 0x4f4290
jmp 0x4f42e8
mov esi, eax
mov eax, dword [esi + 0x18]
test eax, eax
je 0x4f47ab
test byte [eax + 0x44], 2
je 0x4f477b
mov edx, 0x42
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x18]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x64]
test eax, eax
je 0x4f4763
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov eax, 0x42
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x42
push eax
movzx edx, byte [esi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.00500a40
add esp, 0x14
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x42
push eax
push eax
push 1
call fcn.004fa8e0
add esp, 0x10
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov esi, dword [ebp - 0x14]
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4f4836
test byte [edx + 0x44], 2
je 0x4f480b
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4f47f8
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.00500a40
add esp, 0x14
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.004fa8e0
add esp, 0x10
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp dword [ebp - 0x21c], 0
je 0x4f486e
cmp dword [ebp - 0x18], 4
je 0x4f42ad
jmp 0x4f42d7
cmp dword [ebp - 0x3a8], 0
je 0x4f433b
cmp dword [ebp - 0x18], 8
je 0x4f430e
jmp 0x4f433b
mov eax, dword [ebp - 0x1ac]
movzx edx, byte [eax]
mov byte [ebp - 0x1e8], dl
jmp 0x4f3b80
mov edx, dword [ebx + 0xc]
cmp byte [edx], 1
jne 0x4f3bec
and eax, 0xffffffdf
cmp dword [ebp - 0x1c4], 0
jne 0x4f48cd
mov edx, dword [ebp - 0x14]
cmp byte [edx + 0x154], 1
je 0x4f48db
mov byte [edx + 0x16f], al
jmp 0x4f3bf8
mov edx, dword [ebp - 0x14]
mov byte [edx + 0x16f], al
jmp 0x4f3bf8
test byte [edx + 0x16b], 8
je 0x4f48ff
test byte [edx + 0x168], 1
je 0x4f48f6
cmp byte [edx + 0x155], 2
je 0x4f48c2
test byte [edx + 0x171], 0x40
jne 0x4f48c2
mov ecx, edx
mov edx, dword [ebp - 0x18]
cmp edx, dword [ecx + 0xf8]
jne 0x4f4939
add edx, dword [ecx + 0x3c]
cmp edx, dword [ecx + 0x44]
ja 0x4f4939
mov edx, ecx
or eax, 0x40
mov ecx, dword [ebp - 0x1ac]
mov dword [edx + 0x80], ecx
mov ecx, dword [ebp - 0x18]
mov dword [edx + 0x134], ecx
mov byte [edx + 0x16f], al
jmp 0x4f3bf8
mov edx, ecx
mov byte [edx + 0x16f], al
jmp 0x4f3bf8
mov esi, dword [ebp - 0x14]
cmp dword [esi + 0x128], 0
je 0x4f4968
mov eax, dword [esi + 0x40]
mov dword [esi + 0x128], 0
cmp eax, dword [esi + 0x3c]
je 0x4f4a43
test byte [esi + 0x16f], 0x40
jne 0x4f4b42
push esi
call fcn.004ffa10
add esp, 4
test eax, eax
je 0x4f49e9
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4f4b02
test byte [edx + 0x44], 2
je 0x4f49be
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4f49ab
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.00500a40
add esp, 0x14
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [esi + 0x98]
add eax, 1
mov edx, dword [esi + 0x9c]
mov ecx, dword [esi + 0x54]
adc edx, 0
and byte [esi + 0x16f], 0xfb
mov dword [esi + 0x98], eax
test ecx, ecx
mov dword [esi + 0x9c], edx
je 0x4f4a43
movsx edi, byte [esi + 0x157]
add edi, 0xfffffffb
cmp edi, 0xc
ja case.default.0x4f4a2f
mov edi, dword [edi*4 + 0x561b4c]
jmp edi
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x4f4a43
mov dword [ecx], eax
jmp 0x4f4a43
mov word [ecx], ax
jmp 0x4f4a43
mov byte [ecx], al
push dword [esi + 0x100]
and byte [esi + 0x16c], 0xdc
and byte [esi + 0x16e], 0xf7
call fcn.004f82c0
add esp, 4
test eax, eax
je 0x4f4aca
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4f4b22
test byte [edx + 0x44], 2
je 0x4f4a9f
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4f4a8c
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.00500a40
add esp, 0x14
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edx, dword [ebp - 0x218]
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov dword [edx + 4], 0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x30
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.004fa8e0
add esp, 0x10
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 0
call fcn.004fa8e0
add esp, 0x10
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, esi
call fcn.004f4bf0
jmp 0x4f497e
mov esi, dword [ebp - 0x14]
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4f4bb4
test byte [edx + 0x44], 2
je 0x4f4b89
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x4f4b76
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.00500a40
add esp, 0x14
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.004fa8e0
add esp, 0x10
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
xor eax, eax
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x1f0]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret