Function at 0x42e247
Capabilities:
Encode data using xor

Disassembly:
push dword [esp + 4]
call fcn.0042b360
add esp, 4
test al, al
je 0x42ba30
mov al, 1
ret
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xc4
push eax
mov dword [ebp - 0x1c], esp
push eax
mov dword [ebp - 0x10], esp
sub esp, 0x20
mov ebx, esp
push eax
mov dword [ebp - 0x48], esp
sub esp, 0x40
mov dword [ebp - 0x38], esp
sub esp, 0x40
mov eax, esp
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x14], eax
push eax
mov dword [ebp - 0x44], esp
push eax
mov dword [ebp - 0x54], esp
push eax
mov edi, esp
sub esp, 0x28
mov dword [ebp - 0x24], esp
sub esp, 8
mov dword [ebp - 0x5c], esp
sub esp, 8
mov dword [ebp - 0xb8], esp
sub esp, 8
mov dword [ebp - 0x50], esp
sub esp, 0x24
mov esi, esp
mov dword [ebp - 0xd0], 0x11801fe7
mov dword [ebp - 0xcc], 0x15861385
mov dword [ebp - 0xc8], 0x98a17f7
mov dword [ebp - 0xc4], 0xdfa0b94
mov dword [ebp - 0xc0], 0x19a0fef
mov dword [ebp - 0xbc], 0x5020398
mov eax, 0x14cf3645
nop
nop
nop
nop
nop
nop
movzx ecx, byte [ebp + eax - 0x14cf3715]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0xa7
mov byte [ebp + eax - 0x14cf3715], cl
inc eax
cmp eax, 0x14cf365d
jne 0x42bad0
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x40], edi
mov dword [ebp - 0xb0], 0x93409174
mov dword [ebp - 0xac], 0xaf71ad71
mov dword [ebp - 0xa8], 0xab79a971
mov dword [ebp - 0xa4], 0xa774a548
mov dword [ebp - 0xa0], 0xa346a149
mov dword [ebp - 0x9c], 0xbf7fbd69
mov dword [ebp - 0x98], 0xbb62b97b
mov dword [ebp - 0x94], 0xb760b56d
mov dword [ebp - 0x90], 0xb356b16d
mov dword [ebp - 0x8c], 0x4f994d9f
mov dword [ebp - 0x88], 0x4ba64996
mov dword [ebp - 0x84], 0x478745ab
mov dword [ebp - 0x80], 0x439f4192
mov dword [ebp - 0x7c], 0x5fb05db8
mov dword [ebp - 0x78], 0x5bae59b9
mov dword [ebp - 0x74], 0x57ab55da
mov dword [ebp - 0x70], 0x538151b4
mov dword [ebp - 0x6c], 0x6f936de0
mov dword [ebp - 0x68], 0x6b9f6989
mov word [ebp - 0x64], 0x6564
mov word [ebp - 0x5e], 0
mov dword [ebp - 0x62], 0
mov eax, 0x5c
mov ecx, 0xa3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [ebp + eax - 0x10c]
mov edx, ecx
xor edx, eax
and edx, edi
xor edx, eax
add dl, 0x34
mov byte [ebp + eax - 0x10c], dl
inc eax
dec ecx
cmp eax, 0xb0
jne case.default.0x42bc12
lea eax, [ebp - 0xd0]
lea ebx, [ebp - 0xb0]
push eax
push ebx
call fcn.0043bb00
add esp, 8
mov edi, eax
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x44cb90]
mov ecx, edi
nop
nop
nop
nop
nop
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne 0x42bc20
sub eax, edi
cmp eax, 0xffffffd9
jge 0x42bc40
mov eax, 0xffffffff
jmp 0x42bc43
xor eax, eax
jmp 0x42cc24
add eax, 0x26
push eax
call fcn.0040ce70
add esp, 4
mov dword [ebp - 0x28], eax
mov dword [ebp - 0xb0], 0x71ab0fb0
mov dword [ebp - 0xac], 0x75dc73e1
mov dword [ebp - 0xa8], 0x79dd77d2
mov dword [ebp - 0xa4], 0x7dc67bd1
mov dword [ebp - 0xa0], 0x61ef7fd9
mov dword [ebp - 0x9c], 0x65c463ce
mov dword [ebp - 0x98], 0x69cf67cf
mov dword [ebp - 0x94], 0x6dfc6b06
mov dword [ebp - 0x90], 0x51c86fc8
mov dword [ebp - 0x8c], 0x5350
mov eax, 0x3d
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [ebp + eax - 0xed]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0xcf
mov byte [ebp + eax - 0xed], cl
inc eax
cmp eax, 0x65
jne 0x42bcc0
movzx ecx, word [edi]
mov eax, dword [ebp - 0x28]
test cx, cx
je 0x42bd11
mov edx, edi
add edx, 2
mov eax, dword [ebp - 0x28]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42bd00
mov word [eax], 0
movzx ecx, word [ebp - 0xb0]
test cx, cx
je 0x42bd41
lea edx, [ebp - 0xae]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42bd30
mov word [eax], 0
jmp dword [0x44cb98]
jmp dword [0x44cba0]
mov ebx, dword [ebp - 0x20]
mov dword [ebx], 0x6d181609
mov dword [ebx + 4], 0x2100069
mov dword [ebx + 8], 0xd1d11cd
mov dword [ebx + 0xc], 0x18cb0476
mov dword [ebx + 0x10], 0x6150878
mov dword [ebx + 0x14], 0x700f30c1
mov dword [ebx + 0x18], 0x578007d
mov dword [ebx + 0x1c], 0x8b05
mov eax, 0x3a9
mov ecx, 0x1de65456
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, ecx
and edi, 0x15c2001a
mov edx, eax
and edx, 0x265
or edx, edi
movzx edi, byte [ebx + eax - 0x3a9]
xor edx, edi
xor edx, 0x57dba99a
add edx, 0xdcc59a6d
mov edi, edx
xor edi, 0xba
and edx, 0x45
add edx, edx
sub edx, edi
mov byte [ebx + eax - 0x3a9], dl
inc eax
dec ecx
cmp eax, 0x3c9
jne 0x42bda0
mov ecx, dword [ebp - 0x4c]
push ebx
call fcn.0042e790
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
xor edi, edi
jmp dword [ecx*4 + 0x44cbe8]
add eax, 8
xor edx, edx
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
setne al
mov dword [ebp - 0x3c], 0
xor edi, edi
xor ebx, ebx
jmp dword [eax*4 + 0x44cbf0]
xor eax, 0xa23aa7be
mov ebx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
mov dword [ebx + ecx + 4], eax
mov edi, dword [ebp - 0x20]
add edi, 8
mov ecx, dword [ebp - 0xb4]
add ecx, 4
mov ecx, dword [ecx]
xor eax, eax
test ecx, ecx
setne al
mov edx, ebx
jmp dword [eax*4 + 0x44cbf0]
mov dword [ebp - 0xb4], ecx
mov ebx, edx
mov edx, dword [ecx]
mov eax, dword [ebp - 0x48]
mov dword [eax], edx
mov ecx, edi
sub ecx, ebx
cmp edi, dword [ebp - 0x3c]
mov dword [ebp - 0x2c], ecx
je 0x42be82
mov eax, ebx
jmp 0x42bf25
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x10], edx
mov ebx, ecx
sar ecx, 3
lea eax, [ecx + 1]
mov edx, ecx
shr edx, 1
add edx, ecx
cmp edx, eax
ja 0x42be9c
mov edx, eax
mov dword [ebp - 0x3c], edx
lea eax, [edx*8]
push eax
call fcn.0040ce70
add esp, 4
mov ecx, dword [ebp - 0x30]
test ecx, ecx
mov edx, dword [ebp - 0x10]
je 0x42bf16
cmp ecx, edi
mov dword [ebp - 0x18], eax
je 0x42bf02
mov eax, ecx
not eax
mov dword [ebp - 0x10], eax
mov ebx, ecx
mov edx, ecx
mov dword [ebp - 0x20], edi
nop
nop
mov edi, ebx
xor edi, ecx
mov ecx, ebx
and ecx, dword [ebp - 0x10]
add ecx, ecx
sub ecx, edi
mov edi, dword [edx]
mov eax, dword [ebp - 0x18]
mov dword [eax + ecx], edi
mov edi, dword [edx + 4]
mov dword [eax + ecx + 4], edi
mov ecx, dword [ebp - 0x30]
mov edi, dword [ebp - 0x20]
mov dword [edx], 0
add ebx, 8
add edx, 8
cmp edx, edi
jne 0x42bed0
push ecx
call fcn.0040ce80
add esp, 4
mov eax, dword [ebp - 0x48]
mov edx, dword [eax]
mov eax, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x3c]
lea ecx, [eax + ecx*8]
mov dword [ebp - 0x3c], ecx
mov edi, eax
add edi, ebx
mov ecx, ebx
mov dword [ebp - 0x20], edi
mov dword [eax + ecx], 0
mov dword [ebp - 0x18], eax
mov dword [eax + ecx + 4], 0
xor ebx, ebx
nop
nop
nop
nop
cmp byte [edx + ebx], 0
lea ebx, [ebx + 1]
jne 0x42bf40
push ebx
mov dword [ebp - 0x10], edx
call fcn.0040ce70
add esp, 4
mov edi, eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
mov dword [eax + ecx], edi
mov ecx, ebx
shr ecx, 2
mov edx, dword [ebp - 0x10]
mov eax, edi
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov edx, ebx
and edx, 0xfffffffc
add eax, edx
mov edi, eax
add edx, dword [ebp - 0x10]
mov ecx, ebx
shr ecx, 1
and ecx, 1
mov eax, edx
mov dword [ebp - 0x30], edi
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, ebx
inc al
test al, 1
jne 0x42bfaf
mov eax, ebx
and eax, 2
movzx ecx, byte [edx + eax]
mov edx, dword [ebp - 0x30]
mov byte [edx + eax], cl
xor eax, eax
cmp ebx, 1
je 0x42be35
mov edx, 0xffffffff
mov ecx, 1
jmp case.default.0x42be59
shr eax, 1
xor eax, edx
mov edx, eax
xor edx, 0x5dc55841
inc ecx
cmp ebx, ecx
je 0x42be30
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax + ecx - 1]
xor eax, edx
mov edx, 0x7354a0c1
mov edi, 0x7354a0c1
test al, 1
je 0x42bff2
mov edi, 0x9eec23e1
shr eax, 1
xor eax, edi
mov edi, 0x9eec23e1
test al, 1
je 0x42c004
mov edi, 0x7354a0c1
shr eax, 1
xor eax, edi
mov edi, 0x9eec23e1
test al, 1
je 0x42c016
mov edi, 0x7354a0c1
shr eax, 1
xor eax, edi
mov edi, 0x9eec23e1
test al, 1
je 0x42c028
mov edi, 0x7354a0c1
shr eax, 1
xor eax, edi
mov edi, 0x9eec23e1
test al, 1
je 0x42c03a
mov edi, 0x7354a0c1
shr eax, 1
xor eax, edi
mov edi, 0x9eec23e1
test al, 1
je 0x42c04c
mov edi, 0x7354a0c1
shr eax, 1
xor eax, edi
mov edi, 0x9eec23e1
test al, 1
je 0x42c05e
mov edi, 0x7354a0c1
shr eax, 1
xor eax, edi
test al, 1
je 0x42bfc0
mov edx, 0x9eec23e1
jmp 0x42bfc0
push dword [ebp - 0x58]
call fcn.0040ce80
mov ecx, dword [ebp - 0x1c]
add esp, 4
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x20], edi
mov eax, dword [ecx]
mov dword [ebp - 0xb0], 0xf4f5f6f7
mov word [ebp - 0xac], 0
xor edi, edi
nop
mov ecx, edi
xor ecx, 0x53
mov edx, edi
or edx, 4
and edx, ecx
mov ecx, edi
xor ecx, 0x2c
lea ecx, [ecx + edx*2]
xor cl, byte [ebp + edi - 0xb0]
add cl, 0x24
mov byte [ebp + edi - 0xb0], cl
inc edi
cmp edi, 6
jne 0x42c0a0
mov ecx, dword [0x450b18]
test ecx, ecx
je 0x42c10c
mov edx, dword [ebp - 0xb0]
xor edi, edi
mov ebx, dword [0x450b1c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x7e776f1
je 0x42c100
inc edi
cmp ecx, edi
jne 0x42c0f0
jmp 0x42c10c
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
jne 0x42c500
mov edi, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x18]
jmp dword [0x44cc08]
xor eax, eax
cmp ebx, edi
sete al
jmp dword [eax*4 + 0x44cc10]
mov dword [ebp - 0x20], edi
mov eax, edi
mov dword [ebp - 0x18], ebx
sub eax, ebx
sar eax, 3
imul eax, eax, 0x421
push eax
call fcn.0040ce70
add esp, 4
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0x14]
mov dword [edx], 0xc30ec125
mov dword [edx + 4], 0xc765c56b
mov dword [edx + 8], 0xcb66c969
mov dword [edx + 0xc], 0xcf5ecd0d
mov dword [edx + 0x10], 0xb376b120
mov dword [edx + 0x14], 0xb722b515
mov dword [edx + 0x18], 0xbb5fb919
mov dword [edx + 0x1c], 0xbf0dbd00
mov dword [edx + 0x20], 0xa307a134
mov dword [edx + 0x24], 0xa70ba505
mov dword [edx + 0x28], 0xab06a914
mov dword [edx + 0x2c], 0xaf0dad03
mov dword [edx + 0x30], 0x933e9131
mov dword [edx + 0x34], 0x9700957a
mov dword [edx + 0x38], 0x9b3c993c
add dword [ebp - 0x34], 0x3c
mov dword [edx + 0x3c], 0x9d9c
mov eax, 0x91ba630
movzx ecx, byte [edx + eax - 0x91ba630]
xor ecx, eax
mov edx, ecx
and edx, 0xd
mov edi, ecx
and edi, 2
mov ebx, edi
xor ebx, 2
imul ebx, edx
or edx, 2
imul edx, edi
xor ecx, 0xf
add ecx, ebx
add ecx, edx
mov edx, dword [ebp - 0x14]
inc cl
mov byte [edx + eax - 0x91ba630], cl
inc eax
cmp eax, 0x91ba670
jne 0x42c1c0
mov ecx, 0xf
mov eax, dword [ebp - 0x38]
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov edi, eax
add edi, 0x3c
mov ecx, 1
mov edx, dword [ebp - 0x34]
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov edi, dword [ebp - 0x44]
push edi
push 0
push 0
push 0x1e
push eax
push 0
call dword [0x450b14]
mov edi, dword [edi]
test edi, edi
jns 0x42c241
mov eax, 0xffffffff
jmp 0x42c244
lea eax, [edi + edi]
push eax
call fcn.0040ce70
add esp, 4
mov ebx, eax
push dword [ebp - 0x44]
push edi
push eax
push 0x1e
push dword [ebp - 0x38]
push 0
call dword [0x450b14]
push 0x60
push 3
push 0x120089
mov edi, dword [ebp - 0x54]
push edi
mov dword [ebp - 0x48], ebx
push ebx
call fcn.00444880
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44cc18]
xor edx, edx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x18]
jmp dword [0x44ccc0]
push dword [ebp - 0x48]
mov edi, edx
call fcn.0040ce80
add esp, 4
mov edx, edi
mov eax, edx
and al, 1
movzx ecx, al
mov eax, edi
jmp dword [ecx*4 + 0x44ccc8]
mov dword [ebp - 0x18], ebx
mov edi, dword [ebp - 0x14]
jmp dword [0x44ccd4]
push 0
mov ebx, dword [ebp - 0x40]
push ebx
push dword [edi]
call fcn.00444bc0
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x14], ecx
jmp dword [eax*4 + 0x44cc20]
mov edi, dword [ebx]
lea eax, [edi + 1]
push eax
call fcn.0040ce70
add esp, 4
push 0
push edi
mov edi, dword [ebp - 0x54]
mov dword [ebp - 0x34], eax
push eax
push dword [edi]
call fcn.00444ca0
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x14], ecx
jmp dword [eax*4 + 0x44cc28]
mov edi, dword [ebx]
mov eax, dword [ebp - 0x34]
mov byte [eax + edi], 0
push 0x20
call fcn.0040ce70
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [ebp - 0x40], eax
mov ecx, eax
push edi
push dword [ebp - 0x34]
call fcn.0042e5a0
movzx eax, al
mov dword [ebp - 0x1c], 0
mov ebx, dword [ebp - 0x10]
jmp dword [eax*4 + 0x44cc30]
mov eax, dword [ebp - 0x24]
mov dword [eax], 0xcfdcc6a3
mov dword [eax + 4], 0xd2ccdcc3
mov dword [eax + 8], 0xcfdba78f
mov dword [eax + 0xc], 0x94b1e8fa
mov dword [eax + 0x10], 0xf6e3ecfc
mov dword [eax + 0x14], 0xf9f98ebb
mov dword [eax + 0x18], 0xf7e9e4fe
mov dword [eax + 0x1c], 0xfff5f497
mov word [eax + 0x20], 0x51fd
mov dword [eax + 0x22], 0
mov byte [eax + 0x26], 0
mov eax, 0xb99ab714
mov edx, 0x466548eb
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x24]
movzx edi, byte [ecx + eax + 0x466548ec]
mov dword [ebp - 0x14], edi
and edi, eax
mov ecx, edi
and ecx, 2
mov ebx, edi
or edi, 2
imul edi, ecx
xor ecx, 2
and ebx, 0x7d
imul ebx, ecx
add edi, ebx
mov ebx, edi
xor ebx, eax
and edi, edx
add edi, edi
sub ebx, edi
add bl, byte [ebp - 0x14]
add bl, 0x9c
mov ecx, dword [ebp - 0x24]
mov byte [ecx + eax + 0x466548ec], bl
inc eax
dec edx
cmp eax, 0xb99ab73b
jne 0x42c3e0
mov ecx, dword [ebp - 0x40]
push dword [ebp - 0x24]
call fcn.0042e790
xor ecx, ecx
test eax, eax
setne cl
mov dword [ebp - 0x1c], 0
mov ebx, dword [ebp - 0x10]
jmp dword [ecx*4 + 0x44cc38]
mov dword [ebp - 0x14], ebx
mov edi, dword [ebp - 0x54]
jmp dword [0x44ccb0]
mov ebx, dword [ebp - 0x40]
mov ecx, ebx
call fcn.0042e910
push ebx
call fcn.0040ce80
add esp, 4
jmp dword [0x44ccb8]
jmp dword [0x44ccb8]
push dword [ebp - 0x34]
call fcn.0040ce80
add esp, 4
mov eax, dword [edi]
mov dword [ebp - 0xb0], 0xf4f5f6f7
mov word [ebp - 0xac], 0
xor edi, edi
nop
nop
nop
nop
nop
mov ecx, edi
xor ecx, 0x53
mov edx, edi
or edx, 4
and edx, ecx
mov ecx, edi
xor ecx, 0x2c
lea ecx, [ecx + edx*2]
xor cl, byte [ebp + edi - 0xb0]
add cl, 0x24
mov byte [ebp + edi - 0xb0], cl
inc edi
cmp edi, 6
jne 0x42c4a0
mov ecx, dword [0x450b18]
test ecx, ecx
je 0x42c526
mov edx, dword [ebp - 0xb0]
xor edi, edi
mov ebx, dword [0x450b1c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x7e776f1
je 0x42c51e
inc edi
cmp ecx, edi
jne 0x42c4f0
jmp 0x42c526
push eax
push 1
push dword [0x450b20]
push ecx
call fcn.00441600
add esp, 0x10
mov edi, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x18]
jmp dword [0x44cc08]
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
jne 0x42c54b
mov ebx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
jmp dword [0x44ccc0]
mov eax, edx
and al, 1
movzx ecx, al
mov eax, edx
jmp dword [ecx*4 + 0x44ccc8]
mov edi, dword [ebp - 0x20]
jmp dword [0x44cce0]
push eax
push 1
push dword [0x450b20]
push ecx
call fcn.00441600
add esp, 0x10
mov ebx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
jmp dword [0x44ccc0]
add eax, 8
mov dword [ebp - 0x1c], 0
mov edx, dword [eax]
xor eax, eax
test edx, edx
setne al
mov ebx, dword [ebp - 0x10]
jmp dword [eax*4 + 0x44cc40]
add edx, 4
mov edx, dword [edx]
xor eax, eax
test edx, edx
setne al
jmp dword [eax*4 + 0x44cc40]
mov eax, dword [edx]
cmp dword [edx + 0x18], 3
mov edi, 0
jne case.default.0x42c5bb
mov edi, dword [edx + 0x10]
mov dword [ebp - 0x28], eax
test eax, eax
setne al
test edi, edi
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44cc48]
mov dword [ebp - 0x2c], edx
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
inc eax
cmp byte [ecx], 0
jne case.default.0x42c5fc
mov dword [ebp - 0x14], ebx
sub ecx, edi
inc ecx
shr ecx, 1
mov dword [ebp - 0x44], ecx
lea eax, [ecx + 1]
push eax
call fcn.0040ce70
add esp, 4
movsx edx, byte [edi]
xor ecx, ecx
test edx, edx
setne cl
mov dword [ebp - 0x38], eax
jmp dword [ecx*4 + 0x44cc50]
inc edi
mov byte [eax], cl
inc eax
movsx edx, byte [edi]
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x44cc50]
lea ecx, [edx - 0x30]
cmp ecx, 0xa
jb 0x42c632
mov ecx, 0xffffffff
or edx, 0x20
lea ebx, [edx - 0x61]
cmp ebx, 6
jae case.default.0x42c64d
add edx, 0xffffffa9
mov ecx, edx
movsx edx, byte [edi + 1]
xor ebx, ebx
test edx, edx
setne bl
jmp dword [ebx*4 + 0x44cc58]
lea ebx, [edx - 0x30]
cmp ebx, 0xa
jb 0x42c661
mov ebx, 0xffffffff
mov dword [ebp - 0x30], ebx
or edx, 0x20
lea ebx, [edx - 0x61]
cmp ebx, 6
jb 0x42c680
mov edx, dword [ebp - 0x30]
jmp 0x42c683
add edx, 0xffffffa9
add edi, 2
shl ecx, 4
or ecx, edx
mov byte [eax], cl
inc eax
movsx edx, byte [edi]
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x44cc50]
mov byte [eax], 0
push 0
push 0x10
push 0
push dword [ebp - 0x28]
call fcn.0042e9b0
add esp, 0x10
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], 0
mov ecx, dword [case.0x42be59.37]
xor ebx, ebx
mov edx, dword [ebp - 0x18]
cmp edx, dword [ebp - 0x20]
setne bl
jmp dword [ebx*4 + 0x44cc60]
mov ebx, dword [edx + 4]
mov edi, ebx
shr edi, 0x1c
shl ebx, 4
or ebx, 1
xor edi, dword [ebp - 0x28]
xor ebx, dword [ebp - 0x30]
xor eax, eax
or ebx, edi
sete al
jmp dword [eax*4 + 0x44cc68]
mov eax, 1
mov edi, dword [ebp - 0x20]
jmp dword [eax*4 + 0x44cc70]
mov eax, dword [edx]
mov dword [ebp - 0x24], eax
xor eax, eax
mov edi, dword [ebp - 0x20]
jmp dword [eax*4 + 0x44cc70]
jmp ecx
add edx, 8
xor ebx, ebx
cmp edx, edi
setne bl
jmp dword [ebx*4 + 0x44cc60]
xor eax, eax
mov edx, dword [ebp - 0x24]
test edx, edx
setne al
jmp dword [eax*4 + 0x44cc88]
jmp case.0x42c7d1.0
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x38]
mov dword [eax + 4], ecx
mov eax, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
cmp byte [edx + eax + 1], 0
lea eax, [eax + 1]
jne case.default.0x42c7d1
mov edi, dword [ebp - 0xb8]
mov dword [edi], eax
mov dword [edi + 4], edx
mov ebx, dword [ebp - 0x50]
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0x31f26afb
push dword [0x450b24]
mov dword [ebp - 0x24], edx
call fcn.00443d50
add esp, 8
push ebx
push 1
push 0
push 0
push edi
push 0
push dword [ebp - 0x5c]
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44cc90]
mov eax, dword [case.0x42be59.44]
mov ebx, dword [ebp - 0x14]
jmp 0x42c8c4
mov ecx, dword [ebp - 0x24]
movzx eax, byte [ecx]
test al, al
mov ebx, dword [ebp - 0x14]
je 0x42c80b
inc ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42c800
mov word [ebx], 0x203a
add ebx, 2
mov eax, dword [ebp - 0x50]
mov edx, dword [eax]
test edx, edx
je 0x42c852
mov eax, dword [eax + 4]
mov ecx, edx
and ecx, 3
je 0x42c856
mov dword [ebp - 0x14], edx
xor edi, edi
nop
nop
nop
nop
nop
mov edx, ebx
movzx ebx, byte [eax]
cmp bl, 1
sbb eax, 0xffffffff
mov byte [edx + edi], bl
mov ebx, edx
inc edi
cmp ecx, edi
jne 0x42c830
add ebx, edi
mov edx, dword [ebp - 0x14]
mov ecx, edx
sub ecx, edi
mov edi, ebx
jmp 0x42c858
mov edi, ebx
jmp 0x42c899
mov ecx, edx
cmp edx, 4
jb 0x42c899
nop
nop
nop
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [ebx], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [ebx + 1], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [ebx + 2], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
lea edi, [ebx + 4]
mov byte [ebx + 3], dl
mov ebx, edi
add ecx, 0xfffffffc
jne 0x42c860
mov byte [edi], 0xa
inc edi
push 0xd80d2c4a
push dword [0x450b0c]
call fcn.00443d50
add esp, 8
mov ecx, dword [ebp - 0x50]
push dword [ecx + 4]
call eax
mov al, 1
mov dword [ebp - 0x1c], eax
mov eax, dword [case.0x42be59.44]
mov ebx, edi
mov edx, dword [ebp - 0x2c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x44cca8]
push dword [ebp - 0x38]
call fcn.0040ce80
mov edx, dword [ebp - 0x2c]
add esp, 4
add edx, 4
mov edx, dword [edx]
xor eax, eax
test edx, edx
setne al
jmp dword [eax*4 + 0x44cc40]
mov byte [edi], 0
mov dword [esi], 0x878281d1
mov dword [esi + 4], 0x83fffef5
mov dword [esi + 8], 0x888c8ef1
mov dword [esi + 0xc], 0xea9af6d3
mov dword [esi + 0x10], 0xffd594e1
mov dword [esi + 0x14], 0x99e3e69b
mov dword [esi + 0x18], 0x9396df9b
mov word [esi + 0x1c], 0x35a8
mov dword [esi + 0x1e], 0
mov byte [esi + 0x22], 0
xor eax, eax
nop
movzx ecx, byte [esi + eax]
mov edi, eax
and edi, 0x1c
xor edi, 0xa21f6a9c
mov edx, eax
and edx, 0x23
sub edx, edi
lea edi, [edx - 0x6ddf87a0]
mov ebx, 0x5df879f
sub ebx, edx
and ebx, 0x77ce315
and edi, 0x900100ea
or edi, ebx
mov ebx, ecx
not ebx
lea ebx, [ecx + ebx*2]
inc ebx
xor edi, 0x677cef15
and edi, ebx
mov ebx, 0x9f
sub ebx, edx
and ebx, ecx
or ebx, edi
lea edx, [ebx + 0x4ffabb2b]
mov ecx, edx
and ecx, 1
add ecx, ebx
mov edi, edx
xor edx, 1
add ecx, edx
and edi, 0xfe
sub ecx, edi
add cl, 0x2b
mov byte [esi + eax], cl
inc eax
cmp eax, 0x23
jne 0x42c940
mov edi, dword [ebp - 0x14]
mov eax, edi
mov edx, dword [ebp - 0x10]
sub eax, edx
mov ecx, dword [ebp + 8]
push eax
push edx
push esi
call fcn.0040d9d0
jmp dword [0x44ccd8]
mov byte [edi], 0
mov dword [esi], 0x878281d1
mov dword [esi + 4], 0x83fffef5
mov dword [esi + 8], 0x888c8ef1
mov dword [esi + 0xc], 0xea9af6d3
mov dword [esi + 0x10], 0xffd594e1
mov dword [esi + 0x14], 0x99e3e69b
mov dword [esi + 0x18], 0x9396df9b
mov word [esi + 0x1c], 0x35a8
mov dword [esi + 0x1e], 0
mov byte [esi + 0x22], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esi + eax]
mov edi, eax
and edi, 0x1c
xor edi, 0xa21f6a9c
mov edx, eax
and edx, 0x23
sub edx, edi
lea edi, [edx - 0x6ddf87a0]
mov ebx, 0x5df879f
sub ebx, edx
and ebx, 0x77ce315
and edi, 0x900100ea
or edi, ebx
mov ebx, ecx
not ebx
lea ebx, [ecx + ebx*2]
inc ebx
xor edi, 0x677cef15
and edi, ebx
mov ebx, 0x9f
sub ebx, edx
and ebx, ecx
or ebx, edi
lea edx, [ebx + 0x4ffabb2b]
mov ecx, edx
and ecx, 1
add ecx, ebx
mov edi, edx
xor edx, 1
add ecx, edx
and edi, 0xfe
sub ecx, edi
add cl, 0x2b
mov byte [esi + eax], cl
inc eax
cmp eax, 0x23
jne 0x42ca20
mov edi, dword [ebp - 0x14]
mov eax, edi
mov edx, dword [ebp - 0x10]
sub eax, edx
mov ecx, dword [ebp + 8]
push eax
push edx
push esi
call fcn.0040d9d0
jmp case.0x42be59.57
mov edi, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x18]
jmp dword [0x44cce0]
push dword [ebp - 0x10]
mov esi, eax
call fcn.0040ce80
mov eax, esi
add esp, 4
and al, 1
test ebx, ebx
jne 0x42cbeb
jmp 0x42cc24
push 0
push dword [ebp - 0x10]
push dword [edi]
call fcn.00444bc0
add esp, 0xc
not eax
shr eax, 0x1f
mov ecx, edi
xor edi, edi
xor ebx, ebx
jmp dword [eax*4 + 0x44cbc0]
mov eax, dword [ebp - 0x10]
mov edi, dword [eax]
lea eax, [edi + 1]
push eax
mov ebx, ecx
call fcn.0040ce70
add esp, 4
push 0
push edi
mov dword [ebp - 0x58], eax
push eax
push dword [ebx]
call fcn.00444ca0
add esp, 0x10
not eax
shr eax, 0x1f
xor edi, edi
xor ebx, ebx
jmp dword [eax*4 + 0x44cbc8]
mov eax, dword [ebp - 0x10]
mov edi, dword [eax]
mov ebx, dword [ebp - 0x58]
mov byte [ebx + edi], 0
push 0x20
call fcn.0040ce70
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [ebp - 0x4c], eax
mov ecx, eax
push edi
push ebx
call fcn.0042e5a0
movzx eax, al
xor edi, edi
xor ebx, ebx
jmp dword [eax*4 + 0x44cbd0]
jmp dword [0x44cbf8]
mov ecx, dword [ebp - 0x4c]
call fcn.0042e910
push dword [ebp - 0x4c]
call fcn.0040ce80
add esp, 4
mov ecx, dword [ebp - 0x1c]
jmp dword [0x44cc00]
mov ecx, dword [ebp - 0x1c]
jmp dword [0x44cc00]
mov eax, dword [case.0x42cc90.10]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor ebx, ebx
xor edi, edi
jmp dword [0x44cc08]
push dword [ebp - 0x28]
call fcn.0040ce80
add esp, 4
xor eax, eax
cmp ebx, edi
sete al
jmp dword [eax*4 + 0x44cc10]
xor eax, eax
test ebx, ebx
je 0x42cc24
cmp ebx, edi
je 0x42cc24
mov dword [ebp - 0x1c], eax
mov esi, ebx
jmp 0x42cc07
add esi, 8
cmp esi, edi
je 0x42cc18
mov eax, dword [esi]
test eax, eax
je 0x42cc00
push eax
call fcn.0040ce80
add esp, 4
jmp 0x42cc00
push ebx
call fcn.0040ce80
add esp, 4
mov eax, dword [ebp - 0x1c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
movzx edi, byte [ebp + eax - 0x14e]
mov edx, eax
xor edx, ecx
and edx, edi
xor edx, ecx
lea edi, [edx*2 + 2]
inc edx
and edi, 0x2e
xor edx, 0xe8
sub edx, edi
add dl, 2
mov byte [ebp + eax - 0x14e], dl
inc eax
dec ecx
cmp eax, 0xca
jne case.default.0x42cc90
push 0
push ebx
mov edi, dword [ebp - 0x28]
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov ecx, edi
push 0x60
push 3
push 0x120089
mov edi, dword [ebp - 0x1c]
push edi
push ecx
call fcn.00444880
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44cbb8]
push edi
call fcn.0040ce80
add esp, 4
push edi
call fcn.0040ce80
add esp, 4
jmp dword [0x44cbac]
xor eax, eax
mov ecx, dword [ebp - 0x28]
cmp word [ecx], 0x2a
sete al
jmp dword [eax*4 + 0x44cbb0]
mov dword [ebp - 0xb0], 0xb7f089c7
mov dword [ebp - 0xac], 0xb3ddb5d0
mov dword [ebp - 0xa8], 0xbf2cb123
mov dword [ebp - 0xa4], 0xbbd3bdd6
mov dword [ebp - 0xa0], 0xa7c2b9d3
mov dword [ebp - 0x9c], 0xa331a5cb
mov dword [ebp - 0x98], 0xafc4a132
mov dword [ebp - 0x94], 0xabc1adc5
mov dword [ebp - 0x90], 0xd74ca9fa
mov dword [ebp - 0x8c], 0xd3b8d5b8
mov dword [ebp - 0x88], 0xd1d0
mov eax, 0x9e
mov ecx, 0x9c8f7761
jmp case.default.0x42cc90
jmp dword [0x44cd00]
push dword [esp + 0x44]
call fcn.0040ce80
add esp, 4
mov eax, dword [esp + 0x50]
and al, 1
add esp, 0xf4
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esp + 0x84]
add ecx, 4
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x44ccf8]
mov dword [esp + 0x84], ecx
mov esi, dword [esp + ecx + 0x90]
mov eax, 0xfffffffe
nop
nop
nop
nop
cmp word [esi + eax + 2], 0
lea eax, [eax + 2]
jne 0x42d0a0
mov dword [esp + 0x70], eax
mov edx, eax
sar edx, 1
mov eax, dword [esp + 0x64]
lea ecx, [edx + eax]
mov dword [esp + 0x54], edx
add edx, eax
add edx, 0xd
lea eax, [ecx*2 + 0x1a]
test edx, edx
jns 0x42d0d3
mov eax, 0xffffffff
mov dword [esp + 0x5c], esi
push eax
call fcn.0040ce70
add esp, 4
mov esi, eax
mov eax, dword [esp + 0x44]
movzx ecx, word [eax]
mov eax, esi
test cx, cx
je 0x42d111
mov edx, dword [esp + 0x6c]
mov eax, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d100
mov dword [esp + 0x48], esi
mov dword [esp], eax
mov word [eax], 0x5c
mov dword [esp + 4], 0x93c691f4
mov dword [esp + 8], 0xafcdaddb
mov dword [esp + 0xc], 0xabdea9c9
mov dword [esp + 0x10], 0xa7f5a584
mov dword [esp + 0x14], 0xa3c3a12c
mov dword [esp + 0x18], 0xbfc3bd30
mov word [esp + 0x1c], 0xb9b8
mov dword [esp + 0x1e], 0
mov ecx, 0xe447f3d2
mov edx, 0xc88fe7a4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + ecx + 0x1bb80c32]
mov edi, edx
and edi, 0x800a8494
mov ebx, ecx
xor ebx, 0x438d464a
add ebx, edi
mov ebp, ebx
and ebp, esi
mov eax, ebp
or eax, 0xfffffffd
inc eax
mov edi, ebp
and edi, 0xfffffffd
imul edi, eax
mov eax, ebp
and eax, 2
or ebp, 2
imul ebp, eax
sub edi, ebp
add ebx, esi
add ebx, edi
mov eax, ebx
not eax
or eax, 0x38d5dd73
lea esi, [eax + ebx]
inc esi
mov eax, esi
and eax, 0xfd
mov edi, esi
and edi, 2
or esi, 2
imul esi, edi
xor edi, 2
imul edi, eax
xor ebx, 0x73
add ebx, esi
add ebx, edi
inc bl
mov byte [esp + ecx + 0x1bb80c32], bl
inc ecx
add edx, 2
cmp ecx, 0xe447f3f0
jne 0x42d170
mov esi, dword [esp]
add esi, 2
mov eax, dword [esp + 0x5c]
movzx ecx, word [eax]
test cx, cx
je 0x42d221
lea edx, [eax + 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], cx
add esi, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d210
mov word [esi], 0
movzx ecx, word [esp + 4]
test cx, cx
mov edi, dword [esp + 0x48]
je 0x42d251
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], cx
add esi, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d240
mov word [esi], 0
lea eax, [esp + 0x4c]
push 0x60
push 3
push 0x120089
push eax
push edi
call fcn.00444880
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44cd08]
xor ebx, ebx
jmp dword [0x44cd98]
push edi
call fcn.0040ce80
add esp, 4
movzx eax, bl
jmp dword [eax*4 + 0x44cda0]
lea eax, [esp + 0x60]
push 0
push eax
push dword [esp + 0x54]
call fcn.00444bc0
add esp, 0xc
not eax
shr eax, 0x1f
xor esi, esi
xor ebx, ebx
jmp dword [eax*4 + 0x44cd10]
jmp dword [0x44cd1c]
mov edi, dword [esp + 0x60]
lea eax, [edi + 1]
push eax
call fcn.0040ce70
add esp, 4
push 0
push edi
push eax
push dword [esp + 0x58]
call fcn.00444ca0
add esp, 0x10
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esp + 0x60]
lea eax, [edi + 1]
push eax
call fcn.0040ce70
add esp, 4
mov ebp, eax
push 0
push edi
push eax
push dword [esp + 0x58]
call fcn.00444ca0
add esp, 0x10
jmp dword [0x44cd20]
not eax
shr eax, 0x1f
xor ebx, ebx
mov edi, dword [esp + 0x48]
jmp dword [eax*4 + 0x44cd28]
mov eax, dword [esp + 0x60]
mov byte [ebp + eax], 0
push ebp
call fcn.00403d70
add esp, 4
mov ecx, dword [case.0x42be59.83]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x44cd40]
jmp dword [0x44cd80]
mov dword [esp + 0x80], eax
push eax
call fcn.00404830
add esp, 4
mov dword [esp + 4], 0xece7faf5
mov dword [esp + 8], 0xf1f2f8f2
mov dword [esp + 0xc], 0xe4f8e03a
mov dword [esp + 0x10], 0xe9faf0fa
mov dword [esp + 0x14], 0xe4f7fbfb
mov word [esp + 0x18], 0xe8ff
mov byte [esp + 0x1a], 0x12
mov dword [esp + 0x1b], 0
mov ecx, 0xffffffe5
nop
nop
nop
nop
nop
nop
nop
lea edx, [ecx - 0x689c8ba4]
lea edi, [ecx + 0x2ec6e95c]
and edi, 0xca
and edx, 0x35
or edx, edi
xor dl, byte [esp + ecx + 0x1f]
add dl, 0xbb
mov byte [esp + ecx + 0x1f], dl
inc ecx
jne 0x42d3c0
lea ecx, [esp + 4]
push ecx
push eax
call fcn.00404bf0
add esp, 8
mov edx, 0xffffffff
mov ecx, 0xfffffffd
nop
nop
nop
add ecx, 3
cmp byte [eax + edx + 1], 0
lea edx, [edx + 1]
jne 0x42d400
shr ecx, 2
mov edi, edx
mov dword [esp + 0x3c], edx
movzx edx, byte [eax + edx - 1]
cmp edx, 0x3d
je 0x42d425
cmp edx, 0x2e
jne 0x42d426
dec ecx
mov dword [esp + 0x58], eax
mov edx, dword [esp + 0x3c]
movzx eax, byte [eax + edx - 2]
cmp eax, 0x3d
mov dword [esp + 0x68], ebp
je 0x42d441
cmp eax, 0x2e
jne 0x42d442
dec ecx
mov eax, ecx
and eax, 1
mov dword [esp + 0x7c], ecx
xor ecx, 1
lea eax, [ecx + eax*2]
push eax
call fcn.0040ce70
add esp, 4
mov dword [esp + 0x38], eax
cmp dword [esp + 0x3c], 0
je 0x42d55c
xor ecx, ecx
mov ebp, 2
jmp 0x42d494
lea eax, [ebp + 4]
add ebp, 2
mov ecx, dword [esp + 0x40]
cmp ebp, edx
mov ebp, eax
jae 0x42d55c
mov dword [esp], ecx
mov edi, dword [esp + 0x58]
movzx eax, byte [edi + ebp - 2]
push eax
call fcn.00422700
add esp, 4
mov ebx, eax
movzx eax, byte [edi + ebp - 1]
push eax
call fcn.00422700
mov edx, dword [esp + 0x40]
add esp, 4
mov bh, al
mov edi, dword [esp]
lea eax, [edi + 1]
mov dword [esp + 0x40], eax
shl bl, 2
mov al, bh
shr al, 4
and al, 3
or al, bl
mov ecx, dword [esp + 0x38]
mov byte [ecx + edi], al
cmp ebp, edx
jae 0x42d480
mov eax, dword [esp + 0x58]
movzx eax, byte [eax + ebp]
push eax
call fcn.00422700
mov edx, dword [esp + 0x40]
add esp, 4
cmp al, 0x40
je 0x42d480
mov bl, al
shl bh, 4
shr al, 2
and al, 0xf
or al, bh
mov edi, dword [esp]
lea ecx, [edi + 2]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x38]
mov byte [ecx + edi + 1], al
lea eax, [ebp + 1]
cmp eax, edx
jae 0x42d480
mov eax, dword [esp + 0x58]
movzx eax, byte [eax + ebp + 1]
push eax
call fcn.00422700
mov edx, dword [esp + 0x40]
add esp, 4
cmp al, 0x40
je 0x42d480
shl bl, 6
add al, bl
mov ecx, dword [esp + 0x38]
mov edi, dword [esp]
mov byte [ecx + edi + 2], al
add edi, 3
mov dword [esp + 0x40], edi
jmp 0x42d480
mov eax, dword [esp + 0x7c]
add eax, 0xfffffffb
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x38]
add eax, 5
mov dword [esp + 0x8c], eax
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
push 0x31f26afb
push dword [0x450b24]
call fcn.00443d50
add esp, 8
lea ecx, [esp + 0x74]
lea edx, [esp + 0x88]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44cd48]
xor ebx, ebx
mov ebp, dword [esp + 0x68]
mov edi, dword [esp + 0x48]
jmp dword [0x44cd68]
mov eax, dword [esp + 0x70]
add eax, 0x10
cmp dword [esp + 0x54], 0xfffffff8
mov ebp, dword [esp + 0x68]
jge 0x42d5e9
mov eax, 0xffffffff
push eax
call fcn.0040ce70
add esp, 4
mov dword [esp], eax
mov dword [esp + 4], 0x57fa493b
mov dword [esp + 8], 0x532055e4
mov dword [esp + 0xc], 0x5fe651ec
mov dword [esp + 0x10], 0x5b5a5de0
mov word [esp + 0x14], 0
mov edx, 0xee
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + edx - 0xea]
mov ebx, edi
and ebx, edx
mov eax, ebx
or al, 0xfd
inc al
mov ecx, ebx
and cl, 0xfd
mul cl
mov ecx, eax
mov eax, edi
add cl, al
mov eax, ebx
shr al, 1
and al, 1
or bl, 2
mul bl
add al, al
sub cl, al
movzx eax, cl
add eax, edx
add al, 0x5a
mov byte [esp + edx - 0xea], al
inc edx
cmp edx, 0x100
jne 0x42d630
mov edx, dword [esp + 0x5c]
movzx ecx, word [edx]
mov ebx, dword [esp]
mov eax, ebx
test cx, cx
je 0x42d6a1
add edx, 2
mov eax, ebx
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d690
mov word [eax], 0
movzx ecx, word [esp + 4]
test cx, cx
je 0x42d6d1
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d6c0
mov word [eax], 0
mov ecx, dword [esp + 0x108]
push dword [esp + 0x74]
push dword [esp + 0x7c]
push ebx
call fcn.0040d820
mov ecx, ebx
mov ebx, eax
mov edi, dword [esp + 0x48]
jmp dword [0x44cd50]
jmp dword [0x44cd58]
push edi
call fcn.0040ce80
add esp, 4
jmp dword [0x44cdb0]
push ecx
call fcn.0040ce80
mov ecx, dword [esp + 4]
add esp, 4
push ecx
call fcn.0040ce80
mov ecx, dword [esp + 4]
add esp, 4
jmp dword [0x44cd60]
push 0xd80d2c4a
push dword [0x450b0c]
call fcn.00443d50
add esp, 8
push dword [esp + 0x78]
call eax
jmp dword [0x44cd68]
push dword [esp + 0x38]
call fcn.0040ce80
add esp, 4
mov eax, dword [case.0x42be59.95]
nop
jmp eax
push dword [esp + 0x80]
call fcn.00404de0
add esp, 4
jmp dword [0x44cd80]
jmp dword [0x44cd8c]
movzx eax, bl
jmp dword [eax*4 + 0x44cda0]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x54]
lea ecx, [edx + eax]
add edx, eax
add edx, 0x17
lea eax, [ecx*2 + 0x2e]
test edx, edx
lea esi, [esp + 4]
jns 0x42d7ae
mov eax, 0xffffffff
push eax
call fcn.0040ce70
add esp, 4
mov edi, eax
mov eax, dword [esp + 0x44]
movzx ecx, word [eax]
mov eax, edi
test cx, cx
je 0x42d7e1
mov edx, dword [esp + 0x6c]
mov eax, edi
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d7d0
mov dword [esp], edi
mov word [eax], 0x5c
mov dword [esp + 4], 0x51824f90
mov dword [esp + 8], 0x55b753a1
mov dword [esp + 0xc], 0x59ba57b7
mov dword [esp + 0x10], 0x5d8f5b78
mov dword [esp + 0x14], 0x61af5fa8
mov dword [esp + 0x18], 0x65816392
mov dword [esp + 0x1c], 0x6981678d
mov dword [esp + 0x20], 0x6d866bb4
mov dword [esp + 0x24], 0x71986f8b
mov dword [esp + 0x28], 0x759e7397
mov dword [esp + 0x2c], 0x79947790
mov word [esp + 0x30], 0x7b78
mov byte [esi + 0x32], 0
mov dword [esi + 0x2e], 0
mov ecx, 0x68cd6172
mov edx, esi
nop
nop
nop
nop
nop
nop
movzx edi, byte [edx]
mov ebx, ecx
or ebx, edi
lea ebp, [ecx - 0x68cd6100]
and ebp, edi
not ebx
or ebx, ebp
mov edi, ebx
and edi, 0x3e
xor ebx, 0x3e
lea ebx, [ebx + edi*2]
inc bl
mov byte [edx], bl
inc edx
dec ecx
cmp ecx, 0x68cd613f
jne 0x42d860
add eax, 2
mov edi, dword [esp + 0x5c]
movzx ecx, word [edi]
test cx, cx
je 0x42d8b1
lea edx, [edi + 2]
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d8a0
mov word [eax], 0
movzx ecx, word [esp + 4]
test cx, cx
je 0x42d8e1
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d8d0
mov word [eax], 0
mov eax, dword [esp + 0x70]
add eax, 0x12
cmp dword [esp + 0x54], 0xfffffff7
jge 0x42d8f9
mov eax, 0xffffffff
push eax
call fcn.0040ce70
add esp, 4
mov dword [esp + 4], 0xd762c93b
mov dword [esp + 8], 0xd368d579
mov dword [esp + 0xc], 0xdf6ad17d
mov dword [esp + 0x10], 0xdb74dd70
mov word [esp + 0x14], 0xd9d8
mov word [esi + 0x16], 0
mov dword [esi + 0x12], 0
mov ebx, 0x7f73302e
nop
nop
nop
nop
nop
movzx ecx, byte [esp + ebx - 0x7f73302a]
mov edx, ecx
and edx, ebx
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, ebx
add cl, 0x1a
mov byte [esp + ebx - 0x7f73302a], cl
inc ebx
cmp ebx, 0x7f733046
jne 0x42d940
movzx ecx, word [edi]
mov ebx, eax
test cx, cx
je 0x42d991
add edi, 2
mov ebx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ebx], cx
add ebx, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x42d980
mov word [ebx], 0
movzx ecx, word [esp + 4]
test cx, cx
mov dword [esp + 0x40], eax
je 0x42d9c1
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ebx], cx
add ebx, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x42d9b0
mov word [ebx], 0
mov dword [esp + 4], 0x1f1e1976
mov byte [esi + 6], 0
mov word [esi + 4], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 4]
mov edx, eax
and edx, 2
mov ebx, eax
and ebx, 0x410854b8
or ebx, 2
imul ebx, edx
mov edx, eax
xor edx, 0x410854ba
add edx, ebx
mov ebx, edx
and ebx, ecx
mov esi, ebx
and esi, 0xfffffffd
mov edi, ebx
and edi, 2
mov ebp, ebx
or ebp, 0xfd
inc ebp
imul ebp, esi
or ebx, 2
imul ebx, edi
sub ebp, ebx
add edx, ecx
add edx, ebp
add dl, 0x5e
mov byte [esp + eax + 4], dl
inc eax
cmp eax, 7
jne 0x42d9e0
lea eax, [esp + 4]
push 0
push 0
push 0xc00000
push eax
mov esi, dword [esp + 0x10]
push esi
mov edi, dword [esp + 0x54]
push edi
push dword [esp + 0x120]
call fcn.004259e0
add esp, 0x1c
mov ecx, dword [esp + 0x50]
and cl, 1
or cl, al
mov dword [esp + 0x50], ecx
jmp dword [0x44cda8]
jmp dword [0x44cdb0]
push esi
call fcn.0040ce80
add esp, 4
nop
nop
jmp dword [0x44cdc4]
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], 0xf4f5f6f7
mov word [esp + 8], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, esi
xor ecx, 0x53
mov edx, esi
or edx, 4
and edx, ecx
mov ecx, esi
xor ecx, 0x2c
lea ecx, [ecx + edx*2]
xor cl, byte [esp + esi + 4]
add cl, 0x24
mov byte [esp + esi + 4], cl
inc esi
cmp esi, 6
jne 0x42dab0
mov ecx, dword [0x450b18]
test ecx, ecx
je 0x42db10
mov edx, dword [esp + 4]
xor esi, esi
mov ebp, dword [0x450b1c]
nop
nop
nop
nop
nop
cmp dword [ebp + esi*8], 0x7e776f1
je 0x42db01
inc esi
cmp ecx, esi
jne 0x42daf0
jmp 0x42db10
mov ecx, dword [ebp + esi*8 + 4]
cmp ecx, edx
jne 0x42db16
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x44cd98]
push eax
push 1
push dword [0x450b20]
push ecx
call fcn.00441600
add esp, 0x10
jmp dword [0x44cd98]
push ebp
call fcn.0040ce80
add esp, 4
push ebp
call fcn.0040ce80
add esp, 4
jmp dword [0x44cd94]
push eax
sub esp, 0x3c
mov esi, esp
sub esp, 0x40
mov eax, esp
push eax
mov dword [ebp - 0x28], esp
push eax
mov dword [ebp - 0x14], esp
mov dword [eax], 0x8fcf89ed
mov dword [eax + 4], 0x83328d3c
mov dword [eax + 8], 0x872781c4
mov dword [eax + 0xc], 0x9b3b8530
mov dword [eax + 0x10], 0x9f3299fd
mov dword [eax + 0x14], 0x93219dce
mov dword [eax + 0x18], 0x97339124
mov dword [eax + 0x1c], 0xeb4b9524
mov dword [eax + 0x20], 0xef91e94c
mov dword [eax + 0x24], 0xe34eed93
mov dword [eax + 0x28], 0xe743e157
mov dword [eax + 0x2c], 0xfb4de553
mov dword [eax + 0x30], 0xff4df941
mov dword [eax + 0x34], 0xf380fd4e
mov dword [eax + 0x38], 0xf74bf178
mov dword [eax + 0x3c], 0xcbcaf548
mov ecx, 0xc869ac22
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [eax + ecx + 0x379653de]
mov ebx, edx
and ebx, ecx
add bl, bl
sub dl, bl
movzx edx, dl
add edx, ecx
add dl, 0x56
mov byte [eax + ecx + 0x379653de], dl
inc ecx
cmp ecx, 0xc869ac62
jne 0x42dbf0
mov edx, eax
mov edi, esi
mov ecx, 0x10
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov edi, esi
add edi, 0x40
add eax, 0x40
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [ebp - 0x28]
push edi
push 0
push 0
push 0x1f
push esi
push 0
call dword [0x450b14]
mov ebx, dword [edi]
test ebx, ebx
jns 0x42dc56
mov eax, 0xffffffff
jmp 0x42dc59
lea eax, [ebx + ebx]
push eax
call fcn.0040ce70
add esp, 4
mov edi, eax
push dword [ebp - 0x28]
push ebx
push eax
push 0x1f
push esi
push 0
call dword [0x450b14]
push 0x60
push 3
push 0x120089
push dword [ebp - 0x14]
push edi
call fcn.00444880
add esp, 0x14
jmp case.0x42be59.118
mov eax, 0xffffffff
push eax
call fcn.0040ce70
add esp, 4
mov ebx, eax
push dword [ebp - 0x14]
push edi
push eax
push 0x1f
push esi
push 0
call dword [0x450b14]
push 0x60
push 3
push 0x120089
mov esi, dword [ebp - 0x38]
push esi
push ebx
call fcn.00444880
add esp, 0x14
jmp dword [0x44cdd4]
push eax
sub esp, 0x3c
mov esi, esp
sub esp, 0x40
mov eax, esp
push eax
mov dword [ebp - 0x14], esp
push eax
mov dword [ebp - 0x38], esp
push eax
mov dword [ebp - 0x10], esp
sub esp, 0x10
mov dword [ebp - 0x28], esp
push eax
mov dword [ebp - 0x24], esp
push eax
mov dword [ebp - 0x34], esp
sub esp, 0x20
mov dword [ebp - 0x54], esp
mov dword [eax], 0x8fcf89ed
mov dword [eax + 4], 0x83328d3c
mov dword [eax + 8], 0x872781c4
mov dword [eax + 0xc], 0x9b3b8530
mov dword [eax + 0x10], 0x9f3299fd
mov dword [eax + 0x14], 0x93219dce
mov dword [eax + 0x18], 0x97339124
mov dword [eax + 0x1c], 0xeb4b9524
mov dword [eax + 0x20], 0xef91e94c
mov dword [eax + 0x24], 0xe34eed93
mov dword [eax + 0x28], 0xe743e157
mov dword [eax + 0x2c], 0xfb4de553
mov dword [eax + 0x30], 0xff4df941
mov dword [eax + 0x34], 0xf380fd4e
mov dword [eax + 0x38], 0xf74bf178
mov dword [eax + 0x3c], 0xcbcaf548
mov ecx, 0xc869ac22
nop
nop
nop
nop
nop
movzx ebx, byte [eax + ecx + 0x379653de]
mov edx, ebx
and edx, ecx
add dl, dl
sub bl, dl
movzx edx, bl
add edx, ecx
add dl, 0x56
mov byte [eax + ecx + 0x379653de], dl
inc ecx
cmp ecx, 0xc869ac62
jne 0x42dd70
mov edx, eax
mov edi, esi
mov ecx, 0x10
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov edi, esi
add edi, 0x40
add eax, 0x40
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [ebp - 0x14]
push edi
push 0
push 0
push 0x1f
push esi
push 0
call dword [0x450b14]
mov edi, dword [edi]
test edi, edi
js 0x42dc90
lea eax, [edi + edi]
jmp 0x42dc95
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44cdd8]
xor eax, eax
jmp dword [0x44cf20]
push ebx
mov esi, eax
call fcn.0040ce80
mov eax, esi
add esp, 4
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0
mov edi, dword [ebp - 0x10]
push edi
push dword [esi]
call fcn.00444bc0
add esp, 0xc
not eax
shr eax, 0x1f
xor esi, esi
mov dword [ebp - 0x20], 0
jmp dword [eax*4 + 0x44cde0]
mov esi, edi
mov edi, dword [edi]
lea eax, [edi + 1]
push eax
call fcn.0040ce70
add esp, 4
push 0
push edi
mov dword [ebp - 0x4c], eax
push eax
mov eax, dword [ebp - 0x38]
push dword [eax]
call fcn.00444ca0
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [ebp - 0x20], 0
jmp dword [eax*4 + 0x44cde8]
mov dword [ebp - 0x50], ebx
mov eax, dword [esi]
mov ecx, dword [ebp - 0x4c]
mov byte [ecx + eax], 0
mov edi, dword [ebp - 0x28]
mov eax, edi
add eax, 0xb
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x54]
lea edx, [eax + 0x1b]
mov dword [ebp - 0x5c], edx
inc eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x10], ecx
nop
nop
mov dword [edi], 0xfae2e0e2
mov dword [edi + 4], 0xfee7f4e6
mov word [edi + 8], 0x3f15
mov byte [edi + 0xa], 0x5e
mov eax, dword [ebp - 0x60]
mov byte [eax + 4], 0
mov dword [eax], 0
mov eax, 0xee
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [edi + eax - 0xee]
mov ecx, eax
and ecx, edx
mov ebx, ecx
and ebx, 0xfffffffd
mov edi, ecx
and edi, 2
or ecx, 2
imul ecx, edi
xor edi, 2
imul edi, ebx
lea ebx, [eax - 0x2f96bc00]
add ecx, edi
mov edi, ebx
and edi, edx
xor ebx, edx
lea edx, [ebx + edi*2]
mov edi, edx
not edi
and edi, ecx
not ecx
and ecx, edx
sub ecx, edi
mov edi, dword [ebp - 0x28]
mov edx, 0x26
sub edx, ecx
or edx, 1
add edx, ecx
add ecx, 0x59
xor ecx, 1
lea ecx, [ecx + edx*2]
add cl, 0xb4
mov byte [edi + eax - 0xee], cl
inc eax
cmp eax, 0xfe
jne 0x42dec0
movzx ecx, byte [edi]
test cl, cl
je 0x42df70
mov eax, edi
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x14], edx
mov ebx, dword [ebp - 0x50]
jmp 0x42df50
mov edx, dword [ebp - 0x14]
inc edx
mov dword [ebp - 0x14], edx
mov eax, edi
movzx ecx, byte [eax]
test cl, cl
je 0x42df87
mov esi, edx
movzx edx, byte [edx]
test dl, dl
je 0x42df80
cmp dl, cl
jne 0x42df40
mov edx, esi
inc edx
inc eax
jmp 0x42df49
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x50]
jmp 0x42df87
mov dword [ebp - 0x14], 0
xor eax, eax
cmp dword [ebp - 0x14], 0
sete al
jmp dword [eax*4 + 0x44cdf0]
jmp dword [0x44ce00]
mov eax, dword [ebp - 0x14]
lea ecx, [eax + 0xa]
movzx eax, byte [eax + 0xa]
xor edx, edx
test al, al
mov dword [ebp - 0x10], ecx
je 0x42dfd2
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x22
je 0x42dfd0
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x42dfc0
jmp 0x42dfd2
mov edx, ecx
mov eax, dword [case.0x42be59.137]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov ecx, edx
sub ecx, dword [ebp - 0x10]
xor eax, eax
cmp ecx, 5
setb al
jmp dword [eax*4 + 0x44ce18]
xor eax, eax
cmp byte [edx - 1], 0x74
setne al
jmp dword [eax*4 + 0x44ce20]
xor eax, eax
cmp byte [edx - 2], 0x78
setne al
jmp dword [eax*4 + 0x44ce28]
xor eax, eax
cmp byte [edx - 3], 0x74
setne al
jmp dword [eax*4 + 0x44ce40]
xor eax, eax
cmp byte [edx - 4], 0x2e
setne al
jmp dword [eax*4 + 0x44ce48]
mov dword [ebp - 0x2c], edx
mov esi, ecx
jmp dword [0x44ce50]
push ebx
call fcn.0040ce80
add esp, 4
mov eax, dword [case.0x42be59.172]
nop
jmp eax
jmp dword [0x44cec8]
push dword [ebp - 0x48]
call fcn.0040ce80
add esp, 4
jmp dword [0x44ced0]
cmp dword [ebx + edi*8], 0x7e776f1
je 0x42e080
inc edi
cmp ecx, edi
jne 0x42e070
jmp case.0x42be59.184
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je case.0x42be59.184
push eax
push 1
push dword [0x450b20]
push ecx
call fcn.00441600
add esp, 0x10
jmp case.0x42be59.184
jmp dword [0x44ced8]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov dword [ebp - 0x1c], 0xf4f5f6f7
mov word [ebp - 0x18], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
mov edx, ecx
xor edx, 0x53
mov edi, ecx
or edi, 4
and edi, edx
mov edx, ecx
xor edx, 0x2c
lea edx, [edx + edi*2]
xor dl, byte [ebp + ecx - 0x1c]
add dl, 0x24
mov byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 6
jne 0x42e0c0
mov ecx, dword [0x450b18]
test ecx, ecx
je 0x42e0a0
mov edx, dword [ebp - 0x1c]
xor edi, edi
mov ebx, dword [0x450b1c]
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x7e776f1
je 0x42e110
inc edi
cmp ecx, edi
jne 0x42e100
jmp 0x42e0a0
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x42e0a0
push eax
push 1
push dword [0x450b20]
push ecx
call fcn.00441600
add esp, 0x10
jmp dword [0x44ced8]
mov ebx, ecx
inc ebx
lea eax, [ecx + ecx + 2]
jns 0x42e13e
mov eax, 0xffffffff
push eax
call fcn.0040ce70
add esp, 4
mov edi, eax
push dword [ebp - 0x2c]
push dword [ebp - 0x10]
push ebx
push eax
call fcn.0040f210
add esp, 0x10
push 0x60
push 3
push 0x120089
push dword [ebp - 0x24]
push edi
call fcn.00444880
mov ecx, esi
add esp, 0x14
jmp dword [0x44ce5c]
mov ebx, ecx
inc ebx
lea eax, [ecx + ecx + 2]
jns 0x42e184
mov eax, 0xffffffff
push eax
call fcn.0040ce70
add esp, 4
mov edi, eax
push dword [ebp - 0x2c]
push dword [ebp - 0x10]
push ebx
push eax
call fcn.0040f210
add esp, 0x10
push 0x60
push 3
push 0x120089
push dword [ebp - 0x24]
push edi
call fcn.00444880
add esp, 0x14
mov ecx, esi
jmp case.0x42be59.152
mov dword [ebp - 0x30], edi
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44ce60]
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0x10], ebx
mov edi, dword [ebp - 0x28]
jmp dword [0x44cee0]
push dword [ebp - 0x30]
call fcn.0040ce80
add esp, 4
mov dword [ebp - 0x10], ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [case.0x42be59.192]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp 0x42de90
push 0
push dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
push dword [eax]
call fcn.00444bc0
add esp, 0xc
mov ecx, dword [case.0x42be59.160]
nop
jmp ecx
test eax, eax
setns al
mov ecx, dword [ebp - 0x34]
mov ebx, dword [ecx]
cmp ebx, 0x100000
setb cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44ce78]
jmp dword [0x44ced0]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov dword [ebp - 0x1c], 0xf4f5f6f7
mov word [ebp - 0x18], 0
xor ecx, ecx
nop
nop
nop
nop
nop
mov edx, ecx
xor edx, 0x53
mov edi, ecx
or edi, 4
and edi, edx
mov edx, ecx
xor edx, 0x2c
lea edx, [edx + edi*2]
xor dl, byte [ebp + ecx - 0x1c]
add dl, 0x24
mov byte [ebp + ecx - 0x1c], dl
inc ecx
cmp ecx, 6
jne 0x42e260
mov ecx, dword [0x450b18]
test ecx, ecx
je case.0x42be59.184
mov edx, dword [ebp - 0x1c]
xor edi, edi
mov ebx, dword [0x450b1c]
jmp 0x42e070
push ebx
call fcn.0040ce70
add esp, 4
mov ecx, dword [case.0x42be59.167]
mov edi, dword [ebp - 0x54]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
push 0
push ebx
mov dword [ebp - 0x48], eax
push eax
mov eax, dword [ebp - 0x24]
push dword [eax]
call fcn.00444ca0
add esp, 0x10
mov ecx, dword [case.0x42be59.170]
nop
nop
nop
nop
jmp ecx
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44cea0]
xor edx, edx
mov ecx, dword [ebp - 0x30]
jmp 0x42e308
add ecx, 2
test bx, bx
je 0x42e319
mov eax, edx
movzx ebx, word [ecx]
mov edx, ecx
cmp bx, 0x5c
je 0x42e300
mov edx, eax
jmp 0x42e300
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44cea8]
xor ebx, ebx
xor ecx, ecx
jmp 0x42e346
sub eax, dword [ebp - 0x30]
sar eax, 1
lea ebx, [eax + 1]
mov ecx, 0xfffffffe
sub ecx, eax
mov eax, esi
not eax
and eax, ebx
and ecx, esi
sub ecx, eax
add ecx, 0x1b
push ecx
call fcn.0040ce70
add esp, 4
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], ebx
sub esi, ebx
mov dword [ebp - 0x3c], esi
mov dword [edi], 0xa8aaa8cb
mov dword [edi + 4], 0x57495ba6
mov dword [edi + 8], 0x56280358
mov dword [edi + 0xc], 0x1c534454
mov dword [edi + 0x10], 0x42565a3e
mov dword [edi + 0x14], 0x5a5858
mov word [edi + 0x18], 0x201
mov byte [edi + 0x1a], 0xf2
mov eax, dword [ebp - 0x5c]
mov word [eax], 0
mov byte [eax + 2], 0
mov eax, 0xb38f64fb
mov esi, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [edi + eax + 0x4c709b05]
lea ecx, [edx + edx]
not ecx
add ecx, edx
and ecx, eax
and edx, esi
mov ebx, ecx
xor ebx, edx
not edx
and edx, ecx
add ebx, ecx
sub ebx, edx
mov ecx, ebx
and ecx, 1
xor ebx, 1
lea ecx, [ebx + ecx*2]
add cl, 0x18
mov byte [edi + eax + 0x4c709b05], cl
inc eax
dec esi
cmp eax, 0xb38f6519
jne 0x42e3b0
mov eax, dword [ebp - 0x40]
add dword [ebp - 0x10], eax
movzx ecx, byte [edi]
mov ebx, dword [ebp - 0x44]
mov eax, ebx
test cl, cl
je 0x42e41b
mov edx, dword [ebp - 0x58]
mov eax, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x42e410
mov byte [eax], 0
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
mov edi, dword [ebp - 0x2c]
je 0x42e464
mov edx, dword [ebp - 0x40]
add edx, dword [ebp - 0x14]
sub edi, edx
add edi, 0xfffffff5
mov ebx, ecx
and ebx, 3
je 0x42e468
mov dword [ebp - 0x14], edi
xor edx, edx
mov edi, dword [ebp - 0x10]
movzx ecx, byte [edi]
cmp cl, 1
sbb edi, 0xffffffff
mov byte [eax + edx], cl
inc edx
cmp ebx, edx
jne 0x42e442
mov dword [ebp - 0x10], edi
add eax, edx
mov ecx, dword [ebp - 0x3c]
sub ecx, edx
mov edx, eax
mov edi, dword [ebp - 0x14]
jmp 0x42e468
mov edx, eax
jmp 0x42e4b0
cmp edi, 3
mov edi, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x44]
jb 0x42e4b0
mov esi, ecx
movzx ecx, byte [edi]
cmp cl, 1
sbb edi, 0xffffffff
mov byte [eax], cl
movzx ecx, byte [edi]
cmp cl, 1
sbb edi, 0xffffffff
mov byte [eax + 1], cl
movzx ecx, byte [edi]
cmp cl, 1
sbb edi, 0xffffffff
mov byte [eax + 2], cl
movzx ecx, byte [edi]
cmp cl, 1
sbb edi, 0xffffffff
lea edx, [eax + 4]
mov byte [eax + 3], cl
mov ecx, esi
mov eax, edx
add ecx, 0xfffffffc
jne 0x42e473
mov byte [edx], 0
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x34]
push dword [eax]
push dword [ebp - 0x48]
push ebx
call fcn.0040d9d0
mov ecx, dword [ebp - 0x20]
and cl, 1
or cl, al
mov dword [ebp - 0x20], ecx
jmp dword [0x44ceb0]
mov eax, dword [case.0x42be59.126]
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x44cf08]
push dword [ebp - 0x4c]
call fcn.0040ce80
add esp, 4
mov eax, dword [case.0x42be59.124]
xor esi, esi
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
mov dword [ebp - 0x1c], 0xf4f5f6f7
mov word [ebp - 0x18], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, esi
xor ecx, 0x53
mov edx, esi
or edx, 4
and edx, ecx
mov ecx, esi
xor ecx, 0x2c
lea ecx, [ecx + edx*2]
xor cl, byte [ebp + esi - 0x1c]
add cl, 0x24
mov byte [ebp + esi - 0x1c], cl
inc esi
cmp esi, 6
jne 0x42e520
mov ecx, dword [0x450b18]
test ecx, ecx
je 0x42e578
mov edx, dword [ebp - 0x1c]
xor esi, esi
mov edi, dword [0x450b1c]
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x7e776f1
je 0x42e570
inc esi
cmp ecx, esi
jne 0x42e560
jmp 0x42e578
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x42e583
mov eax, dword [ebp - 0x20]
and al, 1
jmp dword [0x44cf20]
push eax
push 1
push dword [0x450b20]
push ecx
call fcn.00441600
add esp, 0x10
mov eax, dword [ebp - 0x20]
and al, 1
jmp dword [0x44cf20]
mov esp, 0xbc390042
inc edx
add byte [ebp + edi*4 + 0x42], cl
add byte [edi - 0x5fffbd34], ch
int3
retf
retf