Function at 0x441ba0
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, 0x3d8
mov eax, dword [ebx + 8]
mov dword [ebp - 0x1d0], esi
mov dword [ebp - 0x200], eax
mov esi, dword [eax + 4]
xor eax, eax
mov dword [ebp - 0x1cc], edi
xor ecx, ecx
movzx edi, byte [esi + 0x175]
mov dword [ebp - 0x204], ecx
mov dword [ebp - 0x39c], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], esi
mov ecx, edi
and ecx, 0x10
lea eax, [ebp - 0x390]
push eax
shr ecx, 4
lea edx, [ebp - 0x1b4]
push edx
mov dword [ebp - 0x1c], ecx
lea esi, [ebx + 0x10]
push esi
lea edi, [ebx + 0xc]
push edi
call fcn.00457340
add esp, 0x10
test eax, eax
jne 0x443726
mov esi, dword [ebp - 0x1ac]
cmp esi, 2
je 0x4437ac
cmp esi, 1
je 0x443330
mov eax, dword [ebp - 0x14]
movzx ecx, byte [eax + 0x175]
test cl, 0x20
je 0x441c85
cmp byte [eax + 0x160], 0
jne 0x441c85
cmp dword [ebp - 0x1a8], 1
jle 0x441c85
lea eax, [esi - 5]
cmp eax, 0xc
jbe 0x441c7c
lea eax, [esi - 0x19]
cmp eax, 6
jbe 0x441c7c
lea eax, [esi - 0x32]
cmp eax, 2
jbe 0x441c7c
lea eax, [esi - 0x28]
cmp eax, 8
ja 0x441c85
mov dword [ebp - 0x2c], 1
jmp 0x441c8a
xor eax, eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x390]
cmp dword [ebp - 0x2c], 0
je 0x441c9f
cmp eax, 5
je 0x44215f
cmp eax, 7
jl 0x441f09
cmp eax, 8
jg 0x441f09
mov edx, dword [ebp - 0x1a8]
xor eax, eax
mov dword [ebp - 0x1c8], eax
test edx, edx
mov dword [ebp - 0x18], edx
je 0x441cda
mov eax, dword [ebp - 0x1b0]
cdq
mov edi, dword [ebp - 0x18]
idiv edi
mov dword [ebp - 0x1d4], eax
jmp 0x441ce2
xor eax, eax
mov dword [ebp - 0x1d4], eax
cmp dword [ebp - 0x1d4], 0
jne 0x441cf7
mov dword [ebp - 0x10], 1
jmp 0x441bf4
lea eax, [esi - 0x1c]
cmp eax, 0x10
jbe 0x441d0d
cmp esi, 0x34
je 0x441d0d
mov dword [ebp - 0x28], 0
jmp 0x441d18
mov eax, 1
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x38c]
test eax, eax
mov dword [ebp - 0x398], eax
jle 0x441e73
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x37c]
jne 0x441d4e
mov eax, dword [ebp - 0x380]
cmp eax, dword [ebp - 0x384]
jg 0x441d4e
cmp eax, 1
je 0x442175
mov eax, dword [ebp - 0x398]
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
test edx, edx
jbe 0x44229e
xor ecx, ecx
mov esi, esi
lea edi, [edi]
lea eax, [ecx + ecx*2]
mov esi, dword [ebp + eax*8 - 0x37c]
mov dword [ebp + ecx*8 - 0xac], esi
mov edi, dword [ebp + eax*8 - 0x380]
mov esi, dword [ebp + eax*8 - 0x374]
mov eax, dword [ebp + eax*8 - 0x370]
mov dword [ebp + ecx*8 - 0x128], edi
mov dword [ebp + ecx*8 - 0x1a4], edi
mov dword [ebp + ecx*8 - 0x124], esi
mov dword [ebp + ecx*8 - 0xa8], eax
mov dword [ebp + ecx*8 - 0x1a0], esi
inc ecx
cmp ecx, edx
jb 0x441d70
lea eax, [ecx + ecx + 1]
lea edx, [eax - 1]
cmp edx, dword [ebp - 0x398]
jae 0x441dfa
lea edx, [eax*8]
lea ecx, [edx + eax*4]
mov edi, dword [ebp + ecx - 0x38c]
mov esi, dword [ebp + ecx - 0x388]
mov dword [ebp + eax*4 - 0x12c], edi
mov dword [ebp + eax*4 - 0xb0], esi
mov dword [ebp + eax*4 - 0x1a8], edi
mov eax, dword [ebp - 0x398]
mov edx, eax
shr edx, 0x1f
add edx, eax
xor eax, eax
sar edx, 1
test edx, edx
jbe 0x442294
xor ecx, ecx
mov esi, dword [ebp + ecx*8 - 0x1a4]
sub esi, dword [ebp + ecx*8 - 0x128]
mov edi, dword [ebp + ecx*8 - 0x1a0]
imul esi, dword [ebp + ecx*8 - 0xac]
sub edi, dword [ebp + ecx*8 - 0x124]
add eax, esi
imul edi, dword [ebp + ecx*8 - 0xa8]
inc ecx
add eax, edi
cmp ecx, edx
jb 0x441e15
lea ecx, [ecx + ecx + 1]
lea edx, [ecx - 1]
cmp edx, dword [ebp - 0x398]
jae 0x441e75
mov edx, dword [ebp + ecx*4 - 0x1a8]
sub edx, dword [ebp + ecx*4 - 0x12c]
imul edx, dword [ebp + ecx*4 - 0xb0]
add eax, edx
jmp 0x441e75
xor eax, eax
add eax, dword [ebp - 0x388]
lea edx, [ebp - 0x1a4]
mov dword [ebp - 0x1b4], eax
lea eax, [ebp - 0x390]
push eax
push edx
push 0
call fcn.004636e0
add esp, 0xc
cmp dword [ebp - 0x18], 4
jne 0x441ec9
mov eax, dword [ebp - 0x14]
test byte [eax + 0x3c], 3
jne 0x441ebd
test byte [ebp - 0x1b4], 3
jne 0x441ebd
mov dword [ebp - 0x204], 1
jmp 0x441ef7
mov dword [ebp - 0x204], 0
jmp 0x441ef7
cmp dword [ebp - 0x18], 8
jne 0x441ef7
mov eax, dword [ebp - 0x14]
test byte [eax + 0x3c], 0x1f
jne 0x441eed
test byte [ebp - 0x1b4], 0x1f
jne 0x441eed
mov dword [ebp - 0x39c], 1
jmp 0x441ef7
mov dword [ebp - 0x39c], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x128], 0
jmp 0x44202f
cmp eax, 6
je 0x441f17
cmp eax, 5
jne 0x441fe5
xor eax, eax
mov dword [ebp - 0x1c8], eax
cmp dword [ebp - 0x1a8], 0
je 0x441ceb
mov eax, dword [ebp - 0x1b0]
test eax, eax
mov dword [ebp - 0x18], eax
je 0x441ceb
test cl, 0x10
je 0x441f9d
cmp dword [ebp - 0x1c8], 0
jne 0x441f8c
push dword [ebp - 0x14]
lea eax, [ebp - 0x1b4]
push eax
call fcn.00463f10
add esp, 8
test eax, eax
je 0x441f8c
mov eax, dword [ebp - 0x1a8]
test eax, eax
mov dword [ebp - 0x18], eax
je 0x441f82
mov eax, dword [ebp - 0x1b0]
cdq
mov ecx, dword [ebp - 0x18]
idiv ecx
mov dword [ebp - 0x1d4], eax
jmp 0x441fa7
xor eax, eax
mov dword [ebp - 0x1d4], eax
jmp 0x441fa7
xor eax, eax
mov dword [ebp - 0x1d4], 1
mov dword [ebp - 0x1c], eax
jmp 0x441fa7
mov dword [ebp - 0x1d4], 1
mov eax, dword [ebp - 0x14]
test byte [eax + 0x170], 2
je 0x44202f
cmp dword [ebp - 0x1d4], 0
jne 0x441fd9
mov dword [ebp - 0x10], 1
mov dword [eax + 0x128], 1
movzx ecx, byte [eax + 0x175]
jmp 0x441bf4
mov dword [eax + 0x128], 0
jmp 0x44202f
lea eax, [esi - 0x1c]
cmp eax, 0x10
jbe 0x442007
cmp esi, 0x34
je 0x442007
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1d4], 1
jmp 0x44201a
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1d4], 2
mov eax, dword [ebp - 0x14]
xor edx, edx
mov dword [ebp - 0x1c8], edx
mov dword [eax + 0x128], 0
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
cmp dword [ebp - 0x10], 0
je 0x4422b2
cmp esi, 1
jle 0x44214c
mov eax, dword [ebp - 0x390]
cmp eax, 7
je 0x44205f
cmp eax, 8
jne 0x44212a
test edi, edi
je 0x442074
mov eax, dword [ebp - 0x1a8]
dec esi
add dword [ebp - 0x1b4], eax
xor edi, edi
jmp 0x442038
cmp dword [ebp - 0x28], 0
mov eax, dword [ebp - 0x38c]
je 0x442085
mov edi, 1
mov dword [ebp - 0x24], eax
test eax, eax
jle 0x442102
mov edx, eax
shr edx, 0x1f
add edx, eax
xor eax, eax
sar edx, 1
test edx, edx
jbe 0x4422a8
mov dword [ebp - 0x20], edi
xor ecx, ecx
mov edi, dword [ebp + ecx*8 - 0x1a4]
sub edi, dword [ebp + ecx*8 - 0x128]
imul edi, dword [ebp + ecx*8 - 0xac]
add eax, edi
mov edi, dword [ebp + ecx*8 - 0x1a0]
sub edi, dword [ebp + ecx*8 - 0x124]
imul edi, dword [ebp + ecx*8 - 0xa8]
inc ecx
add eax, edi
cmp ecx, edx
jb 0x4420a4
mov edi, dword [ebp - 0x20]
lea edx, [ecx + ecx + 1]
lea ecx, [edx - 1]
cmp ecx, dword [ebp - 0x24]
jae 0x442104
mov ecx, dword [ebp + edx*4 - 0x1a8]
sub ecx, dword [ebp + edx*4 - 0x12c]
imul ecx, dword [ebp + edx*4 - 0xb0]
add eax, ecx
jmp 0x442104
xor eax, eax
add eax, dword [ebp - 0x388]
lea edx, [ebp - 0x1a4]
mov dword [ebp - 0x1b4], eax
lea eax, [ebp - 0x390]
push eax
push edx
push 0
call fcn.004636e0
add esp, 0xc
jmp 0x442139
mov eax, dword [ebp - 0x1a8]
add dword [ebp - 0x1b4], eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
dec esi
mov dword [eax + 0x128], 0
jmp 0x442038
nop
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], edi
movzx ecx, byte [eax + 0x175]
jmp 0x441bf4
mov dword [ebp - 0x1c8], 1
mov dword [ebp - 0x2c], 0
jmp 0x441f1f
cmp dword [ebp - 0x398], 1
jg 0x44223c
test cl, 0x10
jne 0x4421ab
mov eax, dword [ebp - 0x1b0]
mov edx, dword [ebp - 0x388]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1b4], edx
mov dword [ebp - 0x1d4], 1
jmp 0x441e99
push dword [ebp - 0x14]
lea eax, [ebp - 0x1b4]
push eax
call fcn.00463f10
add esp, 8
test eax, eax
jne 0x4421ea
mov eax, dword [ebp - 0x1b0]
xor ecx, ecx
mov edx, dword [ebp - 0x388]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1b4], edx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x1d4], 1
jmp 0x441e99
cmp dword [ebp - 0x2c], 0
je 0x442223
mov eax, dword [ebp - 0x1b0]
mov esi, 1
mov edx, dword [ebp - 0x388]
xor ecx, ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1b4], edx
mov dword [ebp - 0x1c8], esi
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x1c], ecx
jmp 0x441e99
mov eax, dword [ebp - 0x38c]
test eax, eax
mov dword [ebp - 0x398], eax
jg 0x441d4e
jmp 0x441e73
mov esi, dword [ebp - 0x398]
mov edx, 1
lea eax, [edx*8]
lea eax, [eax + edx*4]
mov edi, dword [ebp + eax - 0x380]
cmp edi, 1
jne 0x441d4e
cmp edi, dword [ebp + eax - 0x384]
jg 0x441d4e
mov edi, dword [ebp + eax - 0x390]
imul edi, dword [ebp + eax - 0x388]
cmp edi, dword [ebp + eax - 0x37c]
jne 0x441d4e
inc edx
cmp edx, esi
jl 0x442247
jmp 0x442182
mov ecx, 1
jmp 0x441e4e
mov eax, 1
jmp 0x441dc2
mov edx, 1
jmp 0x4420e0
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x2c], 0
je 0x4424af
mov eax, dword [ebp - 0x18]
lea edx, [eax + 3]
and edx, dword [ebp - 0x30]
test dl, 3
jne 0x44236e
cmp dword [ebp - 0x18], 4
je 0x44235c
cmp dword [ebp - 0x18], 8
jne 0x442300
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
bswap edx
bswap ecx
mov dword [ebp - 0x1e8], edx
mov dword [ebp - 0x1e4], ecx
jmp 0x4424a4
cmp dword [ebp - 0x18], 0x10
jne 0x442345
mov dword [ebp - 0x1d4], esi
mov esi, dword [ebp - 0x30]
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 8]
mov esi, dword [esi + 0xc]
bswap esi
mov dword [ebp - 0x1e8], esi
bswap ecx
bswap edx
bswap eax
mov dword [ebp - 0x1e4], ecx
mov dword [ebp - 0x1e0], edx
mov dword [ebp - 0x1dc], eax
mov esi, dword [ebp - 0x1d4]
jmp 0x4424a4
mov eax, dword [ebp - 0x30]
movsx edx, word [eax]
bswap edx
shr edx, 0x10
mov word [ebp - 0x1e8], dx
jmp 0x4424a4
mov eax, dword [ebp - 0x30]
mov edx, dword [eax]
bswap edx
mov dword [ebp - 0x1e8], edx
jmp 0x4424a4
cmp dword [ebp - 0x18], 1
je 0x44327a
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
test edx, edx
jle 0x4424a4
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, 1
mov dword [ebp - 0x1bc], eax
test eax, eax
jbe 0x44326b
mov edx, dword [ebp - 0x18]
xor eax, eax
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x20], edi
add ecx, edx
mov dword [ebp - 0x1c0], ecx
lea edx, [ebp + edx - 0x1e8]
mov dword [ebp - 0x1c4], edx
mov edx, eax
nop
lea esi, [esi]
mov esi, dword [ebp - 0x1c0]
mov edi, dword [ebp - 0x30]
movzx ecx, byte [edx + esi - 1]
movzx edi, byte [edi + eax*2]
mov byte [ebp + eax*2 - 0x1e8], cl
xor edi, ecx
movzx ecx, byte [edx + esi - 1]
xor ecx, edi
mov edi, dword [ebp - 0x1c4]
mov byte [edx + edi - 1], cl
mov ecx, dword [ebp - 0x30]
movzx edi, byte [ecx + eax*2 + 1]
movzx ecx, byte [edx + esi - 2]
xor edi, ecx
mov byte [ebp + eax*2 - 0x1e7], cl
inc eax
movzx ecx, byte [edx + esi - 2]
mov esi, dword [ebp - 0x1c4]
mov dword [ebp - 0x1b8], edi
xor ecx, dword [ebp - 0x1b8]
mov byte [edx + esi - 2], cl
add edx, 0xfffffffe
cmp eax, dword [ebp - 0x1bc]
jb 0x4423d0
mov esi, dword [ebp - 0x1d4]
lea eax, [eax + eax + 1]
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x1d8], eax
mov edx, dword [ebp - 0x18]
mov eax, edx
mov ecx, dword [ebp - 0x1d8]
shr eax, 0x1f
add eax, edx
sar eax, 1
lea edx, [ecx - 1]
cmp eax, edx
jbe 0x4424a4
mov dword [ebp - 0x1d4], esi
mov esi, ecx
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x20], edi
movzx edi, byte [edx + esi - 1]
add edx, ecx
sub edx, esi
movzx eax, byte [edx]
xor edi, eax
mov byte [ebp + esi - 0x1e9], al
lea eax, [ebp + ecx - 0x1e8]
sub eax, esi
movzx edx, byte [edx]
xor edx, edi
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
mov byte [eax], dl
lea eax, [ebp - 0x1e8]
mov dword [ebp - 0x30], eax
jmp 0x4424f3
cmp dword [ebp - 0x1c], 0
je 0x4424f3
cmp dword [ebp - 0x1ac], 0x38
je 0x4424f3
lea eax, [ebp - 0x1e8]
push eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
lea edx, [ebp - 0x1b4]
push edx
call fcn.004639c0
add esp, 0x10
test eax, eax
lea edx, [ebp - 0x1e8]
mov dword [ebp - 0x30], edx
je 0x4424f3
push 0
push 0x5f
call fcn.00455f10
add esp, 8
mov eax, dword [ebp - 0x14]
movzx eax, byte [eax + 0x177]
test al, 0x20
je 0x442516
cmp esi, 1
je 0x44328b
mov edx, dword [ebp - 0x14]
and eax, 0xffffffdf
mov byte [edx + 0x177], al
test al, 0x40
jne 0x442042
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax + 0x3c]
mov dword [ebp - 0x1f4], edx
mov eax, dword [eax + 0x44]
add edx, ecx
cmp eax, edx
jae 0x442ba3
mov edx, eax
sub edx, dword [ebp - 0x1f4]
mov dword [ebp - 0x208], edx
cmp dword [ebp - 0x1c8], 0
je 0x4427a2
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x210], edx
mov edx, dword [ebp - 0x1a8]
cmp edx, 2
je 0x442c7d
cmp edx, 4
je 0x4426fd
cmp edx, 8
jne 0x44266d
cmp dword [ebp - 0x208], 0
jle 0x4427c5
sub eax, dword [ebp - 0x1f4]
add eax, 7
mov edx, eax
sar edx, 2
shr edx, 0x1d
add edx, eax
mov eax, dword [ebp - 0x208]
sar edx, 3
mov dword [ebp - 0x3c4], edx
lea ecx, [eax + 7]
mov eax, ecx
sar eax, 2
shr eax, 0x1d
add eax, ecx
sar eax, 3
shr eax, 1
test eax, eax
jbe 0x442c69
mov eax, edx
xor edx, edx
shr eax, 1
mov dword [ebp - 0x3a4], eax
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x20], edi
lea esi, [esi]
mov dword [ebp - 0x3a0], edx
shl edx, 4
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x1f4]
mov edi, dword [eax + edx]
mov esi, dword [eax + edx + 4]
bswap esi
bswap edi
mov dword [ecx + edx], esi
mov dword [ecx + edx + 4], edi
mov esi, dword [eax + edx + 8]
mov eax, dword [eax + edx + 0xc]
bswap eax
bswap esi
mov dword [ecx + edx + 8], eax
mov dword [ecx + edx + 0xc], esi
mov edx, dword [ebp - 0x3a0]
inc edx
cmp edx, dword [ebp - 0x3a4]
jb 0x4425e0
mov esi, dword [ebp - 0x1d4]
lea edx, [edx + edx + 1]
mov edi, dword [ebp - 0x20]
dec edx
cmp edx, dword [ebp - 0x3c4]
jae 0x4427b9
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x1d4], esi
mov eax, dword [ecx + edx*8]
mov esi, dword [ecx + edx*8 + 4]
mov ecx, dword [ebp - 0x1f4]
bswap esi
bswap eax
mov dword [ecx + edx*8], esi
mov dword [ecx + edx*8 + 4], eax
mov esi, dword [ebp - 0x1d4]
jmp 0x4427b9
cmp edx, 0x10
jne 0x4427c5
mov eax, dword [ebp - 0x208]
test eax, eax
jle 0x4427c5
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x20], edi
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x210]
lea esi, [esi]
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x210], edi
mov eax, dword [edi]
mov ecx, dword [edi + 4]
mov edx, dword [edi + 8]
mov edi, dword [edi + 0xc]
bswap eax
mov dword [esi + 0xc], eax
mov eax, dword [ebp - 0x20c]
add eax, 0xfffffff0
bswap edi
mov dword [esi], edi
bswap edx
bswap ecx
mov edi, dword [ebp - 0x210]
mov dword [esi + 4], edx
add edi, 0x10
mov dword [esi + 8], ecx
add esi, 0x10
test eax, eax
jg 0x4426a0
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
mov edx, dword [eax + 0x3c]
mov dword [ebp - 0x1f4], edx
jmp 0x4427c5
cmp dword [ebp - 0x208], 0
jle 0x4427c5
sub eax, dword [ebp - 0x1f4]
add eax, 3
mov edx, eax
sar edx, 1
shr edx, 0x1e
add edx, eax
mov eax, dword [ebp - 0x208]
sar edx, 2
mov dword [ebp - 0x3c0], edx
lea ecx, [eax + 3]
mov eax, ecx
sar eax, 1
shr eax, 0x1e
add eax, ecx
sar eax, 2
shr eax, 1
test eax, eax
jbe 0x442c73
mov eax, edx
xor edx, edx
mov dword [ebp - 0x1d4], esi
shr eax, 1
mov dword [ebp - 0x20], edi
mov ecx, dword [ebp - 0x1f4]
mov esi, dword [ebp - 0x30]
mov edi, dword [esi + edx*8]
bswap edi
mov dword [ecx + edx*8], edi
mov edi, dword [esi + edx*8 + 4]
bswap edi
mov dword [ecx + edx*8 + 4], edi
inc edx
cmp edx, eax
jb 0x44275c
mov dword [ebp - 0x1f4], ecx
lea eax, [edx + edx + 1]
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
dec eax
cmp eax, dword [ebp - 0x3c0]
jae 0x4427b9
mov edx, dword [ebp - 0x30]
mov ecx, dword [edx + eax*4]
mov edx, dword [ebp - 0x1f4]
bswap ecx
mov dword [edx + eax*4], ecx
jmp 0x4427b9
push dword [ebp - 0x208]
push dword [ebp - 0x30]
push dword [ebp - 0x1f4]
call fcn.004a2c20
add esp, 0xc
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x3c]
mov dword [ebp - 0x1f4], edx
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1f4]
add eax, dword [ebp - 0x208]
push edx
mov dword [edx + 0x3c], eax
call fcn.00469100
add esp, 4
test eax, eax
jne 0x442f2a
mov eax, dword [ebp - 0x14]
test byte [eax + 0x178], 2
je 0x442e91
add dword [eax + 0x98], 1
mov edx, dword [eax + 0x40]
adc dword [eax + 0x9c], 0
and byte [eax + 0x177], 0xfb
mov dword [ebp - 0x394], edx
test edx, edx
jne 0x442828
mov edx, eax
mov eax, dword [edx + 0x38]
mov dword [ebp - 0x394], eax
mov dword [edx + 0x40], eax
mov eax, dword [ebp - 0x14]
test byte [eax + 0x170], 1
je 0x44284a
test byte [eax + 0x173], 8
je 0x44284a
cmp byte [eax + 0x15d], 2
je 0x442d33
mov edx, eax
mov eax, dword [ebp - 0x394]
mov dword [ebp - 0x1f4], eax
mov dword [edx + 0x3c], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x394]
mov eax, dword [ebp - 0x18]
add edx, dword [ecx + 0xf8]
mov dword [ecx + 0x44], edx
mov ecx, dword [ebp - 0x208]
sub eax, ecx
add dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0x1f4]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x394], edx
add eax, ecx
cmp edx, eax
jae 0x442e7f
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x20], edi
mov eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, edx
sub edi, eax
cmp dword [ebp - 0x1c8], 0
je 0x442a91
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x1f0], ecx
mov ecx, dword [ebp - 0x1a8]
cmp ecx, 2
je 0x442d66
cmp ecx, 4
je 0x442a24
cmp ecx, 8
jne 0x4429a9
test edi, edi
jle 0x442aa1
sub edx, eax
add edx, 7
mov ecx, edx
sar ecx, 2
shr ecx, 0x1d
add ecx, edx
sar ecx, 3
mov dword [ebp - 0x3a8], ecx
shr ecx, 1
test ecx, ecx
jbe 0x442d52
mov dword [ebp - 0x1f4], eax
xor edx, edx
mov dword [ebp - 0x1fc], ecx
mov dword [ebp - 0x3b4], edi
mov dword [ebp - 0x14], esi
mov esi, esi
mov dword [ebp - 0x1f8], edx
shl edx, 4
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x1f4]
mov edi, dword [eax + edx]
mov esi, dword [eax + edx + 4]
bswap esi
bswap edi
mov dword [ecx + edx], esi
mov dword [ecx + edx + 4], edi
mov esi, dword [eax + edx + 8]
mov eax, dword [eax + edx + 0xc]
bswap eax
bswap esi
mov dword [ecx + edx + 8], eax
mov dword [ecx + edx + 0xc], esi
mov edx, dword [ebp - 0x1f8]
inc edx
cmp edx, dword [ebp - 0x1fc]
jb 0x442920
mov eax, ecx
lea ecx, [edx + edx + 1]
mov edi, dword [ebp - 0x3b4]
mov esi, dword [ebp - 0x14]
dec ecx
cmp ecx, dword [ebp - 0x3a8]
jae 0x442a9e
mov dword [ebp - 0x3b4], edi
mov edi, dword [ebp - 0x30]
mov edx, dword [edi + ecx*8]
mov edi, dword [edi + ecx*8 + 4]
bswap edi
mov dword [eax + ecx*8], edi
bswap edx
mov dword [eax + ecx*8 + 4], edx
mov edi, dword [ebp - 0x3b4]
jmp 0x442a9e
cmp ecx, 0x10
jne 0x442aa1
mov edx, edi
test edi, edi
jle 0x442aa1
mov dword [ebp - 0x3b4], edi
mov dword [ebp - 0x14], esi
mov edi, dword [ebp - 0x1f0]
nop
lea esi, [esi]
mov dword [ebp - 0x1ec], edx
mov dword [ebp - 0x1f0], edi
mov edx, dword [edi]
mov esi, dword [edi + 4]
mov ecx, dword [edi + 8]
mov edi, dword [edi + 0xc]
bswap edx
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x1ec]
add edx, 0xfffffff0
bswap edi
mov dword [eax], edi
bswap ecx
bswap esi
mov edi, dword [ebp - 0x1f0]
mov dword [eax + 4], ecx
add edi, 0x10
mov dword [eax + 8], esi
add eax, 0x10
test edx, edx
jg 0x4429d0
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x3b4]
mov eax, dword [esi + 0x3c]
jmp 0x442aa1
test edi, edi
jle 0x442aa1
sub edx, eax
add edx, 3
mov ecx, edx
sar ecx, 1
shr ecx, 0x1e
add ecx, edx
sar ecx, 2
mov dword [ebp - 0x3ac], ecx
shr ecx, 1
test ecx, ecx
jbe 0x442d5c
mov dword [ebp - 0x14], esi
xor edx, edx
mov dword [ebp - 0x3b4], edi
mov esi, dword [ebp - 0x30]
mov edi, dword [esi + edx*8]
bswap edi
mov dword [eax + edx*8], edi
mov edi, dword [esi + edx*8 + 4]
bswap edi
mov dword [eax + edx*8 + 4], edi
inc edx
cmp edx, ecx
jb 0x442a57
mov edi, dword [ebp - 0x3b4]
lea edx, [edx + edx + 1]
mov esi, dword [ebp - 0x14]
dec edx
cmp edx, dword [ebp - 0x3ac]
jae 0x442a9e
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ecx + edx*4]
bswap ecx
mov dword [eax + edx*4], ecx
jmp 0x442a9e
push edi
push dword [ebp - 0x30]
push eax
call fcn.004a2c20
add esp, 0xc
mov eax, dword [esi + 0x3c]
push esi
add eax, edi
mov dword [esi + 0x3c], eax
call fcn.00469100
add esp, 4
test eax, eax
jne 0x442dfc
add dword [esi + 0x98], 1
mov edx, dword [esi + 0x40]
adc dword [esi + 0x9c], 0
and byte [esi + 0x177], 0xfb
test edx, edx
jne 0x442ad9
mov edx, dword [esi + 0x38]
mov dword [esi + 0x40], edx
test byte [esi + 0x170], 1
je 0x442af8
test byte [esi + 0x173], 8
je 0x442af8
cmp byte [esi + 0x15d], 2
je 0x442deb
mov dword [esi + 0x3c], edx
mov eax, edx
mov ecx, dword [ebp - 0x18]
sub ecx, edi
add dword [ebp - 0x30], edi
add edx, dword [esi + 0xf8]
mov dword [esi + 0x44], edx
mov dword [ebp - 0x18], ecx
lea edi, [eax + ecx]
cmp edx, edi
jb 0x4428a2
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x1f4], eax
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
cmp dword [ebp - 0x204], 0
je 0x442b65
test byte [ebp - 0x1f4], 3
jne 0x442b5b
test byte [ebp - 0x30], 3
jne 0x442b5b
mov dword [ebp - 0x204], 1
cmp dword [ebp - 0x18], 4
je 0x442bb2
jmp 0x442bda
xor eax, eax
mov dword [ebp - 0x204], eax
jmp 0x442bda
cmp dword [ebp - 0x39c], 0
je 0x442c28
test byte [ebp - 0x1f4], 0x1f
jne 0x442b96
test byte [ebp - 0x30], 0x1f
jne 0x442b96
mov dword [ebp - 0x39c], 1
cmp dword [ebp - 0x18], 8
je 0x442bfa
jmp 0x442c28
xor eax, eax
mov dword [ebp - 0x39c], eax
jmp 0x442c28
cmp dword [ebp - 0x204], 0
je 0x442beb
cmp dword [ebp - 0x18], 4
jne 0x442bda
cmp dword [ebp - 0x1c8], 0
jne 0x442fb0
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x1f4]
mov edx, dword [eax]
mov eax, dword [ebp - 0x14]
mov dword [ecx], edx
mov edx, dword [eax + 0x3c]
mov dword [ebp - 0x1f4], edx
jmp 0x442c55
cmp dword [ebp - 0x18], 8
jne 0x442c28
cmp dword [ebp - 0x39c], 0
jne 0x442bfa
jmp 0x442c28
cmp dword [ebp - 0x39c], 0
je 0x442c28
cmp dword [ebp - 0x18], 8
jne 0x442c28
cmp dword [ebp - 0x1c8], 0
jne 0x442fb0
mov edx, dword [ebp - 0x30]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov edx, dword [ebp - 0x1f4]
mov dword [edx], eax
mov eax, dword [ebp - 0x14]
mov dword [edx + 4], ecx
mov ecx, dword [eax + 0x3c]
mov dword [ebp - 0x1f4], ecx
jmp 0x442c55
cmp dword [ebp - 0x1c8], 0
jne 0x442fb0
push dword [ebp - 0x18]
push dword [ebp - 0x30]
push dword [ebp - 0x1f4]
call fcn.004a2c20
add esp, 0xc
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x3c]
mov dword [ebp - 0x1f4], edx
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1f4]
add eax, dword [ebp - 0x18]
mov dword [edx + 0x3c], eax
jmp 0x442042
mov edx, 1
jmp 0x442634
mov eax, 1
jmp 0x442786
cmp dword [ebp - 0x208], 0
jle 0x4427c5
sub eax, dword [ebp - 0x1f4]
inc eax
mov edx, eax
shr edx, 0x1f
add edx, eax
mov eax, dword [ebp - 0x208]
sar edx, 1
mov dword [ebp - 0x3bc], edx
lea ecx, [eax + 1]
mov eax, ecx
shr eax, 0x1f
add eax, ecx
sar eax, 1
shr eax, 1
test eax, eax
jbe 0x442d2c
mov eax, edx
xor edx, edx
mov dword [ebp - 0x1d4], esi
shr eax, 1
mov dword [ebp - 0x20], edi
mov ecx, dword [ebp - 0x1f4]
mov esi, dword [ebp - 0x30]
movsx edi, word [esi + edx*4]
bswap edi
shr edi, 0x10
mov word [ecx + edx*4], di
movsx edi, word [esi + edx*4 + 2]
bswap edi
shr edi, 0x10
mov word [ecx + edx*4 + 2], di
inc edx
cmp edx, eax
jb 0x442cd0
mov dword [ebp - 0x1f4], ecx
lea eax, [edx + edx + 1]
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
dec eax
cmp eax, dword [ebp - 0x3bc]
jae 0x4427b9
mov edx, dword [ebp - 0x30]
movsx ecx, word [edx + eax*2]
mov edx, dword [ebp - 0x1f4]
bswap ecx
shr ecx, 0x10
mov word [edx + eax*2], cx
jmp 0x4427b9
mov eax, 1
jmp 0x442d04
mov edx, dword [ebp - 0x394]
mov ecx, eax
lea eax, [edx + 1]
mov dword [ecx + 0x3c], eax
mov byte [edx], 0x20
mov eax, dword [ecx + 0x3c]
mov dword [ebp - 0x1f4], eax
jmp 0x44285b
mov ecx, 1
jmp 0x442976
mov edx, 1
jmp 0x442a7b
test edi, edi
jle 0x442aa1
sub edx, eax
inc edx
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sar ecx, 1
mov dword [ebp - 0x3b0], ecx
shr ecx, 1
test ecx, ecx
jbe 0x442de4
mov dword [ebp - 0x14], esi
xor edx, edx
mov dword [ebp - 0x3b4], edi
mov esi, dword [ebp - 0x30]
movsx edi, word [esi + edx*4]
bswap edi
shr edi, 0x10
mov word [eax + edx*4], di
movsx edi, word [esi + edx*4 + 2]
bswap edi
shr edi, 0x10
mov word [eax + edx*4 + 2], di
inc edx
cmp edx, ecx
jb 0x442d94
mov edi, dword [ebp - 0x3b4]
lea edx, [edx + edx + 1]
mov esi, dword [ebp - 0x14]
dec edx
cmp edx, dword [ebp - 0x3b0]
jae 0x442a9e
mov ecx, dword [ebp - 0x30]
movsx ecx, word [ecx + edx*2]
bswap ecx
shr ecx, 0x10
mov word [eax + edx*2], cx
jmp 0x442a9e
mov edx, 1
jmp 0x442dc2
lea eax, [edx + 1]
mov dword [esi + 0x3c], eax
mov byte [edx], 0x20
mov eax, dword [esi + 0x3c]
jmp 0x442afd
mov edx, dword [esi + 0x18]
test edx, edx
je 0x442e5f
test byte [edx + 0x44], 2
je 0x442e34
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x442e21
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x174]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0045adb0
add esp, 0x14
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00453e60
add esp, 0x10
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp dword [ebp - 0x204], 0
jne 0x442b37
jmp 0x442b65
mov esi, eax
mov eax, dword [esi + 0x18]
test eax, eax
je 0x442f05
test byte [eax + 0x44], 2
je 0x442ed5
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 0x442ebd
xor edx, edx
mov dword [eax + 4], edx
mov dword [esi + 0x64], edx
mov eax, 0x42
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x42
push eax
movzx edx, byte [esi + 0x174]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0045adb0
add esp, 0x14
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
mov eax, 0x42
push eax
push eax
push 1
call fcn.00453e60
add esp, 0x10
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
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 0x442f90
test byte [edx + 0x44], 2
je 0x442f65
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x442f52
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x174]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0045adb0
add esp, 0x14
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00453e60
add esp, 0x10
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [ebp - 0x1a8]
cmp eax, 2
je 0x4431cc
cmp eax, 4
je 0x443059
cmp eax, 8
jne 0x442fdc
cmp dword [ebp - 0x18], 0
jg 0x4430ec
jmp 0x442c55
cmp eax, 0x10
jne 0x442c55
mov eax, dword [ebp - 0x18]
test eax, eax
jle 0x442c55
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x20], edi
mov esi, dword [ebp - 0x1f4]
mov edi, dword [ebp - 0x30]
mov dword [ebp - 0x3b8], eax
mov dword [ebp - 0x30], edi
mov eax, dword [edi]
mov ecx, dword [edi + 4]
mov edx, dword [edi + 8]
mov edi, dword [edi + 0xc]
bswap eax
mov dword [esi + 0xc], eax
mov eax, dword [ebp - 0x3b8]
add eax, 0xfffffff0
bswap edi
mov dword [esi], edi
bswap edx
bswap ecx
mov edi, dword [ebp - 0x30]
mov dword [esi + 4], edx
add edi, 0x10
mov dword [esi + 8], ecx
add esi, 0x10
test eax, eax
jg 0x443002
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
mov edx, dword [eax + 0x3c]
mov dword [ebp - 0x1f4], edx
jmp 0x442c55
cmp dword [ebp - 0x18], 0
jle 0x442c55
mov eax, dword [ebp - 0x18]
lea edx, [eax + 3]
mov eax, edx
sar eax, 1
shr eax, 0x1e
add eax, edx
sar eax, 2
mov dword [ebp - 0x3d8], eax
shr eax, 1
test eax, eax
jbe 0x4430e5
mov dword [ebp - 0x1d4], esi
xor edx, edx
mov dword [ebp - 0x20], edi
mov ecx, dword [ebp - 0x1f4]
mov esi, dword [ebp - 0x30]
mov edi, dword [esi + edx*8]
bswap edi
mov dword [ecx + edx*8], edi
mov edi, dword [esi + edx*8 + 4]
bswap edi
mov dword [ecx + edx*8 + 4], edi
inc edx
cmp edx, eax
jb 0x443095
mov dword [ebp - 0x30], esi
lea eax, [edx + edx + 1]
mov dword [ebp - 0x1f4], ecx
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
dec eax
cmp eax, dword [ebp - 0x3d8]
jae 0x442c49
mov edx, dword [ebp - 0x30]
mov ecx, dword [edx + eax*4]
mov edx, dword [ebp - 0x1f4]
bswap ecx
mov dword [edx + eax*4], ecx
jmp 0x442c49
mov eax, 1
jmp 0x4430c2
mov eax, dword [ebp - 0x18]
lea edx, [eax + 7]
mov ecx, edx
sar ecx, 2
shr ecx, 0x1d
add ecx, edx
sar ecx, 3
mov dword [ebp - 0x3d4], ecx
shr ecx, 1
test ecx, ecx
jbe 0x4431c5
xor eax, eax
mov dword [ebp - 0x3c8], eax
mov dword [ebp - 0x3cc], ecx
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x20], edi
mov eax, dword [ebp - 0x30]
lea esi, [esi]
mov edx, dword [ebp - 0x3c8]
shl edx, 4
mov ecx, dword [ebp - 0x1f4]
mov edi, dword [eax + edx]
mov esi, dword [eax + edx + 4]
bswap esi
bswap edi
mov dword [ecx + edx], esi
mov dword [ecx + edx + 4], edi
mov edi, dword [eax + edx + 8]
mov esi, dword [eax + edx + 0xc]
bswap esi
bswap edi
mov dword [ecx + edx + 8], esi
mov dword [ecx + edx + 0xc], edi
mov edx, dword [ebp - 0x3c8]
inc edx
mov dword [ebp - 0x3c8], edx
cmp edx, dword [ebp - 0x3cc]
jb 0x443130
mov dword [ebp - 0x30], eax
mov eax, edx
lea edx, [eax + eax + 1]
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
dec edx
cmp edx, dword [ebp - 0x3d4]
jae 0x442c49
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x1d4], esi
mov eax, dword [ecx + edx*8]
mov esi, dword [ecx + edx*8 + 4]
mov ecx, dword [ebp - 0x1f4]
bswap esi
bswap eax
mov dword [ecx + edx*8], esi
mov dword [ecx + edx*8 + 4], eax
mov esi, dword [ebp - 0x1d4]
jmp 0x442c49
mov edx, 1
jmp 0x44318c
cmp dword [ebp - 0x18], 0
jle 0x442c55
mov eax, dword [ebp - 0x18]
lea edx, [eax + 1]
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, 1
mov dword [ebp - 0x3d0], eax
shr eax, 1
test eax, eax
jbe 0x443264
mov dword [ebp - 0x1d4], esi
xor edx, edx
mov dword [ebp - 0x20], edi
mov ecx, dword [ebp - 0x1f4]
mov esi, dword [ebp - 0x30]
movsx edi, word [esi + edx*4]
bswap edi
shr edi, 0x10
mov word [ecx + edx*4], di
movsx edi, word [esi + edx*4 + 2]
bswap edi
shr edi, 0x10
mov word [ecx + edx*4 + 2], di
inc edx
cmp edx, eax
jb 0x443205
mov dword [ebp - 0x30], esi
lea eax, [edx + edx + 1]
mov dword [ebp - 0x1f4], ecx
mov esi, dword [ebp - 0x1d4]
mov edi, dword [ebp - 0x20]
dec eax
cmp eax, dword [ebp - 0x3d0]
jae 0x442c49
mov edx, dword [ebp - 0x30]
movsx ecx, word [edx + eax*2]
mov edx, dword [ebp - 0x1f4]
bswap ecx
shr ecx, 0x10
mov word [edx + eax*2], cx
jmp 0x442c49
mov eax, 1
jmp 0x44323c
mov dword [ebp - 0x1d8], 1
jmp 0x44244c
mov eax, dword [ebp - 0x30]
movzx edx, byte [eax]
mov byte [ebp - 0x1e8], dl
jmp 0x4424a4
mov edx, dword [ebx + 0xc]
cmp byte [edx], 1
jne 0x44250a
and eax, 0xffffffdf
cmp dword [ebp - 0x1c8], 0
jne 0x4432ba
mov edx, dword [ebp - 0x14]
cmp byte [edx + 0x15c], 1
je 0x4432c8
mov byte [edx + 0x177], al
jmp 0x442516
mov edx, dword [ebp - 0x14]
mov byte [edx + 0x177], al
jmp 0x442516
test byte [edx + 0x173], 8
je 0x4432ec
test byte [edx + 0x170], 1
je 0x4432e3
cmp byte [edx + 0x15d], 2
je 0x4432af
test byte [edx + 0x179], 0x40
jne 0x4432af
mov ecx, edx
mov edx, dword [ebp - 0x18]
cmp edx, dword [ecx + 0xf8]
jne 0x443323
add edx, dword [ecx + 0x3c]
cmp edx, dword [ecx + 0x44]
ja 0x443323
mov edx, ecx
or eax, 0x40
mov ecx, dword [ebp - 0x30]
mov dword [edx + 0x80], ecx
mov ecx, dword [ebp - 0x18]
mov dword [edx + 0x138], ecx
mov byte [edx + 0x177], al
jmp 0x442516
mov edx, ecx
mov byte [edx + 0x177], al
jmp 0x442516
mov esi, dword [ebp - 0x14]
cmp dword [esi + 0x128], 0
je 0x443352
mov eax, dword [esi + 0x40]
mov dword [esi + 0x128], 0
cmp eax, dword [esi + 0x3c]
je 0x44342b
test byte [esi + 0x177], 0x40
jne 0x44352a
push esi
call fcn.00469100
add esp, 4
test eax, eax
je 0x4433d3
mov edx, dword [esi + 0x18]
test edx, edx
je 0x4434ea
test byte [edx + 0x44], 2
je 0x4433a8
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x443395
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x174]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0045adb0
add esp, 0x14
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [esi + 0x98]
add eax, 1
mov ecx, dword [esi + 0x9c]
mov edi, dword [esi + 0x54]
adc ecx, 0
and byte [esi + 0x177], 0xfb
mov dword [esi + 0x98], eax
test edi, edi
mov dword [esi + 0x9c], ecx
je 0x44342b
movsx edx, byte [esi + 0x15f]
add edx, 0xfffffffb
cmp edx, 0xc
ja case.default.0x443412
jmp dword [edx*4 + 0x4abb74]
mov dword [edi], eax
mov dword [edi + 4], ecx
jmp 0x44342b
mov dword [edi], eax
jmp 0x44342b
mov word [edi], ax
jmp 0x44342b
mov byte [edi], al
push dword [esi + 0x100]
and byte [esi + 0x174], 0xdc
and byte [esi + 0x176], 0xf7
call fcn.00457680
add esp, 4
test eax, eax
je 0x4434b2
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44350a
test byte [edx + 0x44], 2
je 0x443487
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x443474
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x174]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0045adb0
add esp, 0x14
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edx, dword [ebp - 0x200]
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov dword [edx + 4], 0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, 0x30
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00453e60
add esp, 0x10
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 0
call fcn.00453e60
add esp, 0x10
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov edi, dword [esi + 0x138]
mov dword [ebp - 0x3d4], edi
mov edi, dword [esi + 0xf8]
mov eax, edi
cdq
mov dword [ebp - 0x3d8], edx
push dword [esi + 0x9c]
push dword [esi + 0x98]
push edx
push edi
call fcn.0048f310
sub eax, edi
mov ecx, dword [esi + 0xe4]
sbb edx, dword [ebp - 0x3d8]
mov dword [ebp - 0x3cc], edx
lea edx, [ebp - 0x3cc]
push 0
push edx
push eax
mov dword [ebp - 0x3d0], eax
push ecx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [ebp - 0x3d0], eax
cmp eax, 0xffffffff
je 0x4436f8
mov ecx, dword [ebp - 0x3cc]
mov edx, 0xffffffff
sub eax, edx
sub ecx, edx
or eax, ecx
je 0x4436c6
test byte [esi + 0x173], 8
je 0x4435c8
test byte [esi + 0x170], 1
je 0x4435c8
cmp byte [esi + 0x15d], 2
je 0x4436a3
push dword [ebp - 0x3d4]
push dword [esi + 0x80]
push esi
call fcn.00467980
add esp, 0xc
cmp eax, 0xffffffff
je 0x4436c6
cmp edi, dword [ebp - 0x3d4]
jle 0x443661
sub edi, dword [ebp - 0x3d4]
test byte [esi + 0x172], 0x40
je 0x44360a
push edi
push 0x20
push dword [esi + 0x38]
call fcn.004a2ae0
jmp 0x443615
push edi
push 0
push dword [esi + 0x38]
call fcn.004a2ae0
add esp, 0xc
movzx eax, byte [esi + 0x170]
cmp byte [esi + 0x15e], 2
je 0x4436dc
test al, 4
je 0x443652
test byte [esi + 0x172], 0x40
je 0x443652
test byte [esi + 0x173], 8
je 0x443652
mov eax, dword [esi + 0x38]
mov byte [eax + edi - 2], 0xd
mov edx, dword [esi + 0x38]
mov byte [edx + edi - 1], 0xa
push edi
push dword [esi + 0x38]
push esi
call fcn.00467980
add esp, 0xc
jmp 0x443697
test byte [esi + 0x170], 4
je 0x44369c
test byte [esi + 0x172], 0x40
je 0x44369c
test byte [esi + 0x173], 8
je 0x44369c
mov eax, dword [esi + 0x38]
push 2
mov byte [eax], 0xd
mov edx, dword [esi + 0x38]
mov byte [edx + 1], 0xa
push dword [esi + 0x38]
push esi
call fcn.00467980
add esp, 0xc
cmp eax, 0xffffffff
je 0x4436c6
xor eax, eax
jmp 0x443368
push 1
mov byte [ebp - 0x3d8], 0x20
lea eax, [ebp - 0x3d8]
push eax
push esi
dec edi
call fcn.00467980
add esp, 0xc
cmp eax, 0xffffffff
jne 0x4435c8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + 0xe8], eax
mov eax, 0x26
jmp 0x443368
test al, 4
jne 0x44362c
mov eax, dword [esi + 0x38]
mov byte [eax + edi - 1], 0xa
movzx eax, byte [esi + 0x170]
jmp 0x44362c
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x443715
mov eax, 0xffffffff
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x3cc], eax
jmp 0x4436c6
mov eax, dword [ebp - 0x3d0]
mov ecx, dword [ebp - 0x3cc]
jmp 0x443598
mov esi, dword [ebp - 0x14]
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44378c
test byte [edx + 0x44], 2
je 0x443761
mov dword [edx + 0x38], eax
mov edx, dword [esi + 0x18]
mov dword [edx + 0x3c], eax
mov edx, dword [esi + 0x64]
test edx, edx
je 0x44374e
xor ecx, ecx
mov dword [edx + 4], ecx
mov dword [esi + 0x64], ecx
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push eax
movzx edx, byte [esi + 0x174]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push esi
call fcn.0045adb0
add esp, 0x14
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push esi
push eax
push eax
push 1
call fcn.00453e60
add esp, 0x10
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
xor eax, eax
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1cc]
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret